@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");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}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-neutral-900:oklch(20.5% 0 none);--color-white:#fff;--spacing:.25rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--radius-md:.375rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.hidden{display:none}.inline-flex{display:inline-flex}.table{display:table}.items-center{align-items:center}.justify-center{justify-content:center}.gap-2{gap:calc(var(--spacing) * 2)}.rounded-md{border-radius:var(--radius-md)}.border{border-style:var(--tw-border-style);border-width:1px}.border-neutral-900{border-color:var(--color-neutral-900)}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.px-3{padding-inline:calc(var(--spacing) * 3)}.py-2{padding-block:calc(var(--spacing) * 2)}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-neutral-900{color:var(--color-neutral-900)}.overline{text-decoration-line:overline}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:opacity-50:disabled{opacity:.5}}:root{--color-canvas-white:#fff;--color-paper-mist:#f5f5f5;--color-ash:#e5e5e5;--color-smoke:#d4d4d4;--color-midnight-ink:#0a0a0a;--color-charcoal:#171717;--color-graphite:#262626;--color-slate:#404040;--color-steel:#525252;--color-fog:#737373;--color-electric-blue:#2563eb;--color-deep-sapphire:#1e40af;--color-primary-action-fill:#000;--font-inter:"Inter Variable", Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-satoshi:Satoshi, var(--font-inter);--font-geist-mono:"Geist Mono", ui-monospace, monospace;--radius-tags:9999px;--radius-cards:12px;--radius-inputs:6px;--radius-buttons:8px;--radius-largecards:16px;--ink:var(--color-charcoal);--muted:var(--color-steel);--border:var(--color-ash);--background:var(--color-canvas-white);--sidebar:240px}*{box-sizing:border-box}body{background:var(--background);color:var(--ink);font-family:var(--font-inter);-webkit-font-smoothing:antialiased;margin:0;font-size:14px;line-height:1.5}button,input,select{font:inherit}button,a,input,select{outline-offset:4px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--color-electric-blue)}button{cursor:pointer;color:inherit}button:disabled,select:disabled{cursor:not-allowed;opacity:.6}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:500}h1{letter-spacing:-.9px;font-size:30px;line-height:1.25}h2{letter-spacing:-.25px;font-size:16px;line-height:1.5}h3{font-size:16px}svg{flex-shrink:0}.app-shell{min-height:100vh;display:flex}.sidebar{z-index:20;width:var(--sidebar);overscroll-behavior:contain;border-right:1px solid var(--border);background:#fff;flex-direction:column;padding:28px 16px 20px;display:flex;position:fixed;inset:0 auto 0 0;overflow-y:auto}.sidebar-brand-row{justify-content:space-between;align-items:center;display:flex}.mobile-nav-toggle{border:1px solid var(--border);border-radius:var(--radius-buttons);background:#fff;justify-content:center;align-items:center;width:40px;height:40px;display:none}.brand{letter-spacing:-1.2px;white-space:nowrap;align-items:center;gap:8px;padding-left:8px;font-size:28px;font-weight:600;display:flex}.brand-symbol{width:32px;height:32px;color:var(--color-electric-blue);justify-content:center;align-items:center;display:inline-flex}.brand-dot{color:var(--color-electric-blue);margin-left:-8px}.workspace-label{letter-spacing:1.1px;color:var(--muted);margin:40px 12px 12px;font-size:11px;font-weight:500}.sidebar nav{flex-direction:column;gap:20px;display:flex}.nav-group{flex-direction:column;gap:4px;display:flex}.nav-group-label{color:var(--muted);letter-spacing:.9px;margin:0 12px 4px;font-size:10px;font-weight:500}.nav-item{border-radius:var(--radius-buttons);width:100%;color:var(--color-slate);text-align:left;background:0 0;border:0;align-items:center;gap:12px;padding:12px;font-size:14px;font-weight:400;display:flex}.nav-item:hover{background:var(--color-paper-mist)}.nav-item.active{color:var(--color-deep-sapphire);background:#eaf1ff;font-weight:500}.nav-item svg{width:18px;height:18px}.nav-count{border-radius:var(--radius-tags);color:var(--muted);background:#f5f5f5;margin-left:auto;padding:1px 7px;font-size:12px}.sidebar-bottom{margin-top:auto;padding-top:36px}.plan-box{border:1px solid var(--border);border-radius:var(--radius-cards);background:#fafafa;padding:16px}.plan-icon{color:var(--color-electric-blue);margin-bottom:12px;display:flex}.plan-box strong{font-size:13px;font-weight:500;display:block}.plan-box p{color:var(--muted);margin-top:6px;font-size:12px;line-height:1.65}.plan-tag{border:1px solid var(--border);border-radius:var(--radius-tags);color:var(--color-slate);background:#fff;margin-top:16px;padding:4px 8px;font-size:11px;display:inline-flex}.sidebar-help{color:var(--muted);align-items:center;gap:8px;padding:18px 4px 0;font-size:12px;display:flex}.main-shell{width:calc(100% - var(--sidebar));margin-left:var(--sidebar);min-width:0}.topbar{z-index:15;border-bottom:1px solid var(--border);background:#fff;justify-content:space-between;align-items:center;gap:16px;height:80px;padding:0 32px;display:flex;position:sticky;top:0}.property-picker{align-items:center;gap:12px;min-width:0;display:flex}.property-icon{border:1px solid var(--border);border-radius:var(--radius-buttons);width:36px;height:36px;color:var(--color-slate);justify-content:center;align-items:center;display:flex}.property-picker>div{min-width:0}.overline{color:var(--muted);letter-spacing:1px;margin-bottom:2px;font-size:10px;display:block}.property-picker select{appearance:none;max-width:260px;color:var(--ink);cursor:pointer;background:0 0;border:0;padding:0;font-size:13px;font-weight:500}.property-picker>svg{color:var(--muted)}.topbar-right{align-items:center;gap:12px;display:flex}.today-label{color:var(--muted);align-items:center;gap:8px;font-size:12px;display:flex}.header-separator{background:var(--border);width:1px;height:28px;margin:0 4px}.avatar{border:1px solid var(--border);width:32px;height:32px;color:var(--color-slate);background:#f5f5f5;border-radius:9999px;justify-content:center;align-items:center;font-size:11px;font-weight:500;display:flex}.user-label{flex-direction:column;display:flex}.user-label strong{font-size:12px;font-weight:500}.user-label>span{color:var(--muted);font-size:11px}.icon-button{border-radius:var(--radius-buttons);width:36px;height:36px;color:var(--muted);background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.icon-button:hover{background:var(--color-paper-mist)}.main-content{max-width:1200px;margin:0 auto;padding:32px 32px 0}.page-heading{justify-content:space-between;align-items:center;gap:24px;margin-bottom:24px;display:flex}.breadcrumb{color:var(--muted);margin-bottom:12px;font-size:12px}.breadcrumb>span{color:var(--muted);margin:0 10px}.page-heading p{color:var(--muted);margin-top:8px;font-size:14px}.button{border-radius:var(--radius-buttons);white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:9px 14px;font-size:13px;font-weight:500;display:inline-flex}.button.primary{background:var(--color-primary-action-fill);color:#fff;box-shadow:0 1px 2px #0000000d}.button.primary:hover{background:#262626}.button.secondary{border-color:var(--border);color:var(--ink);background:#fff}.button.secondary:hover{background:var(--color-paper-mist)}.demo-banner{border:1px solid var(--border);border-radius:var(--radius-buttons);color:var(--muted);background:#fafafa;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;padding:12px 16px;font-size:12px;display:flex}.demo-banner>span,.demo-banner a{align-items:center;gap:8px;display:flex}.demo-banner strong{color:var(--ink);font-weight:500}.demo-banner a{color:var(--color-deep-sapphire);white-space:nowrap;font-weight:500}.kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:24px;display:grid}.kpi-card{border:1px solid var(--border);border-radius:var(--radius-cards);background:#fff;min-width:0;padding:20px}.kpi-top{color:var(--muted);justify-content:space-between;align-items:center;gap:8px;font-size:12px;display:flex}.kpi-icon{color:var(--muted);display:flex}.kpi-icon svg{width:17px;height:17px}.kpi-value{letter-spacing:-.9px;font-variant-numeric:tabular-nums;margin-top:16px;font-size:28px;font-weight:500;line-height:1.25;display:block}.kpi-hint{color:var(--muted);margin-top:8px;font-size:12px;line-height:1.6;display:block}.reception-grid{grid-template-columns:minmax(0,1fr) 280px;gap:24px;display:grid}.panel{border:1px solid var(--border);border-radius:var(--radius-cards);background:#fff;min-width:0;margin-bottom:24px;overflow:hidden}.panel-heading{justify-content:space-between;align-items:center;gap:16px;padding:20px;display:flex}.panel-heading h2{align-items:center;gap:8px;display:flex}.panel-heading p{color:var(--muted);margin-top:4px;font-size:12px;line-height:1.6}.count-bubble{border:1px solid var(--border);border-radius:var(--radius-tags);color:var(--muted);background:#fff;padding:1px 7px;font-size:11px;font-weight:400;display:inline-flex}.text-button{min-height:36px;color:var(--color-deep-sapphire);white-space:nowrap;background:0 0;border:0;align-items:center;gap:4px;padding:4px 0;font-size:12px;font-weight:500;display:flex}.room-toolbar{padding:0 20px 20px}.filter-tabs{border-radius:var(--radius-buttons);scrollbar-width:thin;background:#f5f5f5;align-items:center;gap:4px;padding:4px;display:flex;overflow:auto}.filter-tabs button{min-height:34px;color:var(--muted);white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;gap:6px;padding:6px 10px;font-size:12px;display:flex}.filter-tabs button.selected{border-color:var(--border);color:var(--ink);background:#fff;font-weight:500}.filter-tabs button span{color:var(--muted);padding:0 4px;font-size:11px}.room-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;padding:0 20px 20px;display:grid}.room-card{border:1px solid var(--border);border-radius:var(--radius-cards);background:#fff;min-width:0;padding:16px 16px 0}.room-card-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.room-number{letter-spacing:-.6px;font-variant-numeric:tabular-nums;font-size:24px;font-weight:500}.status-badge{border-radius:var(--radius-tags);color:var(--color-slate);white-space:nowrap;background:#f5f5f5;align-items:center;gap:6px;padding:4px 8px;font-size:11px;font-weight:400;display:inline-flex}.status-badge i{background:currentColor;border-radius:9999px;width:5px;height:5px}.status-badge.occupied,.status-badge.checked_in{color:#1e40af;background:#eaf1ff}.status-badge.cleaning{color:#854b0e;background:#fff5e6}.status-badge.reserved,.status-badge.confirmed{color:#5b21b6;background:#f3efff}.status-badge.cancelled,.status-badge.no_show{color:#9f1239;background:#fff1f2}.room-type{color:var(--muted);align-items:center;gap:6px;margin-top:8px;font-size:12px;display:flex}.room-divider{background:var(--border);height:1px;margin:16px 0}.room-detail{min-height:50px;color:var(--muted);align-items:center;gap:10px;display:flex}.room-detail>div{flex-direction:column;gap:4px;min-width:0;display:flex}.room-detail strong{color:var(--color-slate);overflow-wrap:anywhere;font-size:12px;font-weight:500;line-height:1.5}.room-detail div>span{color:var(--muted);font-size:12px}.guest-avatar{border:1px solid var(--border);width:28px;height:28px;color:var(--color-slate);background:#fafafa;border-radius:9999px;justify-content:center;align-items:center;font-size:11px;display:flex}.quiet-icon{color:var(--muted);display:flex}.room-card-footer{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:16px;padding:10px 0;display:flex}.room-card-footer strong{font-size:12px;font-weight:500}.room-card-footer small{color:var(--muted);font-size:11px}.room-action{min-height:36px;color:var(--color-deep-sapphire);background:0 0;border:0;justify-content:center;align-items:center;gap:4px;padding:4px 0;font-size:12px;font-weight:500;display:flex}.map-legend{border-top:1px solid var(--border);color:var(--muted);flex-wrap:wrap;justify-content:center;gap:12px 16px;padding:16px;font-size:11px;display:flex}.map-legend>span{align-items:center;gap:6px;display:flex}.legend-dot{background:#737373;border-radius:9999px;width:5px;height:5px}.legend-dot.occupied{background:#2563eb}.legend-dot.cleaning{background:#b45309}.legend-dot.maintenance{background:#a3a3a3}.small-icon{border:1px solid var(--border);border-radius:var(--radius-buttons);width:32px;height:32px;color:var(--muted);justify-content:center;align-items:center;display:flex}.arrival-item{border-bottom:1px solid var(--border);align-items:center;gap:10px;margin:0 20px;padding:16px 0;display:flex}.arrival-item:last-of-type{border-bottom:0}.arrival-avatar{border:1px solid var(--border);width:32px;height:32px;color:var(--muted);background:#f5f5f5;border-radius:9999px;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;display:flex}.arrival-info{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.arrival-info strong{font-size:12px;font-weight:500}.arrival-info span{color:var(--muted);font-size:12px;line-height:1.5}.arrival-room{color:var(--muted);display:flex}.panel-link{border:0;border-top:1px solid var(--border);width:100%;min-height:48px;color:var(--color-deep-sapphire);background:#fff;justify-content:center;align-items:center;gap:8px;padding:12px 16px;font-size:12px;font-weight:500;display:flex}.panel-link:hover{background:#fafafa}.tip-card{border:1px solid var(--border);border-radius:var(--radius-cards);background:#fafafa;padding:20px}.tip-icon{color:var(--color-slate);margin-bottom:16px;display:flex}.tip-card h3{font-size:14px;line-height:1.6}.tip-card p{color:var(--muted);margin-top:8px;font-size:12px;line-height:1.75}.tip-card>span{color:var(--muted);margin-top:16px;font-size:11px;display:block}.local-note{justify-content:center;align-items:center;gap:8px;padding:24px 0;display:flex}.peru-mark{border:1px solid var(--border);border-radius:var(--radius-inputs);width:28px;height:28px;color:var(--muted);justify-content:center;align-items:center;font-size:10px;display:flex}.local-note p{color:var(--muted);font-size:11px;line-height:1.7}.local-note strong{font-weight:400}.page-footer{border-top:1px solid var(--border);color:var(--muted);justify-content:space-between;align-items:center;gap:16px;margin-top:12px;padding:24px 0;font-size:11px;display:flex}.page-footer>span:last-child{align-items:center;gap:6px;display:flex}.footer-separator{color:var(--muted);margin:0 12px}.search-row{padding:0 20px 20px}.search-box{border:1px solid var(--color-midnight-ink);border-radius:var(--radius-inputs);width:min(100%,400px);color:var(--muted);align-items:center;gap:8px;padding:8px 12px;display:flex}.search-box input{width:100%;color:var(--ink);background:0 0;border:0;outline:none;padding:0;font-size:13px}.search-box:focus-within{outline:2px solid var(--color-electric-blue);outline-offset:3px}.search-box input::placeholder{color:var(--muted)}.table-wrap{overflow:auto}table{border-collapse:collapse;text-align:left;white-space:nowrap;width:100%}th{border-top:1px solid var(--border);border-bottom:1px solid var(--border);color:var(--muted);background:#fafafa;padding:12px 20px;font-size:12px;font-weight:400}td{border-bottom:1px solid var(--border);color:var(--color-slate);padding:16px 20px;font-size:13px}td strong{color:var(--ink);font-size:13px;font-weight:500}td small{color:var(--muted);margin-top:4px;font-size:12px;display:block}td .balance{color:#854b0e}.row-actions{align-items:flex-start;gap:6px;max-width:260px;display:flex}.row-actions>button,.row-actions details>summary{border:1px solid var(--border);border-radius:var(--radius-buttons);min-height:36px;color:var(--ink);cursor:pointer;background:#fff;justify-content:center;align-items:center;padding:6px 10px;font-size:12px;list-style:none;display:inline-flex}.row-actions details>summary::-webkit-details-marker{display:none}.row-actions>button:hover,.row-actions details>summary:hover{background:#f5f5f5}.row-actions details{position:relative}.row-actions details[open]{z-index:1}.row-actions details>button{text-align:left;width:100%;margin-top:4px;display:block}td select{border-radius:var(--radius-inputs);color:var(--color-slate);background:#fff;border:1px solid #171717;padding:8px;font-size:12px}.kpi-grid.compact{grid-template-columns:repeat(3,minmax(0,1fr))}.settings-details{grid-template-columns:1fr 1fr;gap:24px;padding:4px 20px 24px;display:grid}.settings-details>div{flex-direction:column;gap:8px;display:flex}.settings-details span{color:var(--muted);font-size:12px}.settings-details strong{font-size:14px;font-weight:500}.settings-actions{flex-wrap:wrap;gap:8px;padding:0 20px 20px;display:flex}.report-controls{justify-content:space-between;align-items:center;gap:24px;padding:20px;display:flex}.report-controls p{color:var(--muted);margin-top:4px;font-size:12px;line-height:1.6}.report-date-filters{align-items:end;gap:8px;display:flex}.report-date-filters label{color:var(--muted);flex-direction:column;gap:6px;font-size:12px;display:flex}.report-date-filters input{border-radius:var(--radius-inputs);min-width:0;color:var(--ink);background:#fff;border:1px solid #171717;padding:8px;font-size:12px}.metric-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding:4px 20px 24px;display:grid}.metric-row>div{border-right:1px solid var(--border);padding-right:20px}.metric-row>div:last-child{border:0}.metric-row span{color:var(--color-slate);font-size:12px}.metric-row strong{letter-spacing:-.5px;margin-top:12px;font-size:28px;font-weight:500;display:block}.metric-row p{color:var(--muted);margin-top:8px;font-size:12px;line-height:1.7}.report-note{border-top:1px solid var(--border);color:var(--muted);background:#fafafa;align-items:flex-start;gap:8px;padding:16px 20px;display:flex}.report-note p{font-size:12px;line-height:1.7}.walk-in-total{border:1px solid var(--border);border-radius:var(--radius-cards);background:var(--color-paper-mist);flex-direction:column;gap:6px;padding:16px;font-size:13px;display:flex}.walk-in-total strong{font-size:24px;font-weight:500}.form-body .walk-in-confirmation{align-items:flex-start;gap:10px;display:flex}.walk-in-confirmation input[type=checkbox]{flex-shrink:0;width:20px;height:20px;min-height:20px;margin:0}.alert{border:1px solid var(--border);border-radius:var(--radius-buttons);color:var(--color-slate);background:#fafafa;align-items:center;gap:8px;margin-bottom:16px;padding:12px 16px;font-size:13px;line-height:1.6;display:flex}.alert .icon-button{margin-left:auto}.alert.error{color:#9f1239;background:#fff1f2;border-color:#fecdd3}.alert.success{color:#166534;background:#f0fdf4;border-color:#bbf7d0}.alert.warning{color:#854b0e;background:#fffbeb;border-color:#fde68a}.empty-state{text-align:center;color:var(--muted);flex-direction:column;align-items:center;gap:16px;padding:48px 24px;display:flex}.empty-state h2,.empty-state h3{color:var(--ink)}.empty-state p{max-width:400px;font-size:14px;line-height:1.7}.small-empty{text-align:center;color:var(--muted);padding:32px 20px}.small-empty>svg{margin-bottom:12px}.small-empty p{font-size:12px;line-height:1.7}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000045;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0;overflow:auto}.modal{border:1px solid var(--border);border-radius:var(--radius-largecards);background:#fff;width:560px;max-width:100%;max-height:calc(100dvh - 48px);overflow:auto}.modal-heading{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;padding:24px;display:flex}.eyebrow{color:var(--muted);letter-spacing:1px;font-size:10px;display:block}.modal-heading h2{letter-spacing:-.5px;margin-top:8px;font-size:24px;font-weight:500}.form-body{flex-direction:column;gap:20px;padding:24px;display:flex}.form-body label{color:var(--color-slate);flex-direction:column;gap:8px;font-size:13px;font-weight:500;display:flex}.form-body input,.form-body select{border:1px solid var(--color-midnight-ink);border-radius:var(--radius-inputs);width:100%;min-width:0;color:var(--ink);background:#fff;padding:10px 12px;font-size:14px;font-weight:400}.form-body input::placeholder{color:var(--muted)}.form-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.form-note{border-radius:var(--radius-buttons);color:var(--muted);background:#f5f5f5;align-items:flex-start;gap:8px;padding:12px;font-size:12px;font-weight:400;line-height:1.7;display:flex}.form-note>svg{margin-top:2px}.modal-footer{border-top:1px solid var(--border);background:#fff;justify-content:flex-end;align-items:center;gap:8px;padding:16px 24px;display:flex}.initial-state{min-height:100vh;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:24px;display:flex}.initial-state>.brand{color:var(--ink);margin-bottom:16px}.initial-state p{text-align:center;max-width:460px;padding:0 20px;font-size:14px}.initial-state>a{color:var(--color-deep-sapphire)}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width>=1600px){.room-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=1250px){:root{--sidebar:216px}.main-content{padding:28px 24px 0}.topbar{padding:0 24px}.reception-grid{grid-template-columns:minmax(0,1fr) 250px;gap:16px}.room-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:0 16px 16px}.room-card-top{flex-direction:column;align-items:flex-start}.kpi-card{padding:16px}.kpi-value{font-size:25px}.kpi-icon,.user-label{display:none}.report-controls{flex-direction:column;align-items:flex-start}}@media (width<=1050px){:root{--sidebar:196px}.nav-item{gap:8px;padding:12px 8px;font-size:13px}.reception-grid{grid-template-columns:1fr}.room-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.activity-column{grid-template-columns:1fr 1fr;gap:16px;display:grid}.local-note{display:none}.tip-card{margin-bottom:24px}.today-label,.header-separator{display:none}.page-heading{align-items:flex-start}h1{font-size:26px}.demo-banner>span{display:block}.demo-banner>span>svg{vertical-align:middle;margin-right:4px}}@media (width<=780px){:root{--sidebar:0px}.app-shell{padding-top:56px;display:block}.sidebar{border-right:0;border-bottom:1px solid var(--border);width:100%;height:auto;max-height:100dvh;padding:8px 16px;inset:0 0 auto}.sidebar-brand-row .brand{height:40px;padding-left:0;font-size:25px}.mobile-nav-toggle{display:inline-flex}.sidebar .workspace-label{display:none}.sidebar nav{flex-direction:column;gap:16px;padding:12px 0 8px;display:none;overflow:auto}.sidebar.mobile-open nav{display:flex}.sidebar nav::-webkit-scrollbar{display:none}.nav-item{border-radius:var(--radius-buttons);min-height:44px;padding:10px 12px;font-size:14px}.nav-item svg{width:16px;height:16px}.sidebar-bottom,.nav-count{display:none}.main-shell{width:100%;margin-left:0}.topbar{height:72px;padding:0 20px;top:56px}.property-picker select{max-width:200px}.property-picker{gap:8px}.topbar-right{gap:4px}.main-content{padding:24px 20px 0}.breadcrumb{display:none}h1{font-size:26px}.page-heading{gap:16px;margin-bottom:20px}.page-heading p{font-size:13px}.demo-banner{margin-bottom:20px}.demo-banner a{display:none}.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:20px}.kpi-value{font-size:26px}.room-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.room-card-top{flex-direction:row;align-items:center}.kpi-grid.compact{grid-template-columns:repeat(3,minmax(0,1fr))}.page-footer>span:last-child{display:none}}@media (width<=490px){.topbar{padding:0 16px}.property-picker select{max-width:170px;font-size:12px}.property-icon{width:30px;height:30px}.property-picker>svg{width:12px}.overline{font-size:9px}.avatar{display:none}.main-content{padding:24px 16px 0}h1{font-size:25px}.page-heading{align-items:flex-start}.page-heading>div{min-width:0}.page-heading>.button{flex-shrink:0;width:40px;height:40px;padding:0;font-size:0}.page-heading>.button svg{width:18px;height:18px}.kpi-card{padding:16px}.kpi-top{font-size:12px}.kpi-value{font-size:25px}.kpi-hint{font-size:11px}.panel-heading{gap:8px;padding:16px}.panel-heading h2{font-size:15px}.room-toolbar{padding:0 16px 16px}.room-grid{grid-template-columns:1fr;padding:0 16px 16px}.room-card-top{flex-direction:row;align-items:center}.room-number{font-size:26px}.room-card-footer{margin-top:12px}.room-action{min-height:40px}.filter-tabs button{gap:3px;padding:6px 8px;font-size:11px}.activity-column{grid-template-columns:1fr}.tip-card{display:none}.kpi-grid.compact{grid-template-columns:1fr}.kpi-grid.compact .kpi-card{grid-template-columns:1fr auto;align-items:center;display:grid}.kpi-grid.compact .kpi-value{margin-top:0}.kpi-grid.compact .kpi-hint{grid-column:1/-1}.metric-row{grid-template-columns:1fr;gap:20px}.metric-row>div{border-right:0;border-bottom:1px solid var(--border);padding:0 0 16px}.metric-row>div:last-child{padding-bottom:0}.settings-details{grid-template-columns:1fr}.report-date-filters{grid-template-columns:1fr 1fr;width:100%;display:grid}.report-date-filters input{width:100%}.report-date-filters>button{grid-column:1/-1}.modal-backdrop{padding:12px}.modal{max-height:calc(100dvh - 24px)}.modal-heading,.form-body{padding:20px}.form-grid{grid-template-columns:1fr}.modal-footer{padding:16px 20px}.panel-heading .button{padding:8px;font-size:11px}.panel-heading .button svg{width:14px}.page-footer{font-size:10px}.footer-separator{margin:0 6px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation-duration:.01ms!important}}.login-panel{flex-direction:column;gap:24px;max-width:460px;padding:32px;display:flex}.login-panel h1{font-size:30px}.login-privacy{color:var(--muted);font-size:12px}.tooltip-popup{color:#fff;z-index:150;background:#171717;border-radius:6px;padding:8px 12px;font-size:12px}.radix-modal{z-index:101;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.modal-backdrop{z-index:100}.virtual-table-wrap{max-height:600px;overflow:auto}.virtual-spacer td{border:0;padding:0}.virtual-table-wrap table{width:100%}.dashboard-view>section{margin-bottom:20px}.reception-actions{flex-wrap:wrap;gap:10px;margin-bottom:20px;display:flex}.reception-worklist{border:1px solid var(--border);border-radius:var(--radius-cards);background:#fff;overflow:hidden}.reception-worklist-heading,.reception-task-group>header{justify-content:space-between;align-items:center;gap:12px;display:flex}.reception-worklist-heading{padding:20px}.reception-worklist-heading h2{font-size:18px}.reception-worklist-heading p{color:var(--muted);margin-top:4px;font-size:12px}.reception-task-count,.reception-task-group>header>span{border:1px solid var(--border);border-radius:var(--radius-tags);min-width:28px;min-height:28px;color:var(--muted);justify-content:center;align-items:center;padding:3px 8px;font-size:11px;display:inline-flex}.reception-task-group{padding:0 20px}.reception-task-group>header{border-top:1px solid var(--border);min-height:48px}.reception-task-group>header h3{font-size:13px;font-weight:500}.reception-task-group>ul{margin:0;padding:0;list-style:none}.reception-task{border-top:1px solid var(--border);align-items:center;gap:12px;min-height:68px;display:flex}.reception-task-icon{border:1px solid var(--border);border-radius:var(--radius-buttons);min-width:36px;min-height:36px;color:var(--color-deep-sapphire);background:#fafafa;justify-content:center;align-items:center;display:inline-flex}.reception-task-icon.cleaning{color:#9a3412;background:#fff7ed;border-color:#fed7aa}.reception-task-copy{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.reception-task-copy strong{overflow-wrap:anywhere;font-size:13px;font-weight:500}.reception-task-copy>span{color:var(--muted);font-size:12px}.reception-task-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.reception-all-clear{border-top:1px solid var(--border);color:#166534;align-items:center;gap:14px;padding:24px 20px;display:flex}.reception-all-clear h3{color:var(--ink);font-size:14px;font-weight:500}.reception-all-clear p{color:var(--muted);margin-top:4px;font-size:12px}.dashboard-welcome .panel-heading{align-items:center}.dashboard-welcome .panel-heading h2{margin-top:6px;font-size:20px}.dashboard-welcome>p{color:var(--muted);padding:0 20px 16px;font-size:13px}.dashboard-attention .panel-heading{padding-bottom:12px}.dashboard-schedule-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;padding:0 20px 16px;display:grid}.dashboard-schedule-grid h3{margin-bottom:8px;font-size:13px;font-weight:500}.dashboard-schedule-grid ul{margin:0;padding:0;list-style:none}.dashboard-schedule-grid li{border-top:1px solid var(--border);min-height:56px;padding:10px 0}.dashboard-schedule-grid li>div{flex-direction:column;gap:4px;display:flex}.dashboard-schedule-grid li strong{font-size:12px;font-weight:500}.dashboard-schedule-grid li span{color:var(--muted);font-size:12px}.attention-list,.floor-summary-list,.onboarding-checklist{margin:0;padding:0;list-style:none}.attention-list{padding:0 20px 16px}.attention-list li{border-top:1px solid var(--border);align-items:center;gap:12px;min-height:52px;display:flex}.attention-list li>svg{color:var(--color-deep-sapphire)}.attention-list li>span{flex:1;min-width:0}.floor-summary-list{padding:0 20px 16px}.floor-summary-list li+li{margin-top:8px}.floor-summary.button{white-space:normal;text-align:left;grid-template-columns:minmax(100px,1fr) repeat(4,auto) 16px;justify-content:stretch;gap:12px;width:100%;min-height:48px;display:grid}.floor-summary strong{font-weight:500}.floor-summary span{color:var(--muted);font-size:12px}.onboarding-panel .panel-heading{align-items:flex-start}.onboarding-panel .panel-heading h2{margin-top:6px;font-size:20px}.onboarding-panel .panel-heading p{max-width:560px}.onboarding-progress{color:var(--muted);flex-shrink:0;font-size:12px}.onboarding-panel progress{width:calc(100% - 40px);height:6px;accent-color:var(--color-electric-blue);margin:0 20px 12px;display:block}.onboarding-checklist{padding:0 20px 12px}.onboarding-step{border-top:1px solid var(--border);grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:12px;padding:16px 0;display:grid}.onboarding-step>svg{color:var(--color-deep-sapphire)}.onboarding-step h3{font-size:14px;font-weight:500}.onboarding-step p{color:var(--muted);margin-top:3px;font-size:12px}.onboarding-step-status{color:var(--muted);align-items:center;gap:5px;margin-top:6px;font-size:11px;display:inline-flex}.onboarding-step.complete .onboarding-step-status{color:#166534}.onboarding-panel>p{color:var(--muted);padding:0 20px 18px;font-size:12px}.floor-room-view{min-width:0}.floor-room-header,.floor-room-group-heading,.floor-room-detail-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.floor-room-header{margin-bottom:20px}.floor-room-header h2{font-size:22px}.floor-room-header p,.floor-room-group-heading p{color:var(--muted);margin-top:5px;font-size:13px}.floor-room-add,.floor-room-primary-action{border-radius:var(--radius-buttons);background:var(--color-primary-action-fill);color:#fff;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:8px 14px;font-size:13px;font-weight:500;display:inline-flex}.floor-room-add:hover,.floor-room-primary-action:hover{background:#262626}.floor-room-summary{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:16px;font-size:12px;display:flex}.floor-room-summary>span:first-child{color:var(--ink);margin-right:4px;font-weight:500}.floor-room-summary-item,.floor-room-count,.floor-room-cleaning,.floor-room-operational{border:1px solid var(--border);border-radius:var(--radius-tags);width:fit-content;min-height:26px;color:var(--color-slate);background:#fff;align-items:center;padding:4px 8px;font-size:11px;display:inline-flex}.floor-room-summary-item.available,.floor-room-status.available{color:#166534;background:#f0fdf4;border-color:#bbf7d0}.floor-room-summary-item.occupied,.floor-room-status.occupied{color:#1e40af;background:#eff6ff;border-color:#bfdbfe}.floor-room-summary-item.reserved,.floor-room-status.reserved{color:#5b21b6;background:#f5f3ff;border-color:#ddd6fe}.floor-room-summary-item.cleaning,.floor-room-status.cleaning{color:#9a3412;background:#fff7ed;border-color:#fed7aa}.floor-room-summary-item.maintenance,.floor-room-status.maintenance{color:#404040;background:#f5f5f5;border-color:#d4d4d4}.floor-room-controls{border:1px solid var(--border);border-radius:var(--radius-cards);background:#fff;grid-template-columns:minmax(180px,1.5fr) repeat(2,minmax(150px,1fr));gap:12px;margin-bottom:20px;padding:16px;display:grid}.floor-room-control{color:var(--color-slate);flex-direction:column;gap:6px;font-size:12px;display:flex}.floor-room-control input,.floor-room-control select{border:1px solid var(--border);border-radius:var(--radius-inputs);width:100%;min-height:40px;color:var(--ink);background:#fff;padding:8px 10px;font-size:13px}.floor-room-groups{flex-direction:column;gap:20px;display:flex}.floor-room-group{border:1px solid var(--border);border-radius:var(--radius-cards);background:#fff;padding:18px}.floor-room-group-heading{align-items:flex-start;margin-bottom:16px}.floor-room-group-heading h2{font-size:17px}.floor-room-group-counts{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.floor-room-grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px;display:grid}.floor-room-card{border:1px solid var(--border);border-radius:var(--radius-cards);background:#fff;border-left-width:3px;min-width:0;overflow:hidden}.floor-room-card.available{border-left-color:#16a34a}.floor-room-card.occupied{border-left-color:#2563eb}.floor-room-card.reserved{border-left-color:#7c3aed}.floor-room-card.cleaning{border-left-color:#ea580c}.floor-room-card.maintenance{border-left-color:#737373}.floor-room-select{text-align:left;background:0 0;border:0;width:100%;padding:14px;display:block}.floor-room-select:hover{background:#fafafa}.floor-room-card-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.floor-room-number{font-variant-numeric:tabular-nums;font-size:23px;font-weight:500}.floor-room-status{border:1px solid var(--border);border-radius:var(--radius-tags);min-height:24px;color:var(--color-slate);background:#fafafa;align-items:center;padding:3px 8px;font-size:11px;display:inline-flex}.floor-room-type,.floor-room-capacity,.floor-room-rate{color:var(--muted);align-items:center;gap:6px;margin-top:8px;font-size:12px;display:flex}.floor-room-rate{color:var(--ink);margin-top:12px;font-weight:500}.floor-room-rate span{color:var(--muted);font-weight:400}.floor-room-card-meta{flex-wrap:wrap;gap:6px;padding:0 14px 12px;display:flex}.floor-room-occupant,.floor-room-restricted{color:var(--muted);padding:0 14px 12px;font-size:12px}.floor-room-detail,.floor-room-empty{border:1px solid var(--border);border-radius:var(--radius-cards);background:#fff;margin-top:20px;padding:20px}.floor-room-detail-heading{margin-bottom:16px}.floor-room-detail-heading p{color:var(--muted);font-size:11px}.floor-room-detail-heading h2{margin-top:3px;font-size:18px}.floor-room-close{border:1px solid var(--border);border-radius:var(--radius-buttons);background:#fff;justify-content:center;align-items:center;min-width:40px;min-height:40px;display:inline-flex}.floor-room-detail-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0;display:grid}.floor-room-detail-list>div{border:1px solid var(--border);border-radius:var(--radius-buttons);padding:12px}.floor-room-detail-list dt{color:var(--muted);font-size:11px}.floor-room-detail-list dd{color:var(--ink);overflow-wrap:anywhere;align-items:center;gap:5px;margin:4px 0 0;font-size:13px;display:flex}.floor-room-state-meaning,.floor-room-availability-note{color:var(--muted);margin-top:14px;font-size:12px;line-height:1.6}.floor-room-primary-action{margin-top:14px}.floor-room-empty{text-align:center;color:var(--muted);flex-direction:column;align-items:center;gap:12px;display:flex}.floor-room-empty h2{color:var(--ink)}.floor-room-empty p{max-width:420px}@media (width<=780px){.dashboard-schedule-grid{grid-template-columns:1fr}.reception-task{flex-wrap:wrap;align-items:flex-start;padding:12px 0}.reception-task-copy{flex-basis:calc(100% - 48px)}.reception-task-actions,.reception-task>.button{margin-left:48px}.attention-list li{flex-wrap:wrap;align-items:flex-start;padding:12px 0}.attention-list li>span{flex-basis:calc(100% - 36px)}.attention-list li>.text-button{margin-left:30px}.floor-summary.button{grid-template-columns:1fr 1fr;justify-items:start}.floor-summary.button>svg{display:none}.onboarding-step{grid-template-columns:24px minmax(0,1fr)}.onboarding-step>.button{grid-column:2;justify-self:start}.floor-room-controls{grid-template-columns:1fr 1fr}.floor-room-control:first-child{grid-column:1/-1}.floor-room-group-heading{flex-direction:column}.floor-room-group-counts{justify-content:flex-start}.floor-room-detail-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=490px){.dashboard-welcome .panel-heading,.onboarding-panel .panel-heading,.floor-room-header{flex-direction:column;align-items:flex-start}.onboarding-progress{padding:0 20px 8px}.floor-room-header h2{font-size:20px}.floor-room-header .floor-room-add{width:100%}.floor-room-controls{grid-template-columns:1fr}.floor-room-control:first-child{grid-column:auto}.floor-room-group{padding:14px}.floor-room-grid,.floor-room-detail-list,.floor-summary.button{grid-template-columns:1fr}.row-actions{flex-direction:column}.row-actions>button,.row-actions details>summary{min-height:40px}}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}
