#reservationsSection .dp-res-header{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:var(--dpui-space-4,16px);margin-bottom:18px}
#reservationsSection .dp-res-header h2{font-size:22px!important;letter-spacing:-.4px}
#reservationsSection .dp-res-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--dpui-space-2,8px)}
#reservationsSection .dp-res-new{width:auto!important;min-height:42px;padding:9px 18px!important;background:var(--accent-color,#a35026)!important;box-shadow:none!important;border-radius:var(--dpui-radius-control,10px)!important;font-size:13px!important}
#reservationsSection .dp-res-gear{width:42px;min-width:42px;min-height:42px;padding:0;border:1px solid var(--border-color,#dfe3e8);border-radius:var(--dpui-radius-control,10px);background:var(--bg-secondary,#f5f6f8);color:var(--text-primary,#202333);font-size:var(--dpui-font-xl,20px);cursor:pointer}
#reservationsSection .dp-res-set>summary{display:none!important}
#reservationsSection .dp-res-set:not([open]){display:none}
#reservationsSection .dp-res-set[open]{padding:var(--dpui-space-3,12px);border:1px solid var(--border-color,#dfe3e8);border-radius:var(--dpui-radius-card,12px);margin-bottom:var(--dpui-space-4,16px)}
#reservationsSection .dp-res-tabs{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 var(--dpui-space-4,16px)}
#reservationsSection .dp-res-tabs>button{flex:none!important;min-height:38px;padding:var(--dpui-space-2,8px) var(--dpui-space-3,12px)!important;font-size:var(--dpui-font-sm,12px)!important;white-space:nowrap}
#reservationsSection #resPageMonth{padding:14px;border:1px solid var(--border-color,#dfe3e8);border-radius:14px;background:var(--bg-secondary,#f7f8fa);margin-bottom:18px}
#reservationsSection .dp-res-overview-tools{display:flex;align-items:center;justify-content:space-between;gap:var(--dpui-space-3,12px);margin-bottom:var(--dpui-space-3,12px)}
#reservationsSection .dp-res-overview-tools h3{font-size:15px;margin:0;color:var(--text-primary)}
#reservationsSection .dp-res-overview-tools select{min-height:40px;width:auto;max-width:50%;padding:var(--dpui-space-2,8px) var(--dpui-space-3,12px);border:1px solid var(--border-color,#dfe3e8);border-radius:9px;color:var(--text-primary);background:var(--bg-card,#fff);font:inherit;font-size:var(--dpui-font-sm,12px)}
#reservationsSection [hidden]{display:none!important}
#reservationsSection .dp-res-search{margin-bottom:var(--dpui-space-3,12px)}
#reservationsSection #resPageMonthGrid>div>div{min-width:0}
#reservationsSection button:focus-visible,#reservationsSection select:focus-visible{outline:2px solid #a35026;outline-offset:2px}
@media(max-width:600px){#reservationsSection .dp-res-header{gap:var(--dpui-space-2,8px);margin-bottom:14px}#reservationsSection .dp-res-header h2{font-size:19px!important}#reservationsSection #resPageStats{font-size:10px!important;line-height:1.5}#reservationsSection .dp-res-new{padding:var(--dpui-space-2,8px) var(--dpui-space-3,12px)!important;flex:1}#reservationsSection .dp-res-header-actions{gap:6px}#reservationsSection .dp-res-tabs>button{padding:var(--dpui-space-2,8px) 9px!important;font-size:var(--dpui-font-xs,11px)!important;flex:1!important}#reservationsSection #resPageMonth{padding:9px}#reservationsSection #resPageMonthGrid>div{gap:3px!important}#reservationsSection #resPageMonthGrid>div>div[onclick]{min-height:54px!important;padding:5px 3px!important}#reservationsSection .dp-res-overview-tools h3{font-size:13px}#reservationsSection .dp-res-overview-tools select{padding:var(--dpui-space-2,8px);font-size:var(--dpui-font-xs,11px)}}
#reservationsSection .dp-res-empty{grid-column:1/-1;padding:28px var(--dpui-space-4,16px);text-align:center;font-size:13px;color:var(--text-muted,#64748b);border:1px dashed var(--border-color,#dfe3e8);border-radius:var(--dpui-radius-card,12px)}
#reservationsSection .dp-res-tabs>button[aria-pressed="false"]{background:var(--bg-secondary,#f5f6f8)!important;color:var(--text-secondary,#64748b)!important;border:1px solid var(--border-color,#dfe3e8)!important}
#reservationsSection .dp-res-month-select{width:auto;max-width:100%;min-height:38px;border:1px solid var(--border-color,#dfe3e8);border-radius:8px;padding:var(--dpui-space-2,8px) var(--dpui-space-6,24px) var(--dpui-space-2,8px) 10px;font:inherit;font-size:var(--dpui-font-sm,12px);font-weight:700;color:var(--text-primary);background:var(--bg-secondary,#f5f6f8);cursor:pointer}
#reservationsSection .dp-res-month-select[data-active="true"]{border-color:#a35026;color:#a35026;background:#a3502610}
#reservationsSection .dp-res-month-heading{justify-content:space-between!important;gap:6px!important;margin-bottom:6px!important}
#reservationsSection .dp-res-month-heading button{min-width:32px!important;min-height:30px!important;padding:2px var(--dpui-space-2,8px)!important;font-size:18px!important}
#reservationsSection #resPageMonthLabel{min-width:0!important;font-size:13px!important}
#reservationsSection #resPageMonth{padding:9px!important;margin-bottom:var(--dpui-space-3,12px)!important}
@media(max-width:600px){#reservationsSection .dp-res-tabs{gap:var(--dpui-space-1,4px);margin-bottom:10px}#reservationsSection .dp-res-month-select{font-size:var(--dpui-font-xs,11px);min-height:36px;padding:7px var(--dpui-space-5,20px) 7px 7px;flex:1.4;min-width:0}#reservationsSection .dp-res-tabs>button{padding:7px 6px!important;min-height:36px!important;font-size:10px!important}#reservationsSection #resPageMonthGrid>div>div[onclick]{min-height:46px!important;padding:var(--dpui-space-1,4px) 3px!important}#reservationsSection #resPageMonthGrid>div>div[onclick]>div{font-size:10px!important;margin-top:3px!important}#reservationsSection #resPageMonth{padding:7px!important}}
#reservationsSection .dp-res-period-control{position:relative;flex:1;min-width:0;max-width:180px}
#reservationsSection #resOverviewPeriodButton{display:flex;align-items:center;justify-content:space-between;gap:var(--dpui-space-2,8px);width:100%;min-height:38px;padding:var(--dpui-space-2,8px) var(--dpui-space-3,12px);border:1px solid var(--border-color,#dfe3e8);border-radius:9px;background:var(--bg-secondary,#f5f6f8);color:var(--text-primary);font:inherit;font-size:var(--dpui-font-sm,12px);font-weight:700;cursor:pointer}
#reservationsSection .dp-res-period-control[data-active="true"] #resOverviewPeriodButton{border-color:#a35026;color:#a35026;background:#a3502610}
#reservationsSection .dp-res-period-options{position:absolute;left:0;top:calc(100% + 5px);min-width:150px;z-index:30;padding:var(--dpui-space-1,4px);border:1px solid var(--border-color,#dfe3e8);border-radius:var(--dpui-radius-control,10px);background:var(--bg-card,#fff);box-shadow:0 8px 20px #0002}
#reservationsSection .dp-res-period-options button{display:block;width:100%;min-height:36px;padding:var(--dpui-space-2,8px) 10px;border:0;border-radius:7px;background:transparent;color:var(--text-primary);text-align:left;font:inherit;font-size:var(--dpui-font-sm,12px);cursor:pointer}
#reservationsSection .dp-res-period-options button[aria-pressed="true"],#reservationsSection .dp-res-period-options button:hover{background:#a3502612;color:#a35026}
#reservationsSection .dp-res-channels-setting{display:block;margin-top:var(--dpui-space-3,12px);padding:10px var(--dpui-space-3,12px);border:1px solid var(--border-color,#dfe3e8);border-radius:9px;background:var(--bg-card,#fff);color:var(--text-primary);font:inherit;font-size:var(--dpui-font-sm,12px);cursor:pointer}
#reservationsSection .dp-res-range-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:var(--dpui-space-1,4px)}
#reservationsSection .dp-res-range-cell{display:flex;flex-direction:column;gap:5px;align-items:center;justify-content:center;min-width:0;min-height:86px;padding:var(--dpui-space-2,8px) var(--dpui-space-1,4px);border:1px solid var(--border-color,#dfe3e8);border-radius:9px;background:var(--bg-card,#fff);color:var(--text-primary);cursor:pointer}
#reservationsSection .dp-res-range-cell span{font-size:10px;opacity:.7}
#reservationsSection .dp-res-range-cell strong{font-size:18px}
#reservationsSection .dp-res-range-cell small{font-size:10px;overflow-wrap:anywhere}
#reservationsSection .dp-res-range-cell.is-today{border-color:#a35026;background:#a350260b}
#reservationsSection .dp-res-range-cell.is-closed small{color:#c64b4b}
#reservationsSection .dp-res-range-day{grid-template-columns:1fr}
#reservationsSection .dp-res-range-day .dp-res-range-cell{flex-direction:row;gap:var(--dpui-space-4,16px);min-height:58px}
@media(max-width:600px){#reservationsSection #resOverviewPeriodButton{font-size:var(--dpui-font-xs,11px);padding:var(--dpui-space-2,8px);min-height:36px}#reservationsSection .dp-res-range-cell{min-height:74px;padding:6px 2px}#reservationsSection .dp-res-range-cell strong{font-size:15px}#reservationsSection .dp-res-range-cell small{font-size:9px}}
#reservationsSection .dp-res-settings-heading{margin:0 0 14px;font-size:15px;color:var(--text-primary)}
#reservationsSection .dp-res-settings-grid{display:grid!important;grid-template-columns:minmax(150px,.8fr) repeat(2,minmax(0,1fr));gap:var(--dpui-space-3,12px) var(--dpui-space-4,16px)!important;align-items:start!important;margin:0!important;padding:0!important;border:0!important}
#reservationsSection #resCapacityControls{display:contents!important}
#reservationsSection .dp-res-field{display:flex!important;flex-direction:column;align-items:stretch!important;gap:6px!important;margin:0;min-width:0;font-size:var(--dpui-font-sm,12px)!important}
#reservationsSection #reservationConfirmMode{width:155px!important;max-width:100%;justify-self:start}
#reservationsSection .dp-res-field-label{color:var(--text-primary);font-weight:600;line-height:1.4}
#reservationsSection .dp-res-field input,#reservationsSection .dp-res-field select{display:block;width:100%!important;min-width:0;max-width:100%;min-height:36px;padding:7px 10px!important;border-radius:8px!important;font-size:var(--dpui-font-sm,12px)!important;text-align:left!important;box-sizing:border-box}
#reservationsSection .dp-res-field-hint{font-size:var(--dpui-font-xs,11px);font-weight:400;color:var(--text-muted,#64748b);line-height:1.45}
#reservationsSection .dp-res-review-pair{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--dpui-space-3,12px) var(--dpui-space-4,16px);align-items:start}
#reservationsSection .dp-res-review-pair .dp-res-table-fit .dp-res-field-hint{grid-column:2}
#reservationsSection .dp-res-table-fit{display:grid!important;grid-template-columns:22px minmax(0,1fr);align-items:center!important;gap:6px 10px!important;margin:0;padding:var(--dpui-space-3,12px);border:1px solid var(--border-color,#dfe3e8);border-radius:var(--dpui-radius-control,10px);font-size:var(--dpui-font-sm,12px)!important;line-height:1.5}
#reservationsSection .dp-res-table-fit input{flex:0 0 22px;width:22px!important;height:22px!important;margin:0;accent-color:#a35026}
#reservationsSection .dp-res-settings-grid>button{grid-column:1/-1;margin:var(--dpui-space-1,4px) 0 0!important;min-height:44px;white-space:normal;text-align:center}
#reservationsSection .dp-res-channels-setting{width:100%;min-height:44px;text-align:left}
#reservationsSection .dp-res-set[open]{padding:var(--dpui-space-4,16px)!important;background:var(--bg-secondary,#f7f8fa)}
@media(max-width:600px){#reservationsSection .dp-res-settings-grid{grid-template-columns:minmax(0,1fr);gap:var(--dpui-space-3,12px)!important}#reservationsSection .dp-res-field input,#reservationsSection .dp-res-field select{font-size:var(--dpui-font-lg,16px)!important;padding:10px!important}#reservationsSection .dp-res-set[open]{padding:var(--dpui-space-3,12px)!important}#reservationsSection .dp-res-settings-heading{font-size:var(--dpui-font-base,14px)}#reservationsSection .dp-res-review-pair{grid-template-columns:minmax(0,1fr)}#reservationsSection .dp-res-table-fit{padding:10px}}
@media(max-width:340px){#reservationsSection .dp-res-settings-grid{grid-template-columns:minmax(0,1fr)}}
#reservationsSection .dp-res-overview-tools{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:var(--dpui-space-3,12px);align-items:center}
#reservationsSection .dp-res-overview-tools .dp-res-search{margin:0!important;min-width:0}
#reservationsSection .dp-res-overview-tools h3{white-space:nowrap;font-size:var(--dpui-font-base,14px)}
#reservationsSection .dp-res-overview-tools input{min-width:0;width:100%;min-height:38px;font-size:13px!important}
@media(max-width:600px){#reservationsSection .dp-res-overview-tools{gap:var(--dpui-space-2,8px)}#reservationsSection .dp-res-overview-tools h3{font-size:var(--dpui-font-xs,11px);letter-spacing:-.2px}#reservationsSection .dp-res-overview-tools input{padding:var(--dpui-space-2,8px)!important;font-size:var(--dpui-font-sm,12px)!important}}
@media(max-width:600px){#dpResPop{left:0!important;right:0!important;top:max(8px,env(safe-area-inset-top))!important;width:100vw!important;min-width:0!important;max-width:100vw!important;height:auto!important;max-height:calc(100dvh - 16px)!important;box-sizing:border-box;resize:none!important;overflow-x:hidden!important;overflow-y:auto!important;padding:0 14px 14px!important;border-radius:var(--dpui-radius-card,12px)!important}#dpResPop .dprp-rz{display:none!important}#dpResPop input,#dpResPop select,#dpResPop textarea{font-size:var(--dpui-font-lg,16px)!important;min-height:42px}#dpResPop .dprp-head{cursor:default!important}body.dpk-active #dpResPop{max-height:calc(100dvh - var(--dpk-h,300px) - 16px)!important}}
.dp-res-customer-files{margin-top:18px;padding-top:var(--dpui-space-4,16px);border-top:1px solid var(--border-color,#dfe3e8)}
.dp-res-customer-files h3{margin:0 0 var(--dpui-space-2,8px);font-size:var(--dpui-font-base,14px)}
.dp-res-customer-files p{font-size:var(--dpui-font-sm,12px);line-height:1.5;color:var(--text-secondary,#64748b)}
.dp-res-file-actions{display:flex;flex-wrap:wrap;gap:var(--dpui-space-2,8px)}
.dp-res-customer-files button{min-height:42px;padding:9px var(--dpui-space-3,12px);border:1px solid var(--border-color,#dfe3e8);border-radius:9px;background:var(--bg-card,#fff);color:var(--text-primary);font:inherit;font-size:var(--dpui-font-sm,12px);cursor:pointer}
.dp-res-customer-files button:disabled{opacity:.5;cursor:default}
#resCustomerReview{margin-top:14px;padding:var(--dpui-space-3,12px);border:1px solid var(--border-color,#dfe3e8);border-radius:var(--dpui-radius-control,10px)}
#resCustomerPreview{overflow:auto;white-space:pre-wrap;max-height:220px;font-size:var(--dpui-font-sm,12px);margin-bottom:var(--dpui-space-3,12px)}
#resCustomerPreview table{border-collapse:collapse;width:100%}
#resCustomerPreview td{padding:var(--dpui-space-2,8px);border-bottom:1px solid var(--border-color,#dfe3e8);overflow-wrap:anywhere}
@media(max-width:600px){.dp-res-file-actions{display:grid;grid-template-columns:1fr 1fr}.dp-res-file-actions button{min-width:0}.dp-res-file-actions button:last-child{grid-column:1/-1}}
#reservationsSection .dp-res-header{grid-template-columns:minmax(0,1fr) auto;gap:5px 10px;margin-bottom:10px!important}
#reservationsSection .dp-res-header h2{margin:0!important}
#reservationsSection .dp-res-new{min-height:34px!important;height:34px!important;padding:5px 13px!important;flex:none;border-radius:8px!important;font-size:var(--dpui-font-sm,12px)!important}
#reservationsSection .dp-res-gear{display:grid;place-items:center;width:34px!important;min-width:34px!important;min-height:34px!important;height:34px!important;padding:0!important;box-shadow:none!important;border-radius:8px!important;font-size:18px!important;line-height:1;color:var(--text-secondary,#64748b)}
#reservationsSection .dp-res-gear[aria-expanded="true"]{border-color:#a35026;background:#a3502612;color:#a35026}
#reservationsSection .dp-res-tabs{gap:5px;margin-bottom:var(--dpui-space-2,8px)!important}
#reservationsSection .dp-res-tabs>button,#reservationsSection #resOverviewPeriodButton{min-height:32px!important;height:32px!important;padding:var(--dpui-space-1,4px) 10px!important;box-shadow:none!important;border-radius:8px!important;font-size:var(--dpui-font-xs,11px)!important}
#reservationsSection .dp-res-summary{grid-column:1/-1;display:flex;align-items:center;gap:10px;min-width:0;position:relative}
#reservationsSection .dp-res-summary-today{color:var(--text-secondary,#64748b);text-decoration:underline;text-underline-offset:3px;cursor:pointer;min-width:0}
#reservationsSection #resPageStats{font-size:var(--dpui-font-xs,11px)!important;line-height:1.4;margin:0!important}
#reservationsSection .dp-res-summary-picker{position:relative;flex:1;min-width:0}
#reservationsSection #resSummaryToggle{min-height:28px!important;padding:3px 7px!important;border:0;border-radius:var(--dpui-radius-small,6px);background:transparent;color:var(--accent-color,#a35026);font:inherit;font-size:var(--dpui-font-xs,11px)!important;white-space:nowrap;box-shadow:none!important;cursor:pointer}
#reservationsSection .dp-res-summary-options{position:absolute;left:0;right:auto;top:calc(100% + 5px);width:min(420px,100%);box-sizing:border-box;max-height:300px;overflow-y:auto;overscroll-behavior:contain;z-index:35;padding:5px;border:1px solid var(--border-color,#dfe3e8);border-radius:var(--dpui-radius-control,10px);background:var(--bg-card,#fff);box-shadow:0 6px 18px #0002}
#reservationsSection .dp-res-summary-item{display:flex;flex-direction:column;gap:3px;text-align:left;width:100%;padding:var(--dpui-space-2,8px)!important;min-height:42px;border:0;border-bottom:1px solid var(--border-color,#dfe3e8);border-radius:0;box-shadow:none;background:transparent;color:var(--text-primary);font:inherit;font-size:var(--dpui-font-sm,12px);cursor:pointer;overflow-wrap:anywhere}
#reservationsSection .dp-res-summary-item:hover,#reservationsSection .dp-res-summary-item:focus-visible{background:#a3502612}
#reservationsSection .dp-res-summary-date{font-size:10px;color:var(--text-secondary,#64748b)}
#reservationsSection .dp-res-summary-options p{padding:var(--dpui-space-2,8px);margin:0;font-size:var(--dpui-font-sm,12px);color:var(--text-secondary,#64748b)}
#reservationsSection #resOverviewTools{scroll-margin-top:80px}
.dp-res-planning-settings{margin-top:18px;padding-top:var(--dpui-space-4,16px);border-top:1px solid var(--border-color,#dfe3e8)}
.dp-res-planning-settings h3{font-size:var(--dpui-font-base,14px);margin:0 0 var(--dpui-space-2,8px)}
.dp-res-planning-settings h4{font-size:13px;margin:18px 0 var(--dpui-space-2,8px)}
.dp-res-planning-settings p{font-size:var(--dpui-font-sm,12px);line-height:1.5;color:var(--text-secondary,#64748b)}
.dp-res-planning-hours,.dp-res-planning-season{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.dp-res-planning-hours label,.dp-res-planning-season label{display:flex;flex-direction:column;gap:5px;font-size:var(--dpui-font-sm,12px);min-width:0}
.dp-res-planning-settings input[type=time],.dp-res-planning-settings input[type=number],.dp-res-planning-settings select{width:100%;box-sizing:border-box;min-width:0;min-height:38px;padding:var(--dpui-space-2,8px);border:1px solid var(--border-color,#dfe3e8);border-radius:8px;background:var(--bg-card,#fff);color:var(--text-primary);font:inherit}
.dp-res-planning-settings small{font-size:10px;color:var(--text-secondary,#64748b)}
.dp-res-planning-zone{padding:var(--dpui-space-3,12px);margin:var(--dpui-space-2,8px) 0;border:1px solid var(--border-color,#dfe3e8);border-radius:var(--dpui-radius-control,10px);background:var(--bg-card,#fff)}
.dp-res-planning-enabled{display:flex;align-items:center;gap:var(--dpui-space-2,8px);margin-bottom:10px;font-size:13px}
.dp-res-planning-tables{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.dp-res-planning-tables label{display:flex;gap:6px;align-items:center;padding:6px var(--dpui-space-2,8px);border-radius:7px;background:var(--bg-secondary,#f5f6f8);font-size:var(--dpui-font-xs,11px)}
.dp-res-planning-settings input[type=checkbox]{width:18px;height:18px;accent-color:#a35026}
.dp-res-planning-settings button{min-height:34px;padding:6px var(--dpui-space-3,12px);border:1px solid var(--border-color,#dfe3e8);border-radius:8px;background:var(--bg-card,#fff);color:var(--text-primary);font:inherit;font-size:var(--dpui-font-sm,12px);cursor:pointer}
.dp-res-agenda-controls{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.dp-res-agenda-controls label{font-size:var(--dpui-font-sm,12px);display:flex;align-items:center;gap:var(--dpui-space-2,8px)}
.dp-res-agenda-controls select{max-width:150px;padding:7px;border:1px solid var(--border-color,#dfe3e8);border-radius:8px;background:var(--bg-card,#fff);color:var(--text-primary);font:inherit;font-size:var(--dpui-font-sm,12px)}
.dp-res-agenda-controls>span{font-size:var(--dpui-font-xs,11px);color:var(--text-secondary,#64748b)}
.dp-res-agenda-row{width:100%;display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:10px;text-align:left;padding:11px var(--dpui-space-2,8px);border:0;border-bottom:1px solid var(--border-color,#dfe3e8);background:transparent;color:var(--text-primary);font:inherit;font-size:13px;cursor:pointer}
.dp-res-agenda-row time{font-weight:700;color:var(--accent-color,#a35026)}
.dp-res-agenda-row strong{display:block;overflow-wrap:anywhere}
.dp-res-agenda-row small{display:block;font-size:var(--dpui-font-xs,11px);line-height:1.5;color:var(--text-secondary,#64748b)}
.dp-res-agenda-status{font-size:10px;padding:var(--dpui-space-1,4px) 6px;border-radius:var(--dpui-radius-small,6px);background:var(--bg-secondary,#f5f6f8)}
@media(max-width:600px){.dp-res-planning-settings input[type=time],.dp-res-planning-settings input[type=number],.dp-res-planning-settings select{font-size:var(--dpui-font-lg,16px)}.dp-res-agenda-controls{flex-wrap:wrap}.dp-res-agenda-row{gap:6px;font-size:var(--dpui-font-sm,12px)}.dp-res-agenda-status{max-width:68px;text-align:center;white-space:normal}.dp-res-planning-zone{padding:10px}}
#reservationsSection .dp-res-timeline-control{display:block;width:100%;padding:var(--dpui-space-1,4px) 2px!important;border:0;border-radius:4px;background:transparent;color:var(--text-primary);font:inherit;font-size:var(--dpui-font-xs,11px);font-weight:700;line-height:1.3;cursor:pointer;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;touch-action:pan-x pan-y;box-shadow:none!important;min-height:28px!important}
#reservationsSection .dp-res-timeline-zone{font-size:10px;font-weight:500;color:var(--text-secondary,#64748b)}
#reservationsSection .dp-tl-colhead{white-space:normal;padding:var(--dpui-space-1,4px)!important;height:64px;min-height:64px;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center}
#reservationsSection .dp-tl-disabled .dp-tl-colbody{background-color:var(--bg-secondary,#f1f3f5);opacity:.55}
#reservationsSection .dp-tl-disabled .dp-tl-colhead{background:var(--bg-secondary,#f1f3f5)}
#reservationsSection .dp-tl-disabled .dp-res-timeline-control{color:var(--text-muted,#9ca3af)}
.dp-res-timeline-menu{position:fixed;z-index:10000;width:240px;max-width:calc(100vw - 16px);padding:var(--dpui-space-2,8px);border:1px solid var(--border-color,#dfe3e8);border-radius:var(--dpui-radius-control,10px);background:var(--bg-card,#fff);color:var(--text-primary,#202333);box-shadow:0 8px 22px #0003}
.dp-res-timeline-menu strong{display:block;font-size:var(--dpui-font-sm,12px);padding:5px 7px;overflow-wrap:anywhere}
.dp-res-timeline-menu button{display:block;width:100%;padding:10px 7px;min-height:38px;border:0;border-radius:var(--dpui-radius-small,6px);background:transparent;color:inherit;text-align:left;font:inherit;font-size:var(--dpui-font-sm,12px);cursor:pointer}
.dp-res-timeline-menu button:hover,.dp-res-timeline-menu button:focus-visible{background:var(--bg-secondary,#f1f3f5)}
.dp-res-timeline-menu button:disabled{opacity:.5}
/* reservation-service-grid */
#reservationsSection .dp-tl-colbody{background-image:none}
#reservationsSection .dp-tl-service-band{position:absolute;left:0;right:0;height:28px;box-sizing:border-box;border-top:3px solid #9b4e25;background:var(--bg-secondary,#f3e8df);color:var(--text-primary,#343434);font-size:10px;font-weight:700;padding:5px 3px}
#reservationsSection .dp-tl-service-line{position:absolute;left:0;right:0;border-top:1px solid var(--border-color,#ddd)}
#reservationsSection .dp-tl-chip{border:0;text-align:left;cursor:pointer;box-sizing:border-box;overflow:hidden;color:white}
#reservationsSection .dp-tl-axis-lbl{font-size:var(--dpui-font-xs,11px)}
/* reservation-service-grid */
#reservationsSection .dp-tl-colbody{background-image:none}
#reservationsSection .dp-tl-service-band{position:absolute;left:0;right:0;height:28px;box-sizing:border-box;border-top:3px solid #9b4e25;background:var(--bg-secondary,#f3e8df);color:var(--text-primary,#343434);font-size:10px;font-weight:700;padding:5px 3px}
#reservationsSection .dp-tl-service-line{position:absolute;left:0;right:0;border-top:1px solid var(--border-color,#ddd)}
#reservationsSection .dp-tl-chip{border:0;text-align:left;cursor:pointer;box-sizing:border-box;overflow:hidden;color:white}
#reservationsSection .dp-tl-axis-lbl{font-size:var(--dpui-font-xs,11px)}
/* Settings: keep each explanation, control and action in its own logical group. */
#reservationsSection #reservationSettingsPanel{box-sizing:border-box;max-width:100%;padding:18px!important}
#reservationsSection .dp-res-settings-title{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--dpui-space-4,16px)}
#reservationsSection .dp-res-settings-title h3{margin:0 0 6px;font-size:17px}
#reservationsSection .dp-res-settings-title p,#reservationsSection .dp-res-settings-group p{margin:0 0 14px;font-size:var(--dpui-font-sm,12px);line-height:1.55;color:var(--text-secondary,#9ca3af)}
#reservationsSection .dp-res-settings-close{min-height:40px;padding:var(--dpui-space-2,8px) var(--dpui-space-3,12px);border:1px solid var(--border-color);border-radius:8px;background:var(--bg-card);color:var(--text-primary);font:inherit;font-size:var(--dpui-font-sm,12px);cursor:pointer}
#reservationsSection #reservationSettingsPanel .dp-res-settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--dpui-space-4,16px)!important}
#reservationsSection #reservationSettingsPanel .dp-res-settings-group{display:flex!important;flex-direction:column;gap:14px;min-width:0;margin:0;padding:var(--dpui-space-4,16px);border:1px solid var(--border-color);border-radius:var(--dpui-radius-control,10px);background:var(--bg-card,var(--bg-primary));box-sizing:border-box}
#reservationsSection .dp-res-settings-group legend{padding:0 6px;font-size:13px;font-weight:700;color:var(--text-primary)}
#reservationsSection .dp-res-settings-group h4{margin:0;font-size:13px}
#reservationsSection .dp-res-settings-group p{margin:0}
#reservationsSection .dp-res-settings-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--dpui-space-3,12px)}
#reservationsSection #reservationSettingsPanel #reservationConfirmMode{width:100%!important}
#reservationsSection #reservationSettingsPanel .dp-res-field input,#reservationsSection #reservationSettingsPanel .dp-res-field select{min-height:44px;font:inherit;font-size:var(--dpui-font-base,14px)!important;color:var(--text-primary);background:var(--bg-secondary);border:1px solid var(--border-color)}
#reservationsSection #reservationSettingsPanel .dp-res-field-hint{color:var(--text-secondary,#9ca3af);font-size:var(--dpui-font-sm,12px);line-height:1.5}
#reservationsSection #reservationSettingsPanel .dp-res-table-fit{grid-template-columns:20px minmax(0,1fr);padding:var(--dpui-space-3,12px);font-weight:600;cursor:pointer}
#reservationsSection #reservationSettingsPanel .dp-res-table-fit small{grid-column:2;font-weight:400}
#reservationsSection #reservationSettingsPanel .dp-res-table-fit input{width:20px!important;height:20px!important}
#reservationsSection .dp-res-save-status{font-size:var(--dpui-font-sm,12px);line-height:1.5;margin:var(--dpui-space-3,12px) 0 18px;color:var(--text-secondary);padding:10px var(--dpui-space-3,12px);background:var(--bg-card);border-radius:8px;border-left:3px solid var(--border-color)}
#reservationsSection .dp-res-save-status[data-state=saved]{border-left-color:#10b981}
#reservationsSection .dp-res-save-status[data-state=error],#reservationsSection .dp-res-save-status[data-state=invalid]{border-left-color:#ef4444}
#reservationsSection #reservationSettingsPanel .is-inactive{opacity:.6}
#reservationsSection .dp-res-cleanup{display:flex;flex-wrap:wrap;align-items:center;gap:var(--dpui-space-3,12px);padding-top:var(--dpui-space-4,16px);margin-top:auto;border-top:1px solid var(--border-color)}
#reservationsSection .dp-res-cleanup strong{font-size:var(--dpui-font-sm,12px)}
#reservationsSection .dp-res-cleanup p{margin-top:5px}
#reservationsSection .dp-res-cleanup button{min-height:44px;padding:var(--dpui-space-2,8px) 14px;border:1px solid #ef444477;border-radius:8px;color:var(--text-primary);background:transparent;font:inherit;font-size:var(--dpui-font-sm,12px);cursor:pointer}
#reservationsSection #reservationSettingsPanel .dp-res-channels-setting{margin:10px 0 0;padding:10px var(--dpui-space-3,12px);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);background:var(--bg-secondary);font-size:var(--dpui-font-sm,12px)}
#reservationsSection #reservationSettingsPanel input:focus-visible{outline:2px solid var(--accent-color,#a35026);outline-offset:2px}
@media(max-width:760px){#reservationsSection #reservationSettingsPanel .dp-res-settings-grid{grid-template-columns:minmax(0,1fr)}#reservationsSection #reservationSettingsPanel{padding:var(--dpui-space-3,12px)!important}#reservationsSection #reservationSettingsPanel .dp-res-settings-group{padding:var(--dpui-space-3,12px)}#reservationsSection #reservationSettingsPanel .dp-res-field input,#reservationsSection #reservationSettingsPanel .dp-res-field select{font-size:var(--dpui-font-lg,16px)!important}#reservationsSection .dp-res-settings-title{gap:10px}#reservationsSection .dp-res-settings-title h3{font-size:15px}#reservationsSection .dp-res-settings-pair{grid-template-columns:minmax(0,1fr)}#reservationsSection .dp-res-cleanup button{width:100%}}
#reservationsSection #reservationSettingsPanel .dp-res-settings-group h3{font-size:13px;margin:0}
#reservationsSection #reservationSettingsPanel .dp-res-planning-hours{grid-template-columns:minmax(0,1fr)}
#reservationsSection #reservationSettingsPanel .dp-res-planning-hours input{min-height:44px;font-size:var(--dpui-font-base,14px);background:var(--bg-secondary)}
#reservationsSection #reservationSettingsPanel .dp-res-planning-hours small{font-size:var(--dpui-font-sm,12px);line-height:1.5}
#reservationsSection #reservationSettingsPanel #reservationPublicLink{font-size:var(--dpui-font-sm,12px);line-height:1.7;overflow-wrap:anywhere}
#reservationsSection #reservationSettingsPanel .dp-res-customer-files button{min-height:44px}
@media(max-width:760px){#reservationsSection #reservationSettingsPanel .dp-res-planning-hours input{font-size:var(--dpui-font-lg,16px)}}
#reservationsSection #reservationSettingsPanel .dp-res-table-fit input{min-height:20px!important}
/* Mobile paired fields: one control on the left and one on the right. */
@media(max-width:760px){
 #reservationsSection #reservationSettingsPanel fieldset.dp-res-settings-group{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 10px;align-items:start}
 #reservationsSection #reservationSettingsPanel fieldset.dp-res-settings-group>p,
 #reservationsSection #reservationSettingsPanel .dp-res-settings-pair{grid-column:1/-1}
 #reservationsSection #reservationSettingsPanel .dp-res-settings-pair,
 #reservationsSection #reservationSettingsPanel .dp-res-planning-hours{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 10px;align-items:start}
 #reservationsSection #reservationSettingsPanel .dp-res-field-label{min-height:34px;overflow-wrap:anywhere}
 #reservationsSection #reservationSettingsPanel .dp-res-field select{padding-left:6px!important;padding-right:var(--dpui-space-1,4px)!important}
 #reservationsSection #reservationSettingsPanel .dp-res-table-fit{min-width:0;padding:var(--dpui-space-2,8px);gap:6px;font-size:var(--dpui-font-xs,11px)!important;overflow-wrap:anywhere}
 #reservationsSection #reservationSettingsPanel .dp-res-table-fit small{grid-column:1/-1}
}
/* Arrival window and owner table planning. */
#reservationsSection #reservationSettingsPanel .dp-res-arrival-start{display:flex;flex-direction:column;gap:5px;min-width:0;font-size:var(--dpui-font-sm,12px)}
#reservationsSection #reservationSettingsPanel .dp-res-arrival-start output{display:flex;align-items:center;min-height:44px;padding:var(--dpui-space-2,8px);border:1px solid var(--border-color);border-radius:8px;background:var(--bg-secondary);color:var(--text-primary);font-size:var(--dpui-font-base,14px);line-height:1.5;overflow-wrap:anywhere}
#reservationsSection #reservationSettingsPanel .dp-res-arrival-start small{font-size:var(--dpui-font-sm,12px);line-height:1.5;color:var(--text-secondary)}
@media(max-width:760px){#reservationsSection #reservationSettingsPanel .dp-res-planning-hours{grid-template-columns:repeat(2,minmax(0,1fr))}#reservationsSection #reservationSettingsPanel .dp-res-arrival-start output{font-size:var(--dpui-font-lg,16px)}}
/* Theme accents for compact reservation settings. */
#reservationsSection #reservationSettingsPanel{--res-accent:var(--accent-color,#d4845c);background:var(--bg-secondary);border:1px solid color-mix(in srgb,var(--res-accent) 35%,var(--border-color));border-radius:14px}
#reservationsSection #reservationSettingsPanel .dp-res-settings-heading{color:var(--res-accent)}
#reservationsSection #reservationSettingsPanel .dp-res-settings-group{--res-group-accent:var(--res-accent);border-top:3px solid var(--res-group-accent);background:linear-gradient(135deg,color-mix(in srgb,var(--res-group-accent) 8%,transparent),transparent 65%),var(--bg-card,var(--bg-primary))}
#reservationsSection #reservationSettingsPanel #resCapacityControls{--res-group-accent:var(--info-color,#3b82f6)}
#reservationsSection #reservationSettingsPanel #resPlanningSettings{--res-group-accent:var(--success-color,#10b981)}
#reservationsSection #reservationSettingsPanel #reservationPublicAccess{--res-group-accent:var(--info-color,#3b82f6)}
#reservationsSection #reservationSettingsPanel legend,#reservationsSection #reservationSettingsPanel .dp-res-settings-group h3,#reservationsSection #reservationSettingsPanel .dp-res-settings-group h4{color:var(--res-group-accent)}
#reservationsSection #reservationSettingsPanel input[type=checkbox]{accent-color:var(--res-accent)}
#reservationsSection #reservationSettingsPanel button:not(.dp-res-cleanup button){border-color:color-mix(in srgb,var(--res-accent) 45%,var(--border-color));background:color-mix(in srgb,var(--res-accent) 12%,var(--bg-card));color:var(--text-primary)}
#reservationsSection #reservationSettingsPanel button:hover{filter:brightness(1.08)}
#reservationsSection #reservationSettingsPanel :is(button,select,a):focus-visible{outline:2px solid var(--res-accent);outline-offset:3px}
#reservationsSection #reservationSettingsPanel .dp-res-save-status:not([data-state]){border-left-color:var(--res-accent)}
@media(max-width:420px){#reservationsSection #reservationSettingsPanel fieldset.dp-res-settings-group,#reservationsSection #reservationSettingsPanel .dp-res-settings-pair,#reservationsSection #reservationSettingsPanel .dp-res-planning-hours{grid-template-columns:minmax(0,1fr)}#reservationsSection #reservationSettingsPanel .dp-res-field-label{min-height:0}}
/* Calendar and selected-day reservations share one desktop workspace. */
#resOverviewWorkspace,#resOverviewSidebar{display:contents}
#reservationsSection #resOverviewSidebar{min-width:0}
#reservationsSection #resOverviewSidebar #resPageList{grid-template-columns:minmax(0,1fr)!important;align-content:start}
#reservationsSection #resAutoPlanButton{background:var(--bg-secondary,#f5f6f8);color:var(--text-primary,#202333)!important;border:1px solid var(--border-color,#dfe3e8);border-radius:9px;padding:10px var(--dpui-space-3,12px);min-height:42px}
#reservationsSection #resAutoPlanButton:disabled{opacity:.7!important;cursor:default}
#reservationsSection .dp-res-overview-date{color:var(--text-primary,#202333);background:var(--bg-card,#fff);border-color:var(--border-color,#dfe3e8)}
@media(min-width:1100px){
 #reservationsSection #resOverviewWorkspace[data-active="true"]{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.62fr);gap:var(--dpui-space-5,20px);align-items:start}
 #reservationsSection #resOverviewWorkspace[data-active="true"] #resOverviewSidebar{display:block;padding:var(--dpui-space-4,16px);border:1px solid var(--border-color,#dfe3e8);border-radius:14px;background:var(--bg-card,#fff)}
 #reservationsSection #resOverviewWorkspace[data-active="true"] .dp-res-overview-tools{grid-template-columns:minmax(0,1fr);gap:var(--dpui-space-3,12px)}
 #reservationsSection #resOverviewSidebar .dp-res-overview-date{justify-self:start;box-sizing:border-box;width:100%}
 #reservationsSection #resOverviewSidebar .dp-res-date-open{flex:1;justify-content:center;padding:9px 6px;font-size:13px}
 #reservationsSection #resOverviewSidebar .dp-res-date-label{white-space:normal}
 #reservationsSection #resOverviewSidebar #resAutoPlanControls{grid-column:1}
 #reservationsSection #resOverviewSidebar #resPageList>div{min-width:0;overflow-wrap:anywhere}
}
.dp-res-overview-divider{display:none}
@media(min-width:1100px){
 #reservationsSection #resOverviewWorkspace[data-active="true"]{grid-template-columns:minmax(280px,var(--res-calendar-width,61.7%)) 12px minmax(280px,1fr);column-gap:6px}
 #reservationsSection #resOverviewWorkspace[data-active="true"]>.dp-res-overview-divider{display:flex;align-self:stretch;justify-content:center;align-items:center;min-height:100px;cursor:col-resize;touch-action:none;border-radius:8px;outline-offset:1px}
 .dp-res-overview-divider::before{content:'';width:4px;height:56px;border-radius:4px;background:var(--border-color,#dfe3e8)}
 .dp-res-overview-divider:hover::before,.dp-res-overview-divider.is-dragging::before,.dp-res-overview-divider:focus-visible::before{background:var(--accent-color,#a35026)}
 .dp-res-overview-divider:focus-visible{outline:2px solid var(--accent-color,#a35026)}
}
#reservationsSection .dp-res-history-status{grid-column:1/-1;margin:0;font-size:13px;line-height:1.5;color:var(--text-secondary,#52627a)}
/* Keep the daily summary beside the page title and reuse the customer workspace. */
#reservationsSection .dp-res-header{grid-template-columns:auto minmax(0,1fr) auto!important}
#reservationsSection .dp-res-header h2{grid-column:1;grid-row:1}
#reservationsSection .dp-res-header>.dp-res-summary{grid-column:2;grid-row:1;justify-content:flex-end;flex-wrap:wrap;gap:6px 10px;text-align:right}
#reservationsSection .dp-res-header>.dp-res-header-actions{grid-column:3;grid-row:1}
#reservationsSection .dp-res-summary-picker{flex:0 0 auto}
#reservationsSection .dp-res-summary-options{left:auto;right:0;width:min(420px,calc(100vw - 64px));text-align:left}
#reservationsSection #resPageTabCustomers{background:var(--bg-secondary,#f5f6f8);color:var(--text-primary,#202333);border:1px solid var(--border-color,#dfe3e8);cursor:pointer}
@media(max-width:760px){
 #reservationsSection .dp-res-header{grid-template-columns:minmax(0,1fr) auto!important;gap:var(--dpui-space-2,8px)}
 #reservationsSection .dp-res-header>.dp-res-header-actions{grid-column:2}
 #reservationsSection .dp-res-header>.dp-res-summary{grid-column:1/-1;grid-row:2;justify-content:flex-end}
}
