:root{--cream:#eee1c9;--surface:#fbf4e5;--surface-strong:#fbf4e5;--surface-soft:#f7eeda;--inset:#f0e5cc;--sand:#e3d4b6;--sand-soft:#ede1c6;--terracotta:#c0432f;--clay:#992f1f;--olive:#3e6b4f;--cactus:#3e6b4f;--teal:#3c7c76;--cobalt:#2e5e8c;--marigold:#d2962a;--magenta:#b43e73;--ink:#2a2017;--muted:#6b5a43;--muted-2:#a28f6c;--danger:#9e1b2a;--success:#3e6b4f;--shadow:0 1px 2px #2c28230a;--font-thai:"Noto Sans Thai", "IBM Plex Sans Thai", "Inter", system-ui, sans-serif;--heading-font:"Noto Sans Thai", "IBM Plex Sans Thai", Georgia, serif;--mobile-bottom-nav-height:82px;--mobile-bottom-nav-clearance:112px}.login-page{background:radial-gradient(circle at top left, #1f5fbf14, transparent 32%), var(--cream);place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{border:1px solid var(--sand);background:var(--surface);width:min(440px,100%);box-shadow:var(--shadow);border-radius:24px;gap:18px;padding:28px;display:grid}.login-brand{align-items:center;gap:12px;display:flex}.login-form,.settings-grid,.settings-panel,.booking-action-panel,.booking-ledger-panel{gap:14px;display:grid}.login-remember{color:var(--muted);align-items:center;gap:9px;font-size:.82rem;font-weight:760;line-height:1.3;display:flex}.login-remember input{width:17px;height:17px;min-height:17px;accent-color:var(--terracotta);flex:none;padding:0}.small-note{font-size:.82rem}.settings-actions{z-index:4;border:1px solid var(--sand);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffdf8f0;border-radius:20px;justify-content:flex-end;align-items:center;gap:10px;padding:12px;display:flex;position:sticky;bottom:16px}.settings-actions.settings-actions-inline{-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none;background:0 0;border:0;border-radius:0;grid-template-columns:auto 1fr;padding:0;display:grid;position:static}.settings-actions.settings-actions-single{grid-template-columns:1fr}.settings-actions.settings-actions-inline .button.primary{min-height:48px}.settings-actions.settings-actions-single .button.primary{border-radius:14px;justify-content:center;width:100%}.settings-actions.settings-actions-inline .muted{grid-column:1/-1}.settings-advanced-details{gap:12px;margin-top:2px;display:grid}.settings-advanced-details summary{color:var(--muted);cursor:pointer;background:#fffdf885;border:1px dashed #e3d4b6eb;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;list-style:none;display:flex}.settings-advanced-details summary::-webkit-details-marker{display:none}.settings-advanced-details summary span{gap:2px;min-width:0;display:grid}.settings-advanced-details summary strong{color:var(--ink);font-size:.88rem}.settings-advanced-details summary small{color:var(--muted-2);font-size:.74rem}.settings-advanced-details summary em{color:var(--terracotta);flex:none;font-size:.74rem;font-style:normal;font-weight:800}.settings-advanced-details[open] summary{margin-bottom:12px}.settings-hotel-fields{gap:12px;display:grid}.settings-time-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.settings-map-row{gap:12px}.settings-map-row input{max-width:220px}.booking-action-panel,.booking-ledger-panel{border:1px solid var(--sand);background:#fffdf8b8;border-radius:18px;margin-top:14px;padding:14px}*{box-sizing:border-box}html{min-width:320px}body{color:var(--ink);background:var(--cream);font-family:var(--font-thai);margin:0}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}.app-shell{background:var(--cream);grid-template-columns:252px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{border-right:1px solid var(--sand);background:#fbf4e56b;flex-direction:column;align-self:start;min-height:100vh;padding:22px 16px 14px;display:flex;position:sticky;top:0}.brand-mark{box-shadow:none;background:0 0;border:0;border-radius:0;align-items:center;gap:12px;padding:0 8px 22px;display:flex}.brand-symbol{background:var(--terracotta);color:#fff;border-radius:13px;justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex;box-shadow:0 8px 18px #992f1f29}.brand-copy{gap:1px;display:grid}.brand-copy strong{color:var(--ink);font-size:.95rem}.brand-copy small{color:var(--muted);font-size:.76rem}.nav-list{gap:8px;margin-top:4px;display:grid}.nav-link{min-height:46px;color:var(--muted);border:1px solid #0000;border-radius:15px;align-items:center;gap:12px;padding:10px 14px;font-size:.92rem;font-weight:600;display:flex}.nav-auth-icon{opacity:.58;margin-left:auto;transform:scaleX(-1)}.sidebar-bottom{gap:12px;margin-top:auto;display:grid}.sidebar-create{background:var(--terracotta);color:#fff;border-radius:13px;justify-content:center;align-items:center;gap:8px;min-height:44px;font-weight:800;display:flex;box-shadow:0 10px 24px #992f1f2e}.sidebar-user-card{background:#fbf4e5b8;border-radius:15px;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:9px;padding:10px;display:grid}.sidebar-user-avatar{color:#fff;background:#9a7d46;border-radius:999px;justify-content:center;align-items:center;width:38px;height:38px;font-weight:800;display:inline-flex}.sidebar-user-card strong,.sidebar-user-card small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.sidebar-user-card strong{color:var(--ink);font-size:.82rem}.sidebar-user-card small{color:var(--muted-2);font-size:.72rem}.sidebar-login-chip{background:var(--terracotta);color:#fff;cursor:pointer;border:0;border-radius:9px;justify-content:center;align-items:center;min-width:32px;min-height:32px;padding:0 10px;font-size:.76rem;font-weight:800;display:inline-flex}.main-area{min-width:0;padding:22px}.topbar{border:1px solid var(--sand);box-shadow:var(--shadow);background:#fffdf8e6;border-radius:24px;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;padding:14px 16px;display:flex}.topbar-title{gap:3px;display:grid}.topbar-title h1{letter-spacing:0;margin:0;font-size:clamp(1.15rem,2vw,1.8rem)}.topbar-title p{color:var(--muted);margin:0;font-size:.9rem}.quick-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;max-width:100%;display:flex}.button{border:1px solid var(--sand);background:var(--surface);min-height:38px;color:var(--ink);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:9px 14px;display:inline-flex}.button.primary{border-color:var(--terracotta);background:var(--terracotta);color:#fff}.button.warn{color:var(--danger);background:#b6533a1f;border-color:#b6533a47}.button:disabled,.button[aria-disabled=true]{cursor:not-allowed;opacity:.48;filter:saturate(.45)}.button:focus-visible,.nav-link:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px;outline:3px solid #1f5fbf40}.page-grid{gap:16px;display:grid}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.card{border:1px solid var(--sand);min-width:0;box-shadow:var(--shadow);background:#fffdf8f0;border-radius:22px}.card.pad{padding:18px}.section-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.section-header h2,.section-header h3{margin:0;font-size:1rem}.muted{color:var(--muted)}.metric{gap:8px;display:grid}.metric .label{color:var(--muted);font-size:.9rem}.metric .value{font-size:clamp(1.35rem,2.4vw,2.15rem);font-weight:700}.chip{width:fit-content;min-height:26px;color:var(--ink);white-space:nowrap;background:#fff8ede6;border:1px solid #7b706833;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:.78rem;display:inline-flex}button.chip{cursor:pointer}.chip.active,button.chip.active{color:var(--cobalt);background:#1f5fbf1a;border-color:#1f5fbf61;font-weight:700}.chip.ok{color:var(--success);border-color:#57735b47}.chip.warn{color:#936a16;border-color:#d9a44161}.chip.danger{color:var(--danger);border-color:#b6533a5c}.table-wrap,.timeline-wrap{width:100%;max-width:100%;overflow:auto}table{border-collapse:collapse;width:100%;min-width:760px}th,td{text-align:left;vertical-align:top;border-bottom:1px solid #e7d6bfbf;padding:12px}th{color:var(--muted);font-size:.82rem;font-weight:600}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.field{gap:6px;display:grid}.field label{color:var(--muted);font-size:.82rem}.field input,.field select,.field textarea{border:1px solid var(--sand);background:var(--surface);width:100%;min-height:40px;color:var(--ink);border-radius:14px;padding:9px 11px}.timeline{border:1px solid var(--sand);background:var(--surface);border-radius:22px;min-width:980px;overflow:hidden}.timeline-row{border-bottom:1px solid #e7d6bfb8;align-items:stretch;min-height:54px;display:grid}.timeline-row:last-child{border-bottom:0}.timeline-cell,.timeline-room,.timeline-date{border-right:1px solid #e7d6bfb3;min-width:92px;padding:9px}.timeline-room{z-index:2;background:var(--surface-strong);min-width:158px;font-weight:700;position:sticky;left:0}.timeline-date{color:var(--muted);background:#67735a14;font-size:.78rem;font-weight:700}.timeline-cell{min-height:54px;position:relative}.booking-bar{color:#fff;cursor:pointer;border:1px solid #2f2a251f;border-radius:999px;align-self:center;gap:2px;min-height:36px;margin:8px 6px;padding:6px 10px;display:grid;overflow:hidden;box-shadow:0 10px 22px #2f2a2521}.booking-bar strong,.booking-bar span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.booking-bar span{opacity:.92;font-size:.72rem}.source-facebook{background:var(--terracotta)}.source-walk-in{background:var(--olive)}.source-phone{background:var(--clay)}.source-line{background:var(--cactus)}.source-direct,.source-other{background:#8b7c6c}.drawer{z-index:42;border-left:1px solid var(--sand);background:var(--surface);width:min(420px,92vw);height:100vh;padding:22px;position:fixed;top:0;right:0;overflow:auto;box-shadow:-18px 0 40px #2f2a2529}.drawer-backdrop{z-index:41;background:#2f2a2529;position:fixed;inset:0}.bar-chart{gap:10px;display:grid}.bar-row{grid-template-columns:120px minmax(0,1fr) 96px;align-items:center;gap:10px;display:grid}.bar-track{background:#e7d6bfa6;border-radius:999px;height:12px;overflow:hidden}.bar-fill{border-radius:inherit;background:linear-gradient(90deg, var(--terracotta), var(--marigold));height:100%}.empty-state{text-align:center;min-height:160px;color:var(--muted);place-items:center;padding:24px;display:grid}.empty-state:before{content:"";border:2px solid var(--sand);background:linear-gradient(90deg,#0000 48%,#2f6f5747 49% 51%,#0000 52%),radial-gradient(circle at 50% 26%,#1f5fbf33 0 5px,#0000 6px),#67735a14;border-radius:44px 44px 10px 10px;width:74px;height:74px;margin-bottom:12px;display:block}@media (max-width:1080px){.app-shell{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--sand);min-height:auto;position:relative}.nav-list{padding-bottom:4px;display:flex;overflow-x:auto}.nav-link{flex:none}.grid-4,.grid-3,.report-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:720px){.main-area{padding:14px}.topbar,.section-header{flex-direction:column;align-items:flex-start}.topbar{overflow:hidden}.quick-actions{justify-content:flex-start;width:100%;padding-bottom:3px;overflow-x:auto}.quick-actions .button{flex:none}.grid-4,.grid-3,.grid-2,.form-grid{grid-template-columns:1fr}.reports-mobile-filter-button{display:inline-flex}.reference-reports-page .reports-primary-kpis{order:2;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.reference-reports-page .reports-primary-kpis .metric{min-height:108px;padding:13px}.reference-reports-page .reports-primary-kpis .metric .value{font-size:1.55rem}.reference-reports-page .reference-page-header{order:1}.reference-reports-page .reference-report-custom-range{order:2;grid-template-columns:1fr 1fr}.reference-reports-page .reference-revenue-card{order:3}.reference-reports-page .reports-visual-charts{order:4}.reference-reports-page .reference-source-breakdown{order:5}.reference-reports-page .reference-report-tools,.reference-reports-page .reference-report-actions,.reference-reports-page .reference-inline-message,.reference-reports-page .report-roomtype-card{order:6}.reference-reports-page .reports-secondary-kpis{order:7}.reference-reports-page .report-definition-card{order:9}.reference-reports-page .report-filter-card{order:8}.reference-reports-page .reference-report-tools-body .report-filter-card{order:1}.reference-reports-page .reference-report-tools-body .reports-secondary-kpis{order:2}.reference-reports-page .reference-report-tools-body .report-roomtype-card{order:3}.reference-reports-page .reference-report-tools-body .report-definition-card{order:4}.reference-reports-page .report-filter-card .section-header{gap:10px}.reference-reports-page .report-filter-card .section-header h2{font-size:1rem}.reference-reports-page .report-filter-card .section-header p{font-size:.76rem}.reports-desktop-filters{display:none}.report-filter-card .quick-actions{flex-wrap:wrap;overflow:visible}.booking-mobile-list{gap:10px;display:grid}.bookings-table-wrap{display:none}.booking-mobile-card{border:1px solid var(--sand);background:var(--surface);width:100%;min-height:44px;color:var(--ink);text-align:left;border-radius:18px;gap:10px;padding:12px;display:grid;box-shadow:0 10px 24px #2f2a250f}.booking-mobile-card-head,.booking-mobile-card-main,.booking-mobile-card-chips{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.booking-mobile-card-head div{gap:3px;display:grid}.booking-mobile-card-head span,.booking-mobile-card-main span,.booking-mobile-card p{color:var(--muted);font-size:.84rem}.booking-mobile-card-chips{flex-wrap:wrap;justify-content:flex-start}.booking-detail-mobile-sheet .section-header,.mobile-filter-sheet .section-header{flex-direction:row;align-items:flex-start}.mobile-filter-sheet .report-filter-grid{grid-template-columns:1fr}}.mobile-bottom-nav{display:none}.command-center{min-width:0}.desktop-command{grid-template-columns:minmax(0,1fr) minmax(300px,340px);gap:16px;height:calc(100vh - 44px);min-height:680px;display:grid}.tablet-command,.mobile-command{min-width:0}.calendar-main-pane{grid-template-rows:auto minmax(0,1fr);min-width:0;min-height:0;display:grid}.calendar-toolbar{z-index:8;border:1px solid var(--sand);box-shadow:var(--shadow);background:#fffdf8f0;border-radius:22px;gap:12px;margin-bottom:12px;padding:14px;display:grid;position:sticky;top:0}.toolbar-title p,.panel-header p{color:var(--muted);margin:0;font-size:.82rem}.toolbar-title h1,.panel-header h2{margin:2px 0 0;font-size:1.28rem}.toolbar-actions,.toolbar-secondary{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.active-filter-pills,.quick-chip-row{flex-wrap:wrap;gap:7px;display:flex}.active-filter-pills{padding-top:2px}.toolbar-date,.command-search,.calendar-toolbar select,.search-screen-input{border:1px solid var(--sand);background:var(--surface);min-height:40px;color:var(--ink);border-radius:999px;padding:8px 12px}.command-search{flex:260px;min-width:220px}.toolbar-month{width:150px}.toolbar-year{width:104px}.date-range-control{position:relative}.date-range-control summary{list-style:none}.date-range-control summary::-webkit-details-marker{display:none}.date-range-popover{z-index:20;border:1px solid var(--sand);background:var(--surface);width:min(360px,88vw);box-shadow:var(--shadow);border-radius:18px;gap:12px;margin-top:8px;padding:14px;display:grid;position:absolute;right:0}.date-range-presets{flex-wrap:wrap;gap:8px;display:flex}.date-range-presets.large{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.date-range-sheet{gap:14px;display:grid}.sticky-actions{background:var(--surface);padding-top:10px;position:sticky;bottom:0}.segmented{border:1px solid var(--sand);background:var(--surface);border-radius:999px;display:inline-flex;overflow:hidden}.segmented button{min-height:38px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-right:1px solid #e7d6bfb3;padding:8px 12px}.segmented button:last-child{border-right:0}.segmented button.active{color:var(--cobalt);background:#1f5fbf1a;font-weight:700}.report-filter-grid{grid-template-columns:repeat(6,minmax(120px,1fr)) auto;align-items:end;gap:10px;display:grid}.report-filter-grid .button{min-height:40px}.reports-mobile-filter-button{display:none}.report-definition-card p{gap:4px;margin:0;display:grid}.report-definition-card p span{color:var(--muted);font-size:.88rem}.import-badge-strip{flex-wrap:wrap;gap:8px;margin:12px 0;display:flex}.chip.import-badge-chip{cursor:pointer;gap:8px}.chip.import-badge-chip strong{min-width:24px;min-height:22px;color:var(--ink);background:#2f2a2514;border-radius:999px;place-items:center;font-size:.78rem;display:inline-grid}.chip.import-badge-chip.neutral{border-color:#7b70683d}.chip.import-badge-chip.active{color:var(--cobalt);background:#1f5fbf1a;border-color:#1f5fbf6b}.import-candidate-list{gap:8px;margin-top:10px;display:grid}.import-candidate-card{color:inherit;cursor:pointer;font:inherit;text-align:left;background:#fffdf8c7;border:1px solid #c5974a47;border-radius:12px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:4px 10px;padding:10px 12px;text-decoration:none;display:grid}.import-candidate-card.selected{background:#2f755c1a;border-color:#2f755c73;box-shadow:0 0 0 2px #2f755c14}.import-candidate-card strong,.import-candidate-card small{min-width:0}.import-candidate-card small{color:var(--muted);grid-column:2;font-size:.78rem}.booking-mobile-list{display:none}.mobile-filter-overlay{z-index:70;background:#2f2a253d;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.mobile-filter-sheet{border:1px solid var(--sand);background:var(--surface);border-radius:24px 24px 0 0;width:min(720px,100vw);max-height:88vh;padding:16px;overflow:auto;box-shadow:0 -18px 42px #2f2a252e}.booking-detail-overlay{align-items:center}.booking-detail-mobile-sheet{border-radius:24px;flex-direction:column;width:min(640px,100vw - 32px);max-height:86vh;padding:0;display:flex;overflow:hidden;box-shadow:0 24px 70px #2f2a253d}.booking-detail-scroll-body{flex:1;min-height:0;padding:16px 16px 0;overflow:auto}.booking-detail-chip-row{flex-wrap:wrap;gap:8px;margin:8px 0 12px;display:flex}.mobile-filter-actions{background:#fffdf8f5;border-top:1px solid #e7d6bfb8;gap:8px;margin:14px -16px -16px;padding:12px 16px 16px;display:flex;position:sticky;bottom:0}.mobile-filter-actions .button{flex:1;min-height:46px}.booking-detail-summary{gap:10px;display:grid}.booking-detail-summary div{background:#f8f1e766;border:1px solid #e7d6bfb8;border-radius:14px;gap:3px;padding:10px;display:grid}.booking-detail-summary span{color:var(--muted);font-size:.82rem}.booking-detail-summary .booking-detail-lines{background:#f8f1e757;border:1px solid #e7d6bfb8;border-radius:16px;padding:4px 12px;display:block}.booking-detail-summary .booking-detail-line{background:0 0;border:0;border-bottom:1px solid #e7d6bfb8;border-radius:0;justify-content:space-between;align-items:center;gap:16px;padding:12px 0;display:flex}.booking-detail-summary .booking-detail-line:last-child{border-bottom:0}.booking-detail-summary .booking-detail-line strong{text-align:right}.booking-detail-room-banner,.booking-detail-contact,.booking-detail-payment-action{background:#fffdf8b8;border:1px solid #e3d4b6c7;border-radius:16px;justify-content:space-between;align-items:center;gap:12px;padding:13px;display:flex}.booking-detail-summary .booking-detail-room-banner,.booking-detail-summary .booking-detail-contact{gap:12px;display:flex}.booking-detail-summary .booking-detail-room-banner>div,.booking-detail-summary .booking-detail-contact>div{background:0 0;border:0;flex:1;min-width:0;padding:0}.booking-detail-room-banner{background:#3e6b4f14;border-color:#3e6b4f47}.booking-detail-room-banner.missing{background:#c0432f14;border-style:dashed;border-color:#c0432f61}.booking-detail-summary .booking-detail-room-badge{background:var(--olive);color:#fff;border-radius:14px;flex:none;place-items:center;width:48px;height:48px;font-size:.95rem;font-weight:850;display:inline-grid}.booking-detail-summary .booking-detail-room-banner.missing .booking-detail-room-badge{color:var(--terracotta);background:#c0432f24}.booking-detail-room-banner strong,.booking-detail-contact strong{margin-top:3px;display:block}.booking-detail-room-banner small{max-width:100%;color:var(--muted);text-align:left;margin-top:3px;font-size:.74rem;line-height:1.35;display:block}.booking-detail-room-banner .button.small{flex-shrink:0}.booking-assignment-panel{background:#1f5fbf0d;border:1px solid #1f5fbf2e;border-radius:16px;gap:12px;padding:12px;display:grid}.booking-detail-summary .booking-assignment-panel div{background:0 0;border:0;padding:0}.booking-assignment-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.booking-assignment-card{background:var(--surface);min-height:136px;color:var(--ink);cursor:pointer;font:inherit;text-align:left;border:1.5px solid #e7d6bfe6;border-radius:15px;gap:7px;padding:12px;display:grid}.booking-assignment-card.current{background:#1f5fbf14;border-color:#1f5fbf70}.booking-assignment-card.disabled{cursor:not-allowed;opacity:.68}.booking-assignment-card strong{color:var(--ink);font-size:1.1rem}.booking-assignment-card small{color:var(--muted);font-size:.78rem;line-height:1.35}.booking-detail-payment-action{width:100%;color:var(--clay);cursor:pointer;font:inherit;text-align:left;background:#c0432f14;border-color:#c0432f4d;margin-top:12px}.booking-detail-payment-action span{flex:1;font-weight:700}.booking-detail-payment-action strong{color:var(--terracotta);font-size:.82rem}.booking-warning-box{color:var(--danger);background:#b6533a14;border:1px solid #b6533a40;border-radius:14px;gap:8px;margin-top:12px;padding:10px;display:flex}.booking-detail-actions{flex-shrink:0;align-items:stretch;margin:0;padding:12px 16px 16px;position:static}.booking-detail-actions .button{justify-content:center}.booking-ledger-panel:last-of-type{margin-bottom:16px}@media (max-width:639px){.booking-detail-overlay{align-items:flex-end}.booking-detail-mobile-sheet{border-radius:24px 24px 0 0;width:100vw;max-height:88vh}.booking-detail-mobile-sheet.assign-mode{max-height:82dvh}.booking-detail-mobile-sheet.assign-mode .booking-detail-scroll-body{padding-bottom:0}.booking-detail-mobile-sheet.assign-mode .reference-assign-panel{background:0 0;border:0;padding:2px 0 6px}.booking-detail-mobile-sheet.assign-mode .reference-assign-dates{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.booking-detail-mobile-sheet.assign-mode .reference-assign-dates .field,.booking-detail-mobile-sheet.assign-mode .reference-assign-dates input[type=date]{width:100%;min-width:0}.booking-detail-mobile-sheet.assign-mode .reference-assign-dates input[type=date]{letter-spacing:0;min-height:42px;padding:8px 7px;font-size:.76rem;line-height:1.2}.booking-detail-mobile-sheet.assign-mode .reference-assign-dates input[type=date]::-webkit-calendar-picker-indicator{width:15px;height:15px;margin-left:2px;padding:0}.booking-detail-mobile-sheet.assign-mode .reference-assign-summary{flex-flow:wrap;align-items:center}.booking-detail-mobile-sheet.assign-mode .reference-assign-summary strong{white-space:nowrap;max-width:100%}.booking-detail-mobile-sheet.assign-mode .reference-assign-footer{border-top:1px solid var(--sand);background:var(--surface);margin-left:-16px;margin-right:-16px;padding-left:16px;padding-right:16px}.booking-detail-mobile-sheet:before{content:"";background:#e3d4b6e0;border-radius:999px;flex:none;align-self:center;width:70px;height:8px;margin:12px 0 4px}.booking-detail-mobile-sheet .booking-detail-scroll-body{padding-top:8px}.booking-assignment-grid{grid-template-columns:1fr}.booking-detail-overlay .mobile-filter-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.booking-detail-overlay .mobile-filter-actions .button{width:100%;min-width:0}.booking-detail-summary .booking-detail-room-banner{grid-template-columns:64px minmax(0,1fr) auto;align-items:center;display:grid}.booking-detail-room-banner small{text-align:left;max-width:none}.booking-detail-room-banner .button.small{justify-content:center;width:auto;min-width:104px}.booking-ledger-panel:last-of-type{margin-bottom:16px}}@media (max-width:720px){.reports-mobile-filter-button{display:inline-flex}.reports-desktop-filter-toggle,.reports-desktop-filters{display:none}.booking-mobile-list{gap:10px;display:grid}.bookings-table-wrap{display:none}}.command-timeline-wrap{border:1px solid var(--sand);min-width:0;min-height:0;box-shadow:var(--shadow);background:#fffdf8f0;border-radius:22px;overflow:auto}.calendar-overview{border:1px solid var(--sand);min-width:0;min-height:0;box-shadow:var(--shadow);background:#fffdf8f2;border-radius:22px;padding:14px;overflow:auto}.overview-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.overview-header p{color:var(--muted);margin:0;font-size:.8rem}.overview-header h2{margin:2px 0 0;font-size:1.24rem}.overview-header>span,.overview-summary{color:var(--cobalt);background:#1f5fbf14;border:1px solid #1f5fbf2e;border-radius:999px;padding:7px 10px;font-size:.82rem;font-weight:700}.overview-title-stack{min-width:0}.overview-nav{width:34px;height:34px;color:var(--ink);cursor:pointer;background:#fffdf8e6;border:1px solid #e3d4b6e6;border-radius:12px;place-items:center;padding:0;display:grid;box-shadow:0 2px 8px #4033250f}.overview-nav:active{transform:translateY(1px)}.calendar-legend{color:var(--muted);flex-wrap:wrap;gap:8px;margin:0 0 10px;font-size:.76rem;display:flex}.calendar-legend span{background:#fffdf8c7;border:1px solid #e7d6bfb8;border-radius:999px;align-items:center;gap:5px;padding:5px 8px;display:inline-flex}.calendar-legend i,.year-mini-heatmap i{border:1px solid #2f2a2514;border-radius:999px;width:14px;height:8px}.month-weekdays,.month-grid{grid-template-columns:repeat(7,minmax(74px,1fr));gap:8px;display:grid}.month-weekdays{color:var(--muted);text-align:center;margin-bottom:8px;font-size:.78rem}.month-day,.month-blank,.year-card{background:var(--surface);border:1px solid #e7d6bfe6;border-radius:18px}.month-day{min-height:72px;color:var(--ink);text-align:left;cursor:pointer;grid-template-rows:auto 1fr auto;align-content:stretch;gap:5px;padding:10px;display:grid;position:relative;overflow:hidden}.month-day.heat-0{background:linear-gradient(180deg, #57735b0a, #fffdf8eb), var(--surface)}.month-day.heat-1{background:linear-gradient(180deg, #67735a1a, #fffdf8e6), var(--surface)}.month-day.heat-2{background:linear-gradient(180deg, #d9a44126, #fffdf8db), var(--surface)}.month-day.heat-3{background:linear-gradient(180deg, #c46a4a2e, #fffdf8d6), var(--surface)}.month-day:hover,.year-card:hover{border-color:#1f5fbf57;box-shadow:0 0 0 3px #1f5fbf14}.month-day.today{background:linear-gradient(180deg, #1f5fbf17, #1f5fbf05), var(--surface);border-color:#1f5fbf70}.month-day.selected{border-color:#c0432f80;box-shadow:inset 0 0 0 1px #c0432f3d}.month-day.adjacent-month{opacity:.48;background:#fffdf880}.month-day.has-warning{border-style:dashed}.month-day-top{justify-content:space-between;align-items:center;gap:6px;min-width:0;min-height:20px;display:flex;position:relative}.month-day-top b,.year-card b{width:fit-content;color:var(--danger);background:#b6533a14;border-radius:999px;padding:3px 7px;font-size:.68rem;font-weight:800}.month-day span{color:var(--muted);font-size:.86rem;font-weight:750}.month-day strong.month-day-checkin{max-width:calc(100% - 20px);color:var(--terracotta);text-overflow:ellipsis;white-space:nowrap;background:#c46a4a1f;border-radius:999px;padding:2px 7px;font-size:.78rem;font-weight:850;line-height:1.05;position:absolute;top:-2px;right:-2px;overflow:hidden}.month-day small,.month-day em,.year-card small,.year-card em,.year-card i{color:var(--muted);font-size:.76rem;font-style:normal}.month-day small{flex-wrap:wrap;gap:4px;display:flex}.month-day small b{color:var(--ink);background:#e7d6bf6b;border-radius:999px;padding:2px 6px;font-size:.68rem}.month-day i{background:#e3d4b6d1;border-radius:999px;align-self:end;width:100%;height:5px;display:block;overflow:hidden}.month-day i b{border-radius:inherit;background:var(--olive);min-width:0;max-width:100%;height:100%;display:block}.month-day.heat-1 i b{background:var(--muted-teal)}.month-day.heat-2 i b{background:var(--marigold)}.month-day.heat-3 i b{background:var(--terracotta)}.month-day.has-warning i b{background:var(--danger)}.heat-0{background:#57735b29}.heat-1{background:#67735a47}.heat-2{background:#d9a44161}.heat-3{background:#c46a4a75}.calendar-legend i.has-warning,.year-mini-heatmap i.has-warning{background-image:repeating-linear-gradient(45deg,#b6533a38 0 3px,#0000 3px 6px);border-color:#b6533ab8}.year-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.year-card{min-height:112px;color:var(--ink);text-align:left;cursor:pointer;gap:6px;padding:13px;display:grid}.year-card-head{justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.year-card.has-next{border-color:#1f5fbf52}.year-card span{color:var(--muted);font-size:.78rem}.year-card strong{color:var(--ink);font-size:1.08rem}.year-mini-heatmap{grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;display:grid}.year-mini-heatmap i{width:100%;height:9px}.year-stat-row{color:var(--muted);justify-content:space-between;align-items:center;gap:8px;font-size:.76rem;display:flex}.year-stat-row span,.year-card i{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.command-timeline{background:var(--surface);position:relative}.command-row{border-bottom:1px solid #e7d6bfb8;min-height:58px;display:grid;position:relative}.command-header{z-index:5;min-height:50px;position:sticky;top:0}.command-room,.command-date,.command-cell{border-right:1px solid #e7d6bf9e}.sticky-room{z-index:6;background:var(--surface-strong);position:sticky;left:0}.command-room{align-content:center;gap:3px;padding:8px 10px;font-weight:700;display:grid}.command-room span{color:var(--muted);font-size:.72rem;font-weight:400}.command-date{color:var(--muted);background:#67735a14;place-items:center;gap:2px;padding:8px;font-size:.78rem;display:grid}.command-date.today,.command-cell.today{background:linear-gradient(180deg, #1f5fbf1f, #1f5fbf09), var(--surface)}.command-date.today strong{color:var(--cobalt);font-size:.72rem}.type-row{min-height:38px}.type-row .command-room{background:#fff8edfa}.type-cell{background:#f8f1e780}.empty-cell{min-height:58px;color:var(--muted);cursor:pointer;background:0 0;border-top:0;border-bottom:0;border-left:0;padding:4px;position:relative}.empty-cell:hover{background:#1f5fbf12}.command-booking{z-index:3;text-align:left;border-radius:14px;min-width:0;min-height:40px;margin:9px 7px}.maintenance-chip{color:var(--clay);background:#a5523c14;border:1px dashed #a5523c70;border-radius:999px;padding:3px 7px;font-size:.68rem;display:inline-flex}.operations-panel{border:1px solid var(--sand);min-width:0;box-shadow:var(--shadow);background:linear-gradient(#2f6f5714,#0000 30%),#fffdf8f2;border-radius:22px;padding:16px;overflow:auto}.operations-panel.compact{padding:12px;overflow:visible}.upcoming-stay-card{background:linear-gradient(135deg, #1f5fbf14, #d9a44114), var(--surface);border:1px solid #1f5fbf33;border-radius:18px;grid-template-columns:40px minmax(0,1fr);gap:10px;margin-bottom:12px;padding:12px;display:grid}.upcoming-stay-card.compact{margin:0 0 10px}.upcoming-icon{width:40px;height:40px;color:var(--cobalt);background:#1f5fbf1a;border-radius:999px;place-items:center;display:grid}.upcoming-copy{gap:3px;min-width:0;display:grid}.upcoming-copy span,.upcoming-copy small,.upcoming-next-list{color:var(--muted);font-size:.78rem}.upcoming-copy strong{color:var(--ink);font-size:1rem}.source-chip-row,.next-warning-row{flex-wrap:wrap;gap:5px;display:flex}.source-chip-row .chip{color:#fff;border-color:#e7d6bfd1;font-size:.72rem}.upcoming-next-list{border-top:1px solid #e7d6bfb8;grid-column:2;gap:3px;padding-top:6px;display:grid}.next-warning{width:fit-content;color:var(--danger);background:#b6533a14;border-radius:999px;padding:4px 8px;font-size:.76rem;font-weight:700;display:inline-flex}.next-stay-actions{flex-wrap:wrap;grid-column:1/-1;gap:8px;display:flex}.panel-header{justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:12px;display:flex}.ops-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.ops-metric{background:var(--surface);border:1px solid #e7d6bfcc;border-radius:16px;gap:4px;padding:10px;display:grid}.ops-metric span{color:var(--muted);font-size:.76rem}.ops-metric strong{font-size:1.18rem}.ops-metric.danger strong{color:var(--danger)}.ops-section{border-top:1px solid #e7d6bfd9;margin-top:16px;padding-top:14px}.ops-section h3{margin:0 0 10px;font-size:.94rem}.ops-row,.warning-row,.mini-list{border-bottom:1px solid #e7d6bf80;gap:5px;padding:8px 0;display:grid}.ops-row{grid-template-columns:minmax(0,1fr) auto}.warning-row{color:var(--danger);grid-template-columns:18px minmax(0,1fr)}.warning-row small{color:var(--muted);grid-column:2}.ops-actions{gap:8px;margin-top:16px;display:grid}.tablet-summary-row{margin-bottom:12px}.tablet-summary-row .operations-panel{grid-template-columns:auto minmax(0,1fr);gap:12px;display:grid}.mobile-topbar,.mobile-status-strip,.date-strip{z-index:9;position:sticky}.mobile-topbar{border-bottom:1px solid var(--sand);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffdf8f5;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex;top:0}.mobile-topbar div:first-child{gap:2px;display:grid}.mobile-topbar span{color:var(--muted);font-size:.8rem}.mobile-topbar div:last-child{gap:8px;display:flex}.icon-button{border:1px solid var(--sand);background:var(--surface);width:44px;height:44px;color:var(--ink);border-radius:999px;place-items:center;display:inline-grid}.mobile-status-strip{background:#f8f1e7f5;border-bottom:1px solid #e7d6bfbf;gap:8px;padding:10px 14px;display:flex;top:69px;overflow-x:auto}.mobile-status-card{border:1px solid var(--sand);background:var(--surface);border-radius:16px;flex:none;grid-template-columns:auto auto;gap:2px 7px;min-width:128px;padding:9px 10px;display:grid}.mobile-status-card span{color:var(--muted);font-size:.72rem}.mobile-status-card strong{grid-column:1/-1;font-size:1.2rem}.mobile-status-card.danger{color:var(--danger);border-color:#b6533a61}.mobile-command .upcoming-stay-card{margin:10px 14px 0}.mobile-view-switcher{grid-template-columns:repeat(3,1fr);gap:8px;padding:10px 14px 0;display:grid}.mobile-view-switcher button{border:1px solid var(--sand);background:var(--surface);min-height:44px;color:var(--muted);border-radius:999px}.mobile-view-switcher button.active{color:var(--cobalt);background:#1f5fbf17;border-color:#1f5fbf6b;font-weight:700}.date-strip{background:#fffdf8f5;border-bottom:1px solid #e7d6bfbf;gap:8px;padding:10px 14px;display:flex;top:155px;overflow-x:auto}.date-strip button{border:1px solid var(--sand);background:var(--surface);min-height:70px;color:var(--ink);border-radius:18px;flex:0 0 58px;place-items:center;gap:2px;display:grid;position:relative}.date-strip button.selected{border-color:#1f5fbf7a;box-shadow:0 0 0 3px #1f5fbf1f}.date-strip button.today{color:var(--cobalt)}.date-strip span{color:var(--muted);font-size:.68rem}.date-strip strong{font-size:1.1rem}.date-strip i{background:var(--olive);border-radius:999px;max-width:38px;height:4px;display:block}.date-strip em{background:var(--danger);color:#fff;border-radius:999px;place-items:center;width:16px;height:16px;font-size:.66rem;font-style:normal;display:grid;position:absolute;top:5px;right:6px}.mobile-agenda{gap:12px;padding:14px 14px 96px;display:grid}.mobile-section{gap:9px;display:grid}.mobile-section h2{margin:0;font-size:1rem}.agenda-card{border:1px solid var(--sand);background:var(--surface);width:100%;min-height:74px;color:var(--ink);text-align:left;border-radius:18px;gap:4px;padding:12px 13px 12px 34px;display:grid;position:relative}.agenda-card small,.agenda-card span{color:var(--muted)}.source-dot{border-radius:999px;width:12px;height:12px;position:absolute;top:16px;left:13px}.available-room-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.available-room-grid button{border:1px solid var(--sand);text-align:left;background:#fffdf8eb;border-radius:16px;gap:2px;min-height:62px;padding:10px;display:grid}.available-room-grid span{color:var(--muted);font-size:.78rem}.fab{z-index:18;background:var(--terracotta);color:#fff;border:0;border-radius:999px;align-items:center;gap:8px;min-height:52px;padding:0 18px;display:inline-flex;position:fixed;bottom:86px;right:18px;box-shadow:0 14px 34px #c46a4a52}.bottom-sheet{z-index:44;border:1px solid var(--sand);background:var(--surface);border-radius:24px 24px 0 0;max-height:86vh;padding:16px;position:fixed;bottom:0;left:0;right:0;overflow:auto;box-shadow:0 -18px 42px #2f2a252e}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.sheet-actions,.modal-actions{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.create-modal,.search-screen{z-index:44;border-left:1px solid var(--sand);background:var(--surface);width:min(560px,94vw);height:100vh;padding:20px;position:fixed;top:0;right:0;overflow:auto;box-shadow:-18px 0 40px #2f2a2529}.create-modal.mobile-full,.search-screen{border-left:0;width:100vw;left:0}.create-modal.mobile-full{height:100dvh;max-height:100dvh;bottom:0}.command-form{padding-bottom:20px}.booking-wizard{width:min(860px,96vw)}.wizard-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:14px 0;display:grid}.wizard-steps button{border:1px solid var(--sand);background:var(--surface);min-height:44px;color:var(--muted);border-radius:999px;justify-content:center;align-items:center;gap:7px;display:inline-flex}.wizard-steps button.active{color:var(--cobalt);background:#1f5fbf14;border-color:#1f5fbf66;font-weight:700}.wizard-steps span{background:#c46a4a1f;border-radius:999px;place-items:center;width:24px;height:24px;display:inline-grid}.wizard-panel{gap:14px;display:grid}.wizard-summary-strip,.room-picker-header,.selected-basket,.wizard-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.room-picker-header{background:#fff8ed85;border:1px solid #e7d6bfbf;border-radius:18px;justify-content:space-between;padding:10px 12px}.room-picker-header p{margin:3px 0 0}.selected-basket{z-index:4;border:1px solid var(--sand);box-shadow:var(--shadow);background:#fffdf8f5;border-radius:18px;margin-top:14px;padding:12px;display:grid;position:sticky;bottom:0}.selected-basket.inline{margin-top:0;top:12px;bottom:auto}.selected-basket-summary{width:100%;min-height:44px;color:var(--ink);text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:8px;padding:0;display:flex}.selected-basket-summary div,.selected-basket-row div{gap:3px;display:grid}.selected-basket span,.selected-basket-row span{color:var(--muted);font-size:.82rem}.selected-basket-list{border-top:1px solid #e7d6bfb8;gap:8px;margin-top:10px;padding-top:10px;display:grid}.selected-basket-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.selected-basket-price{gap:3px;min-width:116px;display:grid}.selected-basket-price input{border:1px solid var(--sand);background:var(--surface);width:116px;min-height:36px;color:var(--ink);font:inherit;border-radius:10px;padding:7px 9px;font-weight:800}.wizard-actions{justify-content:flex-end;margin-top:12px}.room-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.wizard-room-selection-layout{grid-template-columns:minmax(0,1fr) 280px;align-items:start;gap:14px;display:grid}.booking-wizard .room-card-grid{grid-template-columns:repeat(2,minmax(230px,1fr))}.booking-wizard .room-select-card{grid-template-columns:1fr}.booking-wizard .room-card-image{aspect-ratio:16/10;min-height:0}.booking-wizard .room-card-image img{min-height:0}.booking-create-entry-body{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.booking-create-entry-body div{gap:3px;margin-right:auto;display:grid}.booking-create-entry-body span{color:var(--muted)}.room-select-card{border:1px solid var(--sand);background:var(--surface);width:100%;color:var(--ink);text-align:left;cursor:pointer;border-radius:22px;grid-template-columns:150px minmax(0,1fr);gap:12px;padding:10px;display:grid}.room-select-card.selected{border-color:#1f5fbf75;box-shadow:0 0 0 3px #1f5fbf1a}.room-select-card.disabled{cursor:not-allowed;opacity:.78}.room-card-image{border:2px solid var(--sand);background:radial-gradient(circle at 20% 15%, #1f5fbf1f, transparent 28%), linear-gradient(135deg, #c46a4a24, #67735a1f), var(--surface-strong);border-radius:18px;place-items:center;min-height:126px;display:grid;position:relative;overflow:hidden}.room-card-image img{object-fit:cover;width:100%;height:100%;min-height:126px}.room-card-image span{color:var(--clay);font-size:1.6rem;font-weight:800}.room-card-image em{color:var(--ink);background:#fffdf8e6;border-radius:999px;padding:4px 8px;font-size:.72rem;font-style:normal;font-weight:700;position:absolute;bottom:8px;right:8px}.room-card-copy{gap:6px;min-width:0;display:grid}.room-card-copy>span,.room-card-copy small,.room-card-copy p{color:var(--muted);font-size:.8rem}.room-card-copy p{margin:0}.wizard-optional{background:#fff8ed85;border:1px solid #e7d6bfbf;border-radius:18px;padding:12px}.wizard-optional summary{cursor:pointer;font-weight:700}.review-card{border:1px solid var(--sand);background:#fff8eda8;border-radius:20px;gap:8px;padding:16px;display:grid}.conflict-message{color:var(--danger);background:#b6533a14;border:1px solid #b6533a52;border-radius:14px;padding:10px 12px}.filters-sheet{gap:14px;display:grid}.filter-grid{gap:12px;display:grid}.room-tabs{flex-wrap:wrap;gap:8px;display:flex}.room-tabs button{border:1px solid var(--sand);background:var(--surface);min-height:42px;color:var(--muted);border-radius:999px;padding:8px 14px}.room-tabs button.active{color:var(--cobalt);background:#1f5fbf14;border-color:#1f5fbf66;font-weight:700}.room-card-manager{grid-template-columns:280px minmax(0,1fr) 330px;align-items:start;gap:16px;display:grid}.room-card-list,.room-card-preview-pane{position:sticky;top:16px}.quality-strip{flex-wrap:wrap;gap:7px;margin-bottom:12px;display:flex}.room-card-list-scroll{gap:8px;max-height:68vh;display:grid;overflow:auto}.room-card-list-item{background:var(--surface);text-align:left;border:1px solid #e7d6bfd1;border-radius:16px;grid-template-columns:54px minmax(0,1fr);align-items:center;gap:3px;width:100%;padding:10px 12px;display:grid}.room-card-list-item>span{gap:3px;min-width:0;display:grid}.room-card-list-item em{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-style:normal;font-weight:650;overflow:hidden}.room-card-list-item.active{background:#1f5fbf12;border-color:#1f5fbf6b}.room-card-list-item span,.room-card-list-item small{color:var(--muted)}.preview-only{grid-template-columns:1fr}.compact-field{margin-bottom:12px}.room-list-thumb{border:1px solid var(--sand);width:44px;height:44px;color:var(--clay);object-fit:cover;background:#c46a4a1f;border-radius:14px;place-items:center;font-size:.8rem;font-weight:800;display:grid;overflow:hidden}.room-card-editor{gap:16px;display:grid}.room-card-editor-section{gap:14px;display:grid}.room-card-mobile-tabs,.mobile-editor-back{display:none}.room-image-dropzone{min-height:168px;color:var(--ink);text-align:center;cursor:pointer;background:radial-gradient(circle at 20% 20%,#1f5fbf14,#0000 30%),linear-gradient(135deg,#fff8edeb,#fffdf8fa);border:1.5px dashed #c46a4a6b;border-radius:22px;place-items:center;gap:7px;padding:20px;display:grid}.room-image-dropzone input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.room-image-dropzone span{font-size:1.02rem;font-weight:800}.room-image-dropzone small{color:var(--muted)}.room-image-dropzone.uploading{opacity:.7;cursor:progress}.room-image-gallery{gap:10px;display:grid}.room-image-tile{border:1px solid var(--sand);background:#fff8ed8c;border-radius:18px;grid-template-columns:92px minmax(0,1fr);align-items:center;gap:12px;padding:10px;display:grid}.room-image-tile.primary{background:#1f5fbf0f;border-color:#1f5fbf57}.room-image-tile img{object-fit:cover;border-radius:14px;width:92px;height:68px}.room-image-tile small{color:var(--muted);margin-top:3px;display:block}.room-image-actions{flex-wrap:wrap;grid-column:1/-1;gap:8px;display:flex}.button.small{min-height:34px;padding:6px 10px;font-size:.78rem}.room-image-empty{background:linear-gradient(135deg, #c46a4a12, #2f6f5712), var(--surface);border:1px solid #e7d6bfcc;border-radius:20px;gap:4px;padding:18px;display:grid}.room-image-empty p{color:var(--muted);margin:0}.amenity-chip-grid,.preview-state-switcher{flex-wrap:wrap;gap:8px;display:flex}@media (min-width:1200px){.app-shell{grid-template-columns:212px minmax(0,1fr)}.sidebar{padding:18px 14px}}@media (max-width:1439px) and (min-width:1024px){.desktop-command{grid-template-columns:minmax(0,1fr);height:auto}.desktop-command .operations-panel{max-height:none}.desktop-command .ops-metrics{grid-template-columns:repeat(6,minmax(0,1fr))}.desktop-command .ops-section,.desktop-command .ops-actions{display:none}}@media (max-width:1199px) and (min-width:1024px){.app-shell{grid-template-columns:82px minmax(0,1fr)}.sidebar{border-right:1px solid var(--sand);border-bottom:0;min-height:100vh;padding:12px 10px;position:sticky;top:0}.brand-mark{border-radius:18px;place-items:center;padding:10px}.brand-mark strong,.brand-mark span,.nav-link span{display:none}.nav-list{gap:8px;margin-top:16px;display:grid;overflow:visible}.nav-link{justify-content:center;min-height:48px;padding:0}}@media (max-width:1023px) and (min-width:640px){.app-shell{grid-template-columns:82px minmax(0,1fr)}.sidebar{border-right:1px solid var(--sand);border-bottom:0;min-height:100vh;padding:12px 10px;position:sticky;top:0}.brand-mark{border-radius:18px;place-items:center;padding:10px}.brand-mark strong,.brand-mark span,.nav-link span{display:none}.nav-list{gap:8px;margin-top:16px;display:grid;overflow:visible}.nav-link{justify-content:center;min-height:48px;padding:0}.main-area{padding:14px}.tablet-command{min-height:calc(100vh - 28px)}.tablet-summary-row .operations-panel{grid-template-columns:1fr}.operations-panel.compact .ops-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.room-card-manager{grid-template-columns:1fr}.room-card-list,.room-card-preview-pane{position:static}.room-card-editor{order:2}.room-card-preview-pane{order:3}.year-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.month-weekdays,.month-grid{grid-template-columns:repeat(7,minmax(72px,1fr))}}@media (max-width:639px){body{background:linear-gradient(180deg, #e8ddc7fa, #e8ddc7), var(--cream)}.app-shell{background:linear-gradient(180deg, #eee1c9f0, #eee1c9), var(--cream);width:100%;max-width:none;min-height:100svh;box-shadow:none;border-radius:0;margin:0;display:block;position:relative}.sidebar,.topbar{display:none}.main-area{border-radius:0;min-height:100svh;padding:0;overflow:hidden}.mobile-bottom-nav{z-index:30;width:100%;max-width:none;min-height:68px;padding:7px 8px calc(7px + env(safe-area-inset-bottom));border-top:1px solid var(--sand);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffdf8f7;border-radius:0;grid-template-columns:repeat(5,1fr);display:grid;position:fixed;bottom:0;left:0;right:0;transform:none}.mobile-nav-link{color:var(--muted);place-items:center;gap:3px;font-size:.68rem;display:grid}.mobile-nav-link.active{color:var(--cobalt);font-weight:700}.mobile-status-strip{grid-template-columns:repeat(3,minmax(0,1fr));display:grid;overflow:visible}.mobile-status-card{min-width:0;padding:8px}.mobile-status-card span{white-space:normal;font-size:.66rem}.mobile-status-card strong{font-size:1.05rem}.mobile-command .upcoming-stay-card{border-radius:18px;grid-template-columns:36px minmax(0,1fr)}.upcoming-next-list{grid-column:1/-1}.date-strip{top:215px}.calendar-overview.mobile{box-shadow:none;background:0 0;border:0;border-radius:0;gap:8px;margin:10px 16px 0;padding:0;display:grid;overflow:visible}.calendar-overview.mobile .overview-header{grid-template-columns:34px minmax(0,1fr) 34px;align-items:center;gap:8px;margin:6px 0 8px;display:grid}.calendar-overview.mobile .overview-title-stack{text-align:center}.calendar-overview.mobile .overview-header h2{margin:0;font-size:1.18rem;line-height:1.12}.calendar-overview.mobile .overview-summary{color:var(--muted);box-shadow:none;background:0 0;border:0;grid-column:1/-1;justify-self:center;padding:0;font-size:.72rem;font-weight:650}.calendar-overview.mobile.month-overview .month-weekdays{order:2}.calendar-overview.mobile.month-overview .month-grid{order:3}.calendar-overview.mobile.month-overview .calendar-legend{order:4;justify-content:center;gap:10px;margin:8px 0 0;font-size:.64rem}.calendar-overview.mobile.month-overview .calendar-legend span{background:0 0;border:0;padding:0}.calendar-overview.mobile.month-overview .calendar-legend i{width:16px;height:4px}.calendar-overview.mobile .month-weekdays{margin-bottom:0;font-size:.68rem}.calendar-overview.mobile .month-weekdays span:first-child,.calendar-overview.mobile .month-weekdays span:last-child{color:var(--terracotta)}.calendar-overview.mobile .month-day{background:#fffdf8b8;border-radius:10px;min-height:56px;padding:6px}.calendar-overview.mobile .month-day.selected{border-color:var(--terracotta);box-shadow:inset 0 0 0 1px #c0432f5c}.calendar-overview.mobile .month-day.adjacent-month{opacity:.46;color:var(--muted-2);background:#fffdf870}.calendar-overview.mobile .month-day-top{min-height:16px}.calendar-overview.mobile .month-day span{font-size:.78rem}.calendar-overview.mobile .month-day strong.month-day-checkin{letter-spacing:0;max-width:24px;padding:1px 4px;font-size:.6rem;line-height:1;top:0;right:0}.calendar-overview.mobile .month-day i{justify-self:center;width:calc(100% - 4px);height:4px}.calendar-overview.mobile .month-day small,.calendar-overview.mobile .month-day em{display:none}.calendar-overview.mobile .year-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.calendar-overview.mobile .year-card{background:#fffdf8c7;border-radius:10px;gap:5px;min-height:104px;padding:9px}.calendar-overview.mobile .year-card.has-next{border-color:#d2962a66}.calendar-overview.mobile .year-card-head span{color:var(--ink);font-size:.74rem;font-weight:800}.calendar-overview.mobile .year-card-head strong{color:var(--muted);font-size:.68rem}.calendar-overview.mobile .year-stat-row{font-size:.66rem}.calendar-overview.mobile .year-mini-heatmap{grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}.calendar-overview.mobile .year-mini-heatmap i{border-radius:3px;height:6px}.calendar-overview.mobile .month-weekdays,.calendar-overview.mobile .month-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;overflow:visible}.fab{justify-content:center;width:56px;min-width:56px;padding:0;font-size:0;overflow:hidden}.fab svg{flex:none}.booking-wizard{width:100vw}.wizard-steps{grid-template-columns:repeat(3,minmax(92px,1fr));overflow-x:auto}.wizard-steps button{min-width:76px;font-size:.78rem}.room-card-grid,.room-select-card,.room-card-manager,.wizard-room-selection-layout{grid-template-columns:1fr}:is(.reference-rooms-page:has(.room-card-manager.mobile-editor-open) .reference-summary-tiles,.reference-rooms-page:has(.room-card-manager.mobile-editor-open)>.room-tabs),.room-card-manager:not(.mobile-editor-open) .room-card-editor,.room-card-manager:not(.mobile-editor-open) .room-card-preview-pane,.room-card-manager.mobile-editor-open .room-card-list{display:none}.room-card-manager.mobile-editor-open .room-card-editor{display:grid}.room-card-manager.mobile-editor-open .room-card-preview-pane{display:none}.room-card-manager.mobile-editor-open .room-card-preview-pane.mobile-tab-section.active{display:grid}.mobile-editor-back{justify-content:center;align-items:center;min-height:44px;display:inline-flex}.room-card-list-scroll{max-height:none;overflow:visible}.room-card-mobile-tabs{z-index:3;border:1px solid var(--sand);background:#fffdf8f5;border-radius:999px;grid-template-columns:repeat(3,1fr);gap:7px;padding:6px;display:grid;position:sticky;top:0}.room-card-mobile-tabs button{min-height:42px;color:var(--muted);background:0 0;border:0;border-radius:999px;font-weight:700}.room-card-mobile-tabs button.active{color:var(--cobalt);background:#1f5fbf1a}.mobile-tab-section{display:none}.mobile-tab-section.active,.room-card-preview-pane.mobile-tab-section.active{display:grid}.room-image-dropzone{min-height:154px}.room-image-tile{grid-template-columns:84px minmax(0,1fr)}.room-image-tile img{width:84px;height:64px}.room-card-image{min-height:150px}.selected-basket{bottom:76px}.selected-basket.inline{margin-top:8px;top:auto;bottom:76px}.selected-basket-list{max-height:180px;overflow:auto}.wizard-actions{background:var(--surface);padding-top:8px;position:sticky;bottom:0}.room-card-list,.room-card-preview-pane{position:static}.detail-grid,.form-grid{grid-template-columns:1fr}.sheet-actions .button,.modal-actions .button{flex:130px;min-height:46px}.bottom-sheet .section-header,.create-modal .section-header,.filters-sheet .section-header,.search-screen .section-header{flex-direction:row;align-items:flex-start}.command-form .field textarea{min-height:94px}}.main-area{background:var(--cream);min-width:0}.reference-calendar-screen{grid-template-rows:auto minmax(0,1fr);gap:0;height:100vh;padding:0}.reference-calendar-head{z-index:30;background:var(--cream);padding:16px 18px 10px;position:sticky;top:0}.reference-calendar-title{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.reference-calendar-title h1{color:var(--ink);font-family:var(--heading-font);margin:0;font-size:1.55rem;line-height:1.1}.reference-calendar-title p{color:var(--muted-2);margin:5px 0 0;font-size:.8rem}.reference-calendar-tools{flex-shrink:0;justify-content:flex-end;align-items:center;gap:8px;display:inline-flex}.reference-today-button{border:1px solid var(--sand);background:var(--surface);min-height:38px;color:var(--ink);cursor:pointer;border-radius:12px;align-items:center;gap:6px;padding:0 13px;font-weight:700;display:inline-flex}.reference-calendar-icon-button{border:1px solid var(--sand);background:var(--surface);width:38px;height:38px;color:var(--ink);cursor:pointer;border-radius:999px;place-items:center;display:grid;box-shadow:0 8px 18px #2f2a2512}.reference-week-strip{scrollbar-width:none;gap:7px;padding:9px 0 8px;display:flex;overflow-x:auto}.reference-week-strip::-webkit-scrollbar{display:none}.reference-week-strip button{border:1px solid var(--sand);background:var(--surface);min-height:72px;color:var(--ink);cursor:pointer;border-radius:14px;flex:0 0 52px;place-items:center;gap:3px;padding:7px 0 6px;display:grid}.reference-week-strip button.selected{border-color:var(--terracotta);background:var(--terracotta);color:#fff}.reference-week-strip button.today:not(.selected){border-color:#c0432f66}.reference-week-strip span{color:currentColor;opacity:.72;font-size:.68rem;font-weight:800}.reference-week-strip strong{font-size:1.05rem}.reference-week-strip small{color:currentColor;opacity:.72;font-size:.62rem;font-weight:800;line-height:1}.reference-week-strip i{background:#e3d4b6e6;border-radius:999px;width:22px;height:3px;display:block;overflow:hidden}.reference-week-strip b{border-radius:inherit;opacity:.55;background:currentColor;height:100%;display:block}.reference-calendar-period{color:var(--ink);justify-content:space-between;align-items:center;gap:10px;margin-top:10px;display:flex}.reference-calendar-period strong{font-size:.95rem;font-weight:850}.reference-calendar-period span{color:var(--muted);white-space:nowrap;font-size:.76rem;font-weight:750}.field-hint{color:var(--muted);margin-top:6px;font-size:.76rem;font-weight:750;display:block}.reference-calendar-segbar{border:1px solid var(--sand);background:var(--surface);border-radius:14px;grid-template-columns:repeat(4,1fr);gap:0;display:grid;overflow:hidden}.reference-calendar-segbar button{border:0;border-right:1px solid var(--sand);min-height:38px;color:var(--muted);cursor:pointer;background:0 0;font-weight:700}.reference-calendar-segbar button:last-child{border-right:0}.reference-calendar-segbar button.active{background:var(--surface-strong);color:var(--ink);box-shadow:inset 0 0 0 1px #c0432f1a}.reference-day-board{min-height:0;padding:0 18px 18px;overflow-y:auto}.reference-day-summary{border:1px solid var(--sand);background:var(--surface);border-radius:18px;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:16px;display:grid}.reference-day-summary>div:first-child{min-width:0}.reference-day-summary>div:first-child small{white-space:nowrap;margin-left:6px}.reference-day-summary>div:last-of-type{text-align:right}.reference-day-summary span,.reference-day-summary small,.reference-day-summary p{color:var(--muted)}.reference-day-summary>div:first-child span,.reference-day-summary>div:last-of-type small{display:block}.reference-day-summary>div:first-child span{margin-bottom:4px}.reference-day-summary strong{color:var(--ink);font-size:1.8rem}.reference-day-summary>i{background:var(--inset);border-radius:999px;grid-column:1/-1;height:8px;overflow:hidden}.reference-day-summary>i b{border-radius:inherit;background:linear-gradient(90deg, var(--terracotta), var(--clay));height:100%;display:block}.reference-day-summary p{grid-column:1/-1;margin:0;font-size:.8rem}.reference-day-columns{gap:14px;margin-top:16px;display:grid}.reference-day-section-head{align-items:center;gap:8px;margin:18px 0 10px;display:flex}.reference-day-section-head i{background:var(--terracotta);border-radius:3px;width:8px;height:8px}.reference-day-section.tone-blue .reference-day-section-head i{background:var(--cobalt)}.reference-day-section.tone-sage .reference-day-section-head i,.reference-day-section.available .reference-day-section-head i{background:var(--olive)}.reference-day-section-head strong{color:var(--ink);font-weight:800}.reference-day-section-head span{color:var(--muted-2);font-size:.78rem}.reference-day-list{gap:9px;display:grid}.reference-day-list button{border:1px solid var(--sand);background:var(--surface);text-align:left;cursor:pointer;border-radius:15px;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;display:grid}.reference-day-list button.needs-room{background:#fffbf1f0;border-color:#d9a44161}.reference-day-list button>span{min-width:44px;min-height:44px;color:var(--terracotta);background:#c0432f1f;border-radius:12px;place-items:center;font-weight:800;display:grid}.reference-day-list .reference-day-room-tile{background:color-mix(in srgb, var(--room-accent,var(--terracotta)) 16%, #fff 84%);color:var(--room-accent,var(--terracotta))}.reference-day-list .reference-day-room-tile.warn{color:#8f641f;background:#d9a4412e}.reference-day-list strong,.reference-day-list small{display:block}.reference-day-list strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.reference-day-list small,.reference-day-list em,.reference-day-list p{color:var(--muted);font-size:.78rem;font-style:normal}.reference-day-subline{color:var(--muted);margin-top:2px;font-size:.76rem;display:block}.reference-day-chip-row{flex-wrap:wrap;align-items:center;gap:6px;min-width:0;margin-top:7px;display:flex}.reference-day-chip-row .chip,.reference-day-payment,.reference-day-status{border-radius:999px;align-items:center;min-height:22px;padding:3px 8px;font-size:.68rem;font-style:normal;font-weight:800;line-height:1;display:inline-flex}.reference-day-chip-row .chip{color:#fff}.reference-day-payment{color:var(--muted);background:#7b70681f}.reference-day-payment.ok{color:var(--success);background:#57735b24}.reference-day-payment.warn{color:#8f641f;background:#d9a44133}.reference-day-payment.danger{color:var(--danger);background:#be50381f}.reference-day-status{color:var(--ink);background:#e7d6bf73}.reference-day-action,.reference-day-auto{border-radius:10px;justify-content:center;align-self:stretch;align-items:center;min-width:58px;padding:0 10px;font-weight:800;display:inline-flex}.reference-day-action{background:var(--terracotta);color:#fff!important}.reference-day-auto{background:#1f5fbf1f;color:var(--cobalt)!important}.reference-available-zone-list{gap:12px;display:grid}.reference-available-zone-list>div>span{margin-bottom:7px;font-size:.78rem;font-weight:800;display:block}.reference-available-zone-list>div>div{flex-wrap:wrap;gap:8px;display:flex}.reference-available-zone-list button{min-height:39px;color:var(--olive);cursor:pointer;background:#dbe7da99;border:1px solid #3e6b4f38;border-radius:12px;align-items:center;gap:6px;padding:0 13px;display:inline-flex}.reference-mobile-home{padding-bottom:92px}.reference-mobile-hero{background:linear-gradient(168deg, var(--terracotta), var(--clay));color:#fff;padding:18px 18px 22px;position:relative;overflow:hidden}.reference-mobile-hero-pattern{opacity:.6;background-image:radial-gradient(circle,#ffffff21 0 2.4px,#0000 3.4px),radial-gradient(circle at 0 0,#ffffff17 0 1.8px,#0000 2.8px);background-position:0 0,13px 13px;background-size:26px 26px;position:absolute;inset:0}.reference-mobile-hero:after{content:"";background:repeating-conic-gradient(#ffffff1c 0 7deg, transparent 7deg 15deg);border-radius:999px;width:210px;height:210px;position:absolute;top:-70px;right:-70px}.reference-mobile-brand,.reference-mobile-copy,.reference-mobile-actions{z-index:1;position:relative}.reference-mobile-brand{align-items:center;gap:9px;display:flex}.reference-mobile-brand span{background:#ffffff29;border-radius:9px;place-items:center;width:30px;height:30px;display:grid}.reference-mobile-brand strong{margin-right:auto;font-size:1.05rem}.reference-mobile-brand a,.reference-auth-chip{color:#fff;background:#ffffff24;border:1px solid #ffffff4d;border-radius:999px;align-items:center;min-height:38px;padding:0 14px;font-size:.82rem;font-weight:800;display:inline-flex}.reference-auth-chip{text-overflow:ellipsis;white-space:nowrap;max-width:136px;font-style:normal;overflow:hidden}.reference-mobile-copy{gap:5px;margin-top:18px;display:grid}.reference-mobile-copy span{color:#ffffffc7;font-size:.86rem}.reference-mobile-copy small{color:#fff;background:#ffffff24;border-radius:999px;justify-self:start;padding:4px 10px;font-weight:700}.reference-mobile-copy h1{color:#fff;margin:0;font-size:1.65rem;line-height:1.25}.reference-mobile-actions{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.reference-mobile-actions button{color:#fff;white-space:nowrap;background:#ffffff1f;border:1px solid #ffffff4d;border-radius:13px;flex:calc(50% - 4px);justify-content:center;align-items:center;gap:7px;min-width:0;min-height:42px;padding:0 12px;font-weight:800;display:inline-flex}.reference-mobile-actions button:first-child{color:var(--clay);background:#fff;border:0}.reference-mobile-stripe{height:6px;display:flex}.reference-mobile-stripe i{flex:1}.reference-mobile-stripe i:first-child{background:var(--marigold)}.reference-mobile-stripe i:nth-child(2){background:var(--olive)}.reference-mobile-stripe i:nth-child(3){background:var(--magenta)}.reference-mobile-stripe i:nth-child(4){background:var(--cobalt)}.reference-mobile-stripe i:nth-child(5){background:var(--clay)}.reference-mobile-stats{grid-template-columns:repeat(3,1fr);gap:10px;padding:18px 16px 4px;display:grid}.reference-mobile-stats button{border:1px solid var(--sand);background:var(--surface);text-align:left;border-radius:16px;gap:7px;min-height:96px;padding:12px;display:grid;position:relative}.reference-mobile-stats button>span{width:28px;height:28px;color:var(--olive);background:#3e6b4f24;border-radius:9px;place-items:center;display:grid}.reference-mobile-stats button.tone-terra>span{color:var(--terracotta);background:#c0432f1f}.reference-mobile-stats button.tone-blue>span{color:var(--cobalt);background:#2e5e8c24}.reference-mobile-stats button.tone-gold>span{color:var(--marigold);background:#d2962a2e}.reference-mobile-stats button.tone-alert>span{color:var(--danger);background:#f1d6d6e6}.reference-mobile-stats strong{color:var(--ink);font-size:1.65rem;line-height:1}.reference-mobile-stats small{color:var(--muted);font-size:.72rem}.reference-mobile-stats i{background:currentColor;border-radius:999px;width:7px;height:7px;position:absolute;top:18px;right:14px}.reference-mobile-section{padding:0 16px}.reference-mobile-section-head{align-items:center;gap:8px;margin:22px 0 12px;display:flex}.reference-mobile-section-head i{background:var(--marigold);width:8px;height:8px;transform:rotate(45deg)}.reference-mobile-section-head strong{color:var(--ink);font-family:var(--heading-font);font-size:1.08rem}.reference-mobile-section-head span{color:var(--muted-2);font-size:.76rem}.reference-attention-list,.reference-upcoming-groups{gap:10px;display:grid}.reference-attention-item{border:1px solid var(--sand);background:var(--surface);border-radius:16px;padding:14px}.reference-attention-item.danger{background:#f1d6d685;border-color:#9e1b2a3d}.reference-attention-item.system-critical{background:#ffeee8f5;border-width:2px;border-color:#9e1b2a99;box-shadow:0 14px 30px #9e1b2a24}.reference-attention-item strong{color:var(--danger)}.reference-attention-item.system-critical strong{color:#8f1d21;letter-spacing:0;font-size:1.02rem;line-height:1.25;display:block}.reference-attention-item p{color:var(--muted);margin:6px 0 10px;font-size:.82rem}.reference-attention-item.system-critical p{color:#5f2a25;font-size:.92rem;font-weight:800}.reference-attention-actions{gap:8px;display:flex}.reference-attention-actions button,.reference-attention-item button{background:var(--danger);color:#fff;border:0;border-radius:11px;min-height:36px;padding:0 13px;font-weight:800}.reference-attention-actions button{flex:1}.reference-attention-actions button.secondary{color:var(--ink);background:#fffdf8d1;border:1px solid #e3d4b6cc}.desktop-attention-card .reference-attention-actions{margin-top:10px}.desktop-attention-card .reference-attention-actions button{min-height:34px;font-size:.78rem}.reference-upcoming-group>div:first-child{align-items:center;gap:8px;margin-bottom:9px;display:flex}.reference-upcoming-group>div:first-child:after{content:"";background:var(--sand);flex:1;height:1px}.reference-upcoming-group>div:first-child strong{color:var(--ink);font-size:.82rem}.reference-upcoming-group>div:first-child span{color:var(--muted-2);order:3;font-size:.74rem}.reference-upcoming-group button{border:1px solid var(--sand);background:var(--surface);text-align:left;border-radius:16px;align-items:center;gap:12px;width:100%;min-height:72px;margin-bottom:9px;padding:13px;display:flex}.reference-upcoming-group button div{gap:4px;min-width:0;margin-right:auto;display:grid}.reference-upcoming-group strong,.reference-upcoming-group small,.reference-upcoming-group b{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.reference-upcoming-group small,.reference-upcoming-group em{color:var(--muted);font-size:.78rem;font-style:normal}.reference-upcoming-group button.needs-room{background:#fffbf1f5;border-color:#d2962a61}.reference-upcoming-meta,.reference-upcoming-chip-row{flex-wrap:wrap;align-items:center;gap:6px;min-width:0;display:flex}.reference-upcoming-room{max-width:128px;min-height:24px;color:var(--cactus);background:#2f6f571f;border-radius:8px;align-items:center;padding:3px 9px;font-size:.78rem;font-weight:800;display:inline-flex}.reference-upcoming-room.warn{color:#8f641f;background:#d9a44133}.reference-upcoming-chip-row .chip,.reference-upcoming-payment,.reference-upcoming-price,.reference-upcoming-warning{border-radius:999px;align-items:center;min-height:23px;padding:3px 8px;font-size:.68rem;font-style:normal;font-weight:800;line-height:1;display:inline-flex}.reference-upcoming-chip-row .chip{color:#fff}.reference-upcoming-payment{color:var(--muted);background:#7b70681f}.reference-upcoming-payment.ok{color:var(--success);background:#57735b24}.reference-upcoming-payment.warn{color:#8f641f;background:#d9a44133}.reference-upcoming-payment.danger{color:var(--danger);background:#be50381f}.reference-upcoming-price{color:var(--ink);background:#e7d6bf7a}.reference-upcoming-warning{max-width:100%;color:var(--danger);white-space:normal;background:#be50381a;justify-self:start}.reference-upcoming-action{background:var(--terracotta);border-radius:11px;align-self:stretch;align-items:center;padding:0 12px;font-weight:800;display:inline-flex;color:#fff!important}.desktop-calendar-screen .command-timeline-wrap{border-top:1px solid var(--sand);background:var(--cream);border-radius:0}.desktop-calendar-screen .command-timeline{box-shadow:none;border:0;border-radius:0}@media (min-width:1024px){.desktop-reference-command{grid-template-columns:minmax(0,1.58fr) minmax(320px,390px);gap:24px;max-width:1180px;margin:0 auto;padding:28px 36px 40px;overflow-y:auto}.desktop-home-main,.desktop-attention-rail{overflow:visible}.desktop-command-dashboard{gap:24px;max-width:none;margin:0}.desktop-attention-rail{padding-top:252px}}@media (max-width:639px){.reference-calendar-head.mobile{padding:8px 16px 12px}.reference-calendar-head.mobile .reference-calendar-title h1{font-size:1.38rem}.reference-calendar-head.mobile .reference-calendar-title{gap:8px}.reference-calendar-head.mobile .reference-calendar-tools{gap:6px}.reference-calendar-head.mobile .reference-today-button{white-space:nowrap;border-radius:10px;justify-content:center;gap:5px;width:auto;min-height:32px;padding:0 12px;font-size:.78rem}.reference-calendar-head.mobile .reference-week-strip{padding-top:10px}.reference-calendar-head.mobile .reference-calendar-segbar{background:#fffdf86b;border:1px solid #e3d4b6b8;border-radius:17px;gap:2px;margin-top:10px;padding:3px;overflow:visible;box-shadow:inset 0 1px #ffffff73}.reference-calendar-head.mobile .reference-calendar-segbar button{color:#7b7068;border:1px solid #0000;border-radius:13px;min-height:32px;font-size:.78rem}.reference-calendar-head.mobile .reference-calendar-segbar button:last-child{border-right:1px solid #0000}.reference-calendar-head.mobile .reference-calendar-segbar button.active{color:var(--ink);background:#fffdf8f5;border-color:#d2962ae6;box-shadow:0 2px 8px #78572a1a,inset 0 0 0 1px #ffffffb8}.reference-mobile-calendar{padding-bottom:82px}.reference-mobile-calendar .command-timeline-wrap{max-height:58vh;margin:0 12px 16px}.reference-mobile-calendar .reference-timeline-legend{flex-wrap:wrap;gap:6px 10px;margin:0 16px 6px;padding:0;font-size:.68rem}.reference-mobile-calendar .reference-timeline-legend span{gap:4px}.reference-mobile-calendar .reference-timeline-legend i{border-radius:3px;width:10px;height:10px}.reference-mobile-calendar .reference-timeline-legend em{text-align:right;flex:1 0 100%;margin-left:0;font-size:.66rem}.reference-mobile-calendar .mobile-room-timeline-wrap{height:clamp(280px, calc(100dvh - var(--mobile-bottom-nav-clearance) - 280px), 464px);max-height:calc(100dvh - var(--mobile-bottom-nav-clearance) - 248px);min-height:0;margin-bottom:calc(var(--mobile-bottom-nav-clearance) + 12px);overscroll-behavior:contain;border-radius:14px;scroll-padding-bottom:18px;box-shadow:0 1px 2px #2a20170a}.reference-mobile-calendar .mobile-room-timeline{background:#fffbf1f0}.reference-mobile-calendar .mobile-room-timeline .command-row{min-height:34px}.reference-mobile-calendar .mobile-room-timeline .command-header{background:#fbf4e5fa;min-height:42px}.reference-mobile-calendar .mobile-room-timeline .type-row{min-height:24px}.reference-mobile-calendar .mobile-room-timeline .room-row,.reference-mobile-calendar .mobile-room-timeline .empty-cell{min-height:34px}.reference-mobile-calendar .mobile-room-timeline .command-room{text-align:left;padding:3px 4px;font-size:.7rem}.reference-mobile-calendar .mobile-room-timeline .command-room span{display:none}.reference-mobile-calendar .mobile-room-timeline .type-row .timeline-type-label{white-space:nowrap;background:#f8f1e7f0;border-right:0;align-items:center;gap:5px;width:164px;padding-left:8px;display:flex}.reference-mobile-calendar .mobile-room-timeline .type-row .timeline-type-label span{max-width:126px;color:var(--muted);text-overflow:ellipsis;font-size:.58rem;display:inline;overflow:hidden}.reference-mobile-calendar .mobile-room-timeline .command-date{gap:0;padding:4px 1px;font-size:.58rem}.reference-mobile-calendar .mobile-room-timeline .command-date strong{font-size:.76rem;line-height:1}.reference-mobile-calendar .mobile-room-timeline .command-date small{display:none}.reference-mobile-calendar .mobile-room-timeline .command-date.selected,.reference-mobile-calendar .mobile-room-timeline .command-cell.selected{background:#c46a4a1f}.reference-mobile-calendar .mobile-room-timeline .command-booking,.reference-mobile-calendar .mobile-room-timeline .timeline-maintenance-block{height:20px;min-height:20px;box-shadow:none;border-radius:6px;margin:7px 1px;padding:0 4px}.reference-mobile-calendar .mobile-room-timeline .command-booking{color:var(--terracotta);background:#c46a4a21;border:1px solid #c46a4a57;border-left:3px solid;align-items:center;display:flex}.reference-mobile-calendar .mobile-room-timeline .command-booking strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.58rem;line-height:1;overflow:hidden}.reference-mobile-calendar .mobile-room-timeline .command-booking span,.reference-mobile-calendar .mobile-room-timeline .timeline-maintenance-block em{display:none}.reference-mobile-calendar .mobile-room-timeline .command-booking.source-agoda{color:var(--teal);background:#3c7c7624;border-color:#3c7c7657}.reference-mobile-calendar .mobile-room-timeline .command-booking.source-google-calendar{color:var(--cobalt);background:#1f5fbf1f;border-color:#1f5fbf52}.reference-mobile-calendar .mobile-room-timeline .command-booking.source-walk-in,.reference-mobile-calendar .mobile-room-timeline .command-booking.source-line{color:var(--olive);background:#67735a29;border-color:#67735a57}.reference-mobile-calendar .mobile-room-timeline .command-booking.source-direct,.reference-mobile-calendar .mobile-room-timeline .command-booking.source-other{color:#7b7068;background:#8b7c6c21;border-color:#8b7c6c52}.reference-mobile-calendar .mobile-room-timeline .command-booking.timeline-conflict{color:var(--danger);background:#b6533a1f;border-color:#9e1b2a94}.reference-mobile-calendar .mobile-room-timeline .command-booking.payment-paid{border-left-color:var(--olive)}.reference-mobile-calendar .mobile-room-timeline .command-booking.payment-deposit_paid,.reference-mobile-calendar .mobile-room-timeline .command-booking.payment-partial{border-left-color:var(--marigold)}.reference-mobile-calendar .mobile-room-timeline .command-booking.payment-unpaid,.reference-mobile-calendar .mobile-room-timeline .command-booking.payment-unknown,.reference-mobile-calendar .mobile-room-timeline .command-booking.payment-pay_at_hotel{border-left-color:var(--terracotta)}.reference-mobile-calendar .mobile-room-timeline .timeline-maintenance-block{border-width:1px;gap:0}.reference-mobile-calendar .mobile-room-timeline .timeline-maintenance-block span{font-size:.58rem}}@media (min-width:1200px){.app-shell{grid-template-columns:252px minmax(0,1fr)}}.reference-bookings-page,.page-grid{max-width:1180px;margin:0 auto;padding:28px 36px 40px}.reference-bookings-panel{gap:18px;display:grid}.reference-page-header h1{color:var(--ink);font-family:var(--heading-font);margin:0;font-size:1.75rem;line-height:1.1}.reference-page-header p,.reference-inline-message{color:var(--muted-2);margin:4px 0 0;font-size:.82rem}.reference-bookings-page .reference-page-header p{text-transform:none}.reference-booking-tools{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.reference-search-field{border:1px solid var(--sand);background:var(--surface);width:min(320px,100%);min-height:43px;color:var(--muted-2);border-radius:13px;align-items:center;gap:9px;padding:0 13px;display:flex}.reference-search-field input{width:100%;min-width:0;color:var(--ink);background:0 0;border:0;outline:0}.reference-chip-scroll{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.chip.active,.reference-chip-scroll .chip.active{border-color:var(--terracotta);background:var(--terracotta);color:#fff}.reference-chip-scroll .booking-admin-chip{display:none}.reference-booking-admin-tools{align-items:center;gap:8px;min-height:34px;display:flex}.reference-booking-admin-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.reference-booking-admin-tools .booking-admin-chip{min-height:34px;color:var(--muted);padding:6px 11px}.reference-booking-admin-tools .booking-admin-chip:hover{color:var(--terracotta)}.bookings-table-wrap{border:1px solid var(--sand);background:var(--surface);border-radius:18px;overflow:hidden}.bookings-table-wrap table{border-collapse:collapse;width:100%}.bookings-table-wrap th{color:var(--muted-2);letter-spacing:.03em;text-align:left;text-transform:uppercase;padding:14px;font-size:.72rem}.bookings-table-wrap td{border-top:1px solid var(--sand-soft);color:var(--ink);padding:13px 14px;font-size:.84rem}.bookings-table-wrap tbody tr{cursor:pointer}.bookings-table-wrap tbody tr:hover{background:var(--inset)}.booking-guest-cell{align-items:center;gap:10px;min-width:172px;display:flex}.booking-guest-cell small{color:var(--muted-2);margin-top:2px;font-size:.72rem;display:block}.booking-guest-avatar{width:34px;height:34px;color:var(--clay);background:#c46a4a1f;border:1px solid #c46a4a42;border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:.82rem;font-weight:800;display:inline-flex}.booking-room-pill{min-height:28px;color:var(--ink);background:#2f6f5714;border:1px solid #2f2a251a;border-radius:999px;align-items:center;padding:0 10px;font-weight:800;display:inline-flex}.booking-room-pill.warn{color:var(--clay);background:#d9a44126;border-color:#d9a44173}.booking-mobile-card{border-color:var(--sand);background:var(--surface)}.reference-bookings-header{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;display:grid}.reference-bookings-header .button{white-space:nowrap;justify-content:center;min-width:120px}.booking-mobile-card-top{grid-template-columns:42px minmax(0,1fr) auto auto;align-items:center;gap:10px;display:grid}.booking-mobile-avatar{width:42px;height:42px;color:var(--clay);background:#c0432f1f;border:1px solid #c0432f24;border-radius:999px;place-items:center;font-weight:850;display:inline-grid}.booking-mobile-card-identity{gap:2px;min-width:0;display:grid}.booking-mobile-card-identity strong,.booking-mobile-card-identity span,.booking-mobile-card-stay span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.booking-mobile-card-identity span{color:var(--muted);font-size:.78rem}.booking-mobile-card-stay{background:var(--inset);width:max-content;max-width:100%;color:var(--muted);border-radius:10px;align-items:center;gap:6px;padding:7px 10px;font-size:.82rem;display:inline-flex}.booking-mobile-card-meta{align-items:center;gap:8px;min-width:0;display:flex}.booking-mobile-card-bottom{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.booking-mobile-card-bottom>strong{color:var(--ink);white-space:nowrap;margin-left:auto;font-size:.92rem}.reference-bookings-page .chip[class*=source-],.booking-mobile-card .chip[class*=source-],.booking-detail-chip-row .chip[class*=source-]{box-shadow:none;color:var(--ink);border:1px solid #0000;align-items:center;gap:5px;display:inline-flex}.reference-bookings-page .chip[class*=source-]:before,.booking-mobile-card .chip[class*=source-]:before,.booking-detail-chip-row .chip[class*=source-]:before{content:"";opacity:.78;background:currentColor;border-radius:999px;width:6px;height:6px}.reference-bookings-page .chip.source-agoda,.booking-mobile-card .chip.source-agoda,.booking-detail-chip-row .chip.source-agoda{color:#9a6518;background:#d2962a29;border-color:#d2962a40}.reference-bookings-page .chip.source-google-calendar,.booking-mobile-card .chip.source-google-calendar,.booking-detail-chip-row .chip.source-google-calendar{color:#2e5e8c;background:#2e5e8c24;border-color:#2e5e8c40}.reference-bookings-page .chip.source-direct,.reference-bookings-page .chip.source-other,.booking-mobile-card .chip.source-direct,.booking-mobile-card .chip.source-other,.booking-detail-chip-row .chip.source-direct,.booking-detail-chip-row .chip.source-other{color:var(--olive);background:#3e6b4f21;border-color:#3e6b4f38}.reference-bookings-page .chip.source-facebook,.reference-bookings-page .chip.source-phone,.booking-mobile-card .chip.source-facebook,.booking-mobile-card .chip.source-phone,.booking-detail-chip-row .chip.source-facebook,.booking-detail-chip-row .chip.source-phone{color:var(--terracotta);background:#c0432f21;border-color:#c0432f38}.reference-bookings-page .chip.source-walk-in,.reference-bookings-page .chip.source-line,.booking-mobile-card .chip.source-walk-in,.booking-mobile-card .chip.source-line,.booking-detail-chip-row .chip.source-walk-in,.booking-detail-chip-row .chip.source-line{color:var(--olive);background:#3e6b4f21;border-color:#3e6b4f38}@media (max-width:639px){.reference-bookings-page,.page-grid{max-width:none;padding:8px 16px 92px}.reference-page-header h1{font-size:1.4rem}.reference-bookings-header{grid-template-columns:minmax(0,1fr) auto;display:grid}.reference-bookings-header .button{min-width:82px;min-height:44px;padding-inline:14px}.reference-bookings-page{gap:12px;display:grid}.reference-bookings-panel{gap:12px;min-width:0}.reference-bookings-header{gap:10px}.reference-bookings-header h1{font-size:1.28rem}.reference-bookings-header p{font-size:.76rem}.booking-create-desktop-word,.booking-admin-chip{display:none!important}.reference-booking-admin-tools{display:none}.reference-booking-tools{gap:10px;display:grid}.reference-search-field{width:100%}.reference-chip-scroll{scrollbar-width:none;flex-wrap:nowrap;padding-bottom:3px;overflow-x:auto}.reference-chip-scroll::-webkit-scrollbar{display:none}.reference-chip-scroll .chip{flex:none}.reference-bookings-page .chip,.booking-mobile-card .chip,.booking-room-pill{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:100%;overflow:hidden}.booking-mobile-list{gap:9px;padding-bottom:12px}.booking-mobile-card{border-radius:16px;gap:10px;min-width:0;padding:12px}.booking-mobile-card-top{grid-template-columns:40px minmax(0,1fr) auto;grid-template-areas:"avatar identity warning""room room room";align-items:center;gap:8px 10px}.booking-mobile-avatar{grid-area:avatar;width:40px;height:40px}.booking-mobile-card-identity{grid-area:identity}.booking-mobile-card-top>.booking-room-pill{grid-area:room;justify-self:start;min-height:26px;padding-inline:9px;font-size:.78rem}.booking-mobile-card-top>svg{color:var(--danger);flex:none;grid-area:warning;justify-self:end}.booking-mobile-card-meta{gap:8px;display:grid}.booking-mobile-card-stay{justify-content:flex-start;width:100%;max-width:none;padding:7px 9px}.booking-mobile-card-bottom{flex-wrap:wrap;align-items:flex-start;gap:6px;min-width:0;display:flex}.booking-mobile-card-bottom>strong{color:var(--ink);text-align:right;flex:1 0 100%;margin-left:0;padding-top:1px}.booking-mobile-card p{color:var(--danger);background:#b6533a1a;border-radius:11px;margin:0;padding:8px 9px;line-height:1.35}.booking-mobile-list-footer{min-height:54px;color:var(--muted);place-items:center;padding:5px 0 12px;font-size:.78rem;font-weight:750;display:grid}.booking-mobile-list-footer.done span{text-align:center;background:#fffdf86b;border:1px dashed #6b5a4342;border-radius:14px;width:100%;padding:11px 12px}.booking-mobile-load-more{justify-content:center;gap:8px;width:100%}.booking-mobile-load-more span{color:var(--muted);font-size:.72rem}.bookings-table-wrap{display:none}}:root{--cream:#eee1c9;--surface:#fbf4e5;--surface-strong:#f7eeda;--sand:#e3d4b6;--terracotta:#c0432f;--clay:#992f1f;--olive:#3e6b4f;--cactus:#3e6b4f;--teal:#2e5e8c;--cobalt:#2e5e8c;--marigold:#d2962a;--ink:#2a2017;--muted:#6b5a43;--danger:#9e1b2a;--success:#3e6b4f;--inset:#f0e5cc;--soft-red:#f3d9cc;--soft-green:#dbe7da;--soft-blue:#d6e1ec;--soft-gold:#f4e6c5;--shadow:0 1px 2px #2a20170a, 0 16px 34px -22px #2a201757;--font-thai:"Noto Sans Thai", "IBM Plex Sans Thai", "Anuphan", "Inter", system-ui, sans-serif}body{background:radial-gradient(circle at 18px 18px,#c0432f14 0 1.4px,#0000 1.8px 30px),linear-gradient(#eee1c9 0%,#f3ead8 52%,#eee1c9 100%)}.app-shell{background:0 0;grid-template-columns:218px minmax(0,1fr)}.main-area{padding:22px 22px 24px}.sidebar{background:#fbf4e59e;border-right:1px solid #e3d4b6b8;padding:18px 14px;box-shadow:inset -1px 0 #ffffff3d}.brand-mark{background:radial-gradient(circle at 88% 8%, #d2962a3d, transparent 34%), radial-gradient(circle at 16px 16px, #ffffff1f 0 2px, transparent 3px 24px), linear-gradient(160deg, var(--terracotta), var(--clay));color:#fff;border:1px solid #ffffff38;border-radius:28px;gap:6px;padding:18px;position:relative;overflow:hidden;box-shadow:0 18px 40px -28px #992f1fbf}.brand-mark img{background:#ffffff29;border-radius:12px;width:38px;height:38px;padding:6px}.brand-mark span{color:#ffffffc7}.nav-list{gap:10px}.nav-link{min-height:46px;color:var(--muted);border:1px solid #0000;border-radius:16px;padding:11px 13px}.nav-link:hover,.nav-link.active{color:var(--terracotta);background:#c0432f1a;border-color:#c0432f1f}.topbar,.calendar-toolbar,.card,.command-timeline-wrap,.calendar-overview,.operations-panel,.mobile-filter-sheet,.bottom-sheet,.create-modal,.search-screen{box-shadow:var(--shadow);background:#fbf4e5f0;border-color:#e3d4b6eb}.topbar,.calendar-toolbar{border-radius:26px}.booking-detail-overlay .booking-detail-mobile-sheet{background:var(--surface)}.topbar-title h1,.toolbar-title h1,.panel-header h2,.overview-header h2{color:var(--ink);font-weight:760}.button,.chip,.toolbar-date,.command-search,.calendar-toolbar select,.field input,.field select,.field textarea,.room-tabs button,.segmented{background:#fffbf1db;border-color:#e3d4b6f2}.button{border-radius:14px;min-height:40px;font-weight:650}.button.primary{border-color:var(--terracotta);background:linear-gradient(160deg, var(--terracotta), var(--clay));color:#fff;box-shadow:0 14px 26px -18px #992f1fcc}.button.ghost{background:#ffffff3d}.chip.active,button.chip.active,.room-tabs button.active,.segmented button.active{color:var(--terracotta);background:#c0432f1f;border-color:#c0432f47}.chip.ok{color:var(--success);background:#dbe7dab8;border-color:#3e6b4f3d}.chip.warn{color:#8c6416;background:#f4e6c5d1;border-color:#d2962a57}.chip.danger,.conflict-message{color:var(--danger);background:#f1d6d6b8;border-color:#9e1b2a47}.desktop-command{grid-template-columns:minmax(0,1fr) minmax(300px,322px);gap:18px}.desktop-reference-command{grid-template-rows:auto auto minmax(0,1fr);grid-template-columns:minmax(0,1.6fr) minmax(360px,416px);overflow:hidden}.desktop-home-main,.desktop-attention-rail{min-width:0;overflow:auto}.desktop-reference-command>.desktop-home-main,.desktop-command-dashboard{display:contents}.desktop-dashboard-header{grid-area:1/1/auto/-1;justify-content:space-between;align-items:flex-end;gap:18px;display:flex}.desktop-dashboard-header span{color:var(--muted);font-size:.86rem;font-weight:650}.desktop-dashboard-header h1{color:var(--ink);letter-spacing:0;margin:4px 0 0;font-size:clamp(1.75rem,3vw,2.25rem);line-height:1.18}.desktop-vacancy-callout{text-align:right;gap:2px;min-width:118px;display:grid}.desktop-vacancy-callout strong{color:var(--olive);font-size:2rem;line-height:1}.desktop-vacancy-callout span{color:var(--muted);font-size:.78rem}.desktop-kpi-row{grid-area:2/1/auto/-1;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;display:grid}.desktop-upcoming-column{grid-area:3/1;align-content:start;gap:18px;min-width:0;display:grid}.desktop-kpi-card{min-height:130px;color:var(--ink);text-align:left;cursor:pointer;background:#fffbf1eb;border:1px solid #e3d4b6eb;border-radius:17px;gap:9px;padding:16px;display:grid;position:relative;box-shadow:0 1px 2px #2a20170a}.desktop-kpi-card>span{width:32px;height:32px;color:var(--olive);background:#3e6b4f24;border-radius:10px;place-items:center;display:grid}.desktop-kpi-card.tone-terra>span{color:var(--terracotta);background:#c0432f1f}.desktop-kpi-card.tone-blue>span{background:var(--soft-blue);color:var(--cobalt)}.desktop-kpi-card.tone-gold>span{background:var(--soft-gold);color:var(--marigold)}.desktop-kpi-card.tone-alert>span{color:var(--danger);background:#f1d6d6e6}.desktop-kpi-card strong{font-size:2rem;line-height:1}.desktop-kpi-card small{color:var(--muted);font-size:.78rem}.desktop-kpi-card.has-alert{border-color:#d2962a75}.desktop-kpi-card.has-alert.tone-alert{border-color:#9e1b2a57}.desktop-kpi-card i{background:currentColor;border-radius:999px;width:8px;height:8px;position:absolute;top:16px;right:16px}.desktop-section-heading{align-items:center;gap:9px;margin-top:4px;display:flex}.desktop-section-heading>span{background:var(--marigold);width:9px;height:9px;transform:rotate(45deg)}.desktop-section-heading strong{color:var(--ink);font-size:1.12rem}.desktop-section-heading small{color:#a28f6c}.desktop-arrival-groups{gap:18px;display:grid}.desktop-arrival-group{gap:9px;display:grid}.desktop-arrival-group-head{align-items:center;gap:9px;display:flex}.desktop-arrival-group-head:after{content:"";background:#e3d4b6f2;flex:1;height:1px}.desktop-arrival-group-head strong{color:var(--ink);font-size:.86rem}.desktop-arrival-group-head span{color:#a28f6c;order:3;font-size:.76rem}.desktop-arrival-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.desktop-arrival-card{min-height:72px;color:var(--ink);text-align:left;background:#fffbf1eb;border:1px solid #e3d4b6eb;border-radius:15px;align-items:center;gap:12px;padding:13px;display:flex}.desktop-arrival-card.needs-room{background:#fffbf1f5;border-color:#d9a44161}.arrival-avatar{color:#fff;border-radius:999px;place-items:center;width:40px;height:40px;font-weight:800;display:grid}.desktop-arrival-card div{gap:5px;min-width:0;margin-right:auto;display:grid}.desktop-arrival-meta{align-items:center;gap:7px;min-width:0;display:flex}.desktop-arrival-meta b,.desktop-arrival-meta small{border-radius:8px;align-items:center;min-height:23px;padding:3px 8px;font-size:.74rem;line-height:1;display:inline-flex}.desktop-arrival-meta b{max-width:116px;color:var(--cactus);background:#2f6f571f;font-weight:800}.desktop-arrival-meta b.warn{color:var(--cobalt);background:#1f5fbf1f}.desktop-arrival-meta small{color:var(--muted);background:#e7d6bf6b;font-weight:750}.desktop-arrival-action{background:var(--terracotta);border-radius:10px;justify-content:center;align-items:center;min-height:30px;padding:0 11px;font-weight:800;display:inline-flex;color:#fff!important}.desktop-arrival-card strong,.desktop-arrival-card span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.desktop-arrival-card span,.desktop-arrival-card small{color:var(--muted);font-size:.78rem}.desktop-dashboard-actions{flex-wrap:wrap;gap:10px;display:flex}.desktop-attention-rail{grid-area:3/2;align-content:start;gap:14px;padding-top:0;display:grid}.desktop-attention-list{gap:11px;display:grid}.desktop-attention-card{background:#fffbf1eb;border:1px solid #e3d4b6eb;border-radius:17px;gap:8px;padding:15px;display:grid}.desktop-attention-card div{align-items:center;gap:8px;display:flex}.desktop-attention-card p{color:var(--muted);margin:0;font-size:.83rem;line-height:1.45}.desktop-attention-card.danger{color:var(--danger);background:#f1d6d67a;border-color:#9e1b2a3d}.desktop-attention-card.system-critical{background:#ffeee8f5;border-width:2px;border-color:#9e1b2a99;box-shadow:0 16px 34px #9e1b2a24}.desktop-attention-card.system-critical strong{color:#8f1d21;letter-spacing:0;font-size:.98rem;line-height:1.25}.desktop-attention-card.system-critical p{color:#5f2a25;font-weight:800}.desktop-attention-card.calm{color:var(--muted);text-align:center}.desktop-rail-actions{gap:9px;display:grid}.desktop-calendar-screen{grid-template-rows:auto minmax(0,1fr);gap:14px;height:100vh;padding:22px 24px 24px;display:grid;overflow:hidden}.desktop-calendar-screen>*{min-width:0}.desktop-calendar-screen .reference-calendar-head{width:100%;min-width:0;overflow:hidden}.desktop-calendar-screen .reference-week-strip,.desktop-calendar-screen .reference-calendar-segbar,.desktop-calendar-screen .reference-timeline-legend{width:100%;max-width:100%}.desktop-calendar-screen .calendar-toolbar{margin:0}.desktop-calendar-screen .command-timeline-wrap,.desktop-calendar-screen .calendar-overview{min-height:0}.desktop-calendar-screen .command-timeline{background:var(--cream);min-width:1194px!important}.desktop-calendar-screen .command-date{gap:1px;padding:5px 0 6px}.desktop-calendar-screen .command-date small{display:none}.desktop-calendar-screen .room-row{min-height:38px}.desktop-calendar-screen .room-row .command-room{padding-block:6px}.desktop-calendar-screen .room-row .command-room span{display:none}.desktop-calendar-screen .empty-cell{min-height:38px}.desktop-calendar-screen .command-booking,.desktop-calendar-screen .timeline-maintenance-block{border-radius:8px;min-height:26px;margin:5px 3px;padding:4px 7px}.desktop-calendar-screen .command-booking{align-items:center;display:flex}.desktop-calendar-screen .command-booking strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.72rem;overflow:hidden}.reference-timeline-legend{color:var(--muted);align-items:center;gap:16px;padding:10px 0 6px;font-size:.78rem;display:flex}.reference-timeline-legend span{align-items:center;gap:6px;display:inline-flex}.reference-timeline-legend i{border:1px solid;border-radius:4px;width:12px;height:12px}.reference-timeline-legend i.paid{border-color:var(--olive);background:#3e6b4f1f}.reference-timeline-legend i.conflict{border-color:var(--danger);background:#b6533a14}.reference-timeline-legend i.closed{border-style:dashed;border-color:var(--clay);background:repeating-linear-gradient(45deg,#a5523c14 0 5px,#0000 5px 10px)}.reference-timeline-legend em{color:#a28f6c;margin-left:auto;font-style:normal}.desktop-calendar-screen .command-row{min-height:36px;grid-template-columns:50px repeat(26,44px)!important}.desktop-calendar-screen .command-header{background:var(--cream);min-height:66px}.desktop-calendar-screen .type-row{min-height:28px}.desktop-calendar-screen .room-row,.desktop-calendar-screen .empty-cell{min-height:36px}.desktop-calendar-screen .command-room{text-align:center;padding:4px 6px;font-size:.78rem}.desktop-calendar-screen .timeline-corner{background:var(--cream)}.desktop-calendar-screen .command-room span{display:none}.desktop-calendar-screen .type-row .command-room{text-align:left;white-space:nowrap;background:#f8f1e7db;border-right:0;justify-content:flex-start;align-items:center;gap:6px;width:220px;padding-left:16px;font-size:.72rem;display:flex;overflow:visible}.desktop-calendar-screen .timeline-type-label strong{color:currentColor;align-items:center;gap:5px;min-width:18px;font-weight:850;display:inline-flex}.desktop-calendar-screen .timeline-type-label strong:before{content:"";background:currentColor;border-radius:2px;width:7px;height:7px}.desktop-calendar-screen .timeline-type-label span{color:#a28f6c;font-size:.72rem;font-weight:500;display:inline}.desktop-calendar-screen .command-date{background:#f8f1e7ad;gap:1px;padding:5px 0;font-size:.7rem}.desktop-calendar-screen .command-date strong{color:var(--ink);font-size:.92rem;line-height:1}.desktop-calendar-screen .command-date small{color:#a28f6c;font-size:.62rem;line-height:1}.desktop-calendar-screen .command-date.selected,.desktop-calendar-screen .command-cell.selected{background:#c46a4a1c}.desktop-calendar-screen .command-booking{height:26px;min-height:26px;color:var(--ink);border:1.5px solid #2f2a251f;border-left:3px solid;border-radius:8px;margin:5px 2px;padding:0 6px;box-shadow:0 1px 2px #2c28230f}.desktop-calendar-screen .command-booking strong{font-size:.72rem}.desktop-calendar-screen .command-booking span{display:none}.desktop-calendar-screen .command-booking.source-agoda{color:var(--teal);background:#3c7c7629;border-color:#3c7c7657}.desktop-calendar-screen .command-booking.source-facebook,.desktop-calendar-screen .command-booking.source-phone{color:var(--terracotta);background:#c46a4a26;border-color:#c46a4a57}.desktop-calendar-screen .command-booking.source-google-calendar{color:var(--cobalt);background:#1f5fbf24;border-color:#1f5fbf52}.desktop-calendar-screen .command-booking.source-walk-in,.desktop-calendar-screen .command-booking.source-line{color:var(--olive);background:#67735a29;border-color:#67735a57}.desktop-calendar-screen .command-booking.source-direct,.desktop-calendar-screen .command-booking.source-other{color:#7b7068;background:#8b7c6c21;border-color:#8b7c6c52}.desktop-calendar-screen .command-booking.timeline-conflict{color:var(--danger);background:#b6533a1f;border-color:#9e1b2a94}.desktop-calendar-screen .command-booking.payment-paid{border-left-color:var(--olive)}.desktop-calendar-screen .command-booking.payment-deposit_paid,.desktop-calendar-screen .command-booking.payment-partial{border-left-color:var(--marigold)}.desktop-calendar-screen .command-booking.payment-unpaid,.desktop-calendar-screen .command-booking.payment-unknown,.desktop-calendar-screen .command-booking.payment-pay_at_hotel{border-left-color:var(--terracotta)}.timeline-maintenance-block{z-index:2;height:26px;color:var(--clay);cursor:pointer;background:repeating-linear-gradient(45deg,#a5523c1a 0 5px,#f8f1e7b8 5px 10px);border:1.5px dashed #7b70689e;border-radius:8px;align-self:center;align-items:center;gap:5px;margin:5px 2px;padding:0 7px;display:inline-flex;overflow:hidden}.timeline-maintenance-block span,.timeline-maintenance-block em{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.timeline-maintenance-block span{font-size:.7rem;font-weight:800}.timeline-maintenance-block em{color:#7b7068;font-size:.68rem;font-style:normal;font-weight:650}.room-row.is-closed .command-room strong{color:var(--muted-2)}.room-row.is-closed .empty-cell,.empty-cell.disabled{cursor:not-allowed;background:repeating-linear-gradient(45deg,#a5523c14 0 6px,#f8f1e7b8 6px 12px)}.timeline-closed-row{z-index:2;min-height:100%;color:var(--muted);pointer-events:none;background:repeating-linear-gradient(45deg,#a5523c14 0 6px,#f8f1e7c2 6px 12px);border-bottom:1px solid #e3d4b6b8;align-items:center;display:flex;overflow:hidden}.timeline-closed-row span{z-index:1;color:var(--muted);white-space:nowrap;padding:0 8px;font-size:.72rem;font-weight:800;position:sticky;left:8px}.operations-panel{background:linear-gradient(#3e6b4f14,#0000 28%),#fbf4e5f2}.upcoming-stay-card{background:linear-gradient(135deg,#2e5e8c1a,#d2962a1f),#fffbf1eb;border-color:#2e5e8c38}.upcoming-icon{background:var(--soft-blue);color:var(--cobalt)}.ops-metric,.month-day,.year-card,.agenda-card,.booking-mobile-card,.room-select-card,.room-card-list-item,.room-card-preview-pane,.room-card-editor,.room-card-list{background:#fffbf1eb;border-color:#e3d4b6eb}.command-booking{border-radius:15px;box-shadow:0 8px 20px -14px #2a201773}.command-booking.status-checked_in{border-color:#326f55b8;box-shadow:inset 0 0 0 1px #326f55b8,0 10px 22px -14px #326f558c}.source-agoda{background:var(--marigold)}.source-facebook,.source-phone{background:var(--terracotta)}.source-google-calendar{background:var(--cobalt)}.source-walk-in,.source-line{background:var(--olive)}.login-page{background:radial-gradient(circle at 96% 14%, #ffffff24 0 2px, transparent 3px 18px), radial-gradient(circle at 78% 16%, #d2962a38, transparent 22%), radial-gradient(circle at 18px 18px, #ffffff1f 0 2px, transparent 3px 25px), linear-gradient(160deg, var(--terracotta), var(--clay));position:relative;overflow:hidden}.login-page:after{content:"";opacity:.12;background:repeating-conic-gradient(from 0deg, #fffdf8f2 0 7deg, transparent 7deg 14deg);pointer-events:none;border-radius:50%;width:150px;height:150px;position:fixed;top:48px;right:36px}.login-auth-shell{z-index:1;gap:18px;width:min(412px,100%);display:grid;position:relative}.login-hero-copy{color:#fff;gap:10px;display:grid}.login-hero-brand{align-items:center;gap:10px;width:fit-content;display:inline-flex}.login-hero-brand .brand-symbol{color:#fff;width:40px;height:40px;box-shadow:none;background:#fffdf829}.login-hero-brand strong{font-family:var(--font-heading);letter-spacing:0;font-size:1.08rem}.login-hero-copy p{color:#fffdf8d1;margin:0;font-size:.92rem}.login-hero-copy h1{color:#fff;margin:0;font-size:1.55rem;line-height:1.18}.login-card{background:#fbf4e5f5;border:0;border-radius:22px;width:100%;padding:20px;box-shadow:0 30px 60px -34px #2a2017b3}.login-card h1{color:var(--terracotta);margin:0}.login-brand{background:radial-gradient(circle at 16px 16px, #ffffff24 0 2px, transparent 3px 24px), linear-gradient(160deg, var(--terracotta), var(--clay))}.login-role-divider{color:#a28f6c;align-items:center;gap:12px;font-size:.8rem;display:flex}.login-role-divider:before,.login-role-divider:after{content:"";background:var(--sand);flex:1;height:1px}.login-role-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.login-role-grid button{border:1px solid var(--sand);background:var(--surface);min-height:56px;color:var(--ink);text-align:left;cursor:pointer;border-radius:15px;align-items:center;gap:10px;padding:10px;font-family:inherit;display:flex}.login-role-grid span{background:var(--terracotta);color:#fff;border-radius:999px;flex:none;place-items:center;width:34px;height:34px;font-size:.82rem;font-weight:850;display:inline-grid}.login-role-grid strong{font-size:.84rem;line-height:1.2}.login-guest-link{color:#fff;background:#fffdf814;border:1px solid #fffdf857;border-radius:15px;justify-content:center;align-items:center;gap:9px;min-height:48px;padding:12px 16px;font-weight:800;text-decoration:none;display:inline-flex}.login-footnote{color:#fffdf8b8;text-align:center;justify-self:center;width:min(360px,100%);margin:-4px 0 0;font-size:.76rem;line-height:1.45}.calendar-login-overlay{z-index:120;padding:48px 24px max(48px, env(safe-area-inset-bottom));background:radial-gradient(circle at 50% 50%, #ffffff1f 0 2.4px, transparent 3.4px), radial-gradient(circle at 0 0, #ffffff14 0 1.8px, transparent 2.8px), linear-gradient(168deg, var(--terracotta) 0%, var(--clay) 92%);background-position:0 0,13px 13px,50%;background-size:26px 26px,26px 26px,auto;justify-content:center;align-items:center;display:flex;position:fixed;inset:0;overflow-y:auto}.calendar-login-overlay:after{content:"";background:repeating-conic-gradient(#ffffff1a 0 7deg, transparent 7deg 15deg);pointer-events:none;border-radius:999px;width:210px;height:210px;position:fixed;top:40px;right:-70px}.calendar-login-panel{width:min(460px,100%);max-height:none;box-shadow:none;background:0 0;border:0;border-radius:0;padding:0;overflow:visible}.calendar-login-close{z-index:2;color:#fff;cursor:pointer;background:#fffdf824;border:1px solid #fffdf842;border-radius:999px;justify-self:end;place-items:center;width:42px;height:42px;margin:-4px -2px -6px 0;display:inline-grid;position:sticky;top:0}.calendar-login-guest{cursor:pointer;border:1px solid #fffdf857;font-family:inherit}@media (min-width:768px){.calendar-login-overlay{padding:32px}.calendar-login-panel{width:min(460px,100%)}}.mobile-command-hero{background:radial-gradient(circle at 88% 12%, #d2962a47, transparent 26%), linear-gradient(164deg, var(--terracotta), var(--clay));color:#fff;padding:14px 18px 18px;position:relative;overflow:hidden}.mobile-command-hero-pattern{opacity:.42;background-image:radial-gradient(circle at 50% 50%, #ffffff2b 0 2px, transparent 3px), repeating-conic-gradient(from 8deg at 86% 8%, #ffffff1a 0 8deg, transparent 8deg 16deg);background-position:0 0,right -72px top -76px;background-size:26px 26px,210px 210px;position:absolute;inset:0}.mobile-hero-topline,.mobile-hero-copy,.mobile-hero-actions{position:relative}.mobile-hero-topline{justify-content:space-between;align-items:center;gap:10px;display:flex}.mobile-hero-brand{align-items:center;gap:9px;display:flex}.mobile-hero-brand span{background:#ffffff29;border-radius:10px;place-items:center;width:30px;height:30px;font-weight:800;display:grid}.mobile-hero-brand strong{font-size:1.05rem}.mobile-hero-tools{gap:7px;display:flex}.hero-icon-button{color:#fff;background:#ffffff24;border:1px solid #ffffff47;border-radius:999px;place-items:center;width:38px;height:38px;display:grid}.mobile-hero-copy{gap:5px;margin-top:17px;display:grid}.mobile-hero-copy span,.mobile-hero-copy small{color:#ffffffc7}.mobile-hero-copy strong{font-size:1.48rem;line-height:1.25}.mobile-hero-actions{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.hero-action{color:#fff;background:#ffffff24;border:1px solid #ffffff47;border-radius:14px;align-items:center;gap:7px;min-height:44px;padding:10px 15px;font-weight:700;display:inline-flex}.hero-action.primary{color:var(--clay);background:#fff;border-color:#fff}@media (max-width:639px){body{background:var(--cream)}.main-area{background:var(--cream);padding:0}.mobile-command{background:linear-gradient(180deg, #eee1c9e6, #eee1c9), var(--cream);min-height:100vh}.mobile-bottom-nav{min-height:70px;padding:8px 8px calc(8px + env(safe-area-inset-bottom));background:#fbf4e5f5;border-color:#e3d4b6f2;grid-template-columns:repeat(5,minmax(0,1fr));box-shadow:0 -10px 28px -22px #2a201780}.mobile-nav-link{color:#a28f6c;border-radius:16px;min-height:52px;position:relative}.mobile-nav-link.active{color:var(--terracotta)}.mobile-nav-fab{background:linear-gradient(160deg, var(--terracotta), var(--clay));color:#fff;border-radius:20px;place-self:start center;width:58px;min-height:58px;margin-top:-26px;box-shadow:0 12px 24px -12px #992f1fcc}.mobile-nav-fab span{display:none}.mobile-status-strip,.date-strip{z-index:2;background:0 0;border-bottom:0;position:relative;top:auto}.mobile-status-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:14px 16px 4px}.mobile-status-card{background:#fffbf1eb;border-radius:16px;min-height:100px;padding:12px;box-shadow:0 1px 2px #2a20170a}.mobile-status-card svg{width:28px;height:28px;color:var(--olive);background:#3e6b4f1f;border-radius:9px;padding:5px}.mobile-status-card strong{font-size:1.65rem;line-height:1}.mobile-command .upcoming-stay-card{background:#fffbf1f0;border-radius:18px;margin:12px 16px 0}.mobile-calendar-screen{background:var(--cream);min-height:100vh;padding-bottom:88px}.reference-mobile-calendar .reference-day-board{padding:0 16px 112px}.reference-mobile-calendar .reference-day-summary{margin-top:2px;box-shadow:0 1px 2px #2a20170a}.reference-mobile-calendar .reference-day-columns{gap:10px;margin-top:14px}.reference-mobile-calendar .reference-day-section-head{margin:18px 0 10px}.reference-mobile-calendar .reference-day-list button{background:#fffbf1f0;grid-template-columns:46px minmax(0,1fr) auto;min-height:72px;box-shadow:0 1px 2px #2a20170a}.reference-mobile-calendar .reference-day-list em{color:var(--terracotta);white-space:nowrap;background:#c0432f1f;border-radius:9px;align-self:center;padding:5px 9px;font-weight:800}.reference-mobile-calendar .reference-day-section.tone-blue .reference-day-list em{color:var(--cobalt);background:#2e5e8c21}.reference-mobile-calendar .reference-day-section.tone-sage .reference-day-list em{color:var(--olive);background:#3e6b4f21}.reference-mobile-calendar .reference-available-zone-list button{border-radius:12px;min-height:42px;padding:9px 12px}.mobile-calendar-head{justify-content:space-between;align-items:flex-start;gap:12px;padding:18px 16px 8px;display:flex}.mobile-calendar-head h1{color:var(--ink);margin:0;font-size:1.7rem;line-height:1.15}.mobile-calendar-head p{color:var(--muted);margin:3px 0 0;font-size:.82rem}.mobile-calendar-head .hero-icon-button{border-color:var(--sand);background:var(--surface);color:var(--ink)}.mobile-view-switcher{border:1px solid var(--sand);background:var(--inset);border-radius:17px;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;margin:12px 16px 0;padding:4px}.mobile-view-switcher button{background:0 0;border:0;border-radius:13px;min-height:40px}.mobile-view-switcher button.active{color:var(--terracotta);background:#fffbf1eb;box-shadow:0 1px 4px #2a201714}.date-strip{padding:12px 16px 4px}.date-strip button{background:#fffbf1eb;border-radius:15px;flex-basis:50px;min-height:68px}.date-strip button.selected{border-color:var(--terracotta);background:var(--terracotta);color:#fff;box-shadow:none}.date-strip button.selected span,.date-strip button.selected strong{color:#fff}.date-strip button.today:not(.selected){color:var(--terracotta);border-color:#c0432f5c}.date-strip i{background:var(--olive)}.mobile-agenda{gap:16px;padding:15px 16px 110px}.mobile-section h2{align-items:center;gap:8px;font-weight:760;display:flex}.mobile-section h2:before{content:"";background:var(--terracotta);border-radius:3px;width:8px;height:8px}.agenda-card,.booking-mobile-card{background:#fffbf1f0;border-radius:17px;box-shadow:0 1px 2px #2a20170a}.reference-bookings-page .booking-mobile-list{gap:10px}.reference-bookings-page .booking-mobile-card{gap:8px;min-height:98px;padding:11px 12px}.reference-bookings-page .booking-mobile-card-top{grid-template-columns:40px minmax(0,1fr) auto;grid-template-areas:"avatar identity warning""room room room";gap:8px 10px}.reference-bookings-page .booking-mobile-card-meta{grid-template-columns:minmax(0,1fr);gap:8px;display:grid}.reference-bookings-page .booking-mobile-card-stay{width:100%;min-width:0;padding:6px 8px;font-size:.76rem}.reference-bookings-page .booking-mobile-card-bottom{flex-wrap:wrap;gap:6px;min-width:0}.reference-bookings-page .booking-mobile-card-bottom .chip{white-space:nowrap;min-height:0;padding:4px 8px;font-size:.72rem;line-height:1.1}.reference-bookings-page .booking-mobile-card-bottom>strong{text-align:right;flex:1 0 100%;font-size:.88rem}.agenda-card{min-height:82px;padding:13px 14px 13px 44px}.source-dot{border-radius:6px;width:16px;height:16px;top:18px;left:17px}.available-room-grid button{background:#fffbf1f0;border-radius:15px;min-height:64px}.fab{display:none}.page-grid{padding:0 0 96px}.card{border-radius:22px}.card.pad{padding:18px}}@media (min-width:640px){.brand-mark:not(.login-brand){color:var(--ink);box-shadow:none;background:0 0;border:0;border-radius:0;grid-template-columns:40px minmax(0,1fr);gap:11px;padding:0 8px 4px;display:grid}.brand-mark:not(.login-brand) img{background:linear-gradient(160deg, var(--terracotta), var(--clay));border-radius:13px;grid-row:1/span 2;width:40px;height:40px;padding:8px}.brand-mark:not(.login-brand) span{color:#a28f6c;grid-column:2;font-size:.72rem}.brand-mark:not(.login-brand) strong{white-space:nowrap;grid-column:2;align-self:end;line-height:1.08}}@media (max-width:1439px) and (min-width:1024px){.desktop-reference-command{grid-template-columns:minmax(0,1fr);height:auto;overflow:auto}.desktop-home-main,.desktop-attention-rail{overflow:visible}.desktop-attention-rail{padding-top:0}}@media (max-width:1199px) and (min-width:640px){.desktop-kpi-row{grid-template-columns:repeat(3,minmax(0,1fr))}.desktop-arrival-card-grid{grid-template-columns:1fr}}@media (min-width:1024px){.app-shell{grid-template-columns:252px minmax(0,1fr);height:100vh;min-height:100vh;overflow:hidden}.main-area:has(.desktop-reference-command){padding:0;overflow:hidden}.main-area:has(.desktop-calendar-screen.reference-calendar-screen){padding:0;overflow:hidden}.main-area:has(.reference-bookings-page){padding:0;overflow:hidden}:is(.main-area:has(.reference-rooms-page),.main-area:has(.reference-import-page),.main-area:has(.reference-reports-page),.main-area:has(.reference-settings-page)){padding:0;overflow:hidden}.reference-rooms-page,.reference-import-page,.reference-reports-page,.reference-settings-page{box-sizing:border-box;height:100vh;padding:8px 16px 16px;overflow-y:auto}.reference-rooms-page>.reference-page-header h1,.reference-import-page>.reference-page-header h1,.reference-reports-page>.reference-page-header h1,.reference-settings-page>.reference-page-header h1{letter-spacing:-.4px;font-size:22px;font-weight:750}.reference-rooms-page>.reference-page-header,.reference-import-page>.reference-page-header,.reference-reports-page>.reference-page-header,.reference-settings-page>.reference-page-header{min-height:51px}.reference-rooms-page>.reference-page-header>div>span,.reference-import-page>.reference-page-header>div>span,.reference-reports-page>.reference-page-header>div>span,.reference-settings-page>.reference-page-header>div>span{margin-top:1px;font-size:12.5px;display:block}.reference-rooms-page .room-ops-overview{margin-top:10px}.reference-import-page{gap:0}.reference-import-page .reference-import-banner{margin-top:14px}.reference-import-page .reference-source-grid{gap:10px;margin-top:14px}.reference-import-page .reference-source-card{height:140px;min-height:0}.reference-import-page .reference-import-history{margin-top:24px}.reference-reports-page{gap:14px}.reference-reports-page .reference-page-header{gap:0}.reference-reports-page .report-range-button{min-height:36px}.reference-bookings-page .reference-bookings-header{min-height:64px}.desktop-calendar-screen.reference-calendar-screen{gap:0;padding:0}.desktop-calendar-screen.reference-calendar-screen .reference-calendar-head{box-sizing:border-box;height:auto;min-height:0;padding:8px 16px 10px;overflow:visible}.desktop-calendar-screen.reference-calendar-screen .reference-week-strip{padding:12px 0 17px}.desktop-calendar-screen.reference-calendar-screen .reference-calendar-segbar{box-sizing:border-box;margin:8px 2px 0;padding:3px}.desktop-calendar-screen.reference-calendar-screen .reference-calendar-segbar button{min-height:34px}.desktop-calendar-screen.reference-calendar-screen .reference-today-button{justify-content:center;width:72px;height:35px;min-height:35px;padding:0}.sidebar{background:#fbf4e5d1;border-bottom:0;border-right:1px solid #e3d4b6eb;min-height:100vh;padding:22px 16px 16px}.brand-mark:not(.login-brand){align-items:center;gap:11px;place-items:initial;display:flex}.brand-mark:not(.login-brand) .brand-symbol{color:#fff;flex:0 0 40px;width:40px;height:40px;display:inline-flex}.brand-mark:not(.login-brand) .brand-copy{gap:2px;min-width:0;display:grid}.brand-mark:not(.login-brand) .brand-copy strong,.brand-mark:not(.login-brand) .brand-copy small,.nav-link span{display:block}.brand-mark:not(.login-brand) .brand-copy strong{color:var(--ink);white-space:nowrap;grid-column:auto;place-self:auto start;font-size:.96rem;line-height:1.08}.brand-mark:not(.login-brand) .brand-copy small{color:#a28f6c;white-space:nowrap;grid-column:auto;place-self:auto start;font-size:.72rem;line-height:1.1}.nav-list{gap:3px;margin-top:24px;display:grid;overflow:visible}.nav-link{border:0;border-radius:12px;justify-content:flex-start;min-height:42px;padding:11px 12px;font-size:.91rem}.sidebar-create{min-height:42px}}@media (max-width:639px){.create-modal.mobile-full{z-index:80;padding:18px 20px calc(86px + env(safe-area-inset-bottom));background:var(--surface);box-shadow:none;flex-direction:column;gap:12px;display:flex}.create-modal.mobile-full .section-header{z-index:8;background:var(--surface);padding:2px 0 10px;position:sticky;top:0}.create-modal.mobile-full .wizard-steps{z-index:7;background:var(--surface);margin:0 -2px 4px;padding:6px 0 8px;position:sticky;top:64px}.create-modal.mobile-full .wizard-panel{min-height:0}.create-modal.mobile-full .wizard-actions{z-index:9;padding:10px 14px calc(10px + env(safe-area-inset-bottom));border-top:1px solid var(--sand);background:#fbf4e5fa;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -16px 28px -26px #2a2017b3}.create-modal.mobile-full .selected-basket,.create-modal.mobile-full .selected-basket.inline{bottom:86px}.create-modal.mobile-full .drawer-backdrop{display:none}}.create-modal.reference-create{z-index:80;background:var(--surface-strong);border:0;border-radius:22px;flex-direction:column;width:min(560px,100vw - 48px);height:auto;max-height:92vh;padding:0;display:flex;top:50%;left:50%;right:auto;overflow:hidden;transform:translate(-50%,-50%);box-shadow:0 24px 70px #221e1a57}.reference-sheet-header{flex:none;padding:18px 20px 8px}.reference-sheet-header h2{font-size:1.35rem}.reference-create-body{gap:12px;min-height:0;padding:8px 20px 20px;display:grid;overflow-y:auto}.reference-date-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.reference-guest-row{align-items:flex-end;gap:10px;display:flex}.reference-guest-row p{color:var(--muted);flex:1;margin:0 0 11px;font-size:.82rem}.reference-stepper{border:1px solid var(--sand);background:var(--surface);border-radius:13px;flex:1;grid-template-columns:1fr 42px minmax(76px,1fr) 42px;align-items:center;display:grid;overflow:hidden}.reference-stepper span{color:var(--muted);padding-left:12px;font-size:.8rem;font-weight:700}.reference-stepper strong{color:var(--ink);justify-self:center}.reference-stepper button{background:var(--inset);min-height:42px;color:var(--ink);border:0;font-size:1.3rem}.reference-section-title{gap:3px;margin-top:8px;display:grid}.reference-section-title strong{color:var(--ink);font-size:.95rem}.reference-section-title span{color:#a28f6c;font-size:.78rem}.reference-room-groups{gap:12px;display:grid}.reference-room-group{gap:7px;display:grid}.reference-room-group-head{color:var(--muted);align-items:center;gap:6px;font-size:.78rem;display:flex}.reference-room-group-head i{background:var(--terracotta);border-radius:2px;width:7px;height:7px}.reference-room-group-head i[data-zone=B]{background:var(--olive)}.reference-room-group-head i[data-zone=F]{background:var(--cobalt)}.reference-room-group-head i[data-zone=T]{background:var(--marigold)}.reference-room-group-head strong{color:var(--muted)}.reference-room-group-head span{color:#a28f6c}.reference-room-chip-grid{flex-wrap:wrap;gap:8px;display:flex}.reference-room-chip-grid-legacy{display:flex}.reference-card-room-groups{gap:12px}.create-modal.reference-create .reference-room-card-grid{display:none}.reference-room-card-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;display:grid}.create-modal.reference-create .reference-basket-shell{display:block}.reference-basket-shell{background:linear-gradient(180deg, #fffdf800, var(--surface-strong) 30%);flex:none;padding:10px 20px 0}.reference-basket-shell .selected-basket{box-shadow:none;margin:0;position:static}.reference-room-chip{border:1.5px solid var(--sand);background:var(--surface);min-height:40px;color:var(--ink);cursor:pointer;border-radius:11px;padding:9px 13px;position:relative}.reference-room-chip strong{color:inherit;font-size:.95rem}.reference-room-chip.selected{border-color:var(--terracotta);background:var(--terracotta);color:#fff}.reference-room-chip.selected[data-zone=B]{border-color:var(--olive);background:var(--olive)}.reference-room-chip.selected[data-zone=F]{border-color:var(--cobalt);background:var(--cobalt)}.reference-room-chip.selected[data-zone=T]{border-color:var(--marigold);background:var(--marigold)}.reference-room-chip.disabled{background:var(--inset);color:#a28f6c;cursor:not-allowed;border-style:dashed;-webkit-text-decoration:line-through #9e1b2ab3;text-decoration:line-through #9e1b2ab3}.reference-room-chip em{background:var(--danger);color:#fff;border-radius:999px;padding:1px 6px;font-size:.56rem;font-style:normal;font-weight:800;text-decoration:none;position:absolute;top:-7px;right:-5px}.reference-import-note{background:var(--inset);color:var(--muted);border-radius:12px;align-items:flex-start;gap:8px;padding:11px;font-size:.78rem;line-height:1.45;display:flex}.reference-import-note svg{color:#a28f6c;flex:none;margin-top:2px}.reference-create-footer{padding:12px 20px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--sand);background:var(--surface);flex:none;gap:10px;display:flex}.reference-create-footer .button.primary{flex:1}.create-modal.reference-create .reference-section-title{grid-template-columns:1fr;gap:3px;margin-top:8px;display:grid}.create-modal.reference-create .reference-section-title strong{color:var(--ink);grid-column:auto;font-size:.95rem}.create-modal.reference-create .reference-section-title>span{width:auto;height:auto;color:var(--muted-2);background:0 0;margin:0;font-size:.78rem;transform:none}.reference-page-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.reference-page-header.compact{margin-bottom:0}.reference-page-header p{color:#a28f6c;letter-spacing:.04em;text-transform:uppercase;margin:0 0 3px;font-size:.75rem;font-weight:800}.reference-page-header h1{color:var(--ink);letter-spacing:0;margin:0;font-size:clamp(1.55rem,3vw,2.15rem)}.reference-page-header span{color:var(--muted);margin-top:4px;font-size:.88rem;display:block}.reference-summary-tiles{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.reference-summary-tiles div,.reference-source-card,.reference-import-banner,.reference-revenue-card{border:1px solid var(--sand);background:var(--surface-strong);box-shadow:0 1px 2px #2a20170a}.reference-summary-tiles div{border-radius:16px;gap:4px;padding:13px 14px;display:grid}.reference-summary-tiles strong{color:var(--ink);font-size:1.45rem;line-height:1}.reference-summary-tiles span{color:var(--muted);font-size:.78rem}.reference-booking-detail{gap:13px}.reference-detail-pills{flex-wrap:wrap;gap:8px;display:flex}.reference-detail-pills .chip{border:0;min-height:26px;padding:4px 9px;font-size:.76rem;font-weight:750}.reference-detail-pills .chip[class*=source-]{color:#fff}.reference-status-confirmation{color:#244f3d;background:#326f551f;border:1px solid #326f5547;border-radius:14px;align-items:center;gap:10px;padding:12px 14px;display:flex}.reference-status-confirmation svg{color:var(--success);flex:none}.reference-status-confirmation span{gap:2px;display:grid}.reference-status-confirmation strong{font-size:.92rem;line-height:1.2}.reference-status-confirmation small{color:var(--muted);font-size:.78rem;line-height:1.35}.reference-payment-panel{background:#fffdf8eb;border:1px solid #e3d4b6e6;border-radius:16px;gap:12px;padding:14px}.reference-payment-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.reference-payment-summary span{background:var(--surface);color:var(--muted);border:1px solid #e3d4b6c7;border-radius:12px;gap:3px;padding:9px 10px;font-size:.76rem;display:grid}.reference-payment-summary strong{color:var(--ink);font-size:.9rem}.button.danger,.button.ghost.danger{color:var(--danger);border-color:#b6533a42}.delete-booking-button{white-space:nowrap;justify-content:center;align-items:center;gap:7px;display:inline-flex}.button.success{background:var(--success);color:#fff;border-color:#0000}.button.success:disabled{opacity:.64;cursor:not-allowed}.reference-booking-detail.assign-mode .reference-contact-card,.reference-booking-detail.assign-mode .detail-grid,.reference-booking-detail.assign-mode .reference-payment-warning,.reference-booking-detail.assign-mode>.sheet-actions{display:none}.reference-room-banner,.reference-contact-card,.reference-payment-warning,.reference-menu-action,.reference-alert-card{text-align:left;border-radius:16px;align-items:center;width:100%;font-family:inherit;display:flex}.reference-room-banner{color:var(--ink);cursor:pointer;background:#67735a1f;border:1px solid #67735a38;gap:13px;padding:14px}.reference-room-banner.missing{color:var(--terracotta);background:#c0432f1a;border-style:dashed;border-color:#c0432f61}.reference-room-banner span:nth-child(2){flex:1;gap:2px;display:grid}.reference-room-banner small{color:var(--muted)}.reference-room-action{background:var(--surface);color:var(--olive);border:1px solid #67735a47;border-radius:11px;flex:none;padding:8px 12px;font-size:.78rem;font-style:normal;font-weight:800}.reference-room-banner.missing .reference-room-action{color:var(--terracotta);border-color:#c46a4a4d}.reference-room-badge{background:var(--olive);color:#fff;border-radius:14px;place-items:center;width:48px;height:48px;font-weight:850;display:inline-grid}.reference-room-banner.missing .reference-room-badge{color:var(--terracotta);background:#c0432f24}.reference-contact-card{border:1px solid var(--sand);background:var(--surface-strong);gap:11px;padding:13px}.reference-contact-card>svg{color:var(--olive);flex:none}.reference-contact-card span{flex:1;gap:2px;display:grid}.reference-contact-card small{color:#a28f6c}.reference-payment-warning{color:var(--clay);cursor:pointer;background:#c0432f1a;border:1px solid #c0432f3d;justify-content:space-between;gap:10px;padding:13px}.reference-payment-warning span{flex:1;font-weight:750}@media (max-width:639px){.reference-booking-bottom-sheet.bottom-sheet{background:#fff7e9;border-radius:24px 24px 0 0;flex-direction:column;width:auto;max-height:61.5dvh;padding:0;display:flex;left:8px;right:8px;overflow:hidden;box-shadow:0 -16px 42px #2f2a2533}.reference-booking-bottom-sheet.bottom-sheet:has(.reference-booking-detail.assign-mode){max-height:81.3dvh}.reference-booking-bottom-sheet:before{content:"";background:#7b706847;border-radius:999px;flex:none;width:44px;height:4px;margin:9px auto 6px}.reference-booking-bottom-sheet .reference-booking-detail{flex-direction:column;gap:10px;max-width:100%;min-height:0;padding:0 16px;display:flex;overflow:hidden auto}.reference-booking-bottom-sheet .section-header{align-items:flex-start;gap:10px}.reference-booking-bottom-sheet .section-header h2{font-size:1.12rem;line-height:1.22}.reference-booking-bottom-sheet .reference-detail-pills{gap:7px}.reference-booking-bottom-sheet .reference-room-banner,.reference-booking-bottom-sheet .reference-contact-card,.reference-booking-bottom-sheet .reference-payment-warning{border-radius:14px;padding:11px}.reference-booking-bottom-sheet .reference-room-badge{border-radius:13px;width:44px;height:44px}.reference-booking-bottom-sheet .reference-room-action{padding:7px 10px}.reference-booking-bottom-sheet .detail-grid{border-top:1px solid var(--sand);grid-template-columns:1fr;gap:0}.reference-booking-bottom-sheet .detail-grid>*{border-bottom:1px solid var(--sand);padding:9px 0}.reference-booking-bottom-sheet .detail-grid>:nth-child(6),.reference-booking-bottom-sheet .detail-grid>:nth-child(7),.reference-booking-bottom-sheet .detail-grid>:nth-child(8),.reference-booking-bottom-sheet .detail-grid>:nth-child(9),.reference-booking-bottom-sheet .detail-grid>:nth-child(10){display:none}.reference-booking-bottom-sheet .detail-grid .detail-item,.reference-booking-bottom-sheet .detail-grid>div{min-height:0}.reference-booking-bottom-sheet>.reference-booking-detail>.sheet-actions{z-index:2;padding:12px 16px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--sand);background:linear-gradient(180deg, #fffdf8e0, var(--surface) 28%);grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:10px;margin:4px -16px 0;display:grid;position:sticky;bottom:0}.reference-booking-bottom-sheet>.reference-booking-detail>.sheet-actions .button{justify-content:center;min-height:44px}.reference-booking-bottom-sheet>.reference-booking-detail>.reference-primary-booking-actions .button{display:inline-flex}.reference-booking-bottom-sheet>.reference-booking-detail>.reference-primary-booking-actions .button.ghost{background:var(--surface);color:var(--danger);border-color:var(--sand);order:1}.reference-booking-bottom-sheet>.reference-booking-detail>.reference-primary-booking-actions .button.primary{order:1}.reference-booking-bottom-sheet>.reference-booking-detail>.reference-primary-booking-actions .button.ghost+.button.primary{order:2}.reference-booking-bottom-sheet>.reference-booking-detail>.reference-primary-booking-actions .button.primary:only-child{grid-column:1/-1}.reference-booking-bottom-sheet .booking-action-panel .sheet-actions,.reference-booking-bottom-sheet .reference-assign-footer{z-index:3;padding:12px 16px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--sand);background:var(--surface);margin:10px -16px 0;position:sticky;bottom:0}.reference-booking-bottom-sheet .reference-assign-panel,.reference-booking-bottom-sheet .reference-assign-groups,.reference-booking-bottom-sheet .reference-assign-zone{min-width:0;max-width:100%}.reference-booking-bottom-sheet .reference-assign-dates{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.reference-booking-bottom-sheet .reference-assign-dates .field,.reference-booking-bottom-sheet .reference-assign-dates input[type=date]{width:100%;min-width:0}.reference-booking-bottom-sheet .reference-assign-dates input[type=date]{letter-spacing:0;min-height:42px;padding:8px 7px;font-size:.76rem;line-height:1.2}.reference-booking-bottom-sheet .reference-assign-dates input[type=date]::-webkit-calendar-picker-indicator{width:15px;height:15px;margin-left:2px;padding:0}.reference-booking-bottom-sheet .reference-assign-summary{flex-flow:wrap;align-items:center}.reference-booking-bottom-sheet .reference-assign-summary strong{white-space:nowrap;max-width:100%}.reference-booking-bottom-sheet .reference-assign-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.reference-booking-bottom-sheet .reference-assign-room{border-radius:14px;gap:3px;height:94px;min-height:94px;padding:10px}.reference-booking-bottom-sheet .reference-assign-room strong{font-size:1rem}.reference-booking-bottom-sheet .reference-assign-room small{font-size:.68rem}.reference-booking-bottom-sheet .reference-assign-room b{font-size:.72rem}}@media (min-width:1024px){.desktop-reference-command{grid-template-rows:auto auto auto;align-content:start;overflow-y:auto}.desktop-reference-command>.desktop-home-main,.desktop-reference-command>.desktop-attention-rail{overflow:visible}.desktop-reference-command>.desktop-attention-rail{padding-top:0}.booking-detail-modal.command-drawer{border:1px solid var(--sand);background:var(--surface);border-radius:22px;width:min(560px,100vw - 48px);height:auto;max-height:min(78vh,680px);padding:0;top:50%;left:50%;right:auto;overflow:hidden;transform:translate(-50%,-50%);box-shadow:0 26px 80px #2a201747}.booking-detail-modal.command-drawer:has(.reference-booking-detail.assign-mode){max-height:min(86vh,774px)}.booking-detail-modal .reference-booking-detail{max-height:min(78vh,680px);padding:18px 20px 0;overflow-y:auto}.booking-detail-modal .reference-booking-detail.assign-mode{max-height:min(86vh,774px)}.booking-detail-modal .section-header h2{font-size:1.35rem;line-height:1.25}.booking-detail-modal .section-header>.button.ghost{width:34px;height:34px;min-height:34px;padding:0}.booking-detail-modal .reference-room-banner{padding:14px}.booking-detail-modal .detail-grid{border-top:1px solid var(--sand);grid-template-columns:1fr;gap:0;display:grid}.booking-detail-modal .detail-grid>*{border-bottom:1px solid var(--sand);justify-content:space-between;align-items:center;gap:16px;padding:12px 0;display:flex}.booking-detail-modal .detail-grid p{color:var(--muted);margin:0;font-size:.86rem}.booking-detail-modal .detail-grid strong{color:var(--ink);text-align:right;font-size:.94rem}.booking-detail-modal .reference-detail-note{background:var(--inset);color:var(--muted);border-radius:12px;margin-top:14px;padding:12px;font-size:.86rem;line-height:1.5}.booking-detail-modal .sheet-actions{z-index:1;border-top:1px solid var(--sand);background:linear-gradient(180deg, #fffdf8db, var(--surface) 22%);grid-template-columns:72px 1fr;gap:10px;margin:4px -20px 0;padding:13px 20px 18px;display:grid;position:sticky;bottom:0}.booking-detail-modal .sheet-actions .button{justify-content:center;min-height:46px}.booking-detail-modal .reference-desktop-booking-actions{grid-template-columns:minmax(132px,auto) 1fr}.booking-detail-modal>.reference-booking-detail>.sheet-actions>.button.ghost{flex:0 0 72px}.booking-detail-modal .sheet-actions .button.primary{box-shadow:0 10px 22px #c46a4a33}.booking-detail-modal .booking-action-panel .sheet-actions{background:0 0;border-top:0;grid-template-columns:1fr auto;margin:12px 0 0;padding:0;position:static}.reference-action-modal.command-drawer{border:1px solid var(--sand);background:var(--surface);border-radius:22px;width:min(560px,100vw - 48px);height:auto;max-height:min(74vh,560px);padding:0;top:50%;left:50%;right:auto;overflow:hidden;transform:translate(-50%,-50%);box-shadow:0 26px 80px #2a201747}.reference-action-modal .reference-sheet-header{margin-bottom:0;padding:20px 20px 4px}.reference-action-modal .reference-action-body{max-height:min(58vh,430px);padding:8px 20px 20px;overflow-y:auto}.reference-action-modal .reference-menu-action{border-radius:15px;height:66px;min-height:66px;padding:13px}.reference-action-modal .reference-sheet-header>.button.ghost{width:34px;height:34px;min-height:34px;padding:0}.reference-action-modal .reference-create-footer.inline{background:0 0;border-top:0;margin:0;padding:0}.reference-action-modal .reference-create-footer.inline .button{border-radius:13px;height:46px;min-height:46px;padding:13px 16px}.reference-action-modal .reference-create-footer.inline .button.ghost{flex:0 0 85px}}.reference-action-sheet{padding:0;overflow:hidden}.reference-action-body{gap:12px;padding:10px 20px 20px;display:grid;overflow-y:auto}.reference-menu-stack{gap:10px;display:grid}.reference-menu-action{border:1px solid var(--sand);background:var(--surface-strong);color:var(--ink);cursor:pointer;gap:12px;padding:14px}.reference-menu-action.primary svg{color:var(--terracotta)}.reference-menu-action>span{flex:1;gap:3px;display:grid}.reference-menu-action small{color:var(--muted)}.reference-block-form{gap:12px;display:grid}.reference-existing-block{gap:14px;display:grid}.reference-alert-card{border:1px solid var(--sand);background:var(--inset);align-items:flex-start;gap:10px;padding:13px}.reference-alert-card div{gap:4px;min-width:0;display:grid}.reference-alert-card span,.reference-alert-card a,.reference-alert-card small{color:var(--muted);font-size:.84rem;line-height:1.45}.reference-alert-card small{color:#7b7068d1}.reference-alert-card.ok{color:var(--success);background:#57735b1a;border-color:#57735b47}.reference-alert-card.danger{color:var(--danger);background:#b6533a1a;border-color:#b6533a47}.reference-alert-card.neutral{color:var(--muted)}.reference-unblock-button{justify-content:center;gap:8px;width:100%;min-height:46px}.reference-create-footer.inline{margin:0 -20px -20px}.reference-rooms-page .room-tabs,.reference-source-tabs{background:#fbf4e5b8;border-radius:18px}.reference-import-page,.reference-reports-page,.reference-settings-page,.reference-rooms-page{max-width:1180px;margin:0 auto}.reference-import-page,.reference-reports-page{max-width:940px}.reference-settings-page{gap:12px;max-width:940px}.reference-settings-page .settings-panel{gap:12px;padding:16px}.reference-settings-page .settings-panel>.section-header{margin-bottom:0}.reference-settings-page .settings-panel>.section-header .muted{display:none}.reference-settings-page .settings-hotel-fields,.reference-settings-page .form-grid{gap:10px}.reference-settings-page .form-grid{grid-template-columns:1fr}.reference-settings-page .field{gap:5px}.reference-settings-page .field label{font-size:.78rem;font-weight:700}.reference-settings-page .field input{border-radius:12px;min-height:47px}.reference-settings-page>section.settings-panel:nth-of-type(2){margin-top:14px}.reference-settings-page .settings-actions{margin-top:5px}.reference-rooms-page:not(:has(.room-card-manager)):not(:has(.room-tabs)){max-width:940px}.reference-import-header{grid-template-columns:1fr}.reference-rooms-header,.reference-page-header.has-mobile-back{grid-template-columns:minmax(0,1fr) auto;align-items:start}.reference-mobile-back{font:inherit;cursor:pointer;display:none}.reference-rooms-header .button{white-space:nowrap;justify-content:center;min-width:68px}.reference-rooms-header .button.primary{background:var(--terracotta);color:#fff;border:0}.reference-import-banner{color:var(--muted);background:#57735b1a;border-radius:16px;align-items:center;gap:11px;padding:13px;font-size:.84rem;line-height:1.45;display:flex}.reference-import-banner svg{box-sizing:border-box;width:36px;height:36px;color:var(--olive);background:#57735b21;border-radius:10px;flex:none;padding:8px}.reference-source-grid{gap:12px;display:grid}.reference-source-card{box-sizing:border-box;min-height:138px;color:var(--ink);cursor:pointer;text-align:left;border-radius:18px;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:8px 12px;padding:15px;font-family:inherit;display:grid}.source-icon{color:#fff;border-radius:14px;place-items:center;width:44px;height:44px;font-weight:850;display:inline-grid}.source-icon.google{color:var(--cobalt);background:#2e5e8c24}.source-icon.agoda{color:var(--marigold);background:#d9a4412e}.reference-source-card strong,.reference-source-card small{grid-column:2}.reference-source-card small{color:var(--muted)}.reference-source-card em{color:var(--success);white-space:nowrap;background:#57735b1f;border-radius:999px;grid-area:1/3;place-self:start end;padding:4px 9px;font-size:.72rem;font-style:normal;font-weight:800}.reference-source-card div{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.reference-source-card .source-metric{background:var(--inset);border-radius:12px;gap:1px;min-width:0;padding:9px 11px;display:grid}.reference-source-card .source-metric b{font-size:1.1rem}.reference-source-card .source-metric span{color:var(--muted);font-size:.72rem}.reference-import-history{gap:12px;display:grid}.reference-section-title{grid-template-columns:10px minmax(0,1fr) auto;align-items:start;gap:10px;display:grid}.reference-section-title>span{background:var(--marigold);width:9px;height:9px;margin-top:8px;transform:rotate(45deg)}.reference-section-title h2{color:var(--ink);font-family:var(--heading-font);margin:0;font-size:1.04rem}.reference-section-title p{color:var(--muted-2);margin:4px 0 0;font-size:.82rem}.reference-section-title strong{color:var(--muted-2);font-size:.82rem;font-weight:700}.reference-import-history-list{gap:10px;display:grid}.reference-import-history-row{box-sizing:border-box;border:1px solid var(--sand);background:var(--surface);width:100%;min-height:85px;color:var(--ink);cursor:pointer;text-align:left;border-radius:14px;grid-template-columns:34px minmax(0,1fr) 17px;align-items:center;gap:11px;padding:12px;font-family:inherit;display:grid;box-shadow:0 1px 2px #2a201706}.reference-import-history-icon{color:#fff;border-radius:10px;place-items:center;width:34px;height:34px;font-weight:850;display:inline-grid}.reference-import-history-icon.google{color:var(--cobalt);background:#2e5e8c2e}.reference-import-history-icon.agoda{color:var(--clay);background:#d9a44133}.reference-import-history-main{gap:3px;min-width:0;display:grid}.reference-import-history-main small,.reference-import-history-main strong,.reference-import-history-main em{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.reference-import-history-main small{color:var(--muted-2);align-items:center;gap:7px;font-size:.75rem;font-style:normal;display:flex}.reference-import-source-pill{border-radius:999px;align-items:center;gap:5px;padding:3px 9px;font-size:.68rem;font-weight:800;display:inline-flex}.reference-import-source-pill.google{color:var(--cobalt);background:#2e5e8c24}.reference-import-source-pill.agoda{color:var(--clay);background:#d9a4412e}.reference-import-history-main strong{color:var(--ink);font-size:.93rem}.reference-import-history-main em{color:var(--muted);font-size:.79rem;font-style:normal}.reference-import-history-chevron{color:var(--muted-2);font-size:1.35rem}.reference-import-detail-sheet .reference-payment-warning{margin-top:12px}.reference-preset-row{flex-wrap:wrap;justify-content:flex-end;gap:7px;display:flex}.reference-reports-page .reference-page-header{grid-template-columns:1fr;gap:12px;display:grid}.reference-reports-page .reference-preset-row{grid-template-columns:repeat(4,minmax(0,1fr));justify-content:stretch;width:100%;display:grid}.reference-reports-page .report-range-button{width:100%}.report-range-button{border-radius:12px;justify-content:center;min-height:38px;padding-inline:14px}.report-range-button.active,button.report-range-button.active{background:var(--terracotta);color:#fff;border-color:#c46a4a59}@media (min-width:1024px){.reference-reports-page .reference-page-header{gap:0}.reference-reports-page .report-range-button{min-height:36px}}.reference-report-custom-range{border:1px solid var(--sand);background:#fffdf8c7;border-radius:16px;grid-template-columns:repeat(2,minmax(160px,1fr));gap:10px;padding:12px;display:grid}.reference-report-custom-range label{color:var(--muted);gap:6px;font-size:.78rem;font-weight:700;display:grid}.reference-report-custom-range input{border:1px solid var(--sand);background:var(--surface);min-height:42px;color:var(--ink);border-radius:11px;padding:9px 11px;font-family:inherit}.reference-report-range-apply{display:none}.reference-report-actions{flex-wrap:wrap;align-items:center;gap:9px;display:flex}.reference-report-actions .button{min-height:42px}.reference-report-actions .chip{margin-left:4px}.reference-reports-page .reports-primary-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.reference-reports-page .reports-visual-charts{grid-template-columns:repeat(2,minmax(0,1fr))}.reference-revenue-card{background:linear-gradient(145deg, var(--terracotta), var(--clay));color:#fff;border:0;border-radius:20px;gap:5px;padding:18px;display:grid}.reference-revenue-card span,.reference-revenue-card small{color:#fffc}.reference-revenue-card strong{font-size:clamp(1.8rem,4vw,2.55rem);line-height:1}.reports-visual-charts{align-items:stretch}.reference-report-chart-card{overflow:hidden}.reference-report-chart-head{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:14px;display:flex}.reference-report-chart-head h2{color:var(--ink);font-family:var(--heading-font);margin:0;font-size:1rem}.reference-report-chart-head span{color:var(--muted);white-space:nowrap;font-size:.78rem}.reference-mini-chart svg{width:100%;height:132px;display:block}.reference-chart-labels{color:var(--muted-2);justify-content:space-between;gap:2px;margin-top:7px;font-size:.68rem;display:flex}.reference-chart-labels span{text-align:center;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.reference-mini-bars{gap:7px;display:grid}.reference-mini-bars-track{align-items:flex-end;gap:5px;height:132px;display:flex}.reference-mini-bars-track span{background:linear-gradient(180deg, var(--terracotta), var(--clay));border-radius:5px 5px 2px 2px;flex:1;min-width:4px}.reference-source-breakdown,.reference-source-breakdown-list{gap:12px;display:grid}.reference-source-breakdown-row{gap:7px;display:grid}.reference-source-breakdown-row>div{justify-content:space-between;align-items:center;gap:10px;display:flex}.reference-source-breakdown-row strong{color:var(--ink);white-space:nowrap;font-size:.92rem}.reference-source-breakdown-row small{color:var(--muted);font-size:.74rem;font-weight:600}.reference-report-tools{gap:12px;display:grid}.reference-report-tools-toggle{width:100%;min-height:58px;color:var(--ink);cursor:pointer;text-align:left;background:#fffdf8bd;border:1px solid #e7d6bff2;border-radius:17px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;font-family:inherit;display:flex;box-shadow:0 1px 2px #2a201706}.reference-report-tools-toggle:hover{background:var(--surface);border-color:#c46a4a47}.reference-report-tools-toggle:focus-visible{outline-offset:2px;outline:3px solid #1f5fbf3d}.reference-report-tools-toggle span{gap:3px;min-width:0;display:grid}.reference-report-tools-toggle strong{color:var(--ink);font-size:.94rem;line-height:1.2}.reference-report-tools-toggle small{color:var(--muted);font-size:.76rem;line-height:1.35}.reference-report-tools-toggle em{color:var(--terracotta);white-space:nowrap;background:#c46a4a1f;border-radius:999px;flex:none;padding:7px 10px;font-size:.74rem;font-style:normal;font-weight:850}.reference-report-tools-body{gap:12px;display:grid}.reports-primary-kpis .metric{box-sizing:border-box;background:var(--surface);border-radius:16px;gap:6px;height:98px;min-height:0;padding:14px}.reference-reports-page .reports-primary-kpis .metric .label{font-size:12px;font-weight:500}.reference-reports-page .reports-primary-kpis .metric .value{font-size:23px;line-height:1}.reference-reports-page .reports-primary-kpis .metric .muted{font-size:10.5px!important}@media (min-width:1024px){.reference-reports-page .reports-visual-charts{grid-template-columns:1fr}.reference-revenue-card{box-sizing:border-box;min-height:90px;padding:16px}.reference-revenue-card strong{font-size:30px}}.reports-secondary-kpis{opacity:.9}.reports-secondary-kpis .metric .value{font-size:1.18rem}.reference-settings-page .settings-panel,.reference-reports-page .card,.reference-import-page .card,.reference-rooms-page .card{border-radius:18px;box-shadow:0 1px 2px #2a201709}.room-ops-overview{gap:18px;display:grid}@media (min-width:721px){.reports-mobile-filter-button{display:none!important}}@media (max-width:720px){.reports-desktop-filter-toggle{display:none!important}}.room-ops-summary-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.room-ops-summary-row>div{border:1px solid var(--sand);background:var(--surface);border-radius:14px;padding:12px}.room-ops-summary-row strong{color:var(--ink);font-size:1.35rem;line-height:1;display:block}.room-ops-summary-row span{color:var(--muted-2);margin-top:4px;font-size:.76rem;display:block}.room-ops-groups{gap:18px;display:grid}.room-ops-zone-head{align-items:center;gap:8px;margin-bottom:10px;display:flex}.room-ops-zone-head>span{background:var(--marigold);flex:none;width:9px;height:9px;transform:rotate(45deg)}.room-ops-zone-head strong{color:var(--ink);font-family:var(--heading-font);font-size:1.05rem}.room-ops-zone-head small{color:var(--muted-2);font-size:.78rem}.room-ops-list{gap:9px;display:grid}.room-ops-row{border:1px solid var(--sand);background:var(--surface);width:100%;min-height:70px;color:var(--ink);cursor:pointer;text-align:left;border-radius:15px;align-items:center;gap:12px;padding:12px;display:flex}.room-ops-row.inactive{opacity:.72}.room-ops-code{width:44px;height:44px;color:var(--clay);background:#c46a4a21;border-radius:12px;flex:none;justify-content:center;align-items:center;font-weight:850;display:inline-flex}.room-ops-code[data-zone=B]{color:var(--cactus);background:#2f6f5721}.room-ops-code[data-zone=F]{color:var(--cobalt);background:#1f5fbf1f}.room-ops-code[data-zone=T]{color:var(--clay);background:#a5523c21}.room-ops-main{flex:1;gap:3px;min-width:0;display:grid}.room-ops-main strong,.room-ops-main small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.room-ops-main small{color:var(--muted-2);font-size:.76rem}.room-ops-badge{color:var(--cactus);background:#2f6f571f;border-radius:999px;flex:none;padding:4px 9px;font-size:.7rem;font-weight:800}.room-ops-badge.warn{color:var(--clay);background:#d9a4412e}.room-ops-badge.muted{background:var(--inset);color:var(--muted-2)}.room-ops-chevron{color:var(--muted-2);font-size:1.4rem}.room-quick-edit-overlay{align-items:flex-end}.room-quick-edit-sheet{background:linear-gradient(#fffdf8 0%,#fbf4ea 100%);border-radius:26px 26px 0 0;flex-direction:column;width:min(520px,100vw);max-height:calc(100dvh - 92px);padding:0;display:flex;overflow:hidden}.room-quick-edit-handle{background:#7b706842;border-radius:999px;width:42px;height:5px;margin:10px auto 4px}.room-quick-edit-head{padding:8px 16px 12px}.room-quick-edit-head h2{margin:0;font-size:1.2rem}.room-quick-edit-form{gap:12px;min-height:0;padding:0 16px 10px;display:grid;overflow:auto}.room-quick-section-title{color:var(--ink);margin:10px 0 0;font-size:.9rem;font-weight:900}.room-quick-field{gap:7px;display:grid}.room-quick-field>span{color:var(--ink);justify-content:space-between;align-items:baseline;gap:8px;font-size:.82rem;font-weight:850;display:flex}.room-quick-field>span em{color:var(--muted-2);font-size:.72rem;font-style:normal;font-weight:700}.room-quick-field input{background:var(--surface);width:100%;min-height:44px;color:var(--ink);font:inherit;border:1px solid #e7d6bff2;border-radius:14px;padding:10px 12px;font-weight:760}.room-quick-field input[readonly]{color:var(--muted);background:#f8f1e78c}.room-quick-two-grid,.room-quick-price-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.room-quick-stepper-field{grid-template-columns:minmax(0,1fr)}.room-quick-stepper,.room-quick-status-toggle{background:var(--surface);border:1px solid #e7d6bff2;border-radius:15px;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;min-height:46px;display:grid;overflow:hidden}.room-quick-stepper button,.room-quick-status-toggle button{min-height:44px;color:var(--ink);cursor:pointer;font:inherit;background:0 0;border:0;font-weight:900}.room-quick-stepper strong{text-align:center;font-size:.95rem}.room-quick-status-toggle{grid-template-columns:1fr 1fr;gap:4px;padding:3px}.room-quick-status-toggle button{color:var(--muted);border-radius:12px}.room-quick-status-toggle button.active{color:var(--cactus);background:#2f6f571f}.room-quick-status-toggle button.active.danger{color:var(--danger);background:#b6533a1f}.room-quick-peak-toggle{background:var(--surface);width:100%;min-height:48px;color:var(--ink);font:inherit;text-align:left;cursor:default;border:1px solid #e7d6bff2;border-radius:15px;align-items:center;gap:10px;padding:10px 12px;font-weight:850;display:flex}.room-quick-peak-toggle span{background:#d9a4413d;border-radius:999px;flex:none;width:36px;height:24px;position:relative}.room-quick-peak-toggle span:after{content:"";background:var(--surface);border-radius:999px;width:18px;height:18px;position:absolute;top:3px;left:3px;box-shadow:0 1px 4px #2f2a251f}.room-quick-preview-row{background:#f8f1e79e;border:1px solid #e7d6bff2;border-radius:18px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;display:grid}.room-quick-preview-row div{min-width:0}.room-quick-preview-row strong,.room-quick-preview-row small{display:block}.room-quick-preview-row div strong,.room-quick-preview-row small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.room-quick-preview-row small{color:var(--muted-2);margin-top:3px;font-size:.76rem}.room-quick-edit-actions{padding:12px 16px max(16px, env(safe-area-inset-bottom));margin:0}.room-quick-edit-actions .button{min-height:48px}.room-ops-detail-sheet{width:min(560px,100vw - 28px)}.room-ops-detail-hero{border:1px solid var(--sand);background:linear-gradient(135deg, #c46a4a1f, #1f5fbf14), var(--inset);border-radius:20px;align-items:end;min-height:210px;display:grid;position:relative;overflow:hidden}.room-ops-detail-hero img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.room-ops-detail-hero:after{content:"";pointer-events:none;background:linear-gradient(#0000,#2f2a257a);height:42%;position:absolute;inset:auto 0 0}.room-ops-detail-hero .room-ops-code{z-index:1;margin:14px;position:relative;box-shadow:0 10px 24px #2f2a252e}.room-ops-detail-hero.missing{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;min-height:150px;padding:18px}.room-ops-detail-hero.missing:after{display:none}.room-ops-detail-hero.missing .room-ops-code{margin:0}.room-ops-detail-hero.missing strong,.room-ops-detail-hero.missing small{display:block}.room-ops-detail-hero.missing small{color:var(--muted-2);margin-top:4px}.room-ops-detail-lines{margin-top:12px}.room-ops-primary-actions{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:10px;margin-top:12px;display:grid}.room-ops-primary-actions .button{justify-content:center;min-height:44px}.room-ops-amenities{flex-wrap:wrap;gap:8px;display:flex}.room-ops-amenities span{border:1px solid var(--sand);background:var(--surface);color:var(--ink);border-radius:999px;padding:6px 10px;font-size:.78rem;font-weight:800}.room-ops-block-list,.room-ops-quick-block{border:1px solid var(--sand);background:#fff8ed8f;border-radius:18px;gap:12px;padding:14px;display:grid}.room-ops-block-item{background:var(--surface);border-radius:14px;gap:4px;padding:10px 12px;display:grid}.room-ops-block-item small{color:var(--muted-2)}.room-ops-quick-block label{color:var(--muted-2);gap:6px;font-size:.78rem;font-weight:850;display:grid}.room-ops-quick-block input{border:1px solid var(--sand);background:var(--surface);min-height:42px;color:var(--ink);border-radius:12px}.room-ops-detail-actions,.room-ops-detail-sheet .room-ops-detail-actions{grid-template-columns:1fr}@media (max-width:639px){.room-ops-summary-row{grid-template-columns:repeat(3,minmax(92px,1fr));overflow-x:auto}.room-ops-row{flex-wrap:nowrap;align-items:center;min-height:64px;padding:10px 12px}.room-ops-main{flex:auto;min-width:0}.room-ops-badge{text-overflow:ellipsis;white-space:nowrap;max-width:92px;overflow:hidden}.room-ops-chevron{flex:none;margin-left:-2px}.room-quick-edit-sheet{width:100%;max-height:calc(100dvh - 78px)}.room-quick-price-grid{grid-template-columns:1fr 1fr}.room-ops-detail-sheet{width:100%}.room-ops-detail-hero{border-radius:18px;min-height:178px}.room-ops-primary-actions,.room-ops-detail-actions,.room-ops-detail-sheet .room-ops-detail-actions{grid-template-columns:1fr}}.reference-more-page{gap:14px;max-width:680px;margin:0 auto;padding:22px 18px 100px;display:grid}.reference-more-list{gap:10px;display:grid}.reference-more-card{border:1px solid var(--sand);background:var(--surface-strong);width:100%;min-height:74px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;border-radius:16px;grid-template-columns:44px minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:15px;display:grid;box-shadow:0 1px 2px #2a201709}.reference-more-card>span:nth-child(2){gap:3px;min-width:0;display:grid}.reference-more-card strong,.reference-more-card small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.reference-more-card strong{font-size:.95rem}.reference-more-card small{color:var(--muted);font-size:.78rem}.reference-more-icon{background:var(--inset);border-radius:13px;place-items:center;width:42px;height:42px;display:inline-grid}.reference-more-icon.gold{color:var(--marigold);background:#d2962a24}.reference-more-icon.sage{color:var(--olive);background:#3e6b4f24}.reference-more-icon.blue{color:var(--cobalt);background:#2e5e8c24}.reference-more-icon.terra{color:var(--terracotta);background:#c0432f24}.reference-more-user{background:var(--inset);border-radius:16px;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:10px;margin-top:4px;padding:14px;display:grid}.reference-more-user>span:nth-child(2){gap:2px;min-width:0;display:grid}.reference-more-user strong,.reference-more-user small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.reference-more-user small{color:var(--muted);font-size:.76rem}.reference-more-avatar{color:#fff;background:#9a7d46;border-radius:999px;place-items:center;width:38px;height:38px;font-weight:800;display:inline-grid}.reference-rooms-header .reference-add-label-desktop{color:#fff!important;display:inline!important}.reference-rooms-header .reference-add-label-mobile{color:#fff!important;display:none!important}.booking-action-panel.reference-assign-panel{background:0 0;border:0;border-radius:0;gap:13px;margin-top:0;padding:0}.reference-assign-title{justify-content:space-between;align-items:flex-start;gap:12px;padding:2px 0 1px;display:flex}.reference-assign-title>div{gap:3px;display:grid}.reference-assign-title .button.ghost{flex:0 0 34px;width:34px;height:34px;min-height:34px;padding:0}.reference-assign-title strong{color:var(--ink);font-size:1.02rem}.reference-assign-title span{color:var(--muted);font-size:.78rem;font-weight:650}.reference-assign-dates{grid-template-columns:1fr 1fr;gap:10px;display:grid}.reference-assign-dates .field{min-width:0}.reference-date-control{border:1px solid var(--sand);background:var(--surface);width:100%;min-width:0;min-height:42px;color:var(--ink);box-sizing:border-box;border-radius:13px;grid-template-columns:minmax(0,1fr) 16px;align-items:center;gap:6px;padding:8px 8px 8px 10px;display:grid;position:relative;overflow:hidden}.reference-date-control span{letter-spacing:0;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.78rem;font-weight:760;line-height:1.2;overflow:hidden}.reference-date-control svg{color:var(--muted)}.reference-assign-dates .reference-date-control input[type=date],.reference-booking-bottom-sheet .reference-assign-dates .reference-date-control input[type=date],.booking-detail-mobile-sheet.assign-mode .reference-assign-dates .reference-date-control input[type=date]{opacity:0;color:#0000;cursor:pointer;background:0 0;border:0;width:100%;min-width:0;height:100%;min-height:0;padding:0;position:absolute;inset:0}.reference-assign-dates .reference-date-control input[type=date]::-webkit-calendar-picker-indicator{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;padding:0;position:absolute;inset:0}.reference-booking-bottom-sheet .reference-assign-dates .reference-date-control input[type=date]::-webkit-calendar-picker-indicator{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;padding:0;position:absolute;inset:0}.booking-detail-mobile-sheet.assign-mode .reference-assign-dates .reference-date-control input[type=date]::-webkit-calendar-picker-indicator{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;padding:0;position:absolute;inset:0}@media (max-width:639px){.reference-booking-bottom-sheet .reference-date-control,.booking-detail-mobile-sheet.assign-mode .reference-date-control{min-height:42px;padding:8px 7px}.reference-booking-bottom-sheet .reference-date-control span,.booking-detail-mobile-sheet.assign-mode .reference-date-control span{font-size:.74rem}}.reference-assign-summary{color:var(--muted);flex-wrap:wrap;align-items:center;gap:7px;font-size:.78rem;font-weight:700;display:flex}.reference-assign-summary strong{color:var(--clay-dark);background:#c0432f1f;border-radius:999px;padding:4px 9px;font-size:.72rem}.reference-assign-help{color:var(--muted);margin:0;font-size:.8rem}.reference-assign-groups{gap:13px;display:grid}.reference-assign-zone{gap:8px;display:grid}.reference-assign-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.reference-assign-room{box-sizing:border-box;border:1.5px solid var(--sand);background:var(--surface-strong);height:106px;min-height:106px;color:var(--ink);text-align:left;cursor:pointer;border-radius:15px;gap:5px;padding:12px;font-family:inherit;display:grid;position:relative}.reference-assign-room span{justify-content:space-between;align-items:center;gap:8px;display:flex}.reference-assign-room strong{color:inherit;letter-spacing:0;font-size:1.08rem}.reference-assign-room em{color:var(--success);background:#57735b21;border-radius:999px;padding:2px 7px;font-size:.62rem;font-style:normal;font-weight:850}.reference-assign-room small{color:var(--muted);font-size:.73rem;line-height:1.25}.reference-assign-room b{color:var(--ink);align-items:baseline;gap:2px;font-size:.78rem;display:flex}.reference-assign-room i{color:var(--danger);font-size:.68rem;font-style:normal;line-height:1.2}.reference-assign-room.selected{border-color:var(--terracotta);background:#c0432f1a;box-shadow:0 0 0 3px #c0432f1c}.reference-assign-room.selected[data-zone=B]{border-color:var(--olive);background:#67735a1f;box-shadow:0 0 0 3px #67735a1f}.reference-assign-room.selected[data-zone=F]{border-color:var(--cobalt);background:#1f5fbf17;box-shadow:0 0 0 3px #1f5fbf1a}.reference-assign-room.selected[data-zone=T]{border-color:var(--marigold);background:#d9a4411f;box-shadow:0 0 0 3px #d9a4411f}.reference-assign-room.selected em{background:var(--terracotta);color:#fff}.reference-assign-room.current:not(.selected){border-color:#67735a61}.reference-assign-room.current:not(.selected) em{color:var(--olive);background:#67735a21}.reference-assign-room.disabled{background:var(--inset);color:#9c8d7a;cursor:not-allowed;opacity:.94;border-style:dashed}.reference-assign-room.disabled em{color:var(--danger);background:#b6533a1f}.reference-assign-check{color:var(--terracotta);position:absolute;bottom:10px;right:10px}.reference-assign-footer{background:linear-gradient(180deg, #fffdf800, var(--surface-strong) 35%);grid-template-columns:1fr;gap:9px;margin:4px -1px -2px;padding:10px 0 2px;display:grid;position:sticky;bottom:12px}.reference-assign-footer .button.primary{min-height:45px}@media (max-width:639px){.create-modal.reference-create.mobile-full{border-radius:26px 26px 0 0;gap:0;width:100vw;height:auto;max-height:81dvh;padding:0;inset:auto 0 0;transform:none;box-shadow:0 -10px 40px #221e1a38}.create-modal.reference-create.mobile-full:before{content:"";background:var(--sand);border-radius:999px;flex:none;align-self:center;width:38px;height:5px;margin-top:10px}.create-modal.reference-create.mobile-full .reference-sheet-header{background:var(--surface-strong);padding:8px 20px 6px;top:0}.create-modal.reference-create.mobile-full .reference-sheet-header p.muted{display:none}.create-modal.reference-create.mobile-full .reference-date-row{grid-template-columns:1fr 1fr}.create-modal.reference-create.mobile-full .reference-guest-row{flex-direction:column;align-items:stretch}.create-modal.reference-create.mobile-full .reference-guest-row p{margin:-2px 0 2px}.create-modal.reference-create.mobile-full .reference-create-footer{z-index:9;position:sticky;bottom:0}.create-modal.reference-create.mobile-full .reference-create-footer .button.ghost{display:none}.create-modal.reference-create.mobile-full .reference-create-footer .button.primary{width:100%}.create-modal.reference-create.mobile-full .reference-create-body{gap:10px;padding-top:4px;padding-bottom:12px}.create-modal.reference-create.mobile-full .field input,.create-modal.reference-create.mobile-full .field select{min-height:40px;padding-block:9px}.create-modal.reference-create.mobile-full .reference-stepper{grid-template-columns:1fr 40px minmax(72px,1fr) 40px}.create-modal.reference-create.mobile-full .reference-stepper button{min-height:38px}.create-modal.reference-create.mobile-full .reference-room-groups{gap:10px}.create-modal.reference-create.mobile-full .reference-room-group{gap:5px}.create-modal.reference-create.mobile-full .reference-room-group-head{font-size:.74rem;line-height:1.15}.create-modal.reference-create.mobile-full .reference-room-chip{border-radius:10px;justify-content:center;align-items:center;height:36px;min-height:36px;padding:0 12px;display:inline-flex}.create-modal.reference-create.mobile-full .reference-room-card-grid{grid-template-columns:1fr}.create-modal.reference-create.mobile-full .room-select-card{border-radius:18px;grid-template-columns:128px minmax(0,1fr);padding:9px}.create-modal.reference-create.mobile-full .room-card-image{aspect-ratio:auto;border-radius:15px;width:100%;height:128px;min-height:0}.create-modal.reference-create.mobile-full .room-card-image img{height:100%;min-height:0}.create-modal.reference-create.mobile-full .room-card-copy{gap:4px}.create-modal.reference-create.mobile-full .room-card-copy p{display:none}.create-modal.reference-create.mobile-full .reference-basket-shell{padding:8px 14px 0}.reference-page-header,.reference-source-grid,.reference-summary-tiles{grid-template-columns:1fr}.reference-page-header{display:grid}.reference-bookings-header{grid-template-columns:minmax(0,1fr) auto;display:grid}.reference-bookings-header .button{min-width:82px;min-height:44px;padding-inline:14px}.booking-create-desktop-word,.booking-admin-chip{display:none!important}.reference-rooms-header,.reference-page-header.has-mobile-back{grid-template-columns:36px minmax(0,1fr) auto;align-items:start}.reference-mobile-back{border:1px solid var(--sand);background:var(--surface);width:36px;height:36px;color:var(--ink);border-radius:12px;place-items:center;font-size:1.6rem;line-height:1;text-decoration:none;display:inline-grid}.reference-rooms-header .reference-add-label-desktop{display:none!important}.reference-rooms-header .reference-add-label-mobile{display:inline!important}.reference-source-card{border-radius:16px;grid-template-columns:44px minmax(0,1fr) auto;gap:4px 11px;height:auto;min-height:128px;padding:14px}.reference-source-card .source-icon{border-radius:11px;grid-row:1/span 2;width:40px;height:40px}.reference-source-card strong{align-self:end;font-size:.94rem;line-height:1.1}.reference-source-card em{grid-column:3;place-self:start end;margin-top:2px}.reference-source-card small{text-overflow:ellipsis;white-space:nowrap;grid-column:2;align-self:start;font-size:.75rem;line-height:1.2;overflow:hidden}.reference-import-page{gap:12px}.reference-reports-page .reports-visual-charts{grid-template-columns:1fr}.reference-import-page .reference-source-tabs{gap:10px;margin-top:2px;display:grid}.reference-import-page>.grid-2{grid-template-columns:1fr;gap:12px;display:grid}.reference-import-page .card.pad{border-radius:18px;padding:14px}.reference-import-page .section-header{align-items:flex-start;gap:8px}.reference-import-page .quick-actions{justify-content:flex-start;gap:8px}.import-badge-strip{flex-wrap:nowrap;gap:7px;margin:12px -2px 0;padding:2px 2px 6px;display:flex;overflow-x:auto}.chip.import-badge-chip{flex:none;min-height:36px}.import-candidate-card{grid-template-columns:1fr;gap:5px;padding:11px}.import-candidate-card small{grid-column:1}.reference-source-card div{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:7px}.reference-source-card .source-metric{border-radius:11px;padding:8px 10px}.reference-source-card .source-metric b{font-size:1.02rem;line-height:1.05}.reference-source-card .source-metric span{font-size:.68rem}.reference-section-title{grid-template-columns:10px minmax(0,1fr) auto;gap:8px}.reference-section-title strong{white-space:nowrap;grid-column:3;align-self:start;margin-top:2px}.reference-import-history-row{grid-template-columns:34px minmax(0,1fr) 16px;align-items:center;gap:10px;min-height:78px;padding:10px 11px}.reference-import-history-row>.status-chip,.reference-import-history-row>.chip{grid-column:2;justify-self:start}.reference-import-history-chevron{grid-area:1/3}.import-queue-table{border:0;overflow:visible}.import-queue-table table,.import-queue-table thead,.import-queue-table tbody,.import-queue-table tr,.import-queue-table td{width:100%;display:block}.import-queue-table thead{display:none}.import-queue-table tbody{gap:8px;display:grid}.import-queue-table tr{border:1px solid var(--sand);background:var(--surface-strong);border-radius:15px;padding:12px}.import-queue-table td{color:var(--ink);border:0;grid-template-columns:88px minmax(0,1fr);gap:8px;padding:5px 0;display:grid}.import-queue-table td:first-child{grid-template-columns:1fr;gap:4px;padding-top:0;display:grid}.import-queue-table td:first-child:before{display:none}.import-queue-table td:before{content:attr(data-label);color:var(--muted);font-size:.72rem;font-weight:750}.import-queue-table td strong,.import-queue-table td .muted{text-overflow:ellipsis;overflow:hidden}.reference-preset-row{justify-content:flex-start;padding-bottom:2px;overflow-x:auto}.reference-page-header.has-mobile-back .reference-preset-row{grid-column:1/-1;grid-template-columns:repeat(4,minmax(0,1fr));width:100%;padding-bottom:0;display:grid;overflow:visible}.reference-page-header.has-mobile-back .report-range-button{justify-content:center;width:100%;min-width:0;padding-inline:6px}.reference-action-sheet.bottom-sheet{border-radius:26px 26px 0 0;max-height:82dvh;padding:0}.reference-action-body{padding:10px 18px 18px}.reference-menu-action,.reference-room-banner,.reference-contact-card,.reference-payment-warning{min-height:58px}.reference-import-page,.reference-reports-page,.reference-settings-page,.reference-rooms-page{padding:0 16px 96px}.reference-settings-page .settings-actions.settings-actions-inline{box-shadow:none;background:0 0;border:0;border-radius:0;grid-template-columns:1fr;gap:8px;padding:0;display:grid;position:static}.reference-settings-page .settings-actions .button{justify-content:center;width:100%;height:44px;min-height:44px;padding-block:0}.reference-settings-page .settings-advanced-details{display:none}.reference-settings-page .settings-actions .muted{text-align:center}.reference-settings-page{gap:12px}.reference-settings-page .settings-panel{border-radius:18px;gap:10px;padding:15px}.reference-settings-page .settings-panel>.section-header{flex-direction:row;align-items:center;margin-bottom:2px}.reference-settings-page .settings-panel>.section-header h2{font-size:.95rem;line-height:1.15}.reference-settings-page .settings-panel>.section-header .status-chip{flex:none;min-height:24px;padding:3px 9px;font-size:.68rem}.reference-settings-page .settings-hotel-fields,.reference-settings-page .form-grid{gap:8px}.reference-settings-page .field{gap:4px}.reference-settings-page .field label{font-size:.74rem;line-height:1.1}.reference-settings-page .field input{border-radius:12px;height:40px;min-height:40px;padding:7px 11px}.reference-mobile-home .fab,.mobile-command .fab{display:none}body{background:linear-gradient(180deg, #e8ddc7fa, #e8ddc7), var(--cream)}.app-shell{background:linear-gradient(180deg, #eee1c9f0, #eee1c9), var(--cream);width:100%;max-width:none;min-height:100svh;box-shadow:none;border-radius:0;margin:0;position:relative}.main-area{background:0 0;border-radius:0;min-height:100svh;padding:0;overflow:hidden}.app-shell:has(.reference-mobile-home){background:linear-gradient(180deg, #eee1c9f0, #eee1c9), var(--cream)}.mobile-command{min-height:100svh}.reference-page-header.has-mobile-back{margin-top:0}.reference-reports-page .reference-page-header{order:0}.reference-reports-page .reference-preset-row{order:1}.mobile-bottom-nav{width:100%;max-width:none;height:var(--mobile-bottom-nav-height);border-radius:0;left:0;right:0;transform:none}.app-shell{min-height:100dvh}.main-area{padding-bottom:var(--mobile-bottom-nav-clearance);overflow:visible}.mobile-command,.mobile-calendar-screen,.reference-mobile-calendar,.reference-mobile-home{min-height:100dvh;padding-bottom:var(--mobile-bottom-nav-clearance)}.reference-mobile-calendar .reference-day-board{min-height:calc(100dvh - 238px);padding-bottom:calc(var(--mobile-bottom-nav-clearance) + 24px);overflow:visible}@supports (height:100dvh){.mobile-bottom-nav{top:calc(100dvh - var(--mobile-bottom-nav-height));bottom:auto}}}
