html{-webkit-text-size-adjust:100%;scrollbar-gutter:stable;overflow-x:clip}body{max-width:100vw;overflow-x:clip}img,video,svg,canvas{max-width:100%;height:auto}*{min-width:0}a,button,[role=button]{overflow-wrap:anywhere}.token,code,.confirmation-number,.badge,.source-badge{overflow-wrap:anywhere;word-break:normal;min-inline-size:0}:root{--haven-gutter:16px}@media (min-width:768px){:root{--haven-gutter:24px}}@media (min-width:1024px){:root{--haven-gutter:40px}}@media (min-width:1440px){:root{--haven-gutter:56px}}.table-scroll{-webkit-overflow-scrolling:touch;scrollbar-width:thin;overflow-x:auto}.table-scroll table{min-width:560px}@media (max-width:480px){.table-scroll table{min-width:520px}}@media (max-width:680px){.btn,.btn-accent,.btn-soft,.btn-cream{min-height:44px;padding-top:12px;padding-bottom:12px}.landing .btn,.haven-vault__submit,.booking-bar .btn{min-height:44px}.landing-menu-btn,.customer-mobile-menu,.icon-button,.haven-vault__eye{min-width:44px;min-height:44px}}.landing,.booking-page,.customer-shell,.app-shell,.auth-page{max-width:100vw;overflow-x:clip}@media (max-width:768px){.booking-header{padding:0 var(--haven-gutter,16px);gap:16px}.booking-hero{padding:32px var(--haven-gutter,16px)}.booking-content{padding:24px var(--haven-gutter,16px) 40px}.booking-stage{gap:18px}}@media (max-width:375px){.customer-content{padding:18px 14px 40px}.customer-content-header{padding-left:56px;padding-right:14px}.customer-header-actions{gap:6px}.folio-summary{grid-template-columns:1fr 1fr;gap:8px}}@media (max-width:360px){.app-shell .sidebar,.app-shell .sidebar.collapsed{width:88vw}.workspace-body{padding:16px 12px}.page-title h1{font-size:20px}}@media (min-width:1600px){.landing .rooms-section,.landing .stats-strip,.landing .journey,.landing .amenities-section,.landing .gallery-section,.landing .good-to-know,.landing .faq-section,.landing .cta-band,.booking-content{max-width:1440px;margin-left:auto;margin-right:auto}}@supports (padding:max(0px)){.landing-nav,.app-shell .app-header,.customer-content-header{padding-left:max(var(--haven-gutter,16px), env(safe-area-inset-left));padding-right:max(var(--haven-gutter,16px), env(safe-area-inset-right))}}@media (max-width:720px){.app-shell .table-action{white-space:nowrap;justify-content:center;align-items:center;gap:5px;min-height:40px;padding:8px 13px;font-size:12px;line-height:1.2;display:inline-flex}.app-shell .photo-tile-actions .table-action{min-height:34px;padding:5px 10px}.app-shell .reservation-filters button{min-height:40px;padding:8px 14px;font-size:11px}.app-shell .reservation-filters select,.app-shell .table-tools input{min-height:40px;font-size:16px}.app-shell .table-tools label{min-height:44px}.app-shell .table-scroll table{font-size:12px}.app-shell .table-scroll th,.app-shell .table-scroll td{padding:9px 12px}}@keyframes havenPopIn{0%{opacity:0;transform:translateY(6px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.toast{animation:.18s ease-out havenPopIn}.notification-popover{transform-origin:100% 0;animation:.16s ease-out havenPopIn}.app-shell tbody tr{transition:background-color .15s}.app-shell .table-action{transition:background-color .15s,border-color .15s}.app-shell .btn:active:not(:disabled){transform:translateY(1px)scale(.98)}@media (pointer:coarse){.btn,.btn-sm{min-height:44px}.table-action{min-height:40px;padding:8px 13px;font-size:12px}.photo-tile-actions .table-action{min-height:34px;padding:5px 10px}.table-tools input,.table-tools select,.reservation-filters select{min-height:40px;font-size:16px}.table-action:active:not(:disabled),.customer-shell nav a:active,.landing .nav-links a:active{opacity:.85;transform:translateY(1px)}}
.dialog-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:1000;background:#040c098c;justify-content:center;align-items:center;padding:24px;animation:.15s ease-out modalBackdropIn;display:flex;position:fixed;inset:0}.dialog-backdrop.reduce-motion,.dialog.reduce-motion .modal-content{transition:none;animation:none}.dialog{z-index:1001;pointer-events:none;justify-content:center;align-items:center;padding:24px;animation:.18s ease-out modalIn;display:flex;position:fixed;inset:0}.dialog .modal-content{pointer-events:auto}@keyframes modalBackdropIn{0%{opacity:0}to{opacity:1}}.modal-content.modal-sm{width:min(var(--modal-max-width-sm,400px), 100%)}.modal-content.modal-md{width:min(var(--modal-max-width-md,560px), 100%)}.modal-content.modal-lg{width:min(var(--modal-max-width-lg,720px), 100%)}.modal-content.modal-xl{width:min(var(--modal-max-width-xl,960px), 100%)}.modal-content.modal-full{width:min(var(--modal-max-width-full,95vw), 100%)}@keyframes modalIn{0%{opacity:0;transform:translateY(8px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.modal-content{--cp-panel:#fff;--cp-panel-2:#f7f9f6;--cp-line:#e3e5df;--cp-text:#103e48;--cp-muted:#6d7971;--cp-green:#176773;--cp-accent:#084b55;background:var(--cp-panel,#fff);border:1px solid var(--cp-line,#e3e5df);border-radius:12px;flex-direction:column;width:100%;max-height:calc(100vh - 48px);display:flex;overflow:hidden;box-shadow:0 24px 60px #142d2340}.theme-light .modal-content{background:var(--cp-panel,#fff);border-color:var(--cp-line,#e3e5df);box-shadow:0 24px 60px #17332a26}.modal-header{border-bottom:1px solid var(--cp-line,#e3e5df);justify-content:space-between;align-items:flex-start;gap:16px;padding:20px 24px;display:flex}.modal-header-text{flex-direction:column;flex:auto;gap:3px;min-width:0;display:flex}.modal-title{font:600 18px/1.3 var(--font-display,Georgia, serif);color:var(--cp-text,#103e48);margin:0}.modal-description{color:var(--cp-muted,#6d7971);margin:0;font-size:13px;line-height:1.5}.modal-close{border:1px solid var(--cp-line,#e3e5df);background:var(--cp-panel-2,#f7f9f6);width:36px;height:36px;color:var(--cp-text,#103e48);border-radius:50%;flex-shrink:0;place-items:center;transition:background .15s,color .15s,border-color .15s;display:grid}.modal-close:hover{background:var(--cp-line,#e3e5df);color:var(--cp-green,#176773)}.modal-close:focus-visible{outline:2px solid var(--cp-green,#176773);outline-offset:2px}.modal-body{flex:1;padding:20px 24px;overflow-y:auto}.modal-footer{border-top:1px solid var(--cp-line,#e3e5df);background:var(--cp-panel-2,#f7f9f6);justify-content:flex-end;align-items:center;gap:12px;padding:16px 24px;display:flex}.modal-footer .arrival-footer,.modal-footer .reservation-detail-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.modal-branded .modal-header{border-bottom-color:var(--modal-header-branded-border,#176773);background:var(--modal-header-branded-bg,#084b55);color:var(--modal-header-branded-fg,#fff);padding:24px 28px}.modal-branded .modal-title{font:500 28px/1.1 var(--font-display,Georgia, serif);color:var(--modal-header-branded-fg,#fff)}.modal-branded.modal-md .modal-title{font-size:22px}.modal-branded.modal-sm .modal-title{font-size:19px}.modal-branded .modal-description{color:var(--modal-header-branded-muted,#a9c6c3);margin-top:7px}.modal-branded .modal-close{border-color:var(--modal-header-branded-close-border,#ffffff2b);background:var(--modal-header-branded-close-bg,#ffffff0d);color:var(--modal-header-branded-fg,#fff)}.modal-branded .modal-close:hover{background:var(--modal-header-branded-close-hover,#ffffff1a);color:var(--modal-header-branded-fg,#fff)}.modal-branded .modal-close:focus-visible{outline-color:var(--modal-header-branded-fg,#fff)}.modal-branded .modal-body{padding:24px 28px}@media (max-width:680px){.modal-branded .modal-header,.modal-branded .modal-body{padding-left:20px;padding-right:20px}}.confirm-dialog{flex-direction:column;gap:16px;display:flex}.confirm-message{color:var(--cp-text,#103e48);margin:0;font-size:14px;line-height:1.6}.confirm-actions{justify-content:flex-end;gap:10px;margin-top:8px;display:flex}.prompt-dialog{flex-direction:column;gap:20px;display:flex}.prompt-message{color:var(--cp-muted,#6d7971);margin:0;font-size:14px;line-height:1.6}.prompt-field{flex-direction:column;gap:8px;display:flex}.prompt-label{color:var(--cp-text,#103e48);font-size:12px;font-weight:600}.prompt-input{border:1px solid var(--cp-line,#e3e5df);background:var(--cp-panel,#fff);width:100%;color:var(--cp-text,#103e48);font:inherit;border-radius:8px;padding:12px 14px;font-size:14px;transition:border-color .15s,box-shadow .15s}.prompt-input:focus{border-color:var(--cp-green,#176773);outline:none;box-shadow:0 0 0 3px #084b5526}.prompt-input.error{border-color:var(--danger,#a94e48)}.prompt-input.error:focus{border-color:var(--danger,#a94e48);box-shadow:0 0 0 3px #a94e4826}.prompt-input:disabled{opacity:.6;cursor:not-allowed}.prompt-error{color:var(--danger,#a94e48);margin:0;font-size:12px;line-height:1.4}.prompt-actions{justify-content:flex-end;gap:10px;margin-top:8px;display:flex}@media (max-width:480px){.dialog-backdrop{align-items:flex-end;padding:12px}.dialog{align-items:flex-end;padding:0 10px}.modal-content{border-radius:16px 16px 0 0;max-height:85vh}.modal-header,.modal-body{padding:16px 20px}.modal-footer{flex-direction:column-reverse;padding:12px 20px}.modal-footer .btn{width:100%}.modal-footer .arrival-footer,.modal-footer .reservation-detail-actions,.confirm-actions,.prompt-actions{flex-direction:column-reverse}.confirm-actions .btn,.prompt-actions .btn{width:100%}}@media (prefers-reduced-motion:reduce){.dialog-backdrop,.dialog,.modal-content{transition:none!important;animation:none!important}}.form-dialog{flex-direction:column;gap:16px;display:flex}.modal-content .form-grid{margin-top:0}.form-field,.form-field-wrapper{flex-direction:column;gap:6px;display:flex}.form-help{color:var(--cp-muted,#6d7971);margin:0;font-size:11px;line-height:1.4}.form-actions{justify-content:flex-end;gap:10px;margin-top:8px;display:flex}.multistep-form{flex-direction:column;gap:20px;display:flex}.multistep-progress{gap:8px;margin-bottom:8px;display:flex}.multistep-step{background:var(--cp-line,#e3e5df);border-radius:2px;flex:1;height:4px;position:relative}.multistep-step.completed{background:var(--cp-green,#176773)}.multistep-step.active{background:var(--cp-accent,#084b55)}.multistep-step-number{color:var(--cp-muted,#6d7971);font-size:10px;font-weight:700;position:absolute;top:-20px;left:50%;transform:translate(-50%)}.multistep-step.completed .multistep-step-number,.multistep-step.active .multistep-step-number{color:var(--cp-green,#176773)}.multistep-actions{justify-content:flex-end;align-items:center;gap:10px;margin-top:8px;display:flex}.multistep-actions>.btn:first-child:nth-last-child(3){margin-right:auto}.room-select-dialog{flex-direction:column;gap:16px;display:flex}.room-select-message{color:var(--cp-text,#103e48);margin:0;font-size:14px;line-height:1.6}.room-select-error{color:var(--danger,#a94e48);background:#a94e481a;border-radius:6px;margin:0;padding:8px 12px;font-size:12px}.room-select-options{flex-direction:column;gap:8px;max-height:300px;display:flex;overflow-y:auto}.room-option{border:2px solid var(--cp-line,#e3e5df);background:var(--cp-panel,#fff);cursor:pointer;border-radius:8px;align-items:center;gap:12px;padding:12px 14px;transition:border-color .15s,background .15s,box-shadow .15s;display:flex}.room-option:hover{border-color:var(--cp-green,#176773);background:#084b550d}.room-option:has(input:checked){border-color:var(--cp-green,#176773);background:#084b551a;box-shadow:0 0 0 2px #084b5533}.room-option input{width:20px;height:20px;accent-color:var(--cp-green,#176773);flex-shrink:0}.room-option-info{flex-direction:column;gap:2px;display:flex}.room-option-info strong{color:var(--cp-text,#103e48);font-size:14px}.room-type{color:var(--cp-muted,#6d7971);font-size:12px}.room-select-actions{justify-content:flex-end;gap:10px;margin-top:8px;display:flex}.checklist-dialog{flex-direction:column;gap:16px;display:flex}.checklist-message{color:var(--cp-text,#103e48);margin:0;font-size:14px;line-height:1.6}.checklist-items{flex-direction:column;gap:8px;display:flex}.checklist-item{border:1px solid var(--cp-line,#e3e5df);background:var(--cp-panel-2,#f7f9f6);cursor:pointer;border-radius:8px;align-items:center;gap:12px;padding:12px 14px;transition:background .15s,border-color .15s;display:flex}.checklist-item:hover{background:var(--cp-line,#e3e5df)}.checklist-item:has(input:checked){border-color:var(--cp-green,#176773);background:#084b551a}.checklist-item input{width:20px;height:20px;accent-color:var(--cp-green,#176773);flex-shrink:0}.checklist-item span{color:var(--cp-text,#103e48);font-size:14px}.checklist-actions{justify-content:flex-end;gap:10px;margin-top:8px;display:flex}.change-form-fields{flex-direction:column;gap:12px;display:flex}@media (max-width:480px){.form-actions,.multistep-actions,.room-select-actions,.checklist-actions{flex-direction:column-reverse}.form-actions .btn,.multistep-actions .btn,.room-select-actions .btn,.checklist-actions .btn{width:100%}.multistep-step-number{display:none}}.form-field{flex-direction:column;gap:6px;display:flex}.form-field-checkbox{gap:8px}.form-label{color:var(--cp-text,#103e48);font-size:12px;font-weight:600}.required{color:var(--danger,#a94e48);margin-left:2px}.form-input{border:1px solid var(--cp-line,#e3e5df);background:var(--cp-panel,#fff);width:100%;color:var(--cp-text,#103e48);font:inherit;border-radius:8px;padding:12px 14px;font-size:14px;transition:border-color .15s,box-shadow .15s}.form-input:focus{border-color:var(--cp-green,#176773);outline:none;box-shadow:0 0 0 3px #084b5526}.form-input.error{border-color:var(--danger,#a94e48)}.form-input.error:focus{border-color:var(--danger,#a94e48);box-shadow:0 0 0 3px #a94e4826}.form-input:disabled{opacity:.6;cursor:not-allowed}.form-error{color:var(--danger,#a94e48);margin:0;font-size:12px;line-height:1.4}.form-hint{color:var(--cp-muted,#6d7971);margin:0;font-size:11px;line-height:1.4}.radio-option,.checkbox-option{border:1px solid var(--cp-line,#e3e5df);background:var(--cp-panel-2,#f7f9f6);cursor:pointer;border-radius:8px;align-items:center;gap:8px;padding:8px 12px;transition:background .15s,border-color .15s;display:flex}.radio-option:hover,.checkbox-option:hover{background:var(--cp-line,#e3e5df)}.radio-option input,.checkbox-option input{width:18px;height:18px;accent-color:var(--cp-green,#176773)}.checkbox-field{gap:8px}.checkbox-wrapper{align-items:flex-start;gap:10px;display:flex}.checkbox-wrapper .form-checkbox{width:18px;height:18px;accent-color:var(--cp-green,#176773);flex-shrink:0;margin-top:2px}.checkbox-label{color:var(--cp-text,#103e48);cursor:pointer;font-size:14px;line-height:1.5}.radio-group{flex-direction:column;gap:8px;display:flex}.form-radio{width:18px;height:18px;accent-color:var(--cp-green,#176773)}.form-fieldset{border:none;flex-direction:column;gap:8px;margin:0;padding:0;display:flex}.error-summary{border:1px solid var(--danger,#a94e48);background:#a94e481a;border-radius:8px;margin-bottom:20px;padding:16px 20px}.error-summary-title{color:var(--danger,#a94e48);margin:0 0 12px;font-size:14px;font-weight:600}.error-summary-list{margin:0;padding:0 0 0 20px;list-style:none}.error-summary-item{margin-bottom:6px}.error-summary-item:last-child{margin-bottom:0}.error-summary-item a{color:var(--danger,#a94e48);font-size:13px;line-height:1.5;text-decoration:underline}.error-summary-item a:hover{color:var(--danger-dark,#8b3e3e)}.error-summary-item a:focus{outline:2px solid var(--cp-green,#176773);outline-offset:2px;border-radius:2px}@media (max-width:480px){.form-actions,.multistep-actions,.room-select-actions,.checklist-actions{flex-direction:column-reverse}.form-actions .btn,.multistep-actions .btn,.room-select-actions .btn,.checklist-actions .btn{width:100%}.multistep-step-number{display:none}.error-summary{padding:12px 16px}.error-summary-list{padding-left:16px}}.data-table-container{background:var(--surface-card,#fff);border:1px solid var(--color-border,#e3e5df);border-radius:var(--radius-card,12px);flex-direction:column;gap:16px;display:flex;overflow:hidden}.data-table-toolbar{border-bottom:1px solid var(--color-border,#e3e5df);background:var(--surface-panel,#f7f9f6);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;display:flex}.toolbar-left,.toolbar-right{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.toolbar-left{flex:1}.global-filter-wrapper{align-items:center;display:flex;position:relative}.filter-icon{color:var(--color-fg-muted,#6d7971);pointer-events:none;position:absolute;left:12px}.global-filter-input{border:1px solid var(--color-border,#e3e5df);background:var(--surface-input,#fff);color:var(--color-fg,#103e48);border-radius:8px;width:280px;padding:10px 12px 10px 40px;font-size:14px;transition:border-color .15s,box-shadow .15s}.global-filter-input:focus{border-color:var(--color-green,#176773);outline:none;box-shadow:0 0 0 3px #084b5526}.filter-clear{color:var(--color-fg-muted,#6d7971);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:4px;display:flex;position:absolute;right:8px}.filter-clear:hover{color:var(--color-danger,#a94e48)}.column-visibility{position:relative}.toolbar-btn{border:1px solid var(--color-border,#e3e5df);background:var(--surface-input,#fff);width:36px;height:36px;color:var(--color-fg,#103e48);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;transition:background .15s,color .15s,border-color .15s;display:flex}.toolbar-btn:hover{background:var(--color-border,#e3e5df);color:var(--color-green,#176773)}.toolbar-btn:focus-visible{outline:2px solid var(--color-green,#176773);outline-offset:2px}.column-visibility-dropdown{background:var(--surface-overlay,#fff);border:1px solid var(--color-border,#e3e5df);box-shadow:var(--shadow-lg,0 20px 25px -5px #0000001a);z-index:var(--z-index-popover,1100);border-radius:8px;min-width:200px;max-height:300px;margin-top:8px;padding:8px;position:absolute;top:100%;right:0;overflow-y:auto}.column-visibility-item{cursor:pointer;border-radius:6px;align-items:center;gap:8px;padding:8px 12px;transition:background .15s;display:flex}.column-visibility-item:hover{background:var(--color-bg-hover,#f1f5f9)}.column-visibility-item input{width:16px;height:16px;accent-color:var(--color-green,#176773)}.pagination-controls{align-items:center;gap:12px;display:flex}.page-size-select{border:1px solid var(--color-border,#e3e5df);background:var(--surface-input,#fff);color:var(--color-fg,#103e48);cursor:pointer;border-radius:8px;padding:8px 12px;font-size:13px}.page-size-select:focus{border-color:var(--color-green,#176773);outline:none;box-shadow:0 0 0 3px #084b5526}.pagination-buttons{align-items:center;gap:8px;display:flex}.pagination-btn{border:1px solid var(--color-border,#e3e5df);background:var(--surface-input,#fff);width:32px;height:32px;color:var(--color-fg,#103e48);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;transition:background .15s,color .15s,border-color .15s;display:flex}.pagination-btn:hover:not(:disabled){background:var(--color-border,#e3e5df);color:var(--color-green,#176773)}.pagination-btn:disabled{opacity:.5;cursor:not-allowed}.pagination-btn:focus-visible{outline:2px solid var(--color-green,#176773);outline-offset:2px}.pagination-info{color:var(--color-fg-muted,#6d7971);text-align:center;min-width:80px;font-size:13px}.data-table-wrapper{position:relative;overflow-x:auto}.data-table{border-collapse:collapse;width:100%;font-size:13px}.data-table.striped tbody tr:nth-child(2n){background:var(--color-bg-subtle,#f7f9f6)}.data-table.hoverable tbody tr:hover:not(.selected){background:var(--color-bg-hover,#f1f5f9)}.data-table.compact th,.data-table.compact td{padding:8px 12px}.data-table th,.data-table td{text-align:left;border-bottom:1px solid var(--color-border,#e3e5df);padding:12px 16px}.data-table th{color:var(--color-fg,#103e48);background:var(--table-header-bg,#f7f9f6);white-space:nowrap;-webkit-user-select:none;user-select:none;font-weight:600}.data-table td{color:var(--color-fg,#103e48)}.data-table tbody tr.selected,.data-table tbody tr.expanded{background:var(--color-primary-light,#e1eeeb)}.data-table-th{position:relative}.data-table-th.sortable .th-content{cursor:pointer}.th-content{align-items:center;gap:8px;display:flex}.sort-button{width:24px;height:24px;color:var(--color-fg-muted,#6d7971);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;transition:color .15s,background .15s;display:flex}.sort-button:hover{color:var(--color-green,#176773);background:var(--color-bg-hover,#f1f5f9)}.sort-button:focus-visible{outline:2px solid var(--color-green,#176773);outline-offset:2px}.th-content .sort-button{margin-left:4px}.filter-header{border-top:1px solid var(--color-border,#e3e5df);margin-top:8px;padding-top:8px}.filter-input{border:1px solid var(--color-border,#e3e5df);background:var(--surface-input,#fff);width:100%;color:var(--color-fg,#103e48);border-radius:6px;padding:6px 8px;font-size:12px}.filter-input:focus{border-color:var(--color-green,#176773);outline:none;box-shadow:0 0 0 2px #084b5526}.resize-handle{cursor:col-resize;background:0 0;width:4px;transition:background .15s;position:absolute;top:0;bottom:0;right:0}.resize-handle:hover,.resize-handle:active{background:var(--color-green,#176773)}.data-table-expanded-row{background:var(--color-bg-subtle,#f7f9f6)}.data-table-expanded-cell{border-top:1px solid var(--color-border,#e3e5df);padding:16px 20px!important}.data-table-empty{text-align:center;padding:48px 20px!important}.empty-state{color:var(--color-fg-muted,#6d7971);flex-direction:column;align-items:center;gap:12px;display:flex}.data-table-loading{color:var(--color-fg-muted,#6d7971);flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:60px 20px;display:flex}.loading-spinner{border:3px solid var(--color-border,#e3e5df);border-top-color:var(--color-green,#176773);border-radius:50%;width:32px;height:32px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.data-table-footer{border-top:1px solid var(--color-border,#e3e5df);background:var(--surface-panel,#f7f9f6);justify-content:space-between;align-items:center;padding:12px 20px;display:flex}.pagination-summary{color:var(--color-fg-muted,#6d7971);margin:0;font-size:13px}.data-table-mobile-cards{gap:12px;padding:16px;display:none}.data-table-card{background:var(--surface-card,#fff);border:1px solid var(--color-border,#e3e5df);border-radius:var(--radius-card,12px);transition:box-shadow .15s,border-color .15s;overflow:hidden}.data-table-card:hover{box-shadow:var(--shadow-md,0 4px 6px -1px #0000001a)}.data-table-card.selected{border-color:var(--color-green,#176773);box-shadow:0 0 0 2px #084b5533}.card-selection{border-bottom:1px solid var(--color-border,#e3e5df);background:var(--color-bg-subtle,#f7f9f6);cursor:pointer;align-items:center;padding:12px 16px;display:flex}.card-selection .form-checkbox{width:18px;height:18px;accent-color:var(--color-green,#176773)}.card-content{flex-direction:column;gap:12px;padding:16px;display:flex}.card-field{flex-direction:column;gap:4px;display:flex}.card-label{text-transform:uppercase;letter-spacing:.5px;color:var(--color-fg-muted,#6d7971);font-size:11px;font-weight:600}.card-value{color:var(--color-fg,#103e48);font-size:14px}.card-actions{border-top:1px solid var(--color-border,#e3e5df);gap:8px;margin-top:8px;padding-top:8px;display:flex}.mobile-empty-state{text-align:center;color:var(--color-fg-muted,#6d7971);padding:48px 20px}@media (max-width:768px){.data-table-wrapper{display:none}.data-table-mobile-cards{flex-direction:column;display:flex}.data-table-toolbar{flex-direction:column;align-items:stretch}.toolbar-left,.toolbar-right{justify-content:space-between}.global-filter-input{width:100%}.pagination-controls{justify-content:space-between;width:100%}.page-size-select{flex:1}}@media (max-width:480px){.data-table-toolbar{padding:12px 16px}.toolbar-btn,.pagination-btn{width:40px;height:40px}}@media (prefers-contrast:high){.data-table-container{border-width:2px}.data-table th,.data-table td{border-bottom-width:2px}.sort-button:focus-visible,.toolbar-btn:focus-visible,.pagination-btn:focus-visible{outline-width:3px}}.sidebar{width:var(--sidebar-width,280px);background:var(--sidebar-bg,var(--color-forest-dark,#082f39));color:var(--sidebar-fg,#dbe7e2);border-right:1px solid var(--sidebar-border,#29454d);z-index:var(--z-index-fixed,300);transition:width var(--sidebar-transition,.22s ease), transform .22s ease;flex-direction:column;display:flex;position:fixed;top:0;bottom:0;left:0;overflow:hidden}.sidebar.collapsed{width:var(--sidebar-width-collapsed,72px)}.sidebar.mobile-open{box-shadow:var(--shadow-xl,0 20px 25px -5px #00000040);transform:translate(0)}.sidebar-backdrop{z-index:calc(var(--z-index-fixed,300) - 1);background:#00000080;display:none;position:fixed;inset:0}.sidebar-header{border-bottom:1px solid var(--sidebar-border,#29454d);justify-content:space-between;align-items:center;min-height:64px;padding:16px;display:flex}.sidebar-logo{flex:1;align-items:center;gap:12px;min-width:0;display:flex}.sidebar-logo-full{letter-spacing:2px;white-space:nowrap;text-overflow:ellipsis;font-size:16px;font-weight:800;overflow:hidden}.sidebar-logo-collapsed{font-size:20px;font-weight:800}.sidebar-title{text-transform:uppercase;letter-spacing:1.5px;color:var(--color-fg-muted,#87948c);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.sidebar-toggle{border:1px solid var(--sidebar-border,#29454d);width:32px;height:32px;color:var(--sidebar-fg,#dbe7e2);cursor:pointer;background:0 0;border-radius:8px;justify-content:center;align-items:center;transition:background .15s,color .15s,border-color .15s;display:flex}.sidebar-toggle:hover{color:var(--cp-green,#176773);background:#ffffff14}.sidebar-toggle:focus-visible{outline:2px solid var(--cp-green,#176773);outline-offset:2px}.sidebar-search{border-bottom:1px solid var(--sidebar-border,#29454d);padding:12px 16px}.sidebar-search-toggle{border:1px solid var(--sidebar-border,#29454d);background:var(--cp-panel-2,#19211c);width:100%;color:var(--sidebar-fg,#dbe7e2);text-align:left;cursor:pointer;border-radius:8px;align-items:center;gap:10px;padding:10px 12px;transition:border-color .15s,background .15s;display:flex}.sidebar-search-toggle:hover{border-color:var(--cp-green,#176773);background:var(--cp-panel,#141a16)}.sidebar-search-toggle:focus-visible{outline:2px solid var(--cp-green,#176773);outline-offset:2px}.search-placeholder{color:var(--color-fg-muted,#87948c);flex:1;font-size:13px}.search-close{display:none}.sidebar-search-input-wrapper{align-items:center;gap:8px;margin-top:8px;display:flex}.search-icon{color:var(--color-fg-muted,#87948c);flex-shrink:0}.sidebar-search-input{border:1px solid var(--sidebar-border,#29454d);background:var(--cp-panel,#141a16);color:var(--sidebar-fg,#dbe7e2);border-radius:8px;outline:none;flex:1;padding:10px 12px;font-size:13px}.sidebar-search-input:focus{border-color:var(--cp-green,#176773);box-shadow:0 0 0 3px #66c99f33}.search-clear,.search-close-btn{width:36px;height:36px;color:var(--color-fg-muted,#87948c);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;transition:color .15s,background .15s;display:flex}.search-clear:hover,.search-close-btn:hover{color:var(--cp-green,#176773);background:#ffffff14}.sidebar-nav{flex:1;padding:12px 8px;overflow-y:auto}.nav-group{margin-bottom:4px}.nav-group-header{width:100%;color:var(--color-fg-muted,#87948c);text-transform:uppercase;letter-spacing:1.5px;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:space-between;align-items:center;padding:8px 12px;font-size:11px;font-weight:600;transition:color .15s,background .15s;display:flex}.nav-group-header:hover{color:var(--sidebar-fg,#dbe7e2);background:#ffffff0d}.nav-group-header:focus-visible{outline:2px solid var(--cp-green,#176773);outline-offset:2px}.nav-group-title{align-items:center;gap:8px;display:flex}.nav-group-badge{color:var(--color-fg-muted,#87948c);justify-content:center;align-items:center;transition:transform .15s;display:flex}.nav-group-content{max-height:0;transition:max-height .22s;overflow:hidden}.nav-group-content.open{max-height:1000px}.nav-list{margin:0;padding:0;list-style:none}.nav-item{margin:0}.nav-link{color:var(--sidebar-fg,#dbe7e2);border-radius:6px;align-items:center;gap:12px;padding:10px 12px;font-size:13px;font-weight:500;text-decoration:none;transition:color .15s,background .15s;display:flex}.nav-link:hover{color:var(--sidebar-fg,#dbe7e2);background:#ffffff14}.nav-link:focus-visible{outline:2px solid var(--cp-green,#176773);outline-offset:-2px}.nav-link.active{color:var(--sidebar-fg,#dbe7e2);background:#66c99f26}.nav-link.active .nav-link-chevron{display:none}.nav-link.disabled{opacity:.4;pointer-events:none}.nav-link-icon{width:20px;height:20px;color:var(--color-fg-muted,#87948c);flex-shrink:0;justify-content:center;align-items:center;display:flex}.nav-link.active .nav-link-icon{color:var(--cp-green,#176773)}.nav-link-label{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.nav-link-chevron{color:var(--color-fg-muted,#87948c);flex-shrink:0}.nav-badge{border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 6px;font-size:10px;font-weight:700;display:flex}.nav-badge-default{color:var(--sidebar-fg,#dbe7e2);background:#ffffff1a}.nav-badge-danger{color:#fca5a5;background:#a94e4833}.nav-badge-warning{color:#fcd34d;background:#f59e0b33}.nav-badge-success{color:#86efac;background:#22c55e33}.sidebar-footer{border-top:1px solid var(--sidebar-border,#29454d);margin-top:auto;padding:16px}.sidebar-mobile-toggle{z-index:calc(var(--z-index-fixed,300) + 1);border:1px solid var(--cp-line,#e3e5df);background:var(--cp-panel,#fff);width:44px;height:44px;color:var(--cp-text,#103e48);cursor:pointer;box-shadow:var(--shadow-md,0 4px 6px -1px #0000001a);border-radius:50%;justify-content:center;align-items:center;display:none;position:fixed;top:16px;left:16px}.sidebar-mobile-toggle:hover{background:var(--cp-panel-2,#f7f9f6);border-color:var(--cp-green,#176773)}.sidebar-mobile-toggle:focus-visible{outline:2px solid var(--cp-green,#176773);outline-offset:2px}.sidebar-backdrop{display:none}.breadcrumb{flex-wrap:wrap;align-items:center;gap:8px;padding:8px 0;font-size:13px;display:flex}.breadcrumb-list{flex-wrap:wrap;align-items:center;gap:8px;margin:0;padding:0;list-style:none;display:flex}.breadcrumb-item{align-items:center;gap:8px;display:flex}.breadcrumb-link{color:var(--color-fg-muted,#6d7971);text-decoration:none;transition:color .15s}.breadcrumb-link:hover{color:var(--cp-green,#176773)}.breadcrumb-current{color:var(--color-fg,#103e48);font-weight:500}.breadcrumb-separator{color:var(--color-fg-muted,#6d7971);flex-shrink:0;justify-content:center;align-items:center;display:flex}.page-header{border-bottom:1px solid var(--color-border,#e3e5df);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:20px;padding:24px 0;display:flex}.page-header-content{flex:1;min-width:0}.page-header-eyebrow{text-transform:uppercase;letter-spacing:2px;color:var(--cp-accent,#084b55);margin:0 0 8px;font-size:11px;font-weight:700}.page-header-title{font:600 28px/1.2 var(--font-display,Georgia, serif);color:var(--cp-text,#103e48);margin:0 0 4px}.page-header-subtitle{color:var(--cp-muted,#6d7971);margin:0;font-size:14px;line-height:1.6}.page-header-actions{flex-shrink:0;align-items:center;gap:12px;display:flex}@media (max-width:768px){.sidebar{width:var(--sidebar-width,280px);transform:translate(-100%)}.sidebar.mobile-open{transform:translate(0)}.sidebar.collapsed{width:var(--sidebar-width,280px);transform:translate(-100%)}.sidebar.collapsed.mobile-open{transform:translate(0)}.sidebar-backdrop{display:block}.sidebar-mobile-toggle{display:flex}.sidebar-search-toggle{padding:8px 10px}.search-placeholder{display:none}.search-close{display:block}.sidebar-search-input-wrapper{background:var(--sidebar-bg,var(--color-forest-dark,#082f39));z-index:var(--z-index-fixed,300);border-bottom:1px solid var(--sidebar-border,#29454d);padding:72px 16px 16px;position:fixed;inset:0}.sidebar-search-input-wrapper .sidebar-search-input{width:100%;font-size:16px}.sidebar-nav{padding-top:0}.page-header{flex-direction:column;gap:16px}.page-header-actions{justify-content:flex-end;width:100%}}@media (max-width:480px){.sidebar{width:100%;max-width:320px}.page-header-title{font-size:24px}.breadcrumb{font-size:12px}.breadcrumb-separator{margin:0 4px}}@media (prefers-reduced-motion:reduce){.sidebar,.nav-group-content,.nav-link,.sidebar-toggle,.sidebar-search-toggle{transition:none!important}}@media (prefers-contrast:high){.sidebar{border-right-width:2px}.nav-link:focus-visible,.nav-group-header:focus-visible,.sidebar-toggle:focus-visible{outline-width:3px}}.accessible-chart{background:var(--surface-card,#fff);border:1px solid var(--color-border,#e3e5df);border-radius:var(--radius-card,12px);flex-direction:column;gap:12px;padding:20px;display:flex}.chart-header{flex-direction:column;gap:4px;display:flex}.chart-title{font:600 18px/1.3 var(--font-display,Georgia, serif);color:var(--color-fg,#103e48);margin:0}.chart-description{color:var(--color-fg-muted,#6d7971);margin:0;font-size:13px;line-height:1.5}.chart-container{width:100%;height:100%;position:relative}.chart-container:focus-within{outline:2px solid var(--color-green,#176773);outline-offset:2px;border-radius:8px}.recharts-wrapper{font-family:var(--font-sans,system-ui, sans-serif)}.recharts-tooltip-wrapper{filter:drop-shadow(0 4px 6px #0000001a)}.recharts-tooltip{background:var(--surface-overlay,#fff)!important;border:1px solid var(--color-border,#e3e5df)!important;box-shadow:var(--shadow-lg,0 10px 15px -3px #0000001a)!important;border-radius:8px!important;padding:12px 16px!important}.recharts-tooltip-label{color:var(--color-fg,#103e48)!important;border-bottom:1px solid var(--color-border,#e3e5df)!important;margin-bottom:8px!important;padding-bottom:8px!important;font-size:12px!important;font-weight:600!important}.recharts-tooltip-item{color:var(--color-fg,#103e48)!important;font-size:13px!important;font-weight:500!important}.recharts-legend-wrapper{padding-top:16px!important}.recharts-legend-item{margin-right:24px!important}.recharts-legend-item-text{color:var(--color-fg,#103e48)!important;font-size:12px!important;font-weight:500!important}.recharts-cartesian-grid-horizontal line,.recharts-cartesian-grid-vertical line{stroke:var(--color-border,#e3e5df)!important}.recharts-xaxis-tick text,.recharts-yaxis-tick text{fill:var(--color-fg-muted,#6d7971)!important;font-size:11px!important}.recharts-axis-label text{fill:var(--color-fg-muted,#6d7971)!important;font-size:11px!important;font-weight:500!important}.recharts-reference-line line{stroke-dasharray:5 5!important}.recharts-reference-line-label text{fill:var(--color-fg-muted,#6d7971)!important;font-size:10px!important;font-weight:600!important}.recharts-pie-label text{fill:var(--color-fg,#103e48)!important;font-size:11px!important;font-weight:600!important}.chart-data-table{border-collapse:collapse;width:100%;font-size:12px}.chart-data-table caption{caption-side:bottom;color:var(--color-fg-muted,#6d7971);padding:8px;font-weight:600}.chart-data-table th,.chart-data-table td{border:1px solid var(--color-border,#e3e5df);text-align:left;padding:8px 12px}.chart-data-table th{background:var(--table-header-bg,#f7f9f6);color:var(--color-fg,#103e48);font-weight:600}.chart-summary{background:var(--color-bg-subtle,#f7f9f6);color:var(--color-fg-muted,#6d7971);border-radius:8px;margin-top:12px;padding:12px;font-size:13px;line-height:1.5}.chart-keyboard-hint{background:var(--color-bg-subtle,#f7f9f6);color:var(--color-fg-muted,#6d7971);border-radius:8px;align-items:center;gap:8px;padding:12px 16px;font-size:12px;display:flex}.chart-keyboard-hint kbd{background:var(--surface-card,#fff);border:1px solid var(--color-border,#e3e5df);min-width:24px;height:24px;font-family:var(--font-mono,monospace);color:var(--color-fg,#103e48);border-radius:4px;justify-content:center;align-items:center;padding:0 8px;font-size:11px;font-weight:600;display:inline-flex;box-shadow:0 1px 2px #0000000d}@media (max-width:480px){.accessible-chart{padding:16px}.chart-title{font-size:16px}}@media (prefers-reduced-motion:reduce){.recharts-layer,.recharts-bar-rectangle,.recharts-line-curve,.recharts-area-curve{transition:none!important;animation:none!important}}@media (prefers-contrast:high){.accessible-chart{border-width:2px}.chart-container:focus-within{outline-width:3px}.recharts-tooltip{border-width:2px!important}}@supports (padding:max(0px)){@media (max-width:480px){.dialog-backdrop{padding:0 10px calc(10px + env(safe-area-inset-bottom,0px));align-items:flex-end}.dialog{align-items:flex-end;padding:0 10px}.modal-content{border-radius:18px 18px 0 0;max-height:min(92dvh,100dvh - 10px)}.modal-header,.modal-body,.modal-footer{padding-left:max(20px, env(safe-area-inset-left,0px));padding-right:max(20px, env(safe-area-inset-right,0px))}.modal-header{padding-top:max(16px, env(safe-area-inset-top,0px))}.modal-footer{padding-bottom:max(12px, env(safe-area-inset-bottom,0px))}.modal-content input:not([type=checkbox]):not([type=radio]),.modal-content select,.modal-content textarea{font-size:16px}}}
:root{--select-bg:#fff;--select-border:#dce2de;--select-border-hover:#9fb0a7;--select-border-focus:#176773;--select-text:#103e48;--select-muted:#657169;--select-hover:#f2f7f5;--select-selected:#e1eeeb;--select-selected-text:#084b55;--select-shadow:0 12px 32px #103e4824;--select-ring:#1767732e;--select-error:#a94e48;--select-error-ring:#a94e4826}.app-shell{--select-bg:#141815;--select-border:#2c332f;--select-border-hover:#3b443f;--select-border-focus:#85cbd0;--select-text:#dce2de;--select-muted:#909a94;--select-hover:#1c231f;--select-selected:#173024;--select-selected-text:#65d3a5;--select-shadow:0 12px 32px #00000073;--select-ring:#85cbd038}.theme-light .app-shell{--select-bg:#fff;--select-border:#dce2de;--select-border-hover:#9fb0a7;--select-border-focus:#176773;--select-text:#263129;--select-muted:#657169;--select-hover:#f2f7f5;--select-selected:#e1eeeb;--select-selected-text:#084b55;--select-shadow:0 12px 32px #103e4824;--select-ring:#1767732e}.customer-shell{--select-bg:var(--cp-panel-2);--select-border:var(--cp-line);--select-border-hover:var(--cp-green);--select-border-focus:var(--cp-green);--select-text:var(--cp-text);--select-muted:var(--cp-muted);--select-hover:color-mix(in srgb, var(--cp-green) 9%, var(--cp-panel-2));--select-selected:color-mix(in srgb, var(--cp-green) 15%, var(--cp-panel-2));--select-selected-text:var(--cp-text);--select-ring:color-mix(in srgb, var(--cp-green) 22%, transparent)}.haven-select{min-width:0;display:inline-flex;position:relative}.haven-select-trigger{background:var(--select-bg);border:1px solid var(--select-border);min-height:44px;color:var(--select-text);font:inherit;text-align:left;cursor:pointer;border-radius:11px;align-items:center;gap:10px;max-width:100%;padding:10px 12px 10px 14px;font-size:14px;font-weight:650;transition:border-color .15s,box-shadow .15s,background-color .15s;display:inline-flex}.haven-select-trigger:hover:not(:disabled){border-color:var(--select-border-hover);background:var(--select-hover)}.haven-select-trigger:focus-visible{border-color:var(--select-border-focus);box-shadow:0 0 0 3px var(--select-ring);outline:none}.haven-select-trigger[aria-expanded=true]{border-color:var(--select-border-focus);box-shadow:0 0 0 3px var(--select-ring)}.haven-select-trigger:disabled{opacity:.55;cursor:not-allowed}.haven-select-icon{color:var(--select-muted);flex-shrink:0;display:inline-flex}.haven-select-value{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.haven-select-value.is-placeholder{color:var(--select-muted);font-weight:500}.haven-select-chevron{color:var(--select-muted);flex-shrink:0;transition:transform .15s}.haven-select-chevron.is-open{transform:rotate(180deg)}.haven-select-menu{overscroll-behavior:contain;background:var(--select-bg);border:1px solid var(--select-border);width:max-content;min-width:100%;max-width:min(320px,90vw);max-height:320px;box-shadow:var(--select-shadow);z-index:60;border-radius:11px;margin:0;padding:7px;list-style:none;animation:.15s ease-out havenSelectIn;position:absolute;top:calc(100% + 6px);left:0;overflow-y:auto}@keyframes havenSelectIn{0%{opacity:0;transform:translateY(-4px)scale(.99)}to{opacity:1;transform:none}}.haven-select-group{list-style:none}.haven-select-group>ul{margin:0;padding:0;list-style:none}.haven-select-group-label{letter-spacing:.08em;text-transform:uppercase;color:var(--select-muted);padding:8px 10px 4px;font-size:11px;font-weight:800;display:block}.haven-select-item{min-height:42px;color:var(--select-text);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:8px;align-items:center;gap:10px;padding:9px 10px;font-size:14px;font-weight:550;display:flex}.haven-select-item:hover,.haven-select-item.is-active{background:var(--select-hover)}.haven-select-item.is-selected{background:var(--select-selected);color:var(--select-selected-text);font-weight:750}.haven-select-item.is-disabled{opacity:.45;cursor:not-allowed}.haven-select-label{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.haven-select-check{flex-shrink:0}.haven-select-empty{color:var(--select-muted);padding:12px 10px;font-size:13px}.haven-filter{color:var(--select-muted);align-items:center;gap:8px;font-size:9px;font-weight:700;display:inline-flex}.haven-filter>span{white-space:nowrap}.arrival-field.haven-field{gap:5px;display:grid}.arrival-field.haven-field>span{display:block}select.form-input,.reservation-filters select,.approval-filters select,.table-tools select,.filter-input,.prompt-input,.booking-form-grid select,.booking-search.compact select,.customer-request-form select,.customer-payment-submit select,.arrival-field select,.coastal-landing .booking-bar select{appearance:none;background-color:var(--select-bg);border:1px solid var(--select-border);min-height:44px;color:var(--select-text);font:inherit;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23657169' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;border-radius:11px;padding:10px 34px 10px 14px;font-size:14px;font-weight:550;line-height:1.4;transition:border-color .15s,box-shadow .15s,background-color .15s}.app-shell select.form-input,.app-shell .reservation-filters select,.app-shell .approval-filters select,.app-shell .table-tools select,.app-shell .filter-input,.app-shell .prompt-input,.app-shell .arrival-field select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23909a94' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")}select.form-input:hover:not(:disabled),.reservation-filters select:hover:not(:disabled),.approval-filters select:hover:not(:disabled),.table-tools select:hover:not(:disabled),.filter-input:hover:not(:disabled),.arrival-field select:hover:not(:disabled){border-color:var(--select-border-hover)}select.form-input:focus,.reservation-filters select:focus,.approval-filters select:focus,.table-tools select:focus,.filter-input:focus,.prompt-input:focus,.arrival-field select:focus{border-color:var(--select-border-focus);box-shadow:0 0 0 3px var(--select-ring);outline:none}select.form-input:disabled,.reservation-filters select:disabled,.approval-filters select:disabled,.arrival-field select:disabled{opacity:.55;cursor:not-allowed}select.form-input.error,.prompt-input.error{border-color:var(--select-error)}select.form-input.error:focus,.prompt-input.error:focus{box-shadow:0 0 0 3px var(--select-error-ring)}select.form-input option,.prompt-input option{background:var(--select-bg);color:var(--select-text)}.approval-filters select,.reservation-filters select{min-height:40px;font-size:13px}@media (max-width:720px){.haven-select{width:100%}.haven-select-trigger{width:100%;min-height:44px}.haven-select-menu{width:auto;max-width:none;max-height:60vh;left:0;right:0}.approval-filters>label:not(.approval-search),.approval-filters>.haven-filter,.reservation-filters>label,.reservation-filters>.haven-filter{flex:100%}.approval-filters>label:not(.approval-search)>select,.reservation-filters>label>select{width:100%}}@media (prefers-reduced-motion:reduce){.haven-select-menu{animation:none}.haven-select-trigger,.haven-select-chevron{transition:none}}
.haven-data-toolbar{--hc-surface:var(--ds,#fff);--hc-surface-soft:var(--ds2,#f3f6f4);--hc-line:var(--dl,#dce4e1);--hc-text:var(--dt,#103e48);--hc-muted:var(--dm,#53676b);--hc-accent:var(--dg,#176773);border:1px solid var(--hc-line);background:var(--hc-surface);border-radius:12px;gap:14px;min-width:0;padding:14px;display:grid}.customer-shell .haven-data-toolbar{--hc-surface:var(--cp-panel);--hc-surface-soft:var(--cp-panel-2);--hc-line:var(--cp-line);--hc-text:var(--cp-text);--hc-muted:var(--cp-muted);--hc-accent:var(--cp-green)}.haven-data-toolbar.is-customer{border-radius:14px;gap:16px;padding:18px}.app-shell .haven-data-toolbar{margin-bottom:12px}.haven-toolbar-section{gap:7px;min-width:0;display:grid}.haven-toolbar-label{color:var(--hc-muted);letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:800}.haven-search-input{width:min(100%,560px);min-width:0;color:var(--hc-muted);align-items:center;display:flex;position:relative}.haven-search-input>svg{pointer-events:none;position:absolute;left:13px}.haven-search-input input{border:1px solid var(--hc-line);background:var(--hc-surface-soft);width:100%;min-height:40px;color:var(--hc-text);font:inherit;border-radius:9px;padding:9px 42px 9px 40px;font-size:13px;line-height:1.4;transition:border-color .16s,box-shadow .16s,background-color .16s}.haven-search-input.is-customer input{border-radius:10px;min-height:44px;font-size:14px}.haven-search-input input::placeholder{color:var(--hc-muted);opacity:.86}.haven-search-input input:focus-visible{outline:2px solid var(--hc-accent);outline-offset:2px}.haven-search-clear{width:32px;height:32px;color:var(--hc-muted);cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;padding:0;display:grid;position:absolute;right:5px}.haven-search-clear:hover{background:color-mix(in srgb,var(--hc-accent) 12%,transparent);color:var(--hc-text)}.haven-search-input.is-customer .haven-search-clear{width:40px;height:40px;right:2px}.haven-search-clear:focus-visible,.haven-filter-badge:focus-visible,.haven-clear-filters:focus-visible{outline:2px solid var(--hc-accent);outline-offset:2px}.haven-filter-badges{flex-wrap:wrap;gap:8px;display:flex}.haven-filter-badge{border:1px solid var(--hc-line);background:var(--hc-surface-soft);min-height:36px;color:var(--hc-muted);font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:7px;padding:7px 12px;font-size:12px;font-weight:700;transition:background-color .16s,border-color .16s,color .16s,transform .12s;display:inline-flex}.haven-filter-badge:hover:not(:disabled){border-color:var(--hc-accent);color:var(--hc-text)}.haven-filter-badge[aria-pressed=true]{border-color:var(--hc-accent);background:var(--hc-accent);color:var(--hc-surface)}.haven-filter-badges.is-customer .haven-filter-badge{min-height:44px;padding:9px 14px;font-size:13px}.theme-light .haven-filter-badge[aria-pressed=true],.haven-data-toolbar:not(.app-shell *) .haven-filter-badge[aria-pressed=true]{color:#fff}.haven-filter-badge:disabled{cursor:not-allowed;opacity:.42}.haven-filter-badge b{background:color-mix(in srgb,currentColor 12%,transparent);min-width:20px;color:inherit;text-align:center;font-variant-numeric:tabular-nums;border-radius:999px;padding:2px 6px;font-size:10px}.haven-filter-badge[aria-pressed=true] b{background:#ffffff2e}.haven-toolbar-advanced-controls{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.haven-toolbar-footer{border-top:1px solid var(--hc-line);justify-content:space-between;align-items:center;gap:12px;padding-top:10px;display:flex}.haven-result-count{color:var(--hc-muted);font-variant-numeric:tabular-nums;font-size:12px;font-weight:650}.haven-clear-filters{min-height:36px;color:var(--hc-accent);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:6px;padding:7px 10px;font-size:12px;font-weight:750;display:inline-flex}.haven-clear-filters:hover{background:color-mix(in srgb,var(--hc-accent) 10%,transparent)}.haven-data-toolbar.is-customer .haven-clear-filters{min-height:44px}.haven-empty-state{text-align:center;border:1px dashed var(--hc-line,var(--dl,#dce4e1));background:var(--hc-surface,var(--ds,#fff));min-height:220px;color:var(--hc-muted,var(--dm,#53676b));border-radius:12px;place-items:center;padding:32px;display:grid}.customer-shell .haven-empty-state{--hc-surface:var(--cp-panel);--hc-line:var(--cp-line);--hc-text:var(--cp-text);--hc-muted:var(--cp-muted);--hc-accent:var(--cp-green)}.haven-empty-state.is-customer{border-radius:14px;min-height:260px}.haven-empty-icon{background:color-mix(in srgb,var(--hc-accent,#176773) 12%,transparent);width:44px;height:44px;color:var(--hc-accent,#176773);border-radius:50%;place-items:center;margin-bottom:12px;display:grid}.haven-empty-state :is(h2,h3){color:var(--hc-text,var(--dt,#103e48));margin:0;font-size:20px}.haven-empty-state p{max-width:52ch;margin:7px 0 0;line-height:1.55}.haven-empty-action{margin-top:18px}.haven-status{--status-bg:#ecefeb;--status-fg:#4f5e59;--status-border:#d7ddda;border:1px solid var(--status-border);background:var(--status-bg);width:max-content;max-width:100%;color:var(--status-fg);white-space:nowrap;border-radius:999px;align-items:center;gap:5px;font-weight:750;line-height:1.2;display:inline-flex}.haven-status--sm{padding:4px 8px;font-size:10px}.haven-status--md{padding:5px 10px;font-size:12px}.haven-status--lg{padding:7px 12px;font-size:14px}.haven-status--success{--status-bg:#def1e8;--status-fg:#267056;--status-border:#bfe2d3}.haven-status--info{--status-bg:#e1eeeb;--status-fg:#155d65;--status-border:#bddbd8}.haven-status--warning{--status-bg:#fff0dd;--status-fg:#8a4c18;--status-border:#f1d3aa}.haven-status--danger{--status-bg:#f9e3e1;--status-fg:#923c38;--status-border:#edc2bf}.customer-shell .haven-status--success{--status-bg:var(--st-pos-bg);--status-fg:var(--st-pos-fg);--status-border:var(--st-pos-bd)}.customer-shell .haven-status--info{--status-bg:var(--st-info-bg);--status-fg:var(--st-info-fg);--status-border:var(--st-info-bd)}.customer-shell .haven-status--warning{--status-bg:var(--st-warn-bg);--status-fg:var(--st-warn-fg);--status-border:var(--st-warn-bd)}.customer-shell .haven-status--danger{--status-bg:var(--st-neg-bg);--status-fg:var(--st-neg-fg);--status-border:var(--st-neg-bd)}.customer-shell .haven-status--neutral{--status-bg:var(--st-neutral-bg);--status-fg:var(--st-neutral-fg);--status-border:var(--st-neutral-bd)}.app-shell .haven-status--success{--status-bg:#173024;--status-fg:#65d3a5;--status-border:#285441}.app-shell .haven-status--info{--status-bg:#17363f;--status-fg:#85cbd0;--status-border:#2e5963}.app-shell .haven-status--warning{--status-bg:#34291c;--status-fg:#dfa062;--status-border:#5f482c}.app-shell .haven-status--danger{--status-bg:#351f21;--status-fg:#ef797e;--status-border:#67353a}.theme-light .app-shell .haven-status--success{--status-bg:#def1e8;--status-fg:#267056;--status-border:#bfe2d3}.theme-light .app-shell .haven-status--info{--status-bg:#e1eeeb;--status-fg:#155d65;--status-border:#bddbd8}.theme-light .app-shell .haven-status--warning{--status-bg:#fff0dd;--status-fg:#8a4c18;--status-border:#f1d3aa}.theme-light .app-shell .haven-status--danger{--status-bg:#f9e3e1;--status-fg:#923c38;--status-border:#edc2bf}.haven-status.is-outline{background:0 0}.haven-status.is-soft{border-color:#0000}.haven-status svg{flex:none;width:1em;height:1em}.haven-status-group{flex-wrap:wrap;gap:6px;display:flex}@media (max-width:720px){.haven-data-toolbar,.haven-data-toolbar.is-customer{padding:14px}.haven-search-input{width:100%}.haven-filter-badges{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.haven-filter-badge{justify-content:space-between;min-height:44px}.haven-toolbar-advanced-controls{grid-template-columns:1fr;display:grid}.haven-toolbar-advanced-controls>.haven-filter,.haven-toolbar-advanced-controls>.haven-select{width:100%}.haven-toolbar-footer{flex-direction:column;align-items:flex-start}.haven-clear-filters{min-height:44px}}@media (max-width:420px){.haven-filter-badges{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.haven-search-input input,.haven-filter-badge{transition:none}}
.room-details-modal{z-index:1001;width:100%;max-height:none;box-shadow:none;pointer-events:none;background:0 0;justify-content:center;align-items:center;margin:0;padding:24px;display:flex;position:fixed;inset:0;overflow:visible}.room-details-modal .modal-content{pointer-events:auto;width:min(920px,100%)}.available-room-image.room-photo{background-position:50%;background-size:cover}.available-room-image.room-photo:after{opacity:.2}.rd-gallery{aspect-ratio:16/9;background:linear-gradient(135deg,#77bec6,#084b55);border-radius:10px;position:relative;overflow:hidden}.rd-photo{object-fit:cover;width:100%;height:100%;display:block}.rd-gallery-fallback{text-align:center;color:#fff;height:100%;font:500 22px/1.2 var(--font-display,Georgia, serif);place-items:center;padding:18px;display:grid}.rd-arrow{z-index:2;color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000059;border:1px solid #ffffff59;border-radius:50%;place-items:center;width:36px;height:36px;display:grid;position:absolute;top:50%;translate:0 -50%}.rd-arrow:hover{background:#0000008c}.rd-arrow:focus-visible{outline-offset:2px;outline:2px solid #fff}.rd-arrow--prev{left:12px}.rd-arrow--next{right:12px}.rd-arrow:disabled{display:none}.rd-count{z-index:2;color:#fff;background:#00000073;border-radius:999px;padding:4px 9px;font-size:11px;font-weight:750;position:absolute;bottom:10px;right:12px}.rd-thumbs{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.rd-thumb{border:2px solid var(--cp-line,#e3e5df);background:var(--cp-line,#e3e5df);cursor:pointer;opacity:.65;border-radius:8px;width:76px;height:52px;padding:0;overflow:hidden}.rd-thumb img{object-fit:cover;width:100%;height:100%;display:block}.rd-thumb.is-active{border-color:var(--cp-green,#176773);opacity:1}.rd-thumb:focus-visible{outline:2px solid var(--cp-green,#176773);outline-offset:1px}.available-room-image{overflow:clip}.available-room-image img{transition:transform .2s}.available-room-image:is(:hover,:focus-within) img{transform:scale(1.02)}.rd-photo-open{cursor:zoom-in;background:0 0;border:0;width:100%;padding:0;display:block}.rd-photo-open:focus-visible{outline-offset:-2px;border-radius:10px;outline:2px solid #fff}.room-photo-open{z-index:2;cursor:zoom-in;background:0 0;border:0;width:100%;padding:0;transition:background-color .18s;display:block;position:absolute;inset:0}.room-photo-open-hint{color:#fff;opacity:0;background:#0000008c;border-radius:999px;align-items:center;gap:6px;padding:6px 10px;font-size:11px;font-weight:750;transition:opacity .18s,transform .18s;display:inline-flex;position:absolute;bottom:10px;right:12px;transform:translateY(3px)}.available-room-image:is(:hover,:focus-within) .room-photo-open{background:#00000024}.available-room-image:is(:hover,:focus-within) .room-photo-open-hint{opacity:1;transform:none}.room-photo-open:focus-visible{outline-offset:-2px;outline:2px solid #fff}.room-photo-open:focus-visible .room-photo-open-hint{opacity:1;transform:none}@keyframes roomLightboxIn{0%{opacity:0}to{opacity:1}}@keyframes roomLightboxPhotoIn{0%{opacity:0;transform:scale(.985)}to{opacity:1;transform:scale(1)}}.room-lightbox{z-index:var(--z-index-lightbox,1400);padding:calc(14px + env(safe-area-inset-top)) 18px calc(14px + env(safe-area-inset-bottom));grid-template:"top top top""prev stage next"minmax(0,1fr)"zoom zoom zoom"/auto minmax(0,1fr) auto;place-items:center;gap:10px;animation:.18s ease-out roomLightboxIn;display:grid;position:fixed;inset:0;overflow:clip}.room-lightbox-backdrop{background:#080a0ae0;position:absolute;inset:0}.room-lightbox-top{z-index:1;grid-area:top;justify-content:space-between;align-items:center;gap:12px;width:min(1100px,100%);display:flex;position:relative}.room-lightbox-top p{color:#f2f5f4;margin:0;font-size:13px;font-weight:650}.room-lightbox-close{color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #ffffff40;border-radius:50%;flex:none;place-items:center;width:44px;height:44px;display:grid}.room-lightbox-close:hover{background:#ffffff2e}.room-lightbox-close:focus-visible{outline-offset:2px;outline:2px solid #fff}.room-lightbox-arrow{z-index:1;color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #ffffff40;border-radius:50%;place-items:center;width:44px;height:44px;display:grid;position:relative}.room-lightbox-arrow:hover:not(:disabled){background:#ffffff2e}.room-lightbox-arrow:focus-visible{outline-offset:2px;outline:2px solid #fff}.room-lightbox-arrow:disabled{opacity:.3;cursor:default}.room-lightbox-prev{grid-area:prev}.room-lightbox-next{grid-area:next}.room-lightbox-stage{z-index:1;touch-action:none;grid-area:stage;place-items:center;width:min(1100px,100%);height:100%;min-height:0;display:grid;position:relative;overflow:hidden}.room-lightbox-stage img{object-fit:contain;-webkit-user-select:none;user-select:none;border-radius:8px;max-width:min(94vw,100%);max-height:68vh;animation:.16s ease-out roomLightboxPhotoIn;display:block}.room-lightbox-fallback{text-align:center;color:#f2f5f4;border:1px dashed #ffffff4d;border-radius:12px;place-content:center;gap:6px;padding:40px;display:grid}.room-lightbox-fallback p{margin:0;font-size:15px;font-weight:700}.room-lightbox-fallback small{color:#b9c4c1;font-size:12px}.room-lightbox-stage.is-zoomed{cursor:grab}.room-lightbox-stage.is-zoomed:active{cursor:grabbing}.room-lightbox-zoom{z-index:1;background:#ffffff14;border:1px solid #ffffff29;border-radius:999px;grid-area:zoom;align-items:center;gap:4px;padding:4px;display:inline-flex;position:relative}.room-lightbox-zoom button{color:#fff;cursor:pointer;background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;gap:4px;min-width:44px;min-height:40px;padding:0 12px;font-size:13px;font-weight:750;display:inline-flex}.room-lightbox-zoom button:hover:not(:disabled){background:#ffffff24}.room-lightbox-zoom button:focus-visible{outline-offset:2px;outline:2px solid #fff}.room-lightbox-zoom button:disabled{opacity:.35;cursor:default}@media (max-width:640px){.room-lightbox{grid-template-columns:auto minmax(0,1fr) auto;gap:6px;padding-left:10px;padding-right:10px}.room-lightbox-arrow{width:40px;height:40px}.room-lightbox-stage img{max-height:62vh}.room-photo-open-hint{opacity:1}}@media (prefers-reduced-motion:reduce){.room-lightbox,.room-lightbox-stage img{animation:none}.room-photo-open,.room-photo-open-hint,.available-room-image img{transition:none}.room-photo-open-hint,.available-room-image:is(:hover,:focus-within) img{transform:none}}.rd-facts{flex-wrap:wrap;gap:8px;margin:16px 0 4px;padding:0;display:flex}.rd-facts li{border:1px solid var(--cp-line,#e3e5df);background:var(--cp-panel-2,#f7f9f6);color:var(--cp-text,#103e48);border-radius:999px;align-items:center;gap:6px;padding:6px 11px;font-size:12px;font-weight:650;list-style:none;display:inline-flex}.rd-facts svg{color:var(--cp-green,#176773);flex:none}.rd-note{color:var(--cp-green,#176773);margin:10px 0 0;font-size:12px;font-weight:750}.rd-draft-banner{border:1px dashed var(--cp-line,#e3e5df);background:color-mix(in srgb, var(--cp-muted,#6d7971) 12%, transparent);color:var(--cp-text,#103e48);letter-spacing:.4px;text-transform:uppercase;border-radius:8px;margin:0 0 14px;padding:9px 12px;font-size:12px;font-weight:750;display:block}.rd-description{color:var(--cp-muted,#6d7971);margin:12px 0 0;font-size:14px;line-height:1.7}.rd-heading{letter-spacing:.7px;text-transform:uppercase;color:var(--cp-muted,#6d7971);margin:20px 0 10px;font-size:11px;font-weight:800}.rd-amenities{grid-template-columns:1fr 1fr;gap:8px 14px;margin:0;padding:0;list-style:none;display:grid}.rd-amenities li{color:var(--cp-text,#103e48);align-items:center;gap:8px;font-size:13px;display:flex}.rd-amenities svg{color:var(--cp-green,#176773);flex:none}.rd-rate{border:1px solid var(--cp-line,#e3e5df);background:var(--cp-panel-2,#f7f9f6);border-radius:10px;flex-wrap:wrap;align-items:baseline;gap:2px 16px;margin-top:20px;padding:14px 16px;display:flex}.rd-rate strong{color:var(--cp-text,#103e48);font-size:20px}.rd-rate small{color:var(--cp-muted,#6d7971)}.rd-foot-rate{flex-direction:column;margin-right:auto;line-height:1.25;display:flex}.rd-foot-rate strong{font-size:18px}.rd-foot-rate small{font-size:11px}@media (max-width:640px){.room-details-modal{align-items:flex-end;padding:0}.room-details-modal .modal-content{border-radius:16px 16px 0 0;width:100%;max-height:90vh}.rd-amenities{grid-template-columns:1fr}.rd-facts li{font-size:11px}}
:root{--color-green-50:#f0fdf4;--color-green-100:#dcfce7;--color-green-200:#bbf7d0;--color-green-300:#86efac;--color-green-400:#4ade80;--color-green-500:#22c55e;--color-green-600:#16a34a;--color-green-700:#15803d;--color-green-800:#166534;--color-green-900:#14532d;--color-green-950:#052e16;--color-amber-50:#fffbeb;--color-amber-100:#fef3c7;--color-amber-200:#fde68a;--color-amber-300:#fcd34d;--color-amber-400:#fbbf24;--color-amber-500:#f59e0b;--color-amber-600:#d97706;--color-amber-700:#b45309;--color-amber-800:#92400e;--color-amber-900:#78350f;--color-amber-950:#451a03;--color-orange-50:#fff7ed;--color-orange-100:#ffedd5;--color-orange-200:#fed7aa;--color-orange-300:#fdba74;--color-orange-400:#fb923c;--color-orange-500:#f97316;--color-orange-600:#ea580c;--color-orange-700:#c2410c;--color-orange-800:#9a3412;--color-orange-900:#7c2d12;--color-orange-950:#431407;--color-red-50:#fef2f2;--color-red-100:#fee2e2;--color-red-200:#fecaca;--color-red-300:#fca5a5;--color-red-400:#f87171;--color-red-500:#ef4444;--color-red-600:#dc2626;--color-red-700:#b91c1c;--color-red-800:#991b1b;--color-red-900:#7f1d1d;--color-red-950:#450a0a;--color-blue-50:#eff6ff;--color-blue-100:#dbeafe;--color-blue-200:#bfdbfe;--color-blue-300:#93c5fd;--color-blue-400:#60a5fa;--color-blue-500:#3b82f6;--color-blue-600:#2563eb;--color-blue-700:#1d4ed8;--color-blue-800:#1e40af;--color-blue-900:#1e3a8a;--color-blue-950:#172554;--color-slate-50:#f8fafc;--color-slate-100:#f1f5f9;--color-slate-200:#e2e8f0;--color-slate-300:#cbd5e1;--color-slate-400:#94a3b8;--color-slate-500:#64748b;--color-slate-600:#475569;--color-slate-700:#334155;--color-slate-800:#1e293b;--color-slate-900:#0f172a;--color-slate-950:#020617;--color-forest:#084b55;--color-forest-light:#176773;--color-forest-dark:#082f39;--color-mint:#e1eeeb;--color-cream:#f8f6f1;--color-paper:#fff;--brand-accent:#084b55;--brand-accent-dark:#136573;--brand-accent-light:#77bec6;--color-ink:#103e48;--color-line:#e3e5df;--color-muted:#6f7974;--brand-danger:#a94e48;--space-0:0;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:28px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-20:80px;--space-24:96px;--font-sans:system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-display:Georgia, "Times New Roman", serif;--font-mono:ui-monospace, SFMono-Regular, "SF Mono", Menlo, monospace;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--font-size-xs:.75rem;--font-size-sm:.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:1.875rem;--font-size-4xl:2.25rem;--font-size-5xl:3rem;--font-size-6xl:3.75rem;--line-height-tight:1.1;--line-height-snug:1.375;--line-height-normal:1.5;--line-height-relaxed:1.625;--line-height-loose:2;--letter-spacing-tight:-.02em;--letter-spacing-normal:0;--letter-spacing-wide:.02em;--letter-spacing-wider:.04em;--letter-spacing-widest:.1em;--radius-none:0;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-xl:12px;--radius-2xl:16px;--radius-full:9999px;--shadow-xs:0 1px 2px 0 #0000000d;--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;--shadow-xl:0 20px 25px -5px #0000001a, 0 8px 10px -6px #0000001a;--shadow-2xl:0 25px 50px -12px #00000040;--shadow-inner:inset 0 2px 4px 0 #0000000d;--z-index-dropdown:100;--z-index-sticky:200;--z-index-fixed:300;--z-index-modal-backdrop:1000;--z-index-modal:1010;--z-index-popover:1100;--z-index-tooltip:1200;--z-index-toast:1300;--z-index-lightbox:1400;--transition-fast:.1s ease;--transition-normal:.15s ease;--transition-slow:.2s ease;--transition-slower:.3s ease;--bp-sm:640px;--bp-md:768px;--bp-lg:1024px;--bp-xl:1280px;--bp-2xl:1536px;--color-bg:var(--color-cream);--color-bg-elevated:var(--color-paper);--color-bg-subtle:var(--color-mint);--color-bg-hover:var(--color-slate-100);--color-bg-active:var(--color-slate-200);--color-fg:var(--color-ink);--color-fg-muted:var(--color-muted);--color-fg-subtle:var(--color-slate-400);--color-fg-inverse:var(--color-paper);--color-border:var(--color-line);--color-border-strong:var(--color-slate-300);--color-border-subtle:var(--color-slate-200);--color-border-focus:var(--color-green-600);--color-accent:var(--brand-accent);--color-accent-hover:var(--brand-accent-dark);--color-accent-light:var(--brand-accent-light);--color-accent-fg:var(--color-paper);--color-primary:var(--color-forest);--color-primary-hover:var(--color-forest-light);--color-primary-light:var(--color-mint);--color-primary-fg:var(--color-paper);--color-success:var(--color-green-600);--color-success-bg:var(--color-green-100);--color-success-border:var(--color-green-200);--color-success-fg:var(--color-green-800);--color-warning:var(--color-amber-600);--color-warning-bg:var(--color-amber-100);--color-warning-border:var(--color-amber-200);--color-warning-fg:var(--color-amber-800);--color-danger:var(--brand-danger);--color-danger-bg:var(--color-red-100);--color-danger-border:var(--color-red-200);--color-danger-fg:var(--color-red-800);--color-info:var(--color-blue-600);--color-info-bg:var(--color-blue-100);--color-info-border:var(--color-blue-200);--color-info-fg:var(--color-blue-800);--surface-card:var(--color-paper);--surface-card-hover:var(--color-slate-50);--surface-panel:var(--color-paper);--surface-panel-hover:var(--color-slate-50);--surface-overlay:var(--color-paper);--surface-input:var(--color-paper);--surface-input-hover:var(--color-slate-50);--surface-input-focus:var(--color-paper);--btn-primary-bg:var(--color-accent);--btn-primary-hover:var(--color-accent-dark);--btn-primary-fg:var(--color-paper);--btn-secondary-bg:var(--color-paper);--btn-secondary-hover:var(--color-slate-100);--btn-secondary-fg:var(--color-ink);--btn-secondary-border:var(--color-line);--btn-ghost-bg:transparent;--btn-ghost-hover:var(--color-slate-100);--btn-ghost-fg:var(--color-ink);--btn-danger-bg:var(--color-danger);--btn-danger-hover:var(--color-red-700);--btn-danger-fg:var(--color-paper);--badge-bg:var(--color-slate-100);--badge-fg:var(--color-ink);--badge-border:var(--color-line);--input-bg:var(--color-paper);--input-border:var(--color-line);--input-border-hover:var(--color-slate-300);--input-border-focus:var(--color-green-600);--input-placeholder:var(--color-slate-400);--input-fg:var(--color-ink);--input-error-border:var(--color-danger);--input-error-bg:var(--color-red-50);--table-header-bg:var(--color-slate-50);--table-row-hover:var(--color-slate-50);--table-border:var(--color-line);--sidebar-bg:var(--color-forest-dark);--sidebar-fg:#dbe7e2;--sidebar-border:#29454d;--sidebar-hover:#ffffff1a;--sidebar-active:#ffffff26;--sidebar-active-border:var(--color-accent);--header-bg:var(--color-paper);--header-border:var(--color-line);--header-shadow:var(--shadow-sm);--modal-backdrop:#040c098c;--modal-bg:var(--color-paper);--modal-border:var(--color-line);--modal-shadow:var(--shadow-2xl);--toast-bg:var(--color-forest);--toast-fg:var(--color-paper);--tooltip-bg:var(--color-slate-900);--tooltip-fg:var(--color-paper);--focus-ring:var(--color-green-600);--focus-ring-offset:var(--color-paper);--focus-ring-width:2px;--focus-ring-offset-width:2px;--space-xs:var(--space-1);--space-sm:var(--space-2);--space-md:var(--space-4);--space-lg:var(--space-6);--space-xl:var(--space-8);--space-2xl:var(--space-12);--container-sm:640px;--container-md:768px;--container-lg:1024px;--container-xl:1280px;--container-2xl:1536px;--container-full:100%;--radius-btn:var(--radius-md);--radius-input:var(--radius-md);--radius-card:var(--radius-lg);--radius-modal:var(--radius-xl);--radius-badge:var(--radius-full);--icon-xs:12px;--icon-sm:16px;--icon-md:20px;--icon-lg:24px;--icon-xl:32px;--touch-target-min:44px}@media (prefers-color-scheme:dark){:root:not(.theme-light){--color-bg:var(--color-slate-950);--color-bg-elevated:var(--color-slate-900);--color-bg-subtle:var(--color-slate-800);--color-bg-hover:var(--color-slate-800);--color-bg-active:var(--color-slate-700);--color-fg:var(--color-slate-50);--color-fg-muted:var(--color-slate-400);--color-fg-subtle:var(--color-slate-500);--color-fg-inverse:var(--color-slate-950);--color-border:var(--color-slate-700);--color-border-strong:var(--color-slate-600);--color-border-subtle:var(--color-slate-800);--color-border-focus:var(--color-green-400);--color-accent:var(--color-accent-light);--color-accent-hover:var(--color-amber-400);--color-accent-light:var(--color-amber-300);--color-accent-fg:var(--color-slate-950);--color-primary:var(--color-green-400);--color-primary-hover:var(--color-green-300);--color-primary-light:color-mix(in srgb, var(--color-green-900) 30%, transparent);--color-primary-fg:var(--color-slate-950);--color-success:var(--color-green-400);--color-success-bg:color-mix(in srgb, var(--color-green-900) 30%, transparent);--color-success-border:var(--color-green-800);--color-success-fg:var(--color-green-300);--color-warning:var(--color-amber-400);--color-warning-bg:color-mix(in srgb, var(--color-amber-900) 30%, transparent);--color-warning-border:var(--color-amber-800);--color-warning-fg:var(--color-amber-300);--color-danger:var(--color-red-400);--color-danger-bg:color-mix(in srgb, var(--color-red-900) 30%, transparent);--color-danger-border:var(--color-red-800);--color-danger-fg:var(--color-red-300);--color-info:var(--color-blue-400);--color-info-bg:color-mix(in srgb, var(--color-blue-900) 30%, transparent);--color-info-border:var(--color-blue-800);--color-info-fg:var(--color-blue-300);--surface-card:var(--color-slate-900);--surface-card-hover:var(--color-slate-800);--surface-panel:var(--color-slate-900);--surface-panel-hover:var(--color-slate-800);--surface-overlay:var(--color-slate-900);--surface-input:var(--color-slate-800);--surface-input-hover:var(--color-slate-700);--surface-input-focus:var(--color-slate-800);--btn-primary-bg:var(--color-accent-light);--btn-primary-hover:var(--color-amber-400);--btn-primary-fg:var(--color-slate-950);--btn-secondary-bg:var(--color-slate-800);--btn-secondary-hover:var(--color-slate-700);--btn-secondary-fg:var(--color-slate-50);--btn-secondary-border:var(--color-slate-700);--btn-ghost-bg:transparent;--btn-ghost-hover:var(--color-slate-800);--btn-ghost-fg:var(--color-slate-50);--btn-danger-bg:var(--color-red-500);--btn-danger-hover:var(--color-red-400);--btn-danger-fg:var(--color-paper);--badge-bg:var(--color-slate-800);--badge-fg:var(--color-slate-200);--badge-border:var(--color-slate-700);--input-bg:var(--color-slate-800);--input-border:var(--color-slate-700);--input-border-hover:var(--color-slate-600);--input-border-focus:var(--color-green-400);--input-placeholder:var(--color-slate-500);--input-fg:var(--color-slate-50);--input-error-border:var(--color-red-400);--input-error-bg:color-mix(in srgb, var(--color-red-900) 30%, transparent);--table-header-bg:var(--color-slate-900);--table-row-hover:var(--color-slate-800);--table-border:var(--color-slate-700);--sidebar-bg:var(--color-forest-dark);--sidebar-fg:#a9bbb4;--sidebar-border:#29454d;--sidebar-hover:#ffffff14;--sidebar-active:#ffffff1f;--sidebar-active-border:var(--color-accent-light);--header-bg:var(--color-slate-900);--header-border:var(--color-slate-700);--header-shadow:var(--shadow-sm);--modal-backdrop:#0009;--modal-bg:var(--color-slate-900);--modal-border:var(--color-slate-700);--modal-shadow:var(--shadow-2xl);--toast-bg:var(--color-slate-800);--toast-fg:var(--color-slate-50);--tooltip-bg:var(--color-slate-50);--tooltip-fg:var(--color-slate-950);--focus-ring:var(--color-green-400);--focus-ring-offset:var(--color-slate-900)}}.theme-light{--color-bg:var(--color-cream);--color-bg-elevated:var(--color-paper);--color-bg-subtle:var(--color-mint);--color-bg-hover:var(--color-slate-100);--color-bg-active:var(--color-slate-200);--color-fg:var(--color-ink);--color-fg-muted:var(--color-muted);--color-fg-subtle:var(--color-slate-400);--color-fg-inverse:var(--color-paper);--color-border:var(--color-line);--color-border-strong:var(--color-slate-300);--color-border-subtle:var(--color-slate-200);--color-border-focus:var(--color-green-600);--color-accent:var(--brand-accent);--color-accent-hover:var(--brand-accent-dark);--color-accent-light:var(--brand-accent-light);--color-accent-fg:var(--color-paper);--color-primary:var(--color-forest);--color-primary-hover:var(--color-forest-light);--color-primary-light:var(--color-mint);--color-primary-fg:var(--color-paper);--color-success:var(--color-green-600);--color-success-bg:var(--color-green-100);--color-success-border:var(--color-green-200);--color-success-fg:var(--color-green-800);--color-warning:var(--color-amber-600);--color-warning-bg:var(--color-amber-100);--color-warning-border:var(--color-amber-200);--color-warning-fg:var(--color-amber-800);--color-danger:var(--brand-danger);--color-danger-bg:var(--color-red-100);--color-danger-border:var(--color-red-200);--color-danger-fg:var(--color-red-800);--color-info:var(--color-blue-600);--color-info-bg:var(--color-blue-100);--color-info-border:var(--color-blue-200);--color-info-fg:var(--color-blue-800);--surface-card:var(--color-paper);--surface-card-hover:var(--color-slate-50);--surface-panel:var(--color-paper);--surface-panel-hover:var(--color-slate-50);--surface-overlay:var(--color-paper);--surface-input:var(--color-paper);--surface-input-hover:var(--color-slate-50);--surface-input-focus:var(--color-paper);--btn-primary-bg:var(--color-accent);--btn-primary-hover:var(--color-accent-dark);--btn-primary-fg:var(--color-paper);--btn-secondary-bg:var(--color-paper);--btn-secondary-hover:var(--color-slate-100);--btn-secondary-fg:var(--color-ink);--btn-secondary-border:var(--color-line);--btn-ghost-bg:transparent;--btn-ghost-hover:var(--color-slate-100);--btn-ghost-fg:var(--color-ink);--btn-danger-bg:var(--color-danger);--btn-danger-hover:var(--color-red-700);--btn-danger-fg:var(--color-paper);--badge-bg:var(--color-slate-100);--badge-fg:var(--color-ink);--badge-border:var(--color-line);--input-bg:var(--color-paper);--input-border:var(--color-line);--input-border-hover:var(--color-slate-300);--input-border-focus:var(--color-green-600);--input-placeholder:var(--color-slate-400);--input-fg:var(--color-ink);--input-error-border:var(--color-danger);--input-error-bg:var(--color-red-50);--table-header-bg:var(--color-slate-50);--table-row-hover:var(--color-slate-50);--table-border:var(--color-line);--sidebar-bg:var(--color-forest-dark);--sidebar-fg:#dbe7e2;--sidebar-border:#29454d;--sidebar-hover:#ffffff1a;--sidebar-active:#ffffff26;--sidebar-active-border:var(--color-accent);--header-bg:var(--color-paper);--header-border:var(--color-line);--header-shadow:var(--shadow-sm);--modal-backdrop:#040c098c;--modal-bg:var(--color-paper);--modal-border:var(--color-line);--modal-shadow:var(--shadow-2xl);--toast-bg:var(--color-forest);--toast-fg:var(--color-paper);--tooltip-bg:var(--color-slate-900);--tooltip-fg:var(--color-paper);--focus-ring:var(--color-green-600);--focus-ring-offset:var(--color-paper)}:root{--btn-height-sm:32px;--btn-height-md:40px;--btn-height-lg:48px;--btn-padding-x-sm:var(--space-3);--btn-padding-x-md:var(--space-4);--btn-padding-x-lg:var(--space-6);--input-height-sm:32px;--input-height-md:40px;--input-height-lg:48px;--input-padding-x:var(--space-3);--input-padding-y-sm:var(--space-1);--input-padding-y-md:var(--space-2);--input-padding-y-lg:var(--space-3);--card-padding-sm:var(--space-4);--card-padding-md:var(--space-6);--card-padding-lg:var(--space-8);--card-gap:var(--space-4);--modal-max-width-sm:400px;--modal-max-width-md:560px;--modal-max-width-lg:720px;--modal-max-width-xl:960px;--modal-max-width-full:95vw;--modal-padding:var(--space-6);--modal-header-branded-bg:#084b55;--modal-header-branded-border:#176773;--modal-header-branded-fg:#fff;--modal-header-branded-muted:#a9c6c3;--modal-header-branded-close-border:#ffffff2b;--modal-header-branded-close-bg:#ffffff0d;--modal-header-branded-close-hover:#ffffff1a;--table-cell-padding-x:var(--space-4);--table-cell-padding-y:var(--space-3);--table-header-padding-x:var(--space-4);--table-header-padding-y:var(--space-3);--sidebar-width:248px;--sidebar-width-collapsed:72px;--sidebar-transition:width .22s ease, padding .22s ease;--toast-padding:var(--space-4);--toast-gap:var(--space-3);--toast-border-radius:var(--radius-lg);--focus-visible:var(--focus-ring) var(--focus-ring-width) solid;--focus-visible-offset:var(--focus-ring-offset) var(--focus-ring-offset-width) solid}:focus-visible{outline:var(--focus-visible);outline-offset:var(--focus-ring-offset-width)}.skip-link{top:-100%;left:var(--space-4);background:var(--color-accent);color:var(--color-accent-fg);padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);z-index:var(--z-index-toast);transition:top var(--transition-fast);position:absolute}.skip-link:focus{top:var(--space-4)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (prefers-contrast:high){:root{--color-border:currentColor;--color-border-strong:currentColor;--focus-ring-width:3px}}@media print{.sidebar,.app-header,.page-title .btn,.table-tools,.dialog-backdrop,.dialog,.room-lightbox,.toast{display:none!important}.workspace{grid-column:1!important}.workspace-body{padding:0!important}.app-shell{display:block!important}.panel,.data-panel{break-inside:avoid}}:root,.theme-light{--cp-bg:var(--color-bg);--cp-panel:var(--surface-card);--cp-panel-2:var(--surface-panel);--cp-line:var(--color-border);--cp-text:var(--color-fg);--cp-muted:var(--color-fg-muted);--cp-green:var(--color-success);--cp-accent:var(--color-accent);--ink:var(--color-fg);--forest:var(--color-primary);--green:var(--color-success);--mint:var(--color-primary-light);--cream:var(--color-bg);--paper:var(--color-bg-elevated);--accent:var(--color-accent);--line:var(--color-border);--muted:var(--color-fg-muted);--danger:var(--color-danger);--shadow:var(--shadow-md)}
.btn{border-radius:6px;gap:8px;min-height:40px;transition:transform .18s,box-shadow .18s,background-color .18s,border-color .18s,color .18s}.btn svg{flex-shrink:0}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{cursor:not-allowed}.btn:focus-visible{outline:2px solid var(--focus-ring,var(--green,#176773));outline-offset:2px}.haven-button--primary{background:var(--btn-primary-bg,var(--accent,#084b55));color:var(--btn-primary-fg,#fff)}.haven-button--primary:hover:not(:disabled){background:var(--btn-primary-hover,#136573)}.haven-button--secondary{border:1px solid var(--btn-secondary-border,var(--line,#dce4e1));background:var(--btn-secondary-bg,#fff);color:var(--btn-secondary-fg,var(--ink,#103e48))}.haven-button--secondary:hover:not(:disabled){background:var(--btn-secondary-hover,#f3f6f4)}.haven-button--neutral{border:1px solid var(--btn-secondary-border,var(--line,#dce4e1));background:color-mix(in srgb, var(--btn-secondary-bg,#fff) 72%, var(--btn-secondary-border,#dce4e1));color:var(--btn-secondary-fg,var(--ink,#103e48))}.haven-button--danger{border:1px solid color-mix(in srgb, var(--btn-danger-bg,#a94e48) 45%, transparent);background:color-mix(in srgb, var(--btn-danger-bg,#a94e48) 12%, transparent);color:var(--btn-danger-bg,#a94e48)}.haven-button--danger:hover:not(:disabled){background:var(--btn-danger-bg,#a94e48);color:var(--btn-danger-fg,#fff)}.haven-button--internal{min-height:36px;padding:8px 14px}.haven-button--customer{border-radius:8px;min-height:44px;padding:11px 18px}.haven-button-icon{place-items:center;display:inline-grid}.btn-sm{padding-top:5px;padding-bottom:5px;border-radius:5px;gap:6px;min-height:32px;padding-inline:12px;font-size:12px}.btn-lg{gap:10px;min-height:48px;padding-inline:22px;font-size:15px}.btn-row{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:10px;display:flex}.btn-row.end{justify-content:flex-end}.btn-row.between{justify-content:space-between}.btn-row.center{justify-content:center}.btn-row.stack{flex-direction:column;align-items:stretch}.reservation-actions,.form-actions{flex-wrap:wrap}.table-action{white-space:nowrap;border-radius:4px;justify-content:center;align-items:center;gap:4px;min-height:26px;padding:5px 9px;font-size:10px;line-height:1.2;display:inline-flex}.table-action svg{flex-shrink:0}.table-action{transition:background-color .18s,border-color .18s,color .18s,transform .12s}.app-shell .table-action svg{width:13px;height:13px}@media (max-width:680px){.page-title .btn{white-space:nowrap;min-height:44px;padding:0 13px;font-size:12px}.page-title .btn:has(>svg:only-child){width:44px;padding:0;font-size:0}.page-title .btn svg{margin:0}.app-shell .btn,.btn-sm{min-height:44px}}.badge.active{color:#267056;background:#def1e8}.badge.on_leave{color:#a45a22;background:#fff0dd}.badge.suspended,.badge.escalated{color:#a44843;background:#f9e3e1}.badge.approved{color:#267056;background:#def1e8}.badge.high{color:#a45a22;background:#fff0dd}.badge.critical{color:#a44843;background:#f9e3e1}.app-shell .badge.active{color:#65d3a5;background:#173024}.app-shell .badge.on_leave{color:#dfa062;background:#34291c}.app-shell .badge.suspended,.app-shell .badge.escalated{color:#ef797e;background:#351f21}.app-shell .badge.approved{color:#65d3a5;background:#173024}.app-shell .badge.high{color:#dfa062;background:#34291c}.app-shell .badge.critical{color:#ef797e;background:#351f21}.theme-light .app-shell .badge.active{color:#267056;background:#def1e8}.theme-light .app-shell .badge.on_leave{color:#a45a22;background:#fff0dd}.theme-light .app-shell .badge.suspended,.theme-light .app-shell .badge.escalated{color:#a44843;background:#f9e3e1}.theme-light .app-shell .badge.approved{color:#267056;background:#def1e8}.theme-light .app-shell .badge.high{color:#a45a22;background:#fff0dd}.theme-light .app-shell .badge.critical{color:#a44843;background:#f9e3e1}.customer-shell .booking-notice{background:var(--cp-panel-2);border-color:var(--cp-line);color:var(--cp-accent)}.customer-shell .deposit-reference{color:var(--cp-muted)}
:root,.theme-light{--color-forest:#084b55;--color-forest-light:#176773;--color-forest-dark:#082f39;--color-cream:#f8f6f1;--color-mint:#e1eeeb;--brand-accent:#084b55;--brand-accent-dark:#136573;--brand-accent-light:#77bec6;--color-accent:#084b55;--color-accent-hover:#136573;--color-accent-dark:#136573;--color-primary:#084b55;--color-primary-hover:#136573;--color-primary-light:#e1eeeb;--btn-primary-bg:#084b55;--btn-primary-hover:#136573;--btn-primary-fg:#fff;--ink:#103e48;--forest:#084b55;--green:#176773;--accent:#084b55;--cream:#f8f6f1;--mint:#e1eeeb;--line:#dce4e1;--muted:#53676b;--focus-ring:#328d9b}.app-shell,.customer-shell{--db:#0c2027;--ds:#112c34;--ds2:#17363f;--dl:#29454d;--dt:#edf5f3;--dm:#9cb7bb;--dg:#85cbd0;--cp-bg:var(--db);--cp-panel:var(--ds);--cp-panel-2:var(--ds2);--cp-line:var(--dl);--cp-text:var(--dt);--cp-muted:var(--dm);--cp-green:var(--dg);--cp-accent:#85cbd0;--btn-primary-bg:#85cbd0;--btn-primary-hover:#b1dfe1;--btn-primary-fg:#082f39}.theme-light .app-shell,.theme-light .customer-shell{--db:#f6f5f0;--ds:#fff;--ds2:#f0f5f2;--dl:#dce4e1;--dt:#173e47;--dm:#5b7378;--dg:#176773;--cp-bg:var(--db);--cp-panel:var(--ds);--cp-panel-2:var(--ds2);--cp-line:var(--dl);--cp-text:var(--dt);--cp-muted:var(--dm);--cp-green:var(--dg);--cp-accent:#176773;--btn-primary-bg:#084b55;--btn-primary-hover:#136573;--btn-primary-fg:#fff}.app-shell .sidebar,.app-shell .app-header,.customer-shell .customer-sidebar,.customer-shell .customer-header,.theme-light .app-shell .sidebar,.theme-light .app-shell .app-header,.theme-light .customer-shell .customer-sidebar,.theme-light .customer-shell .customer-header{background:var(--ds);border-color:var(--dl);color:var(--dt)}.app-shell .sidebar .brand,.theme-light .app-shell .sidebar .brand,.app-shell .app-header p,.theme-light .app-shell .app-header p{color:var(--dt)}.app-shell .sidebar .brand-mark,.theme-light .app-shell .sidebar .brand-mark{color:var(--dg)}.app-shell .sidebar nav button.active,.theme-light .app-shell .sidebar nav button.active,.customer-shell .customer-sidebar nav a.active,.theme-light .customer-shell .customer-sidebar nav a.active{background:color-mix(in srgb,var(--dg) 12%,var(--ds));color:var(--dg);box-shadow:inset 2px 0 var(--dg)}.app-shell .sidebar nav button.active svg,.theme-light .app-shell .sidebar nav button.active svg{color:var(--dg)}.app-shell .sidebar nav button:hover,.theme-light .app-shell .sidebar nav button:hover,.customer-shell .customer-sidebar nav a:hover,.theme-light .customer-shell .customer-sidebar nav a:hover{background:var(--ds2);color:var(--dt)}.app-shell .btn-accent,.theme-light .app-shell .btn-accent,.customer-shell .btn-accent,.theme-light .customer-shell .btn-accent{background:var(--btn-primary-bg);color:var(--btn-primary-fg)}.app-shell .btn-accent:hover,.theme-light .app-shell .btn-accent:hover,.customer-shell .btn-accent:hover,.theme-light .customer-shell .btn-accent:hover{background:var(--btn-primary-hover)}.app-shell .property-pill,.theme-light .app-shell .property-pill{background:var(--ds2);border-color:var(--dl)}.app-shell .property-pill>span,.theme-light .app-shell .property-pill>span{background:color-mix(in srgb,var(--dg) 15%,var(--ds));color:var(--dg)}.customer-shell .customer-identity b{color:#084b55;background:#d3e8e4}.booking-hero{background:linear-gradient(115deg,#0a4953,#082f39)}@media (prefers-color-scheme:dark){:root:not(.theme-light){--color-forest:#0c2027;--color-forest-light:#112c34;--color-forest-dark:#081720;--color-cream:#112c34;--color-mint:#17363f;--brand-accent:#85cbd0;--brand-accent-dark:#77bec6;--brand-accent-light:#b1dfe1;--color-accent:#85cbd0;--color-accent-hover:#b1dfe1;--color-accent-dark:#77bec6;--color-primary:#85cbd0;--color-primary-hover:#b1dfe1;--color-primary-light:#17363f;--btn-primary-bg:#85cbd0;--btn-primary-hover:#b1dfe1;--btn-primary-fg:#082f39;--ink:#d6e6e6;--forest:#85cbd0;--green:#77bec6;--accent:#85cbd0;--cream:#112c34;--mint:#17363f;--line:#29454d;--muted:#9cb7bb;--focus-ring:#85cbd0}}
.customer-content-header .customer-header-link{position:relative}.customer-bell-badge{color:#fff;background:#084b55;border-radius:999px;place-items:center;min-width:18px;height:18px;padding:0 5px;font-size:10px;font-style:normal;font-weight:700;line-height:1;display:grid;position:absolute;top:-6px;right:-6px}.customer-notifications-popover button.customer-notifications-all{border:0;border-top:1px solid var(--cp-line);width:100%;font:inherit;cursor:pointer;text-align:left;background:0 0}.notification-popover .notification-view-all{border:0;border-top:1px solid var(--dl,#e5eae6);color:#85cbd0;cursor:pointer;text-align:left;background:0 0;border-radius:0 0 6px 6px;align-items:center;gap:8px;width:100%;padding:10px 16px;font-size:10px;font-weight:700;display:flex}.notification-popover .notification-view-all:hover{background:#ffffff0f}.theme-light .app-shell .notification-popover .notification-view-all{color:#176773;border-top-color:#e5eae6}.theme-light .app-shell .notification-popover .notification-view-all:hover{background:#f5f8f6}.nh-modal.modal-xl{width:min(880px,100vw - 48px);max-height:85vh}.nh-filters{background:var(--cp-panel,#fff);flex-wrap:wrap;align-items:center;gap:12px;padding-bottom:12px;display:flex;position:sticky;top:0}.nh-filters .haven-select{min-width:200px}.nh-date{border:1px solid var(--cp-line,#e3e5df);background:var(--cp-panel,#fff);color:var(--cp-text,#103e48);font:inherit;border-radius:8px;padding:10px 12px;font-size:14px}.nh-date:focus{border-color:var(--cp-green,#176773);outline:none;box-shadow:0 0 0 3px #084b5526}.nh-mark{border:1px solid var(--cp-line,#e3e5df);background:var(--cp-panel-2,#f7f9f6);color:var(--cp-text,#103e48);cursor:pointer;border-radius:8px;margin-left:auto;padding:10px 14px;font-size:13px;font-weight:600}.nh-mark:hover:not(:disabled){border-color:var(--cp-green,#176773);color:var(--cp-green,#176773)}.nh-mark:disabled{opacity:.55;cursor:not-allowed}.nh-showing{color:var(--cp-muted,#6d7971);margin:0 0 12px;font-size:12px}.nh-section{text-transform:uppercase;letter-spacing:1px;color:var(--cp-muted,#6d7971);align-items:center;gap:8px;margin:16px 0 8px;font-size:12px;font-weight:700;display:flex}.nh-count{background:var(--cp-panel-2,#f7f9f6);border:1px solid var(--cp-line,#e3e5df);min-width:22px;height:22px;color:var(--cp-text,#103e48);letter-spacing:0;border-radius:999px;place-items:center;padding:0 6px;font-size:11px;display:inline-grid}.nh-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.nh-item{border:1px solid var(--cp-line,#e3e5df);background:var(--cp-panel,#fff);border-radius:10px;align-items:flex-start;gap:12px;padding:12px 14px;display:flex}.nh-item.is-unread{background:#eef5f4;border-color:#cfdeda}.nh-icon{background:var(--cp-panel-2,#f7f9f6);width:30px;height:30px;color:var(--cp-green,#176773);border:1px solid var(--cp-line,#e3e5df);border-radius:8px;flex:none;place-items:center;display:grid}.nh-item.is-unread .nh-icon{background:#dcebe8;border-color:#bccfd8}.nh-copy{flex:1;min-width:0}.nh-title{color:var(--cp-text,#103e48);align-items:center;gap:8px;margin:0;font-size:14px;font-weight:600;display:flex}.nh-item:not(.is-unread) .nh-title{font-weight:500}.nh-dot{background:var(--cp-green,#176773);border-radius:50%;flex:none;width:8px;height:8px}.nh-detail{color:var(--cp-text,#103e48);margin:4px 0 0;font-size:13px;line-height:1.5}.nh-meta{color:var(--cp-muted,#6d7971);margin:4px 0 0;font-size:12px}.nh-view{border:1px solid var(--cp-line,#e3e5df);background:var(--cp-panel-2,#f7f9f6);color:var(--cp-green,#176773);cursor:pointer;white-space:nowrap;border-radius:8px;flex:none;align-self:center;padding:8px 12px;font-size:13px;font-weight:600;text-decoration:none}.nh-view:hover{border-color:var(--cp-green,#176773)}.nh-empty{color:var(--cp-muted,#6d7971);margin:8px 0;font-size:13px}@media (max-width:680px){.nh-modal.modal-xl{width:calc(100vw - 16px);max-height:90vh}.nh-mark{width:100%;margin-left:0}}
