@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/geist-cyrillic-ext.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/geist-cyrillic.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/geist-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/geist-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--font-ui:Geist, system-ui, sans-serif;--font-heading:var(--font-ui);--text-body:14px;--text-meta:12px;font-size:var(--text-body);font-weight:400;font-family:var(--font-ui);color:#432106;background:var(--canvas);font-synthesis:none;--canvas:#f7f5f1;--ink:#432106;--muted:#856348;--border:#e6e2db;--surface:#fff;--surface-hover:#f4f1ed;--surface-pressed:#ece7e0;--panel-chrome:#f3f0eb;--accent:#eb7514;--soft:#f5e5d7;--data-ink:#292724;--data-muted:#69655f;--data-border:#eeece8;--table-header-background:#f8f6f2;--table-header-text:#655e55;--table-row-hover:#fbf9f6;--control-background:#fff;--control-border:#d9d4cb;--control-hover:#b9afa0;--control-focus:#9b5d35;--control-placeholder:#766b60;--control-disabled-background:#f1efeb;--control-disabled-text:#766b60;--control-readonly-background:#f5f3ef;--control-option-hover:var(--surface-hover);--control-option-selected:#f0e8de;--control-error:#a73120;--control-height:40px;--button-height:var(--control-height);--button-primary-background:#b94f13;--button-primary-text:#fffaf5;--button-primary-hover:#a1430e;--button-primary-active:#8e390b;--button-secondary-border:var(--control-border);--button-secondary-hover-border:var(--control-hover);--button-danger-border:#e3c7bc;--status-request-bg:#eee7df;--status-request-ink:#665345;--status-hold-bg:#f8e6c4;--status-hold-ink:#7d4d10;--status-confirmed-bg:#dfebf4;--status-confirmed-ink:#315873;--status-paid-bg:#dcebdc;--status-paid-ink:#315d3b;--status-cancelled-bg:#f2e0dc;--status-cancelled-ink:#884539;--icon-navigation:20px;--icon-control:18px;--icon-meta:16px;--radius:12px;--sidebar-width:244px;--sidebar-muted:#e9d0ba}*{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent;font-size:var(--text-body)}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}a{color:inherit;text-decoration:none}h1,h2,h3,p{font-size:var(--text-body);margin:0;line-height:1.6}h1,h2,h3{font-family:var(--font-heading);letter-spacing:-.025em;font-weight:600}h1{font-size:28px;line-height:1.15}h2{font-size:23px}h3{font-size:17px}p{font-size:13px;line-height:1.75}small{font-size:var(--text-meta);line-height:1.5}button:focus-visible,a:focus-visible,summary:focus-visible,.table-wrap:focus-visible{outline:2px solid var(--control-focus);outline-offset:3px}input:not(:where([type=checkbox],[type=radio])),select,textarea{width:100%;min-height:var(--control-height);background:var(--control-background);border:1px solid var(--control-border);color:var(--ink);font-size:var(--text-body);caret-color:var(--control-focus);border-radius:8px;padding:8px 12px;font-weight:500;line-height:20px;transition:background-color .15s,border-color .15s}:where(input:not([type=checkbox]):not([type=radio]),select,textarea):hover:not(:where(:disabled,[readonly])){border-color:var(--control-hover)}input:focus,textarea:focus,select:focus{border-color:var(--control-focus);outline:2px solid var(--control-focus);outline-offset:-1px}input::placeholder,textarea::placeholder{color:var(--control-placeholder);opacity:1}:where(input,select,textarea)::selection{background:var(--soft);color:var(--ink)}:where(input,select,textarea):disabled{background:var(--control-disabled-background);border-color:var(--control-border);color:var(--control-disabled-text);-webkit-text-fill-color:var(--control-disabled-text);opacity:1;cursor:not-allowed}:where(input,textarea)[readonly]{background:var(--control-readonly-background);border-color:var(--control-border);cursor:text}:is(input,select,textarea):is([aria-invalid=true],:user-invalid){border-color:var(--control-error);outline-color:var(--control-error)}select:not(:disabled),input[type=date]:not(:disabled),input[type=month]:not(:disabled){cursor:pointer}input::-webkit-calendar-picker-indicator{cursor:pointer}textarea{resize:vertical;min-height:96px;line-height:1.5}input[type=checkbox]{width:17px;min-height:17px;accent-color:var(--button-primary-background);flex-shrink:0;margin:0;padding:0}input[type=checkbox]:not(:disabled){cursor:pointer}input[type=checkbox]:focus{outline-offset:3px}input[type=month]{min-width:162px;padding:8px;font-weight:600}select{min-width:0}@supports (appearance:base-select){select{appearance:base-select}select::picker(select){appearance:base-select}select::picker-icon{content:"";width:var(--icon-control);height:var(--icon-control);color:var(--control-placeholder);background:currentColor;flex-shrink:0;margin-inline-start:auto;-webkit-mask:url(/icon-caret-down.svg) 50%/contain no-repeat;mask:url(/icon-caret-down.svg) 50%/contain no-repeat}select:open::picker-icon{rotate:180deg}select::picker(select){background:var(--control-background);color:var(--ink);border:1px solid var(--control-border);scrollbar-width:thin;scrollbar-color:var(--control-border) var(--control-background);border-radius:8px;max-width:calc(100vw - 24px);max-height:min(320px,100dvh - 32px);margin-block:4px;padding:4px;overflow:auto}select option{min-height:var(--control-height);font:inherit;white-space:normal;overflow-wrap:anywhere;cursor:pointer;border-radius:4px;padding:8px 12px}select option::checkmark{width:var(--icon-control);height:var(--icon-control);content:"";background:currentColor;-webkit-mask:url(/icon-check.svg) 50%/contain no-repeat;mask:url(/icon-check.svg) 50%/contain no-repeat}select option:checked{background:var(--control-option-selected);font-weight:500}select option:hover:not(:disabled){background:var(--control-option-hover)}select option:focus-visible{background:var(--control-option-hover);outline:2px solid var(--control-focus);outline-offset:-2px}select option:disabled{color:var(--control-disabled-text);cursor:not-allowed}select option::checkmark{color:var(--ink)}}.btn{--button-background:var(--surface);--button-text:var(--ink);--button-border:var(--button-secondary-border);--button-hover-background:var(--surface-hover);--button-hover-border:var(--button-secondary-hover-border);--button-active-background:var(--surface-pressed);border:1px solid var(--button-border);background:var(--button-background);color:var(--button-text);height:var(--button-height);min-height:var(--button-height);font-size:var(--text-body);white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:8px 12px;font-weight:500;line-height:20px;transition:background .15s,border-color .15s;display:inline-flex}.btn:hover:not(:disabled){background:var(--button-hover-background);border-color:var(--button-hover-border)}.btn:active:not(:disabled){background:var(--button-active-background)}.btn.primary{--button-background:var(--button-primary-background);--button-border:var(--button-primary-background);--button-text:var(--button-primary-text);--button-hover-background:var(--button-primary-hover);--button-hover-border:var(--button-primary-hover);--button-active-background:var(--button-primary-active);font-weight:600}.btn.primary:active:not(:disabled){border-color:var(--button-primary-active)}.btn.ghost{--button-background:transparent;--button-border:transparent;--button-text:var(--button-ghost-text,var(--ink));--button-hover-background:var(--button-ghost-hover,var(--surface-hover));--button-hover-border:transparent;--button-active-background:var(--button-ghost-active,var(--surface-pressed))}.btn.danger{--button-background:#fff5f1;--button-text:var(--control-error);--button-border:var(--button-danger-border);--button-hover-background:#f8e9e2;--button-hover-border:#cfae9d;--button-active-background:#f2ddd3}.btn:disabled{background:var(--control-disabled-background);border-color:var(--border);color:var(--control-disabled-text);opacity:1}.btn.ghost:disabled{background:0 0;border-color:#0000}.btn svg{width:var(--icon-control);height:var(--icon-control);flex-shrink:0}.icon-only{width:var(--button-height);flex-shrink:0;padding:0}.icon-only svg{width:var(--icon-navigation);height:var(--icon-navigation)}.muted,.form-hint{color:var(--muted)}.warning-text{color:#a33c12;font-size:11px}.sr-only{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}.app-shell{--sidebar-current-width:var(--sidebar-width);--sidebar-motion:.24s cubic-bezier(.16, 1, .3, 1);min-height:100vh;display:flex}.sidebar{--button-ghost-text:#fdf1e8;--button-ghost-hover:#583217;--button-ghost-active:#795334;width:var(--sidebar-current-width);color:#fdf1e8;scrollbar-width:thin;scrollbar-color:#795334 transparent;z-index:20;background:#432106;flex-direction:column;flex-shrink:0;height:100dvh;padding:24px 18px 16px;display:flex;position:fixed;inset:0 auto 0 0;overflow-y:auto}.brand{flex-shrink:0;height:60px;padding-bottom:20px;position:relative}.brand img{width:136px;height:auto;transition:opacity .12s ease, transform var(--sidebar-motion), visibility 0s;margin-bottom:0;display:block;position:absolute;top:8px;left:0}.sidebar .sidebar-toggle{--button-background:#ffffff0a;--button-border:#78513566;position:absolute;top:0;right:0}.sidebar-toggle svg{transition:transform var(--sidebar-motion)}.sidebar nav{flex-shrink:0;padding:0}.sidebar-group+.sidebar-group{margin-top:20px}.sidebar-group h2{font-family:var(--font-ui);font-size:var(--text-meta);letter-spacing:.08em;text-transform:uppercase;color:#be9775;margin:0 12px 7px;font-weight:500;line-height:1.5}.sidebar-item{text-align:left;color:var(--sidebar-muted);font-size:var(--text-body);min-height:var(--control-height);background:0 0;border:0;border-radius:7px;align-items:center;gap:11px;margin-top:3px;padding:0 12px;font-weight:500;line-height:1.55;display:flex;position:relative}.sidebar-item:first-of-type{margin-top:0}.sidebar-item>svg{width:var(--icon-navigation);height:var(--icon-navigation);color:#d5b18f;flex-shrink:0}.sidebar-item-label{white-space:nowrap;flex:1;min-width:0;transition:opacity .12s}.sidebar-count{color:#ebd0b8;text-align:center;font-variant-numeric:tabular-nums;background:#d4ab8330;border-radius:5px;min-width:18px;padding:1px 6px;font-size:11px;font-weight:500}.sidebar-item.active{color:#321803;background:#fdf1e8;font-weight:500}.sidebar-item.active:before{content:"";background:var(--accent);border-radius:0 3px 3px 0;width:3px;position:absolute;top:12px;bottom:12px;left:-18px}.sidebar-item.active>svg{color:#a4490d}.sidebar-item.active .sidebar-count{color:#6d3c16;background:#efcfaf}.sidebar-item:hover{color:#fdf1e8;background:#583217}.sidebar-item.active:hover{background:var(--surface);color:var(--ink)}.sidebar a:focus-visible,.sidebar button:focus-visible{outline-color:#f1a564}.sidebar-footer{flex-shrink:0;margin-top:auto;padding-top:20px}.sidebar-refresh{justify-content:flex-start;width:100%}.user-info{border-top:1px solid #78513566;align-items:center;gap:10px;margin:14px 5px 0;padding:16px 7px 0;display:flex}.user-info span:nth-child(2){flex:1;min-width:0}.user-info strong{font-size:var(--text-body);overflow-wrap:anywhere;font-weight:500;display:block}.user-info small{color:#cda988;font-size:var(--text-meta);display:block}.avatar{color:#6c4021;width:35px;height:35px;font-size:var(--text-meta);background:#ead6c3;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.user-info .avatar{object-fit:cover;object-position:55% center;width:39px;height:39px}.workspace{margin-left:var(--sidebar-current-width);width:calc(100% - var(--sidebar-current-width))}@media (width>=761px){.sidebar{transition:width var(--sidebar-motion), padding var(--sidebar-motion)}.workspace{transition:margin-left var(--sidebar-motion), width var(--sidebar-motion)}.sidebar-collapsed{--sidebar-current-width:80px}.sidebar-collapsed .sidebar{padding-inline:20px}.sidebar-collapsed .brand img{opacity:0;visibility:hidden;transition-delay:0s,0s,.12s;transform:translate(-8px)}.sidebar-collapsed .sidebar-toggle svg{transform:rotate(180deg)}.sidebar-collapsed .sidebar-item{justify-content:center;padding-inline:10px}.sidebar-collapsed .sidebar-item-label,.sidebar-collapsed .user-info>span{clip-path:inset(50%);opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.sidebar-collapsed .sidebar-count{min-width:16px;padding:0 4px;font-size:11px;line-height:16px;position:absolute;top:2px;right:-3px}.sidebar-collapsed .sidebar-item.active:before{left:-20px}.sidebar-collapsed .sidebar-group h2{display:none}.sidebar-collapsed .sidebar-group+.sidebar-group{border-top:1px solid #78513566;margin-top:16px;padding-top:16px}.sidebar-collapsed .user-info{flex-direction:column;margin-inline:0;padding-inline:0}}.fop-shell .workspace{width:100%;max-width:1200px;margin:0 auto}.fop-brand{width:130px;height:auto}.topbar{border-bottom:1px solid var(--border);height:56px;font-size:var(--text-meta);color:#987453;justify-content:space-between;align-items:center;padding:0 32px;display:flex}.owner-topbar{display:none}.topbar>div{align-items:center;gap:12px;display:flex}.page{max-width:1600px;margin:auto;padding:24px 32px 40px}.page-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px;display:flex}.page-heading p{color:var(--muted);font-size:var(--text-body);margin-top:6px;line-height:1.5}.tabs{border-bottom:1px solid var(--border);scrollbar-width:thin;gap:4px;margin-bottom:16px;display:flex;overflow-x:auto}.tabs button{color:#896448;font-size:var(--text-body);white-space:nowrap;height:var(--button-height);min-height:var(--button-height);background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:8px;padding:8px 12px;font-weight:500;transition:background-color .15s;display:flex}.tabs button:hover:not(.active){background:var(--surface-hover)}.tabs button.active{color:#6d3211;border-bottom-color:var(--accent);font-weight:600}.count{background:var(--control-option-selected);border-radius:5px;padding:3px 6px;font-size:11px;font-weight:500}.toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin:16px 0;display:flex}.toolbar .search{flex:1;min-width:min(100%,300px)}.toolbar>select{white-space:nowrap;flex-shrink:0;width:auto;max-width:none}.search{align-items:center;display:flex;position:relative}.search svg{width:var(--icon-control);height:var(--icon-control);color:var(--control-placeholder);pointer-events:none;position:absolute;left:13px}.search input{padding-left:38px}.search:focus-within svg{color:var(--control-focus)}.month-control{align-items:center;gap:5px;display:flex}.month-control>select{width:136px}.month-control>select+select{width:86px}.date-input{min-width:0;position:relative}.date-input>input:not([type=hidden]){width:100%;padding-right:42px}.date-input-trigger{color:var(--control-placeholder);position:absolute;top:0;right:0}.date-picker{border:1px solid var(--border);background:var(--surface);width:328px;max-width:calc(100vw - 16px);color:var(--data-ink);border-radius:10px;margin:0;padding:10px;position:fixed;box-shadow:0 8px 24px #4321061a}.date-picker .month-control{justify-content:space-between;gap:4px}.date-picker .month-control>select{width:116px}.date-picker .month-control>select+select{width:76px}.date-picker-week,.date-picker-days{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.date-picker-week{color:var(--data-muted);text-align:center;margin-top:8px;font-size:12px}.date-picker-week span{padding:8px 0}.date-picker-day.btn{border-radius:6px;width:100%;min-width:0;padding:0;font-size:13px}.date-picker-day.outside{color:var(--data-muted)}.date-picker-day.selected{background:var(--soft);color:var(--ink);font-weight:600}.date-picker-day[aria-current=date]{text-underline-offset:4px;text-decoration:underline}.inline-edit{align-items:center;gap:2px;min-width:0;display:flex}.inline-edit-value{min-width:0}.inline-edit-trigger{color:var(--data-muted);opacity:0;pointer-events:none;flex:0 0 40px;transition:opacity .12s,background-color .12s}.inline-edit:hover>.inline-edit-trigger,.inline-edit:focus-within>.inline-edit-trigger{opacity:1;pointer-events:auto}.inline-edit-form{text-align:left;gap:6px;width:100%;min-width:160px;font-size:14px;font-weight:400;display:grid}.inline-edit-form>input,.inline-edit-form>select,.inline-edit-form>textarea{width:100%;min-width:0}.inline-edit-form>textarea{min-height:88px}.inline-edit-form .check-field{white-space:normal;font-size:12px;line-height:1.5}.inline-edit-actions{align-items:center;gap:5px;display:flex}.inline-edit-actions>small{white-space:normal;color:var(--data-muted);line-height:1.4}.inline-edit-error{color:var(--control-error);white-space:normal;margin:0;font-size:12px;line-height:1.5}.numeric .inline-edit{justify-content:flex-end}.numeric:has(.inline-edit-form){white-space:normal}.service-edit-values{flex-wrap:wrap;column-gap:12px;margin-left:24px;display:flex}.booking-comment-section .inline-edit-value{flex:1}.booking-comment-section .inline-edit-trigger{align-self:flex-start}.booking-comment-section .booking-note{margin:8px 0 0}.settings-values{margin:0}.settings-inline .section-panel>h2{margin:0 0 8px}.settings-values>div{border-bottom:1px solid var(--data-border);grid-template-columns:minmax(0,1fr) minmax(170px,1fr);align-items:center;gap:12px;padding:4px 0;display:grid}.settings-values>div:last-child{border-bottom:0}.settings-values dt{color:var(--data-muted)}.settings-values dd{margin:0}.finance-summary{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);grid-template-columns:repeat(3,minmax(0,1fr));margin:16px 0 20px;display:grid;overflow:hidden}.finance-summary .metric{border:0;border-radius:0;min-width:0;padding:20px}.finance-summary .metric+.metric{border-left:1px solid var(--data-border)}.finance-summary .metric-label{min-height:32px}.finance-summary .metric strong{font-size:24px;font-weight:550}.finance-period{margin-top:16px}@media (hover:none),(pointer:coarse){.inline-edit-trigger{opacity:1;pointer-events:auto}}@media (width<=760px){.inline-edit-trigger{opacity:1;pointer-events:auto}.month-control>select{width:126px}.month-control>select+select{width:80px}.finance-summary{grid-template-columns:minmax(0,1fr)}.finance-summary .metric{gap:6px;padding:16px}.finance-summary .metric+.metric{border-left:0;border-top:1px solid var(--data-border)}.finance-summary .metric strong{font-size:24px}.finance-summary .metric-label{min-height:0}.inline-edit-form input,.inline-edit-form select,.inline-edit-form textarea,.date-input>input{font-size:16px}.settings-values>div{grid-template-columns:minmax(0,1fr);gap:2px}}@media (prefers-reduced-motion:reduce){.inline-edit-trigger{transition:none}}.table-wrap{--ink:var(--data-ink);--muted:var(--data-muted);color:var(--ink);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);scrollbar-width:thin;scrollbar-color:var(--control-border) var(--control-background);overflow:auto}table{border-collapse:collapse;text-align:left;width:100%;font-size:var(--text-body);white-space:normal;font-weight:400}th{letter-spacing:.035em;text-transform:uppercase;color:var(--table-header-text);background:var(--table-header-background);border-bottom:1px solid var(--data-border);white-space:nowrap;padding:10px 12px;font-size:13px;font-weight:600}td{border-bottom:1px solid var(--data-border);vertical-align:middle;padding:12px;line-height:1.5}tr:last-child td{border-bottom:0}.table-wrap tbody tr{transition:background-color .14s}.table-wrap tbody tr:focus-within{background:var(--table-row-hover)}@media (hover:hover){.table-wrap tbody tr:hover{background:var(--table-row-hover)}}.metric-label{align-items:center;gap:7px;display:flex}.metric-label>svg{color:var(--muted);flex-shrink:0}td strong{font-weight:500}td small{color:var(--muted);max-width:260px;font-size:var(--text-meta);margin-top:3px;font-weight:400;display:block}th.numeric,td.numeric{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.guest-identity{text-align:left;min-width:0;color:inherit;font-size:var(--text-body);background:0 0;border:0;align-items:center;gap:10px;padding:0;display:flex}.guest-identity-text{overflow-wrap:anywhere;min-width:88px}.guest-identity strong,.guest-identity small{display:block}.guest-identity strong{font-size:inherit;font-weight:500;line-height:1.45}.guest-identity small{color:var(--muted);font-size:var(--text-meta);margin-top:3px}.money-value{font-variant-numeric:tabular-nums;white-space:nowrap}.payment-type-value,.data-stack{justify-items:start;gap:5px;display:grid}.payment-type-value>small,.data-stack>small{color:var(--data-muted);font-size:12px}.guest-avatar{color:#696052;background:#f0eeea;border-radius:50%;flex:0 0 34px;justify-content:center;align-items:center;width:34px;height:34px;font-size:11px;font-weight:600;display:inline-flex}.guest-identity.is-action{min-height:var(--control-height)}.guest-identity.is-action:hover strong{text-underline-offset:3px;text-decoration:underline}.guest-identity.is-action:focus-visible{outline-offset:4px}.guest-identity.is-compact{font-size:inherit;gap:5px}.guest-identity.is-compact .guest-identity-text{min-width:0}.guest-identity.is-compact .guest-avatar{flex-basis:20px;width:20px;height:20px;font-size:9px}.dialog-head .guest-identity{font-size:20px}.contact-value,.channel-value{max-width:100%;color:inherit;align-items:center;gap:6px;display:inline-flex}.contact-value span{overflow-wrap:anywhere;min-width:0}.contact-value svg,.channel-value svg,.type-label svg{color:var(--muted);flex-shrink:0}a.contact-value{text-decoration:none}a.contact-value:hover{text-underline-offset:3px;text-decoration:underline}.type-label{color:var(--data-ink);background:var(--canvas);font-size:var(--text-meta);border-radius:6px;align-items:center;gap:6px;padding:5px 8px;line-height:1.45;display:inline-flex}.data-empty{color:var(--muted)}.bookings-table table{table-layout:fixed;min-width:760px}.bookings-table th,.bookings-table td{padding-inline:10px}.bookings-table td{padding-block:12px}.booking-col-guest{width:22%}.booking-col-stay{width:19%}.booking-col-source,.booking-col-status{width:17%}.booking-col-price{width:10%}.booking-col-balance{width:15%}.booking-cell{display:block}.bookings-table .guest-identity{width:100%}.booking-stay strong{display:block}.booking-source{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.booking-source>span:last-child{overflow-wrap:anywhere;min-width:0}.booking-highlight .guest-identity{margin-top:8px;font-size:18px}.booking-highlight .guest-identity small{color:#dabca2}.booking-highlight .guest-avatar{color:#fdf1e8;background:#674428}.bookings-table .badge{white-space:normal;max-width:100%}.booking-balance strong{font-weight:600}.booking-balance.settled strong{color:#325b3f}.booking-balance .booking-overpaid{color:#75421d}.booking-balance .booking-review{color:#8f5a18}.booking-balance small{white-space:normal}.text-button{border:0;border-bottom:1px solid var(--control-border);color:#75421d;font-size:inherit;text-align:left;background:0 0;padding:1px 0}.text-button:hover{border-bottom-color:var(--control-hover)}.badge{font-size:var(--text-meta);color:#755638;white-space:nowrap;background:#efe3d7;border-radius:6px;align-items:center;gap:5px;padding:6px 9px;font-weight:500;line-height:1.4;display:inline-flex}.badge.confirmed{background:var(--status-confirmed-bg);color:var(--status-confirmed-ink)}.badge.paid{background:var(--status-paid-bg);color:var(--status-paid-ink)}.badge.hold{background:var(--status-hold-bg);color:var(--status-hold-ink)}.badge.request{background:var(--status-request-bg);color:var(--status-request-ink)}.badge.cancelled{color:var(--status-cancelled-ink);background:var(--status-cancelled-bg)}.pagination{font-size:var(--text-body);justify-content:flex-end;align-items:center;gap:10px;margin-top:17px;display:flex}.pagination span{color:var(--muted);margin-right:auto}.metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0;display:grid}.metrics:has(>.metric:nth-child(4)){grid-template-columns:repeat(4,minmax(0,1fr))}.metric{border:1px solid var(--border);background:var(--surface);border-radius:var(--radius);flex-direction:column;gap:8px;padding:18px;display:flex}.metric>span{font-size:var(--text-meta);color:var(--muted)}.metric strong{font-family:var(--font-heading);overflow-wrap:anywhere;font-size:27px;font-weight:500}.metric .money-value{white-space:normal;overflow-wrap:normal}.metric small{font-size:var(--text-meta);color:var(--muted)}.notice{font-size:var(--text-meta);color:#775232;overflow-wrap:anywhere;background:#faf3e8;border:0;border-radius:9px;margin:15px 0;padding:14px 16px;line-height:1.75;display:block}.notice svg{vertical-align:middle;margin-right:8px}.notice.error{color:#923923;background:#fbf0eb}.notice.success{color:#486b33;background:#edf3e8}.empty{text-align:center;color:var(--muted);justify-items:center;gap:12px;padding:38px 20px;display:grid}.empty svg{color:#b6987d;width:28px;height:28px}.empty h3{font-size:16px}.empty p{max-width:370px;font-size:var(--text-meta)}.section-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin:20px 0;padding:20px}.section-panel .table-wrap{margin-top:12px}.section-panel>.table-wrap{border:0}.section-title{justify-content:space-between;align-items:center;gap:14px;display:flex}.booking-highlight{isolation:isolate;color:#fdf1e8;background:#432106;border-radius:12px;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(180px,.9fr);align-items:start;gap:16px 20px;margin-bottom:20px;padding:20px;display:grid;position:relative;overflow:hidden}.booking-highlight:after{content:"";opacity:.12;pointer-events:none;z-index:-1;background:url(/brand-heart.svg) 50%/contain no-repeat;width:257px;height:320px;position:absolute;top:-72px;right:-25px}.booking-highlight-heading{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.booking-highlight-heading h2{font-size:var(--text-meta);letter-spacing:normal;color:#e4c2a3;align-items:center;gap:7px;font-weight:500;line-height:1.75;display:flex}.booking-highlight-heading svg{color:var(--accent);flex-shrink:0}.booking-timing{color:#e8c5a6;font-size:var(--text-meta);white-space:nowrap;background:#fdf1e813;border:1px solid #fdf1e813;border-radius:5px;padding:4px 8px}.booking-highlight-dates{letter-spacing:-.025em;font-variant-numeric:tabular-nums;margin-top:8px;font-size:28px;font-weight:500;line-height:1.35}.booking-highlight-stay,.booking-highlight-guest{min-width:0}.booking-highlight-label{color:#e5c5a8;font-size:var(--text-meta)}.booking-highlight-meta{color:#dfc1a7;flex-wrap:wrap;gap:12px 18px;margin-top:11px;font-size:12px;display:flex}.booking-highlight-meta span{align-items:center;gap:7px;display:inline-flex}.booking-highlight-meta svg{color:#d79359;flex-shrink:0}.booking-highlight-footer{flex-direction:column;align-items:stretch;gap:12px;min-width:0;display:flex}.booking-highlight-footer p{color:#e5c5a8;font-size:var(--text-meta)}.booking-highlight-footer strong{font-family:var(--font-heading);letter-spacing:-.4px;font-variant-numeric:tabular-nums;margin-top:4px;font-size:24px;font-weight:400;line-height:1.55;display:block}.booking-highlight.is-empty{grid-template-columns:minmax(0,1fr) auto}.booking-highlight-empty{margin-top:8px;font-size:24px;font-weight:600;line-height:1.3}.booking-highlight.is-empty .booking-highlight-action{align-self:center}.overview-operations{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;min-width:0;margin-bottom:24px;display:grid}.overview-operation>h2{font-family:var(--font-ui);font-size:17px;font-weight:600}.booking-rows-empty{color:var(--muted);border-bottom:1px solid var(--border);padding:18px 0;font-size:12px}.overview-metrics.metrics{gap:16px;margin:0 0 24px;padding-bottom:0}.overview-metrics .metric{border:0;border-left:1px solid var(--border);background:0 0;border-radius:0;gap:8px;padding:0 0 0 16px}.overview-metrics .metric:first-child{border-left:0;padding-left:0}.overview-metrics .metric>span{color:#85694f;font-size:12px}.overview-metrics .metric strong{font-size:29px;line-height:1.2}.overview-metrics .metric small{font-size:var(--text-meta);color:#90745c}.overview-occupancy-detail{color:var(--muted);gap:6px;display:grid}.booking-rows{margin-top:12px;display:grid}.booking-rows>button{border:0;border-bottom:1px solid var(--border);text-align:left;color:var(--ink);background:0 0;align-items:center;gap:12px;padding:12px 0;transition:background-color .15s;display:flex}@media (hover:hover){.booking-rows>button:hover{background:var(--surface-hover)}}.booking-row-content{flex:1;min-width:0}.booking-rows strong{font-size:var(--text-body);display:block}.booking-rows small{color:var(--muted);margin-top:5px;display:block}.financial-highlight{border-radius:var(--radius);color:#fef1e7;background:#432106;grid-template-columns:1fr 1fr;gap:24px;padding:24px;display:grid}.financial-highlight>div{flex-direction:column;gap:12px;display:flex}.financial-highlight span,.financial-highlight small{color:#dabca2;font-size:11px}.financial-highlight strong{font-family:var(--font-heading);font-size:32px;font-weight:500}.integration-list{gap:16px;display:grid}.integration-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin:0;overflow:hidden}.integration-heading{border-bottom:1px solid var(--border);background:var(--table-header-background);grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:12px;padding:16px;display:grid}.integration-heading h2{font-size:18px}.integration-heading p{color:var(--muted);font-size:var(--text-body);margin-top:4px;line-height:1.6}.integration-icon{width:40px;height:40px;font-family:var(--font-heading);color:#fff;background:#432106;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;font-size:28px;display:flex}.integration-icon.booking{background:#123f94}.integration-icon.hutshub{background:#5e7047}.connection-state{font-size:var(--text-meta);background:var(--control-option-selected);color:#665345;white-space:nowrap;border-radius:20px;margin-left:auto;padding:6px 10px}.connection-state.connected{color:#315d3b;background:#dcebdc}.connection-state.attention{color:#7d4d10;background:#f8e6c4}.integration-content{padding:16px}.integration-content>p{color:var(--muted);max-width:760px}.integration-form{flex-wrap:wrap;align-items:flex-start;gap:14px;margin:0 0 16px;display:flex}.integration-form .field{flex:1;min-width:240px}.integration-form>.btn{margin-top:23px}.integration-form input{font-family:var(--font-ui);font-size:14px}.integration-content details{margin-top:8px}.integration-content summary{min-height:var(--control-height);font-size:var(--text-body)}.integration-content .button-row{margin:0 0 12px}.integration-content ol{font-size:var(--text-body);padding-left:20px;line-height:2}.integration-content details a{font-size:var(--text-body);text-decoration:underline}.import-totals{max-width:440px;margin:8px 0 16px}.import-totals>div{justify-content:space-between;gap:16px;padding:6px 0;display:flex}.import-totals dt,.import-result p{color:var(--muted)}.import-totals dd{font-variant-numeric:tabular-nums;margin:0;font-weight:500}.integration-status{font-size:var(--text-meta);color:var(--muted);gap:24px;margin:16px 0;display:flex}.integration-status strong{font-size:var(--text-meta);color:#5b351b;margin-bottom:8px;display:block}.export-calendar{border-top:1px solid var(--border);margin-top:24px;padding-top:22px}.export-calendar p{font-size:var(--text-meta);color:var(--muted);max-width:650px;margin:10px 0 16px}.copy-row{gap:10px;display:flex}.copy-row input{font-family:var(--font-ui);font-size:var(--text-body);min-width:0}.form-stack{gap:14px;display:grid}.form-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.field{flex-direction:column;gap:6px;min-width:0;display:flex}.field>label{font-size:var(--text-body);font-weight:500}.secret-input{display:block;position:relative}.secret-input input{padding-right:40px}.secret-input .btn{position:absolute;top:50%;right:2px;transform:translateY(-50%)}.integration-overview{font-size:var(--text-body);color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px 20px;margin-bottom:16px;display:flex}.integration-loading{color:var(--muted);padding:32px 0;font-size:13px}.field small{font-size:var(--text-meta);color:var(--muted)}.check-field{font-size:var(--text-body);cursor:pointer;align-items:flex-start;gap:10px;line-height:1.6;display:flex}.check-field>span{flex:1}.check-field>span>strong{float:right}.form-actions{background:var(--surface);border-top:1px solid var(--border);justify-content:flex-end;gap:10px;margin-top:8px;padding:17px 0;display:flex;position:sticky;bottom:-24px}.button-row{flex-wrap:wrap;align-items:center;gap:10px;margin:18px 0;display:flex}.table-wrap .button-row{flex-wrap:nowrap;gap:4px;width:max-content;margin:0}.row-actions-menu{background:var(--surface);width:184px;color:var(--data-ink);border:1px solid var(--border);border-radius:10px;margin:0;padding:5px;position:fixed;inset:auto;box-shadow:0 8px 24px #2927241f}.table-actions-cell{text-align:right}@media (width>=761px){.table-actions-cell{width:64px}}@media (width<=760px){.table-wrap td.table-actions-cell{justify-content:flex-end;display:flex}.table-wrap td.table-actions-cell:before{display:none}}.row-actions-menu .btn{justify-content:flex-start;width:100%}.row-actions-menu .is-destructive{--button-text:var(--control-error)}.dialog{color:var(--ink);background:var(--surface);border:0;border-radius:16px;width:min(680px,100% - 30px);max-height:calc(100dvh - 50px);padding:0;box-shadow:0 12px 48px #29272424}.dialog[open]{grid-template-rows:auto minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr);display:grid;overflow:hidden}.dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#29272466}.dialog-head{border-bottom:1px solid var(--border);background:var(--surface);z-index:2;justify-content:space-between;align-items:center;gap:12px;padding:14px 20px;display:flex}.dialog-head h2{overflow-wrap:anywhere;min-width:0;font-size:23px}.dialog-head .icon-only{flex-shrink:0}.dialog-body{overscroll-behavior:contain;min-width:0;min-height:0;padding:20px;overflow-y:auto}.dialog-footer{min-width:0;padding:12px 20px max(12px, env(safe-area-inset-bottom));border-top:1px solid var(--data-border);background:var(--surface);flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.booking-footer-status{flex-basis:100%;justify-content:flex-end;display:flex}.booking-footer-status .btn{white-space:normal;text-align:center;min-width:0}.dialog-body>p{margin-bottom:17px}.dialog.drawer{border-radius:16px 0 0 16px;width:min(620px,100%);max-width:100%;height:100dvh;max-height:100dvh;margin:0;position:fixed;inset:0 0 0 auto}.dialog.drawer .dialog-body{padding-bottom:24px}.dialog.drawer>.dialog-head,.dialog.drawer>.dialog-footer{background:var(--panel-chrome)}.booking-editor-dialog .dialog-body{padding:0}.booking-editor-form,.booking-editor-saved{padding:16px 20px 20px}.booking-form-section{border-bottom:1px solid var(--data-border);margin-bottom:24px;padding-bottom:24px}.booking-form-section:last-of-type{border-bottom:0;margin-bottom:0;padding-bottom:0}.booking-form-section>.form-grid+.form-grid{margin-top:14px}.booking-form-section-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:16px;display:flex}.booking-form-section-heading h3{color:var(--data-ink);align-items:center;gap:8px;font-size:16px;line-height:1.4;display:flex}.booking-form-section-heading svg{color:var(--data-muted);flex-shrink:0}.booking-form-section>.field+.form-grid{margin-top:14px}.booking-form-stay-meta{flex-wrap:wrap;align-items:center;gap:12px 24px;margin-top:14px;display:flex}.booking-form-stay-meta>span{color:var(--data-muted);align-items:center;gap:6px;font-size:13px;display:inline-flex}.booking-form-stay-meta .check-field{align-items:center}.booking-form-hint{color:var(--data-muted);font-size:var(--text-meta);margin:12px 0 0;line-height:1.6}.booking-calendar-check{background:var(--canvas);border-radius:8px;margin-top:14px;padding:12px 14px}.booking-calendar-check input,.booking-next-payment input{margin-top:3px}.booking-calendar-check small,.booking-next-payment small{color:var(--data-muted);margin-top:4px;display:block}.booking-form-section .notice{margin-bottom:0}.booking-form-section .notice ul{margin:6px 0;padding-left:18px}.booking-lodging-price{align-items:flex-start;gap:12px;display:flex}.booking-lodging-price .field{flex:1}.booking-lodging-price>.btn{margin-top:27px}.booking-form-disclosure{border-top:1px solid var(--data-border);margin-top:18px}.booking-form-disclosure>summary{min-height:var(--button-height);color:var(--data-ink);font-size:var(--text-body);padding-block:12px;line-height:1.5}.booking-form-disclosure>summary>span{float:right;font-size:var(--text-meta);color:var(--data-muted);font-weight:400}.booking-form-disclosure>.form-grid,.booking-form-disclosure .booking-form-hint{margin-top:12px}.booking-form-wide{grid-column:1/-1}.booking-service-options{margin-bottom:16px;display:grid}.booking-service-option{border-bottom:1px solid var(--data-border);padding:12px 0}.booking-service-option-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;display:flex}.booking-service-option-heading .check-field{align-items:center}.booking-service-option-heading>span{color:var(--data-muted);font-size:var(--text-meta)}.booking-service-option-fields{margin:12px 0 0 27px}.booking-service-option-fields>.check-field{margin-top:12px}.booking-service-option-fields .booking-form-hint{margin:0 0 10px}.booking-price-breakdown{background:var(--canvas);border-radius:8px;margin:16px 0 0;padding:14px 16px;font-size:13px}.booking-price-breakdown>div{justify-content:space-between;gap:12px;padding-block:4px;display:flex}.booking-price-breakdown dt{color:var(--data-muted)}.booking-price-breakdown dd{white-space:nowrap;margin:0}.booking-next-payment{margin:16px 0}.booking-editor-footer{gap:14px;width:100%;display:grid}.booking-editor-summary{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.booking-editor-summary>div{min-width:0}.booking-editor-summary span{font-size:13px;display:block}.booking-editor-summary small{color:var(--data-muted);margin-top:4px;display:block}.booking-editor-summary-total{text-align:right}.booking-editor-summary-total>span{font-size:var(--text-meta);color:var(--data-muted)}.booking-editor-summary-total strong{color:var(--data-ink);font-variant-numeric:tabular-nums;font-size:20px;font-weight:600;line-height:1.4;display:block}.booking-editor-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}@media (width<=760px){.booking-editor-form,.booking-editor-saved{padding:16px 18px 20px}.booking-form-section-heading{gap:4px}.booking-form-disclosure>summary>span{float:none;margin-left:18px;display:block}.booking-editor-summary-total strong{font-size:18px}.booking-editor-actions .btn.primary{flex:1}}@media (width<=360px){.booking-editor-form .form-grid{grid-template-columns:minmax(0,1fr)}.booking-editor-actions>.btn{flex-basis:100%}.booking-editor-summary>div{flex:1}.booking-editor-summary-total strong{font-size:16px}}.summary-money{background:var(--canvas);border:0;border-radius:9px;grid-template-columns:repeat(3,1fr);gap:12px;margin:24px 0;padding:20px;display:grid}.summary-money small{font-size:var(--text-meta);color:var(--muted);margin-bottom:8px;display:block}.summary-money strong{font-family:var(--font-heading);font-size:20px;font-weight:500}.booking-detail-section{color:var(--data-ink);margin:16px 0}.booking-detail-section h3{margin-bottom:6px;font-size:16px;font-weight:600}.booking-detail-section .section-title h3{margin:0}.booking-icon-label{align-items:center;gap:8px;display:inline-flex}.booking-icon-label svg{color:var(--data-muted);flex-shrink:0}.booking-stay-section{margin-top:0;margin-bottom:16px}.booking-stay-section .section-title{flex-wrap:wrap;gap:10px}.booking-stay-dates{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:14px 0 10px;display:grid}.booking-stay-dates dt{color:var(--data-muted);margin-bottom:4px;font-size:12px}.booking-stay-dates dd{font-variant-numeric:tabular-nums;margin:0;font-size:19px;font-weight:500}.booking-stay-meta{color:var(--data-muted);flex-wrap:wrap;gap:10px 20px;font-size:13px;display:flex}.booking-stay-meta span{align-items:center;gap:6px;display:inline-flex}.booking-money{background:var(--canvas);border:0;margin:16px 0;padding:16px}.booking-money small{color:var(--data-muted);margin-bottom:6px}.booking-money strong{color:var(--data-ink);font-weight:600}.booking-detail-section .detail-list>div{border-color:var(--data-border);align-items:center;padding:4px 0}.booking-detail-section .detail-list dt{color:var(--data-muted)}.booking-detail-section .detail-list dd{overflow-wrap:anywhere;flex-shrink:0;max-width:65%}.booking-service{border-bottom:1px solid var(--data-border);padding:10px 0}.booking-service-main,.booking-service-payment{justify-content:space-between;align-items:center;gap:12px;display:flex}.booking-service-main{font-size:14px}.booking-service-main strong{font-weight:500}.booking-service-main>span{text-align:right}.booking-service small{color:var(--data-muted);margin-top:5px;font-size:12px;line-height:1.6;display:block}.booking-service>small{margin-left:24px}.booking-service-payment{margin-top:4px}.booking-note{white-space:pre-wrap;overflow-wrap:anywhere;margin-top:10px;font-size:14px;line-height:1.7}.booking-comment-section{background:var(--canvas);border-radius:10px;padding:16px}.booking-comment-section .section-title{flex-wrap:wrap;gap:10px}.booking-comment-section .btn span{min-width:0}.dialog.booking-detail-dialog .dialog-head,.dialog.booking-editor-dialog .dialog-head{padding:12px 20px}.dialog.booking-detail-dialog .dialog-body{padding:16px 20px 20px}.booking-detail-dialog .dialog-footer,.booking-editor-dialog .dialog-footer{padding:10px 20px max(10px, env(safe-area-inset-bottom))}.booking-detail-dialog .dialog-footer>.btn{white-space:normal}.booking-secondary-details{border-top:1px solid var(--data-border)}.booking-secondary-details summary{color:var(--data-muted);font-size:13px}.booking-technical-id{overflow-wrap:anywhere}.booking-payments{margin-top:24px}.detail-list{margin:0}.detail-list>div{border-bottom:1px solid var(--border);font-size:var(--text-body);justify-content:space-between;gap:20px;padding:14px 0;display:flex}.detail-list dt{color:var(--muted)}.detail-list dd{text-align:right;margin:0}.mt{margin-top:25px}details{font-size:var(--text-body);line-height:1.8}summary{cursor:pointer;padding:11px 0;font-size:11px;font-weight:500}details p{margin:10px 0 15px}.settings-form{max-width:760px}.settings-form h2{margin:20px 0 0}.settings-form>p{color:var(--muted)}.payment-select{gap:14px;display:grid}.ledger-row{background:var(--canvas);border-radius:8px;justify-content:space-between;padding:20px;font-size:13px;display:flex}.guest-history{flex-wrap:wrap;gap:10px;display:flex}.toast{--button-ghost-text:#fff0e3;--button-ghost-hover:#583217;--button-ghost-active:#795334;bottom:25px;left:calc(50% + var(--sidebar-width) / 2);color:#fff0e3;z-index:100;background:#432106;border-radius:10px;align-items:center;gap:20px;max-width:calc(100% - 35px);padding:15px 17px;font-size:12px;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 8px 25px #43210630}.toast button:focus-visible{outline-color:#f1a564}.mobile-menu,.mobile-close,.menu-shade{display:none}.calendar{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);overflow:hidden;container:booking-calendar/inline-size}.weekdays{background:var(--table-header-background);border-bottom:1px solid var(--border);grid-template-columns:repeat(7,1fr);display:grid}.weekdays span{text-align:right;font-size:var(--text-meta);letter-spacing:.035em;text-transform:uppercase;color:var(--table-header-text);padding:10px 13px;font-weight:600}.calendar-weeks{display:grid}.calendar-week{grid-template-columns:repeat(7,minmax(0,1fr));grid-template-rows:34px repeat(var(--calendar-lanes,1), minmax(82px, 1fr));border-bottom:1px solid var(--border);min-height:130px;display:grid}.day-cell{border-right:1px solid var(--border);min-width:0;padding:8px 5px 12px;position:relative}.day-cell.last{border-right:0}.day-cell.outside{background:var(--canvas);color:var(--control-placeholder)}.day-cell.selected{background:var(--control-option-selected)}.day-number{width:27px;height:27px;color:inherit;background:0 0;border:0;border-radius:50%;margin:0 6px 6px auto;padding:0;font-size:11px;display:block}.day-number:focus-visible{outline:2px solid var(--control-focus);outline-offset:1px}.today .day-number{background:var(--button-primary-background);color:var(--button-primary-text)}.day-number:hover{background:var(--surface-hover)}.today .day-number:hover{background:var(--button-primary-hover)}.calendar-segment{z-index:2;--event-bg:#dce5d6;--event-ink:#35513b;--event-muted:#526b55;align-self:start;min-width:0;container-type:inline-size}.payment-unrecorded{--event-bg:#f3dfd1;--event-ink:#653b27;--event-muted:#805640}.payment-partly{--event-bg:#f4e4b8;--event-ink:#604914;--event-muted:#775f2a}.payment-full{--event-bg:#bfe0cb;--event-ink:#1e5036;--event-muted:#38664c}.payment-recorded{--event-bg:#d5e8df;--event-ink:#285544;--event-muted:#456a57}.calendar-segment.external,.calendar-legend-swatch.external,.calendar-agenda-status.external{--event-bg:#d9e6f1;--event-ink:#2e5069;--event-muted:#4d6980}.calendar-segment.block,.calendar-legend-swatch.block,.calendar-agenda-status.block{--event-bg:#6d513a;--event-ink:#fff3e5;--event-muted:#f2dfca}.calendar-event{text-align:left;background:var(--event-bg);width:calc(100% - 6px);min-width:0;height:82px;color:var(--event-ink);border:0;border-radius:5px;margin:2px 3px 0;padding:8px 9px;transition:background-color .15s;display:block;overflow:hidden}.calendar-event:not(:disabled):hover{background:color-mix(in srgb, var(--event-bg) 94%, var(--event-ink))}.calendar-segment.continues-from .calendar-event,.calendar-segment.continues-from .calendar-occupancy{border-top-left-radius:0;border-bottom-left-radius:0}.calendar-segment.continues-to .calendar-event,.calendar-segment.continues-to .calendar-occupancy{border-top-right-radius:0;border-bottom-right-radius:0}.calendar-event:disabled{cursor:default;opacity:1}.calendar-event:focus-visible,.calendar-agenda-item:focus-visible{outline:2px solid var(--control-focus);outline-offset:2px}.calendar-event-content{flex-direction:column;gap:4px;min-width:0;height:100%;line-height:1.15;display:flex}.calendar-event-name{white-space:normal;text-overflow:ellipsis;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;font-size:12px;font-weight:700;line-height:1.17;display:-webkit-box;overflow:hidden}.calendar-event-facts{min-width:0;color:var(--event-muted);white-space:nowrap;align-items:center;gap:0 4px;font-size:9px;font-weight:600;line-height:1.25;display:flex;overflow:hidden}.calendar-event-facts>span{white-space:nowrap}.calendar-event-footer{justify-content:space-between;align-items:center;gap:6px;min-width:0;margin-top:auto;display:flex}.calendar-event-state{white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:4px;min-width:0;font-size:10px;font-weight:700;line-height:1.2;display:inline-flex;overflow:hidden}.calendar-event-state:before{content:"";background:currentColor;border-radius:50%;flex:0 0 5px;width:5px;height:5px}.calendar-event-state-full{display:none}.calendar-event-source{color:#7c4c29;flex:0 0 16px;justify-content:center;align-items:center;width:16px;height:16px;display:inline-flex}.calendar-event-source img,.calendar-event-source svg{width:16px;height:16px;display:block}.calendar-event-source.source-hutshub{color:#185c62}.calendar-event-source.source-other{color:#657487}.calendar-source-initial{font-size:13px;font-weight:800;line-height:1}@container (width>=185px){.calendar-event-state-short{display:none}.calendar-event-state-full{display:inline}}@container (width>=340px){.calendar-event-content{grid-template-rows:auto 1fr;grid-template-columns:minmax(0,1fr) auto;align-items:start;column-gap:14px;display:grid}.calendar-event-name,.calendar-event-facts{grid-column:1}.calendar-event-footer{flex-direction:column;grid-area:1/2/span 2;align-self:center;align-items:flex-end;gap:5px;margin-top:0}}.calendar-occupancy,.calendar-mobile-agenda{display:none}.calendar-legend{color:var(--muted);flex-wrap:wrap;align-items:center;gap:15px;margin:17px 0;font-size:10px;display:flex}.calendar-legend-hours{margin-left:auto}.calendar-legend-key{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.calendar-legend-swatch{background:var(--event-bg);width:12px;height:12px;box-shadow:inset 0 0 0 1px var(--event-ink);border-radius:3px;flex:0 0 12px;display:inline-block}.search-results{gap:8px;display:flex;overflow:auto}.search-results>button{border:1px solid var(--border);background:var(--surface);color:var(--ink);border-radius:8px;flex-shrink:0;align-items:center;gap:8px;padding:12px;font-size:11px;display:flex}.search-results small{color:var(--muted);font-size:9px}.search-results>p{color:var(--muted);margin:0;padding:10px 0;font-size:12px}.auth-layout{background:var(--canvas);flex-direction:column;justify-content:center;align-items:center;min-height:100dvh;padding:35px;display:flex}.auth-layout>img{width:150px;margin-bottom:28px}.auth-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;width:100%;max-width:450px;padding:32px}.auth-card h1{margin:0 0 24px;font-size:30px}.auth-card .btn.primary{width:100%}@media (width>=1450px){.page{padding:32px 40px 48px}.topbar{padding:0 40px}.calendar-week{min-height:130px}}@media (width<=1100px){:root{--sidebar-width:214px}.sidebar{padding-left:14px;padding-right:14px}.sidebar-item.active:before{left:-14px}.page{padding:20px 20px 32px}.topbar{padding:0 20px}.metrics:has(>.metric:nth-child(4)){grid-template-columns:repeat(2,1fr)}.metric{padding:18px}.overview-metrics .metric:nth-child(3){border-left:0;padding-left:0}}@media (width<=760px){h1{font-size:24px}.sidebar{visibility:hidden;pointer-events:none;transition:transform var(--sidebar-motion), visibility 0s .24s;width:min(256px,100vw - 48px);padding:24px 18px 16px;transform:translate(-100%)}.sidebar-item.active:before{left:-18px}.sidebar.open{visibility:visible;pointer-events:auto;transition-delay:0s;transform:translate(0)}.sidebar-toggle{display:none}.workspace{width:100%;margin:0}.mobile-menu,.mobile-close{display:inline-flex}.mobile-close{position:absolute;top:0;right:0}.menu-shade{z-index:19;opacity:0;visibility:hidden;pointer-events:none;background:#43210666;border:0;transition:opacity .18s,visibility 0s .24s;display:block;position:fixed;inset:0}.menu-shade.open{opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s}.topbar{gap:8px;height:52px;padding:0 15px}.owner-topbar{display:flex}.sidebar-refresh{display:none}.page{padding:20px 16px 32px}.page-heading{flex-wrap:wrap;align-items:flex-start;gap:12px;margin-bottom:16px}.page-heading p{font-size:var(--text-body);max-width:320px}.page-heading>.btn{margin-top:5px}:is(.metrics,.metrics:has(>.metric:nth-child(4))){grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.metric{gap:8px;padding:14px 12px}.metric strong{font-size:25px}.fop-shell .page .metrics{grid-template-columns:1fr}.fop-shell .metric{gap:8px;padding:16px}.fop-shell .metric strong{overflow-wrap:normal}.metric>span,.metric small{font-size:var(--text-meta)}.toolbar{gap:8px}.toolbar .search{flex-basis:100%}.toolbar>select{flex:1;min-width:120px;max-width:none}.tabs button{font-size:var(--text-body);padding:8px 10px}.overview-operations{grid-template-columns:minmax(0,1fr);gap:20px}.overview-metrics.metrics{gap:16px;margin-bottom:20px}.overview-metrics .metric{padding-left:16px}.overview-metrics .metric:nth-child(odd){border-left:0;padding-left:0}.overview-metrics .metric>span{font-size:var(--text-meta)}.overview-metrics .metric strong{font-size:27px}.overview-metrics .metric small{font-size:var(--text-meta)}.booking-highlight,.booking-highlight.is-empty{border-radius:11px;grid-template-columns:minmax(0,1fr);gap:16px;padding:16px}.booking-highlight-dates{letter-spacing:-.8px;font-size:27px}.booking-highlight-footer{border-top:1px solid #a1744c5e;flex-direction:column;align-items:stretch;gap:14px;padding-top:16px}.booking-highlight-footer strong{font-size:26px}.booking-highlight-action.btn{width:100%}.booking-highlight:after{width:230px;height:287px;top:-58px;right:-48px}.sidebar-item{min-height:var(--control-height)}.section-panel{margin:16px 0;padding:16px 14px}.section-title h2,.section-panel>h2{font-size:20px}.financial-highlight{grid-template-columns:1fr;gap:20px;padding:20px}.financial-highlight strong{font-size:31px}.financial-highlight>div+div{border-top:1px solid #835333;padding-top:22px}.table-wrap{border-radius:10px}.table-wrap table,.table-wrap tbody,.table-wrap tr{width:100%;display:block}.table-wrap thead{display:none}.table-wrap tr{border-bottom:1px solid var(--border);padding:12px}.table-wrap tr:last-child{border:0}.table-wrap td{font-size:var(--text-body);text-align:right;white-space:normal;border:0;justify-content:space-between;align-items:center;gap:15px;min-height:33px;padding:7px 0;display:flex}.table-wrap td:before{content:attr(data-label);color:var(--muted);font-size:var(--text-meta);text-align:left;flex-shrink:0;min-width:70px}.table-wrap td>small{display:none}.table-wrap td strong{font-size:var(--text-body)}.table-wrap td small{max-width:180px}.table-wrap .guest-identity,.table-wrap td .guest-history{justify-content:flex-end}.bookings-table table{min-width:0}.bookings-table td{width:100%;padding:8px 0}.bookings-table .booking-col-guest{border-bottom:1px solid var(--border);text-align:left;margin-bottom:8px;padding-top:0;padding-bottom:13px}.bookings-table .booking-col-guest:before{display:none}.bookings-table .guest-identity{justify-content:flex-start}.bookings-table .booking-col-balance{border-top:1px solid var(--border);margin-top:8px;padding-top:13px;padding-bottom:0}.bookings-table .booking-cell{min-width:0}.bookings-table .booking-source{justify-content:flex-end}.integration-heading{grid-template-columns:38px minmax(0,1fr);gap:8px 12px;padding:16px}.integration-heading h2{font-size:18px}.integration-heading p{font-size:var(--text-body)}.integration-icon{width:38px;height:38px;font-size:24px}.connection-state{font-size:var(--text-meta);grid-column:2;justify-self:start;margin-left:0}.integration-content{padding:16px}.integration-content>p{font-size:var(--text-body)}.integration-form{gap:15px;display:grid}.integration-form .field{min-width:0}.integration-form input{font-size:16px}.integration-form>.btn{width:100%;margin:0}.integration-status{font-size:var(--text-body);flex-wrap:wrap;justify-content:space-between;gap:18px}.integration-status strong{font-size:var(--text-body)}.copy-row{flex-direction:column}.export-calendar p{font-size:var(--text-body)}.integration-content .button-row .btn{font-size:var(--text-body);flex-grow:1}.calendar-legend{font-size:var(--text-meta);gap:10px}.calendar-legend>span:last-child{flex-basis:100%;margin:0}.calendar-week{grid-template-rows:40px repeat(var(--calendar-lanes,1), 9px);min-height:51px}.day-cell{min-height:0;padding:0}.day-number{font-size:var(--text-meta);width:var(--control-height);height:var(--control-height);margin:0 auto}.weekdays span{padding:8px 3px;font-size:11px}.calendar-event{border-radius:4px;width:calc(100% - 4px);height:7px;min-height:7px;margin:1px 2px;padding:0}.calendar-event-content{display:none}.dialog{border-radius:12px;width:calc(100% - 20px);max-height:calc(100dvh - 25px)}.dialog-head{padding:12px 18px}.dialog-head h2{font-size:22px}.dialog-body{padding:16px 18px}.dialog.drawer{border-radius:0;width:100%}.dialog-footer{padding:10px 18px max(10px, env(safe-area-inset-bottom));gap:8px}.dialog-footer>.btn{flex:1}.booking-footer-status .btn{width:100%}.booking-stay-dates dd{font-size:16px}.summary-money.booking-money{padding:14px 12px}.dialog.booking-detail-dialog .dialog-head,.dialog.booking-editor-dialog .dialog-head{padding:12px 18px}.dialog.booking-detail-dialog .dialog-body{padding:16px 18px 20px}.booking-detail-dialog .dialog-footer,.booking-editor-dialog .dialog-footer{padding:10px 18px max(10px, env(safe-area-inset-bottom))}.booking-detail-dialog .dialog-footer>.btn{padding-inline:10px}.booking-service-payment{flex-wrap:wrap;gap:4px}.form-grid{gap:14px 12px}.field>span{font-size:10px}.field input,.field select,.field textarea,.search input,.copy-row input,input[type=month],.toolbar>select{font-size:16px}.summary-money{gap:7px;padding:16px 12px}.summary-money strong{font-size:17px}.summary-money small{font-size:8px}.booking-money small{font-size:12px}.form-actions{flex-wrap:wrap;gap:8px;bottom:-20px}.form-actions .btn{flex:1}.toast{font-size:11px;bottom:20px;left:50%}.auth-layout{padding:22px}.auth-card{padding:25px}.auth-card h1{font-size:29px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}@media (width<=480px){.form-grid{grid-template-columns:minmax(0,1fr)}.booking-stay-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-detail-dialog .dialog-footer>.btn{white-space:nowrap;flex-basis:100%}}@media (width<=360px){.page .metrics:not(.overview-metrics){grid-template-columns:minmax(0,1fr)}}.import-issues{gap:14px;max-height:340px;padding:10px 0;display:grid;overflow:auto}.import-issues>div{border-bottom:1px solid var(--border);padding-bottom:12px}.import-issues p{color:var(--muted);margin:5px 0;font-size:10px}.import-issues a{align-items:center;gap:5px;font-size:11px;display:flex}.import-issues .btn{min-height:var(--button-height);margin-top:8px;font-size:10px}@container booking-calendar (width<=760px){.has-mobile-agenda .calendar-week{grid-template-rows:40px repeat(var(--calendar-lanes,1), 9px);min-height:51px}.has-mobile-agenda .day-cell{padding:0}.has-mobile-agenda .day-number{width:var(--control-height);height:var(--control-height);font-size:var(--text-meta);margin:0 auto}.has-mobile-agenda .calendar-event{display:none}.has-mobile-agenda .calendar-occupancy{background:var(--event-bg);border-radius:4px;height:7px;margin:1px 2px;display:block}.calendar-mobile-agenda{border-top:1px solid var(--border);gap:10px;padding:18px 14px 16px;display:grid}.calendar-mobile-agenda h2{margin:0;font-size:16px}.calendar-mobile-list{gap:8px;display:grid}.calendar-agenda-item{text-align:left;width:100%;color:var(--ink);background:var(--surface);border:1px solid var(--border);border-radius:8px;gap:7px;padding:14px;display:grid}.calendar-agenda-item:disabled{cursor:default;opacity:1}.calendar-agenda-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.calendar-agenda-meta{align-items:center;gap:8px;display:inline-flex}.calendar-agenda-range{color:var(--muted);font-size:12px;line-height:1.4}.calendar-agenda-status{color:var(--event-ink);background:var(--event-bg);border-radius:5px;flex:none;padding:3px 6px;font-size:11px;line-height:1.3}.calendar-agenda-item .calendar-event-content{gap:5px;display:flex}.calendar-agenda-item .calendar-event-name{white-space:normal;font-size:15px}.calendar-agenda-item .calendar-event-facts{color:var(--muted);font-size:12px}.calendar-mobile-empty{color:var(--muted);background:var(--surface);border:1px solid var(--border);border-radius:8px;margin:0;padding:14px;font-size:12px}}
