:root{--color-brand-900:#14264a;--color-brand-700:#1e3a70;--color-brand-600:#2563d9;--color-brand-500:#3b82f6;--color-canvas:#f4f7fb;--color-surface:#fff;--color-surface-muted:#edf2f7;--color-text-900:#172033;--color-text-600:#536176;--color-text-400:#8a97a8;--color-border:#d8e0ea;--color-border-strong:#b8c5d6;--color-success:#18794e;--color-success-bg:#e2f5ea;--color-danger:#b42318;--color-danger-bg:#fde8e7;--space-page:24px;--control-height:38px;--topbar-height:48px;--tabbar-height:38px;--sidebar-width:216px;--modal-width:560px;--filter-select-width:clamp(120px, 9vw, 144px);--filter-keyword-width:clamp(156px, 12vw, 180px);--filter-date-range-width:clamp(224px, 20vw, 280px);--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--font-report-family:"Noto Sans SC", "Noto Sans CJK SC", "Microsoft YaHei", "Source Han Sans SC", "WenQuanYi Micro Hei", sans-serif;color:var(--color-text-900);background:var(--color-canvas);font-synthesis:none;text-rendering:optimizelegibility;font-family:-apple-system,Helvetica,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,Source Han Sans SC,Noto Sans CJK SC,WenQuanYi Micro Hei,sans-serif}*{box-sizing:border-box}html,#root{height:100%;min-height:0}body{background:var(--color-canvas);min-width:320px;margin:0}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--color-brand-500);outline-offset:2px}a{color:inherit;text-decoration:none}.login-page{background:var(--color-surface);grid-template-columns:minmax(480px,.92fr) minmax(480px,1.08fr);min-height:100vh;display:grid}.login-brand-panel{color:#fff;background:var(--color-brand-900);flex-direction:column;justify-content:center;padding:80px clamp(56px,8vw,140px);display:flex}.login-logo{object-fit:contain;object-position:left center;background:#fff;border-radius:10px;width:240px;max-width:100%;height:auto;margin-bottom:64px;padding:10px 14px}.eyebrow{color:var(--color-brand-600);letter-spacing:.12em;text-transform:uppercase;margin:0 0 12px;font-size:12px;font-weight:700;line-height:1.4}.login-brand-panel .eyebrow{color:#93b9ff}.login-brand-panel h1{letter-spacing:-.04em;max-width:560px;margin:0;font-size:clamp(34px,4vw,54px);font-weight:700;line-height:1.18}.brand-copy{color:#c8d6ee;max-width:500px;margin:28px 0 0;font-size:16px;line-height:1.8}.brand-note{color:#aebdd4;align-items:center;gap:10px;max-width:500px;margin-top:80px;font-size:13px;line-height:1.6;display:flex}.status-dot{background:var(--color-success);border-radius:50%;flex:none;width:8px;height:8px;display:inline-block;box-shadow:0 0 0 4px #18794e24}.login-form-panel{background:var(--color-canvas);justify-content:center;align-items:center;padding:64px 48px;display:flex}.login-form-wrap{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);width:min(100%,440px);padding:42px;box-shadow:0 12px 32px #14264a14}.login-form-heading h2{letter-spacing:-.03em;margin:0;font-size:32px;line-height:1.25}.login-form-heading p:not(.eyebrow){color:var(--color-text-600);margin:12px 0 32px;font-size:14px;line-height:1.7}.login-form{gap:18px;display:grid}.login-form label{color:var(--color-text-900);gap:8px;font-size:14px;font-weight:600;display:grid}.login-form input{width:100%;height:var(--control-height);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);color:var(--color-text-900);background:#fff;padding:0 12px;transition:border-color .15s,box-shadow .15s}.login-form input::placeholder{color:var(--color-text-400)}.login-form input:focus{border-color:var(--color-brand-500);outline:0;box-shadow:0 0 0 3px #3b82f624}.primary-button,.secondary-button{min-height:var(--control-height);border-radius:var(--radius-sm);cursor:pointer;justify-content:center;align-items:center;padding:0 18px;font-size:14px;font-weight:700;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.primary-button{border:1px solid var(--color-brand-600);color:#fff;background:var(--color-brand-600)}.primary-button:hover:not(:disabled){border-color:var(--color-brand-700);background:var(--color-brand-700)}.primary-button:disabled{cursor:wait;opacity:.65}.secondary-button{border:1px solid var(--color-border-strong);color:var(--color-brand-700);background:var(--color-surface)}.secondary-button:hover{border-color:var(--color-brand-600);color:var(--color-brand-600)}.danger-button{min-height:var(--control-height);border:1px solid var(--color-danger);border-radius:var(--radius-sm);color:var(--color-danger);background:var(--color-surface);cursor:pointer;justify-content:center;align-items:center;padding:0 18px;font-size:14px;font-weight:700;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.danger-button:hover:not(:disabled){color:#fff;background:var(--color-danger)}.danger-button:disabled{cursor:not-allowed;opacity:.55}.inline-error{border-radius:var(--radius-sm);color:var(--color-danger);background:var(--color-danger-bg);border:1px solid #f3b8b3;gap:4px;padding:12px;font-size:13px;line-height:1.5;display:grid}.inline-error strong{font-size:14px}.inline-error small{color:#8b2c26;font-variant-numeric:tabular-nums}.mobile-hotel-picker{border-radius:var(--radius-md);background:#f5f8ff;border:1px solid #bfd2ef;gap:10px;margin:0;padding:14px;display:grid}.mobile-hotel-picker legend{color:var(--color-brand-700);padding:0 4px;font-size:13px;font-weight:700}.mobile-hotel-picker p{color:var(--color-text-600);margin:0;font-size:12px;line-height:1.5}.mobile-hotel-options{gap:8px;display:grid}.mobile-hotel-option{border:1px solid var(--color-border);border-radius:var(--radius-sm);width:100%;color:var(--color-text-900);text-align:left;background:var(--color-surface);cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.mobile-hotel-option:hover:not(:disabled){border-color:var(--color-brand-500);box-shadow:0 4px 12px #14264a14}.mobile-hotel-option:disabled{cursor:wait;opacity:.65}.mobile-hotel-option>span:first-child{gap:3px;min-width:0;display:grid}.mobile-hotel-option strong,.mobile-hotel-option small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.mobile-hotel-option strong{font-size:13px}.mobile-hotel-option small{color:var(--color-text-600);font-size:11px}.mobile-hotel-option>span:last-child{color:var(--color-brand-600);flex:none;font-size:12px;font-weight:700}.login-footnote{color:var(--color-text-400);margin:24px 0 0;font-size:12px;line-height:1.6}.login-profile-loading{min-height:260px;color:var(--color-text-600);justify-content:center;align-items:center;font-size:14px;display:flex}.loading-spinner{border:2px solid var(--color-border);border-top-color:var(--color-brand-600);border-radius:50%;width:16px;height:16px;margin-right:10px;animation:.7s linear infinite login-spin}@keyframes login-spin{to{transform:rotate(360deg)}}.login-profile-list{gap:10px;margin-top:24px;display:grid}.login-profile-card{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);align-items:stretch;transition:border-color .15s,box-shadow .15s;display:flex}.login-profile-card:hover{border-color:var(--color-brand-500);box-shadow:0 8px 20px #14264a14}.login-profile-card.needs-reauth{background:#fffaf0;border-color:#e3b56a}.login-profile-main{min-width:0;color:var(--color-text-900);text-align:left;cursor:pointer;background:0 0;border:0;flex:1;align-items:center;gap:12px;padding:14px;display:flex}.login-profile-main:disabled{cursor:wait;opacity:.65}.profile-avatar{color:#fff;background:var(--color-brand-700);border-radius:10px;flex:none;justify-content:center;align-items:center;width:34px;height:34px;font-size:14px;font-weight:700;display:inline-flex}.profile-copy{gap:3px;min-width:0;display:grid}.profile-copy strong,.profile-copy span,.profile-copy small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.profile-copy strong{font-size:14px}.profile-copy span{color:var(--color-text-600);font-size:12px}.profile-copy small{color:var(--color-text-400);font-size:11px}.needs-reauth .profile-copy small{color:#9a5b13;font-weight:700}.profile-arrow{color:var(--color-brand-600);margin-left:auto;font-size:26px;line-height:1}.profile-remove{border-radius:var(--radius-sm);width:34px;height:34px;color:var(--color-text-400);cursor:pointer;background:0 0;border:0;align-self:center;margin-right:8px;font-size:22px;line-height:1}.profile-remove:hover:not(:disabled){color:var(--color-danger);background:var(--color-danger-bg)}.profile-remove:disabled{cursor:wait;opacity:.6}.profile-management-actions,.login-form-actions{flex-wrap:wrap;gap:10px;margin-top:20px;display:flex}.profile-management-actions .primary-button,.profile-management-actions .secondary-button,.login-form-actions .primary-button,.login-form-actions .secondary-button{flex:180px}.app-shell{height:100vh;min-height:0;display:flex;overflow:hidden}.sidebar{z-index:2;width:var(--sidebar-width);color:#dce7f7;background:var(--color-brand-900);flex-direction:column;padding:0 10px 14px;display:flex;position:fixed;top:0;bottom:0;left:0;overflow:hidden}.sidebar-brand{flex:0 0 48px;justify-content:flex-start;align-items:center;gap:7px;height:48px;margin:0;padding:0 10px;display:flex}.sidebar-logo-mark{flex:0 0 20px;width:20px;height:20px;display:block;overflow:hidden}.sidebar-logo-mark img{object-fit:contain;filter:grayscale()invert()contrast(220%);mix-blend-mode:screen;background:0 0;border-radius:0;width:20px;height:20px;padding:0;display:block}.sidebar-logo-copy{color:#fff;align-items:center;min-width:0;height:20px;line-height:1;display:flex}.sidebar-logo-name{white-space:nowrap;align-items:center;gap:4px;line-height:1;display:flex}.sidebar-logo-name>span{letter-spacing:.5px;font-family:-apple-system,Helvetica,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,Source Han Sans SC,Noto Sans CJK SC,WenQuanYi Micro Hei,sans-serif;font-size:17px;font-weight:800;line-height:1}.sidebar-logo-name em{letter-spacing:.02em;font-family:-apple-system,Helvetica,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,Source Han Sans SC,Noto Sans CJK SC,WenQuanYi Micro Hei,sans-serif;font-size:17px;font-style:italic;font-weight:800;line-height:1}.sidebar-search-wrap{box-sizing:border-box;flex:0 0 var(--tabbar-height);height:var(--tabbar-height);padding:3px 8px}.sidebar-search-label{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.sidebar-search{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:7px;align-items:center;min-width:0;height:32px;transition:border-color .15s,background .15s,box-shadow .15s;display:flex}.sidebar-search:focus-within{background:#ffffff14;border-color:#93c5fdb3;box-shadow:0 0 0 2px #3b82f62e}.sidebar-search-icon{color:#8fa6c8;flex:0 0 18px;justify-content:center;align-items:center;width:18px;height:18px;margin-left:9px;display:inline-flex}.sidebar-search-icon svg{width:14px;height:14px;display:block}.sidebar-search input{color:#e8eef9;min-width:0;height:100%;font:inherit;background:0 0;border:0;outline:0;flex:auto;padding:0 9px 0 7px;font-size:12px}.sidebar-search input::placeholder{color:#8fa6c8;opacity:1}.sidebar-search input::-webkit-search-cancel-button{filter:invert()opacity(.6)}.main-nav{-ms-overflow-style:none;scrollbar-width:none;flex:auto;align-content:start;gap:4px;min-width:0;min-height:0;padding:4px 0 8px;display:grid;overflow:hidden auto}.main-nav::-webkit-scrollbar{display:none}.nav-divider{opacity:.85;background:linear-gradient(90deg,#0000 0%,#e8a04a2e 16%,#e8a04a94 50%,#e8a04a2e 84%,#0000 100%);border-radius:999px;height:1px;margin:10px 10px 8px}.nav-subdivider{opacity:.8;background:linear-gradient(90deg,#0000 0%,#e8a04a24 16%,#e8a04a6b 50%,#e8a04a24 84%,#0000 100%);border-radius:999px;height:1px;margin:6px 8px 4px;display:block}.nav-group{gap:2px;min-width:0;display:grid}.nav-group-row{align-items:stretch;width:100%;min-width:0;display:flex}.nav-group-row .nav-item{flex:auto;min-width:0}.nav-item{color:#aab4c8;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;align-items:center;gap:8px;width:100%;min-width:0;min-height:34px;margin:1px 0;padding:8px 9px 8px 13px;font-family:inherit;font-size:12px;line-height:16px;text-decoration:none;transition:color .15s,background .15s,border-color .15s;display:flex;position:relative}.nav-item:before,.nav-subitem:before{background:var(--color-brand-500);content:"";opacity:0;border-radius:999px;width:3px;height:16px;transition:opacity .15s;position:absolute;top:50%;left:5px;transform:translateY(-50%);box-shadow:0 0 10px #3b82f659}.nav-item-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.nav-item-count{color:#aab4c8;font-variant-numeric:tabular-nums;border:1px solid #ffffff24;border-radius:999px;justify-content:center;align-items:center;min-width:18px;height:17px;margin-left:auto;padding:0 4px;font-size:10px;display:inline-flex}.nav-item-status{color:#6e86aa;white-space:nowrap;margin-left:auto;font-size:10px}.nav-item-status.ready{color:#87d9b1}.nav-item-count+.nav-item-status{margin-left:6px}.nav-item-disabled{text-align:left;cursor:not-allowed;width:100%;font-family:inherit}.nav-item:not(.nav-item-disabled):not(.active):not(.expanded):hover{color:#e9eef7;background:#ffffff0d}.nav-item:not(.nav-item-disabled):not(.active):active{color:#f5f8ff;background:#3b82f62e}.nav-item.expanded:not(.active){color:#e9eef7;background:#ffffff0a}.nav-item:focus-visible{outline:none;box-shadow:inset 0 0 0 1px #93c5fdb3}.nav-item.active{color:#fff;background:linear-gradient(90deg,#3b82f645,#3b82f614);box-shadow:inset 0 0 0 1px #93c5fd2e}.nav-primary{border-radius:0}.nav-primary:not(.nav-item-disabled):not(.active):not(.expanded):hover,.nav-primary.expanded:not(.active),.nav-primary:not(.nav-item-disabled):not(.active):active,.nav-primary.active{box-shadow:none;background:0 0}.nav-primary:not(.nav-item-disabled):not(.active):hover,.nav-primary.expanded:not(.active):hover{color:#d4deec}.nav-primary:focus-visible{box-shadow:inset 0 0 0 1px #93c5fdb3}.nav-item:before,.nav-subitem:before{display:none}.nav-chevron{border-top:4px solid #0000;border-bottom:4px solid #0000;border-left:5px solid #8fa6c8;flex:none;width:0;height:0;margin-left:auto;transition:border-color .15s,transform .15s;transform:translate(-1px)}.nav-item[aria-expanded=true] .nav-chevron{border-left-color:#b9d5ff;transform:rotate(90deg)translate(-1px)}.nav-submenu{gap:2px;margin:0 0 4px;padding:1px 0 3px 30px;display:grid}.nav-subdivider{margin:5px 8px}.nav-subgroup{gap:2px;display:grid}.nav-subgroup+.nav-subgroup{margin-top:8px}.nav-subgroup-title{color:#8fa6c8;letter-spacing:.02em;justify-content:space-between;align-items:center;gap:8px;min-height:24px;padding:0 8px 0 9px;font-size:11px;display:flex}.nav-subgroup-title span:last-child{color:#6f88ad;font-variant-numeric:tabular-nums}.nav-subitem{color:#9aa4ba;text-align:left;cursor:not-allowed;background:0 0;border:0;border-radius:7px;align-items:center;gap:6px;min-width:0;min-height:30px;margin:1px 0;padding:7px 9px;font-family:inherit;font-size:12px;line-height:16px;display:flex;position:relative}.nav-subitem:disabled{opacity:1}.nav-subitem:not(:disabled){color:#aab4c8;cursor:pointer;text-decoration:none}.nav-subitem:not(:disabled):hover{color:#d4deec;box-shadow:none;background:#ffffff0d}.nav-subitem.active{color:#fff;background:linear-gradient(90deg,#3b82f633,#3b82f60d);box-shadow:inset 0 0 0 1px #93c5fd24}.nav-subitem-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.nav-subitem-count{color:#aab4c8;font-variant-numeric:tabular-nums;border:1px solid #ffffff24;border-radius:999px;justify-content:center;align-items:center;min-width:18px;height:17px;padding:0 4px;font-size:10px;display:inline-flex}.nav-subitem-status{color:#6e86aa;white-space:nowrap;margin-left:auto;font-size:10px}.nav-subitem-status.ready{color:#87d9b1}.nav-mark{color:#9aaed0;flex:0 0 18px;justify-content:center;align-items:center;width:18px;height:18px;display:inline-flex}.nav-mark svg{width:14px;height:14px;display:block}.nav-item.active .nav-mark{color:#c8ddff}.nav-item.active .nav-item-count{color:#d7e7ff;border-color:#bfd4f173}.nav-item.active .nav-item-status{color:#c2d4ef}.nav-item.active .nav-item-status.ready{color:#9ce0bd}.nav-primary.active{color:#b9ccee;font-weight:600}.nav-primary.active .nav-mark{color:#8eafe4}.nav-primary.active .nav-item-count{color:#b9ccee;border-color:#8eafe461}.nav-primary.active .nav-item-status{color:#91add7}.nav-primary.active .nav-chevron{border-left-color:#9db9eb}.nav-no-match{color:#9aa4ba;margin:12px 9px;font-size:12px;line-height:1.6}.sidebar-footer{color:#aebdd4;gap:8px;margin-top:auto;padding:8px 8px 0;font-size:10px;display:grid}.sidebar-footer small{color:#8398b8}.workspace{width:calc(100% - var(--sidebar-width));height:100%;min-height:0;margin-left:var(--sidebar-width);--workspace-inline-gap:15px;flex-direction:column;display:flex;overflow:hidden}.workspace-canvas{border-bottom:1px solid var(--color-border);background:var(--color-surface);flex-direction:column;flex:auto;min-height:0;display:flex;overflow:hidden}.topbar{flex:0 0 var(--topbar-height);height:var(--topbar-height);padding:0 var(--space-page);background:linear-gradient(#f0f5fb 0%,#e8f0f9 100%);border-bottom:1px solid #cbd8e8;justify-content:flex-end;align-items:center;display:flex;box-shadow:inset 0 1px #ffffffb3}.topbar-actions{color:var(--color-text-600);align-items:center;gap:12px;min-width:0;font-size:13px;display:flex}.topbar-inline-error{max-width:280px;color:var(--color-danger);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.quiet-button{border-radius:var(--radius-sm);color:var(--color-text-600);cursor:pointer;background:0 0;border:0;padding:6px 7px;font-size:13px}.quiet-button:hover:not(:disabled){color:var(--color-brand-600);background:#fff9}.quiet-button:disabled{cursor:wait;opacity:.6}.page-tabs{flex:0 0 var(--tabbar-height);min-height:var(--tabbar-height);padding:0 var(--workspace-inline-gap);border-bottom:1px solid var(--color-border);background:var(--color-canvas);align-items:center;gap:14px;display:flex}.page-tabs-scroll{scrollbar-width:none;-ms-overflow-style:none;flex:auto;align-self:stretch;align-items:flex-end;gap:2px;min-width:0;display:flex;overflow:auto hidden}.page-tabs-scroll::-webkit-scrollbar{display:none}.page-tab{min-height:calc(var(--tabbar-height) - 1px);border-radius:var(--radius-sm) var(--radius-sm) 0 0;color:var(--color-text-600);background:0 0;border:1px solid #0000;border-bottom:0;flex:none;align-items:center;transition:color .15s,border-color .15s,background .15s;display:inline-flex}.page-tab.active{color:var(--color-text-600);box-shadow:none;background:0 0;border-color:#0000;margin-bottom:-1px}.page-tab-select{max-width:150px;min-height:calc(var(--tabbar-height) - 2px);border-radius:var(--radius-sm) 0 0 0;color:inherit;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;background:0 0;border:0;padding:0 9px 0 12px;font-size:13px;position:relative;overflow:hidden}.page-tab.active .page-tab-select:after{background:var(--color-brand-600);content:"";pointer-events:none;border-radius:3px 3px 0 0;height:3px;position:absolute;bottom:0;left:12px;right:9px}.page-tab-pinned{width:16px;height:calc(var(--tabbar-height) - 2px);justify-content:center;align-items:center;padding-right:7px;display:inline-flex}.page-tab-pinned span{background:var(--color-brand-500);border-radius:50%;width:6px;height:6px}.page-tab-close{width:24px;height:calc(var(--tabbar-height) - 2px);border-radius:0 var(--radius-sm) 0 0;color:var(--color-text-400);cursor:pointer;opacity:0;background:0 0;border:0;justify-content:center;align-items:center;padding:0;font-size:16px;line-height:1;transition:opacity .15s,color .15s,background .15s;display:inline-flex}.page-tab:hover .page-tab-close,.page-tab:focus-within .page-tab-close,.page-tab.active .page-tab-close{opacity:1}.page-tab-close:hover{color:var(--color-danger);background:var(--color-danger-bg)}.page-tabs-close-all{border:0;border-left:1px solid var(--color-border);height:30px;color:var(--color-text-600);cursor:pointer;background:0 0;border-radius:0;flex:none;padding:0 0 0 12px;font-size:12px}.page-tabs-close-all:hover{color:var(--color-brand-600)}.topbar-account{min-width:0;color:var(--color-text-900);align-items:center;gap:8px;padding:3px 10px 3px 6px;display:inline-flex}.topbar-account-copy{min-width:0;line-height:1.2;display:block}.topbar-account-copy strong{text-overflow:ellipsis;white-space:nowrap;max-width:250px;font-size:12px;font-weight:700;overflow:hidden}.avatar{width:28px;height:28px;color:var(--color-brand-700);background:#dbe8ff;border-radius:50%;justify-content:center;align-items:center;font-size:12px;display:inline-flex}.sidebar-room-status{scrollbar-width:none;-ms-overflow-style:none;flex-direction:column;flex:auto;gap:0;min-width:0;min-height:0;padding:0 0 10px;display:flex;overflow:hidden auto}.sidebar-room-status::-webkit-scrollbar{display:none}.sidebar-room-search-wrap{z-index:3;flex:0 0 var(--tabbar-height);background:var(--color-brand-900);position:sticky;top:0}.sidebar-room-divider{flex:none}.sidebar-room-section{gap:5px;min-width:0;padding:8px 6px 0;display:grid}.sidebar-room-section-title{color:#dce7f7;justify-content:space-between;align-items:center;gap:6px;min-width:0;padding:0 2px;font-size:10px;font-weight:700;display:flex}.sidebar-room-section-title small{color:#8fa6c8;font-size:10px;font-weight:400}.sidebar-room-section-title button{color:#91add7;cursor:pointer;background:0 0;border:0;padding:0;font-size:10px}.sidebar-room-section-title button:disabled{color:#5e7599;cursor:default}.sidebar-room-filter-list,.sidebar-room-type-list,.sidebar-room-attention-list{gap:2px;display:grid}.sidebar-room-filter-list,.sidebar-room-attention-list,.sidebar-room-agreement-list{grid-template-columns:repeat(2,minmax(0,1fr))}.sidebar-room-filter:first-child{grid-column:1/-1}.sidebar-room-filter,.sidebar-room-type-row,.sidebar-room-attention-row{color:#b9c9df;text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:5px;align-items:center;gap:5px;min-width:0;min-height:24px;padding:0 5px;font-size:10px;display:flex}.sidebar-room-filter:hover,.sidebar-room-filter.active,.sidebar-room-type-row:hover,.sidebar-room-type-row.active,.sidebar-room-attention-row:hover,.sidebar-room-attention-row.active{color:#fff;background:#ffffff17;border-color:#93c5fd59}.sidebar-room-attention-static{cursor:default}.sidebar-room-attention-static:hover{color:#b9c9df;background:0 0;border-color:#0000}.sidebar-room-filter>span:not(.sidebar-room-dot),.sidebar-room-type-row>span,.sidebar-room-attention-row>span:not(.attention-mark){text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.sidebar-room-filter strong,.sidebar-room-type-row strong,.sidebar-room-attention-row strong{color:#fff;font-variant-numeric:tabular-nums;margin-left:auto;font-size:10px}.sidebar-room-dot{background:#90a4c2;border-radius:50%;flex:0 0 7px;width:7px;height:7px}.sidebar-room-dot.all{background:#90a4c2}.sidebar-room-dot.clean{background:#50bb91}.sidebar-room-dot.dirty{background:#b78652}.sidebar-room-dot.occupied{background:#6ea9ee}.sidebar-room-dot.occupied-dirty{background:#e5ad55}.sidebar-room-dot.leave{background:#f19b61}.sidebar-room-dot.repair,.sidebar-room-dot.owe{background:#ed7772}.sidebar-room-dot.backup,.sidebar-room-dot.inspect{background:#b1a8ee}.sidebar-room-dot.book{background:#d79c50}.sidebar-room-select{display:none}.sidebar-room-select select{color:#e8eef9;background:#203e69;border:1px solid #ffffff24;border-radius:5px;outline:0;width:100%;height:28px;padding:0 7px;font-size:10px}.sidebar-room-select select:focus{border-color:#8eb3ed}.sidebar-room-type-row>span{flex:auto}.sidebar-room-type-row strong{color:#e8eef9}.sidebar-room-attention-row .attention-mark{flex:0 0 6px;width:6px;height:6px}.sidebar-room-attention-row .attention-mark.warning{background:#f19b61}.sidebar-room-attention-row .attention-mark.danger{background:#ed7772}.sidebar-room-attention-row .attention-mark.info{background:#74b8f2}.sidebar-room-agreement-list{gap:2px;display:grid}.sidebar-room-agreement-row{color:#b9c9df;text-align:left;cursor:pointer;appearance:none;background:0 0;border:1px solid #0000;border-radius:5px;align-items:center;gap:5px;min-width:0;min-height:24px;padding:0 5px;font-family:inherit;font-size:10px;display:flex}.sidebar-room-agreement-row:hover,.sidebar-room-agreement-row.active{color:#fff;background:#ffffff17;border-color:#93c5fd59}.sidebar-room-agreement-row>span:not(.sidebar-room-agreement-dot){text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:4em;overflow:hidden}.sidebar-room-agreement-row strong{color:#fff;font-variant-numeric:tabular-nums;margin-left:auto;font-size:10px}.sidebar-room-agreement-dot{background:#90a4c2;border-radius:50%;flex:0 0 7px;width:7px;height:7px}.sidebar-room-agreement-dot.walk-in{background:#90a4c2}.sidebar-room-agreement-dot.meituan{background:#f2a24d}.sidebar-room-agreement-dot.ctrip{background:#6ca9ec}.sidebar-room-agreement-dot.fliggy{background:#b79af2}.sidebar-room-agreement-dot.douyin{background:#f2769b}.sidebar-room-agreement-dot.member{background:#55c09b}.sidebar-room-agreement-dot.other{background:#c4cad8}.sidebar-room-metrics{border-top:1px solid #ffffff1a;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:auto;padding:10px 8px 0;display:grid}.sidebar-room-metrics>div{gap:3px;min-width:0;display:grid}.sidebar-room-metrics span{color:#8fa6c8;text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.sidebar-room-metrics strong{color:#fff;font-variant-numeric:tabular-nums;font-size:15px}.sidebar-room-reload{color:#e8eef9;cursor:pointer;background:#ffffff14;border:1px solid #fff3;border-radius:5px;min-height:28px;margin:0 6px;font-size:10px}.sidebar-room-reload:hover{background:#ffffff24;border-color:#93c5fd8c}.page-content{--content-module-gap:8px;min-height:0;padding:8px var(--workspace-inline-gap) 12px;background:var(--color-surface);flex:auto;display:flex;overflow:hidden}.workspace-page-frame{flex:auto;width:100%;min-width:0;min-height:0;display:flex;overflow:hidden}.workspace-page-frame[hidden]{display:none}.page-panel{background:0 0;flex-direction:column;width:100%;min-width:0;height:100%;min-height:0;padding:0;display:flex;overflow:hidden}.workspace-state{border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);background:0 0;justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px;padding:16px 0;display:flex}.state-symbol{width:42px;height:42px;color:var(--color-brand-700);background:#e5eeff;border-radius:12px;flex:none;justify-content:center;align-items:center;font-size:19px;font-weight:700;display:inline-flex}.state-copy{flex:auto;min-width:0}.state-copy h2{margin:0;font-size:16px;line-height:1.3}.state-copy p{max-width:760px;color:var(--color-text-600);margin:5px 0 7px;font-size:13px;line-height:1.6}.state-meta{color:var(--color-text-400);font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:6px 16px;font-size:11px;display:flex}.workspace-state>.secondary-button{white-space:nowrap;flex:none}.overview-page{flex-direction:column;gap:10px;min-height:0;padding-bottom:12px;display:flex;overflow:auto}.overview-cockpit-head{color:#fff;background:linear-gradient(120deg,#14264a 0%,#1e3a70 60%,#28589c 100%);border:1px solid #203b6d;border-radius:9px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px;min-height:82px;padding:14px 18px;display:grid}.overview-cockpit-title{gap:3px;min-width:0;display:grid}.overview-cockpit-kicker{color:#e0ebffb8;letter-spacing:.08em;font-size:10px}.overview-cockpit-title h1{margin:0;font-size:22px;line-height:1.15}.overview-cockpit-title p{color:#ebf2ffc2;margin:0;font-size:11px;line-height:1.45}.overview-cockpit-meta{justify-content:flex-end;align-items:center;gap:14px;min-width:0;display:flex}.overview-live-state{color:#cdebdc;white-space:nowrap;align-items:center;gap:6px;font-size:11px;display:inline-flex}.overview-live-state i{background:#5ed092;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 3px #5ed09229}.overview-live-state.error{color:#ffd8d2}.overview-live-state.error i{background:#ff8f82;box-shadow:0 0 0 3px #ff8f8229}.overview-cockpit-meta .secondary-button{min-height:32px;color:var(--color-brand-700);border-color:#fff;padding:0 12px;font-size:12px}.overview-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.overview-kpi{border:1px solid var(--color-border);border-top:3px solid var(--color-brand-500);background:var(--color-surface);border-radius:8px;gap:5px;min-width:0;min-height:94px;padding:12px 14px 11px;display:grid}.overview-kpi-housing{border-top-color:#326fb7}.overview-kpi-can-sale{border-top-color:#2d9b73}.overview-kpi-clean{border-top-color:#78a94c}.overview-kpi-heading{color:var(--color-text-600);justify-content:space-between;align-items:center;gap:8px;font-size:11px;display:flex}.overview-kpi-heading i{background:var(--color-brand-500);border-radius:50%;width:7px;height:7px}.overview-kpi-housing .overview-kpi-heading i{background:#326fb7}.overview-kpi-can-sale .overview-kpi-heading i{background:#2d9b73}.overview-kpi-clean .overview-kpi-heading i{background:#78a94c}.overview-kpi strong{color:var(--color-brand-900);font-variant-numeric:tabular-nums;font-size:28px;line-height:1}.overview-kpi small{color:var(--color-text-400);font-size:10px}.overview-dashboard-grid,.overview-lower-grid{gap:8px;min-width:0;display:grid}.overview-dashboard-grid{grid-template-columns:minmax(0,1.65fr) minmax(280px,.85fr)}.overview-lower-grid{grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr)}.overview-module{border:1px solid var(--color-border);background:var(--color-surface);border-radius:8px;min-width:0;padding:14px 16px}.overview-module-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.overview-module-heading>div{gap:3px;display:grid}.overview-module-kicker{color:var(--color-brand-600);letter-spacing:.06em;font-size:10px}.overview-module-heading h2{color:var(--color-text-900);margin:0;font-size:15px}.overview-module-heading>span{color:var(--color-text-400);white-space:nowrap;font-size:10px}.overview-status-track{background:#edf2f7;border-radius:99px;gap:2px;height:11px;margin-top:18px;display:flex;overflow:hidden}.overview-status-segment{border-radius:99px;min-width:0}.overview-status-segment.occupied,.overview-status-dot.occupied{background:#326fb7}.overview-status-segment.clean,.overview-status-dot.clean{background:#2d9b73}.overview-status-segment.dirty,.overview-status-dot.dirty{background:#d39a38}.overview-status-segment.repair,.overview-status-dot.repair{background:#c85b55}.overview-status-segment.book,.overview-status-dot.book{background:#8c70be}.overview-status-segment.backup,.overview-status-dot.backup{background:#8792a2}.overview-status-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 14px;margin-top:16px;display:grid}.overview-status-item{min-width:0;color:var(--color-text-600);justify-content:space-between;align-items:center;gap:8px;font-size:11px;display:flex}.overview-status-item>span{align-items:center;gap:6px;min-width:0;display:inline-flex}.overview-status-item strong{color:var(--color-text-900);font-variant-numeric:tabular-nums}.overview-status-dot{border-radius:50%;flex:none;width:7px;height:7px}.overview-module-note,.overview-module-empty{color:var(--color-text-400);margin:16px 0 0;font-size:10px;line-height:1.5}.overview-attention-module{flex-direction:column;display:flex}.overview-attention-list{gap:8px;margin:18px 0 0;padding:0;list-style:none;display:grid}.overview-attention-list li{min-height:29px;color:var(--color-text-600);border-bottom:1px solid #edf1f5;grid-template-columns:8px minmax(0,1fr) auto;align-items:center;gap:8px;padding-bottom:8px;font-size:12px;display:grid}.overview-attention-list li:last-child{border-bottom:0;padding-bottom:0}.overview-attention-list strong{color:var(--color-text-900);font-variant-numeric:tabular-nums;font-size:15px}.attention-mark{background:var(--color-brand-500);border-radius:50%;width:7px;height:7px}.attention-mark.warning{background:#c98617}.attention-mark.danger{background:#c23b36}.attention-mark.info{background:#3986c9}.overview-clear-state{color:var(--color-success);align-items:flex-start;gap:9px;margin-top:19px;display:flex}.overview-clear-state>span{background:var(--color-success-bg);border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:12px;font-weight:700;display:inline-flex}.overview-clear-state strong{color:var(--color-text-900);font-size:12px}.overview-clear-state p{color:var(--color-text-400);margin:4px 0 0;font-size:10px;line-height:1.5}.overview-loading-lines{gap:10px;margin-top:20px;display:grid}.overview-loading-lines i{background:#edf2f7;border-radius:99px;height:10px;display:block}.overview-room-type-list{gap:11px;margin-top:17px;display:grid}.overview-room-type-row{min-width:0;color:var(--color-text-600);grid-template-columns:96px minmax(0,1fr) auto;align-items:center;gap:10px;font-size:11px;display:grid}.overview-room-type-row>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overview-room-type-bar{background:#edf2f7;border-radius:99px;height:6px;overflow:hidden}.overview-room-type-bar i{border-radius:inherit;background:#2d9b73;height:100%;display:block}.overview-room-type-row strong{color:var(--color-text-900);font-variant-numeric:tabular-nums;font-size:11px}.overview-action-list{gap:0;margin-top:9px;display:grid}.overview-action{border-bottom:1px solid #edf1f5;justify-content:space-between;align-items:center;gap:12px;min-height:49px;display:flex}.overview-action:last-child{border-bottom:0}.overview-action>span{gap:3px;min-width:0;display:grid}.overview-action strong{color:var(--color-brand-700);font-size:12px}.overview-action small{color:var(--color-text-400);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.overview-action b{color:var(--color-brand-500);font-size:17px;font-weight:400}.overview-action:hover strong,.overview-action:hover b{color:var(--color-brand-600)}.overview-kpi-yesterday{border-top-color:#326fb7}.overview-kpi-month{border-top-color:#6f7fa4}.overview-kpi-year{border-top-color:#8766b2}.overview-kpi-occupancy{border-top-color:#c59035}.overview-kpi-yesterday .overview-kpi-heading i{background:#326fb7}.overview-kpi-month .overview-kpi-heading i{background:#6f7fa4}.overview-kpi-year .overview-kpi-heading i{background:#8766b2}.overview-kpi-occupancy .overview-kpi-heading i{background:#c59035}.overview-kpi-today{border-top-color:#c59035}.overview-kpi-today .overview-kpi-heading i{background:#c59035}.overview-business-date{color:var(--color-text-400);white-space:nowrap;font-size:10px}.overview-command-hero{color:#fff;background:linear-gradient(135deg,#172c53 0%,#203e76 62%,#2b609a 100%);border:1px solid #203b6d;border-radius:8px;padding:16px 18px;box-shadow:0 8px 18px #14305c1f}.overview-command-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.overview-command-head>div{gap:3px;display:grid}.overview-command-kicker{color:#e2edffad;letter-spacing:.08em;font-size:10px}.overview-command-head h2{margin:0;font-size:16px;line-height:1.2}.overview-command-head>span{color:#e8f1ffb3;white-space:nowrap;font-size:10px}.overview-command-body{grid-template-columns:minmax(180px,.75fr) minmax(0,1.25fr);align-items:end;gap:22px;margin-top:12px;display:grid}.overview-command-value{gap:4px;display:grid}.overview-command-value>span{color:#e6efffc2;font-size:11px}.overview-command-value strong{color:#fff;font-variant-numeric:tabular-nums;letter-spacing:-.03em;font-size:34px;line-height:1}.overview-command-value small{color:#e6efff9e;font-size:10px}.overview-command-mini-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;display:grid}.overview-command-mini{text-align:center;background:#ffffff14;border:1px solid #ffffff1f;border-radius:6px;gap:4px;min-width:0;padding:9px 7px;display:grid}.overview-command-mini strong{color:#fff;font-variant-numeric:tabular-nums;font-size:20px;line-height:1}.overview-command-mini span{color:#e6efffad;text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.overview-insight{background:linear-gradient(90deg,#fff8eb,#fffdf8);border:1px solid #e7d3a9;border-radius:6px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;min-height:38px;padding:7px 12px;display:grid}.overview-insight>span{color:#9a6e1e;letter-spacing:.04em;white-space:nowrap;font-size:10px;font-weight:700}.overview-insight p{color:#765b29;text-overflow:ellipsis;white-space:nowrap;min-width:0;margin:0;font-size:11px;line-height:1.45;overflow:hidden}.overview-dynamics-module{padding-top:12px;padding-bottom:12px}.overview-dynamics-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin-top:11px;display:grid}.overview-dynamics-cell{border:1px solid var(--color-border);text-align:center;background:#fbfcfe;border-radius:6px;gap:4px;min-width:0;padding:9px 7px;display:grid}.overview-dynamics-cell strong{color:var(--color-text-900);font-variant-numeric:tabular-nums;font-size:20px;line-height:1}.overview-dynamics-cell span{color:var(--color-text-500);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.overview-dynamics-cell.arrival strong{color:#2d9b73}.overview-dynamics-cell.out strong{color:#3986c9}.overview-dynamics-cell.leave strong,.overview-dynamics-cell.dirty strong{color:#c98617}.overview-dynamics-cell.repair strong{color:#c23b36}.overview-dynamics-cell.book strong,.overview-dynamics-cell.prebook strong{color:#8067ad}.overview-dynamics-cell.time strong,.overview-dynamics-cell.self strong{color:#667b9d}.overview-dynamics-cell.backup strong{color:#667487}.overview-dynamics-cell.total strong{color:var(--color-brand-700)}.overview-secondary-grid{grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);align-items:start;gap:8px;min-width:0;display:grid}.overview-week-rate-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:14px;display:grid}.overview-week-rate-summary span{background:#f5f8fc;border-radius:6px;gap:4px;min-width:0;padding:8px;display:grid}.overview-week-rate-summary small{color:var(--color-text-400);font-size:10px}.overview-week-rate-summary strong{color:var(--color-brand-700);font-variant-numeric:tabular-nums;font-size:16px}.overview-week-rate-chart{border-bottom:1px solid #e8edf3;align-items:flex-end;gap:8px;min-height:164px;margin-top:14px;padding:4px 4px 0;display:flex}.overview-week-rate-column{text-align:center;flex:1 1 0;grid-template-rows:18px 112px auto auto;align-items:end;gap:4px;min-width:0;display:grid}.overview-week-rate-value{color:var(--color-text-700);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:10px}.overview-week-rate-track{background:repeating-linear-gradient(0deg,#0000 0 27px,#edf2f7 28px,#0000 29px);border-radius:5px 5px 0 0;justify-content:center;align-items:flex-end;width:100%;height:112px;display:flex}.overview-week-rate-track i{background:linear-gradient(#4e82bd,#234b83);border-radius:4px 4px 0 0;width:min(28px,58%);min-height:4px;display:block}.overview-week-rate-track i.missing{background:0 0;border:1px dashed #b8c4d2;width:min(28px,58%);height:28px!important}.overview-week-rate-column strong{color:var(--color-text-600);text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:600;overflow:hidden}.overview-week-rate-column small{color:var(--color-text-400);font-variant-numeric:tabular-nums;font-size:10px}.overview-business-result-module{flex-direction:column;display:flex}.overview-result-groups{gap:14px;margin-top:16px;display:grid}.overview-result-group{gap:7px;display:grid}.overview-result-group-title{color:var(--color-text-500);letter-spacing:.04em;font-size:10px;font-weight:700}.overview-result-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.overview-result-cell{background:#fbfcfe;border:1px solid #e8edf3;border-radius:6px;gap:5px;min-width:0;min-height:53px;padding:8px;display:grid}.overview-result-cell small{color:var(--color-text-400);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.overview-result-cell strong{color:var(--color-text-900);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.overview-account-stats-module{flex-direction:column;display:flex}.overview-account-stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:14px;display:grid}.overview-account-stat{background:#fbfcfe;border:1px solid #e8edf3;border-radius:7px;gap:5px;min-width:0;min-height:108px;padding:10px;display:grid}.overview-account-stat-heading{color:var(--color-text-600);justify-content:space-between;align-items:center;gap:8px;font-size:11px;display:flex}.overview-account-stat-heading i{background:var(--color-brand-500);border-radius:50%;flex:none;width:7px;height:7px}.overview-account-stat-heading i.in{background:#2d9b73}.overview-account-stat-heading i.out{background:#c98617}.overview-account-stat-heading i.book{background:#8067ad}.overview-account-stat-heading i.draft{background:#667487}.overview-account-stat-count{color:var(--color-brand-900);font-variant-numeric:tabular-nums;font-size:27px;line-height:1}.overview-account-stat>small{color:var(--color-text-400);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.overview-account-finance{color:var(--color-text-400);grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;margin-top:2px;font-size:10px;display:grid}.overview-account-finance span{white-space:nowrap;gap:2px;min-width:0;display:grid}.overview-account-finance b{color:var(--color-text-700);font-variant-numeric:tabular-nums;font-size:10px;display:block}.overview-account-finance b.negative{color:#c23b36}.overview-analysis-grid{grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);gap:8px;min-width:0;display:grid}.overview-sales-list{gap:11px;margin-top:17px;display:grid}.overview-sales-row{grid-template-columns:104px minmax(0,1fr) auto;align-items:center;gap:9px;min-width:0;display:grid}.overview-sales-row>span{gap:2px;min-width:0;display:grid}.overview-sales-row strong,.overview-sales-row small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overview-sales-row strong{color:var(--color-text-700);font-size:11px}.overview-sales-row small{color:var(--color-text-400);font-size:10px}.overview-sales-bar{background:#edf2f7;border-radius:99px;height:7px;overflow:hidden}.overview-sales-bar i{border-radius:inherit;background:linear-gradient(90deg,#426ea9,#2d9b73);height:100%;display:block}.overview-sales-bar i.negative{background:#c85b55}.overview-sales-row b{color:var(--color-text-900);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:11px}.overview-sales-row b.negative,.overview-account-list b.negative{color:#c23b36}.overview-module-link{color:var(--color-brand-700);border-top:1px solid #edf1f5;justify-content:space-between;align-items:center;gap:8px;margin-top:14px;padding-top:10px;font-size:11px;font-weight:700;text-decoration:none;display:flex}.overview-module-link span{font-size:15px;font-weight:400}.overview-module-link:hover{color:var(--color-brand-500)}.overview-account-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:14px;display:grid}.overview-account-summary span{background:#f5f8fc;border-radius:6px;gap:3px;min-width:0;padding:7px 8px;display:grid}.overview-account-summary small{color:var(--color-text-400);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.overview-account-summary strong{color:var(--color-text-900);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.overview-account-list{gap:0;margin:11px 0 0;padding:0;list-style:none;display:grid}.overview-account-list li{border-bottom:1px solid #edf1f5;justify-content:space-between;align-items:center;gap:10px;min-width:0;padding:8px 0;display:flex}.overview-account-list li:last-child{border-bottom:0}.overview-account-list li>span{gap:3px;min-width:0;display:grid}.overview-account-list strong,.overview-account-list small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overview-account-list strong{color:var(--color-text-700);font-size:11px}.overview-account-list small{color:var(--color-text-400);font-size:10px}.overview-account-list b{color:var(--color-text-900);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:11px}.overview-page{background:#f6f8fc;gap:10px;padding-bottom:18px;overflow:auto}.overview-data-head{color:#fff;background:linear-gradient(115deg,#13274d 0%,#1d3f7a 62%,#285f9b 100%);border:1px solid #1f3e75;border-radius:9px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;min-height:72px;padding:12px 16px;display:grid;box-shadow:0 8px 18px #1634651f}.overview-data-head-copy{gap:3px;min-width:0;display:grid}.overview-data-eyebrow,.overview-data-panel-eyebrow{color:var(--color-brand-600);letter-spacing:.06em;font-size:10px}.overview-data-eyebrow{color:#e4efffb8}.overview-data-head h1{color:#fff;margin:0;font-size:21px;line-height:1.15}.overview-data-head p{color:#e5efffb3;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:10px;overflow:hidden}.overview-data-head-meta{color:#e9f1ffb8;white-space:nowrap;align-items:center;gap:14px;font-size:10px;display:flex}.overview-data-freshness{align-items:center;gap:6px;display:inline-flex}.overview-data-freshness i{background:#69d39b;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 3px #69d39b26}.overview-data-freshness.error{color:#ffd5d0}.overview-data-freshness.error i{background:#ff8c82;box-shadow:0 0 0 3px #ff8c8229}.overview-data-primary-action{color:#19396f;background:#fff;border:1px solid #ffffff73;border-radius:5px;align-items:center;gap:10px;min-height:32px;padding:0 12px;font-size:11px;font-weight:700;text-decoration:none;display:inline-flex}.overview-data-primary-action span{color:#4678b8;font-size:15px;font-weight:400}.overview-data-primary-action:hover{color:#0f2c5d;background:#eef5ff}.overview-data-kpis{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}.overview-data-kpi{background:#fff;border:1px solid #dbe3ee;border-top:3px solid #3b75ba;border-radius:8px;gap:5px;min-width:0;min-height:84px;padding:11px 13px 10px;display:grid;box-shadow:0 2px 5px #1f365908}.overview-data-kpi.slate{border-top-color:#71809d}.overview-data-kpi.gold{border-top-color:#c28a31}.overview-data-kpi.green{border-top-color:#31916d}.overview-data-kpi.purple{border-top-color:#8170b4}.overview-data-kpi-label{min-width:0;color:var(--color-text-600);justify-content:space-between;align-items:center;gap:8px;font-size:11px;display:flex}.overview-data-kpi-label span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overview-data-kpi-label i{background:#3b75ba;border-radius:50%;flex:none;width:7px;height:7px}.overview-data-kpi.slate .overview-data-kpi-label i{background:#71809d}.overview-data-kpi.gold .overview-data-kpi-label i{background:#c28a31}.overview-data-kpi.green .overview-data-kpi-label i{background:#31916d}.overview-data-kpi.purple .overview-data-kpi-label i{background:#8170b4}.overview-data-kpi strong{color:#152f5d;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;font-size:25px;line-height:1;overflow:hidden}.overview-data-kpi small{color:var(--color-text-400);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.overview-data-main-grid,.overview-data-grid{gap:10px;min-width:0;display:grid}.overview-data-main-grid{grid-template-columns:minmax(0,1.72fr) minmax(300px,.92fr);align-items:stretch}.overview-data-grid-three{grid-template-columns:minmax(0,1.06fr) minmax(0,1fr) minmax(0,.94fr);align-items:start}.overview-data-grid-two{grid-template-columns:minmax(0,1.18fr) minmax(360px,.82fr);align-items:start}.overview-data-panel{background:#fff;border:1px solid #dbe3ee;border-radius:8px;flex-direction:column;min-width:0;padding:14px 15px 12px;display:flex;box-shadow:0 2px 5px #1f365908}.overview-data-panel-head{justify-content:space-between;align-items:flex-start;gap:10px;min-width:0;display:flex}.overview-data-panel-head>div{gap:3px;min-width:0;display:grid}.overview-data-panel-eyebrow{color:#3975b7}.overview-data-panel-head h2{color:#193362;margin:0;font-size:16px;line-height:1.2}.overview-data-panel-head>span{color:var(--color-text-400);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.overview-occupancy-panel{background:linear-gradient(#fff 0%,#f7faff 100%);min-height:336px}.overview-water-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:12px;display:grid}.overview-water-summary>span{background:#f6f9fd;border:1px solid #e1e9f3;border-radius:6px;gap:4px;min-width:0;padding:8px 9px;display:grid}.overview-water-summary small{color:var(--color-text-400);font-size:10px}.overview-water-summary strong{color:#214f8e;font-variant-numeric:tabular-nums;font-size:17px;line-height:1}.overview-water-chart{grid-template-columns:42px minmax(0,1fr);gap:7px;height:218px;min-height:218px;margin-top:12px;display:grid}.overview-water-axis{color:#94a2b6;font-variant-numeric:tabular-nums;text-align:right;flex-direction:column;justify-content:space-between;padding:4px 0 30px;font-size:10px;display:flex}.overview-water-plot{background:repeating-linear-gradient(0deg,#0000 0 25%,#e9eff6 calc(25% - 1px) 25%);border-bottom:1px solid #cfdbea;min-width:0;position:relative}.overview-water-columns{align-items:stretch;gap:9px;padding:0 7px;display:flex;position:absolute;inset:6px 0 0}.overview-water-column{text-align:center;flex:1 1 0;grid-template-rows:18px minmax(0,1fr) auto auto;align-items:end;gap:4px;min-width:0;display:grid}.overview-water-value{color:#365e92;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.overview-water-track{justify-content:center;align-items:flex-end;width:100%;height:100%;display:flex}.overview-water-track i{background:linear-gradient(#6ba8e4 0%,#3f75b7 48%,#234a82 100%);border-radius:6px 6px 2px 2px;width:min(42px,66%);min-height:12px;display:block;position:relative;box-shadow:0 3px 5px #2a5b972e}.overview-water-track i:before{content:"";background:#ffffff80;border-radius:50%;height:2px;position:absolute;top:5px;left:5px;right:5px}.overview-water-track i.missing{min-height:36px;box-shadow:none;background:repeating-linear-gradient(135deg,#f2f5f9 0 5px,#e5ebf3 5px 10px);border:1px dashed #bdc9d8}.overview-water-track i.missing:before{display:none}.overview-water-column strong{color:#465a75;text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:700;overflow:hidden}.overview-water-column small{color:#8d9caf;font-variant-numeric:tabular-nums;font-size:10px}.overview-data-note,.overview-data-empty{color:var(--color-text-400);margin:9px 0 0;font-size:10px;line-height:1.5}.overview-data-empty{text-align:center;padding:22px 8px}.overview-data-link{color:#2d66a6;border-top:1px solid #edf1f5;justify-content:space-between;align-items:center;gap:8px;margin-top:auto;padding-top:9px;font-size:10px;font-weight:700;text-decoration:none;display:flex}.overview-data-link span{color:#6191c7;font-size:15px;font-weight:400}.overview-data-link:hover{color:#164c8f}.overview-data-skeleton{align-content:center;gap:10px;min-height:216px;margin-top:14px;display:grid}.overview-data-skeleton.compact{min-height:150px}.overview-data-skeleton i{background:#edf2f7;border-radius:99px;height:10px;display:block}.overview-operations-panel{min-height:336px}.overview-operations-summary{background:#fff9ed;border:1px solid #f0dfb9;border-radius:7px;align-items:center;gap:11px;margin-top:14px;padding:10px;display:flex}.overview-operations-summary>strong{color:#a16d1a;font-variant-numeric:tabular-nums;font-size:30px;line-height:1}.overview-operations-summary>span{gap:3px;min-width:0;display:grid}.overview-operations-summary b{color:#765626;font-size:11px}.overview-operations-summary small{color:#927442;text-overflow:ellipsis;white-space:nowrap;font-size:10px;line-height:1.4;overflow:hidden}.overview-operations-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:11px;display:grid}.overview-operation-item{background:#fbfcfe;border:1px solid #e5ebf2;border-left:3px solid #7b91ae;border-radius:6px;justify-content:space-between;align-items:center;gap:7px;min-width:0;padding:9px 10px;display:flex}.overview-operation-item span{color:#53647c;text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.overview-operation-item strong{color:#1c3968;font-variant-numeric:tabular-nums;font-size:16px}.overview-operation-item.arrival{border-left-color:#31916d}.overview-operation-item.out,.overview-operation-item.book{border-left-color:#4b85bf}.overview-operation-item.leave,.overview-operation-item.warning{border-left-color:#c18a2c}.overview-operation-item.danger{border-left-color:#c65a54}.overview-operation-item.arrival strong{color:#238260}.overview-operation-item.out strong,.overview-operation-item.book strong{color:#3979b7}.overview-operation-item.leave strong,.overview-operation-item.warning strong{color:#a36f1d}.overview-operation-item.danger strong{color:#b34d48}.overview-operations-alert{color:#9e6320;text-overflow:ellipsis;white-space:nowrap;margin:10px 0 9px;font-size:10px;line-height:1.45;overflow:hidden}.overview-operations-alert.clear{color:#4c8b6b}.overview-utilization-highlight{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:12px;display:grid}.overview-utilization-highlight>div{background:#f5f8fc;border-radius:6px;gap:4px;padding:8px 9px;display:grid}.overview-utilization-highlight small{color:var(--color-text-400);font-size:10px}.overview-utilization-highlight strong{color:#1f568f;font-variant-numeric:tabular-nums;font-size:19px;line-height:1}.overview-utilization-bar{background:#edf2f7;border-radius:99px;gap:2px;height:13px;margin-top:14px;display:flex;overflow:hidden}.overview-utilization-segment{border-radius:99px;min-width:0;display:block}.overview-utilization-segment.occupied,.overview-utilization-dot.occupied{background:#3e79bb}.overview-utilization-segment.clean,.overview-utilization-dot.clean{background:#31916d}.overview-utilization-segment.dirty,.overview-utilization-dot.dirty{background:#c18a2c}.overview-utilization-segment.repair,.overview-utilization-dot.repair{background:#c65a54}.overview-utilization-segment.book,.overview-utilization-dot.book{background:#8170b4}.overview-utilization-segment.backup,.overview-utilization-dot.backup{background:#8592a5}.overview-utilization-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px 11px;margin-top:15px;display:grid}.overview-utilization-grid>div{color:#5b6b81;justify-content:space-between;align-items:center;gap:5px;min-width:0;font-size:10px;display:flex}.overview-utilization-grid>div>span{align-items:center;gap:5px;min-width:0;display:inline-flex}.overview-utilization-dot{border-radius:50%;flex:none;width:7px;height:7px}.overview-utilization-grid strong{color:#1d385e;font-variant-numeric:tabular-nums;font-size:12px}.overview-sales-structure{gap:13px;margin-top:17px;display:grid}.overview-sales-structure-row{grid-template-columns:70px minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0;display:grid}.overview-sales-structure-row>span{color:#52647e;text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.overview-sales-structure-row>div{background:#edf2f7;border-radius:99px;height:7px;overflow:hidden}.overview-sales-structure-row i{border-radius:inherit;background:linear-gradient(90deg,#4f81ba,#79a8d4);height:100%;display:block}.overview-sales-structure-row strong{color:#203a64;font-variant-numeric:tabular-nums;white-space:nowrap;font-size:10px}.overview-result-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:14px;display:grid}.overview-result-summary-grid>div{background:#fbfcfe;border:1px solid #e6ecf3;border-radius:6px;gap:5px;min-width:0;min-height:50px;padding:8px;display:grid}.overview-result-summary-grid span{color:var(--color-text-400);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.overview-result-summary-grid strong{color:#1d3964;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.overview-roomtypes-table{margin-top:13px;display:grid}.overview-roomtypes-row{color:#52647e;text-align:right;border-bottom:1px solid #edf1f5;grid-template-columns:minmax(110px,1.7fr) repeat(3,minmax(42px,.65fr)) minmax(58px,.8fr);align-items:center;gap:8px;min-width:0;min-height:34px;font-size:10px;display:grid}.overview-roomtypes-row>:first-child{text-align:left;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overview-roomtypes-row.header{color:#8795a7;border-bottom-color:#dce5ef;min-height:26px;font-size:10px}.overview-roomtypes-row strong{color:#2b456d;text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.overview-roomtypes-row b{color:#2b6a9f;font-variant-numeric:tabular-nums;font-size:11px}.overview-roomtypes-row .warning{color:#b17623;font-weight:700}.overview-account-finance-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:12px;display:grid}.overview-account-finance-summary>span{background:#f5f8fc;border-radius:6px;gap:4px;min-width:0;padding:7px 8px;display:grid}.overview-account-finance-summary small{color:var(--color-text-400);font-size:10px}.overview-account-finance-summary strong{color:#1e3c67;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.overview-account-finance-summary strong.negative,.overview-account-row>span.negative{color:#bc504c}.overview-account-rows{margin-top:10px;display:grid}.overview-account-row{color:#253e63;text-align:right;border-bottom:1px solid #edf1f5;grid-template-columns:minmax(0,1fr) 38px 82px;align-items:center;gap:8px;min-height:38px;font-size:10px;display:grid}.overview-account-row-label{text-align:left;grid-template-rows:auto auto;grid-template-columns:7px auto;justify-content:start;align-items:center;column-gap:6px;min-width:0;display:grid}.overview-account-row-label i{background:#397ab6;border-radius:50%;grid-row:1/span 2;width:7px;height:7px}.overview-account-row-label i.in{background:#31916d}.overview-account-row-label i.out{background:#c18a2c}.overview-account-row-label i.book{background:#8170b4}.overview-account-row-label i.draft{background:#8592a5}.overview-account-row-label b,.overview-account-row-label small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overview-account-row-label b{color:#385473;font-size:10px}.overview-account-row-label small{color:#8a98aa;font-size:10px}.overview-account-row>strong,.overview-account-row>span:last-child{font-variant-numeric:tabular-nums;white-space:nowrap}.overview-account-row>strong{color:#1c3964;font-size:13px}.overview-account-row>span:last-child{color:#536984;font-size:10px}.overview-quick-actions{color:#8190a3;flex-wrap:wrap;align-items:center;gap:7px 16px;min-height:38px;padding:0 4px;font-size:10px;display:flex}.overview-quick-actions>span{color:#4a6382;font-weight:700}.overview-quick-actions a{color:#356fae;text-decoration:none}.overview-quick-actions a:hover{color:#164c8f;text-decoration:underline}.rooms-page{gap:var(--content-module-gap);flex-direction:column;min-height:0;padding-bottom:0;display:flex;overflow:hidden}.rooms-heading{justify-content:space-between;align-items:center;gap:20px;min-height:24px;padding:0 0 2px;display:flex}.rooms-heading-legend{flex:auto;align-items:center;gap:12px;min-width:0;display:flex}.rooms-heading-actions{flex:none;align-items:center;gap:12px;margin-left:auto;display:flex}.rooms-freshness{color:var(--color-success);white-space:nowrap;font-size:11px}.rooms-freshness.cached{color:#8c6818}.rooms-toolbar{flex:none;justify-content:space-between;align-items:center;gap:14px;min-width:0;min-height:42px;padding:4px 0;display:flex}.room-filter-group{flex-wrap:wrap;gap:6px;min-width:0;display:flex}.filter-chip{min-height:30px;color:var(--color-text-600);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:5px;align-items:center;gap:6px;padding:0 9px;font-size:11px;display:inline-flex}.filter-chip:hover{color:var(--color-brand-700);background:#eef4ff}.filter-chip.active{color:var(--color-brand-700);background:#eaf2ff;border-color:#b9cff5;font-weight:700}.filter-chip span{color:var(--color-text-400);font-variant-numeric:tabular-nums}.room-sort-select{color:var(--color-text-600);white-space:nowrap;align-items:center;gap:8px;font-size:11px;display:inline-flex}.room-sort-select select{border:1px solid var(--color-border-strong);min-width:132px;height:32px;color:var(--color-text-900);background:var(--color-surface);cursor:pointer;border-radius:5px;padding:0 8px;font-size:12px}.rooms-content{flex:1 1 0;grid-template-columns:minmax(0,1fr);align-items:start;gap:16px;min-width:0;min-height:0;padding-bottom:24px;display:grid;position:relative;overflow:hidden auto}.room-floor-groups{gap:14px;min-width:0;display:grid}.room-floor-group{gap:6px;min-width:0;display:grid}.room-floor-heading{border-bottom:1px solid var(--color-border);align-items:baseline;gap:9px;min-height:22px;padding:0 2px 5px;display:flex}.room-floor-heading h2{color:var(--color-text-900);margin:0;font-size:13px;line-height:1.35}.room-floor-heading h2:before{background:var(--color-brand-500);content:"";vertical-align:-1px;border-radius:2px;width:3px;height:13px;margin-right:7px;display:inline-block}.room-floor-heading span{color:var(--color-text-400);font-variant-numeric:tabular-nums;font-size:11px}.room-grid{grid-template-columns:repeat(auto-fill,minmax(112px,1fr));align-content:start;gap:7px;min-width:0;display:grid}.room-card{min-width:0;min-height:88px;color:var(--color-text-900);text-align:left;cursor:help;border:1px solid #0000;border-radius:6px;grid-template-rows:auto auto minmax(22px,1fr) auto;align-content:start;gap:4px;padding:8px 9px;transition:border-color .12s,box-shadow .12s,transform .12s;display:grid}.room-card:hover,.room-card:focus-visible{z-index:30;border-color:var(--color-brand-500);position:relative;transform:translateY(-1px);box-shadow:0 5px 14px #2141741f}.room-card-topline,.room-card-bottomline{justify-content:space-between;align-items:center;gap:6px;min-width:0;display:flex}.room-card-topline{justify-content:flex-start}.room-card-topline-with-state{justify-content:space-between}.room-card-topline strong{font-variant-numeric:tabular-nums;font-size:14px}.room-card-state-pill{color:currentColor;white-space:nowrap;background:#ffffff75;border-radius:3px;padding:1px 4px;font-size:10px;font-weight:700}.room-card-name,.room-card-middle,.room-card-bottomline{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.room-card-name{color:currentColor;opacity:.82;font-size:10px}.room-card-middle{color:currentColor;font-size:11px;font-weight:600}.room-card-bottomline{color:currentColor;opacity:.78;font-size:10px}.room-card-book{color:#5d4b13;background:#f6edc7}.room-card-occupied{color:#244774;background:#dceaff}.room-card-leave{color:#70451c;background:#f7e2c5}.room-card-clean{color:#1b5d45;background:#d9f0e6}.room-card-dirty{color:#5f4a2f;background:#eee3d3}.room-card-repair{color:#783f3a;background:#f4d9d7}.room-card-backup{color:#4b4a72;background:#e4e2f3}.rooms-filter-empty{border:1px dashed var(--color-border-strong);color:var(--color-text-600);text-align:center;grid-column:1/-1;padding:46px 20px;font-size:13px}.rooms-state{border:1px solid var(--color-border);background:#f8fafc;justify-content:center;align-items:center;gap:14px;min-height:124px;padding:20px;display:flex}.rooms-state.error{background:#fff5f4;border-color:#e8b9b7}.rooms-state>div:not(.state-symbol):not(.loading-spinner){flex:0 auto;min-width:0;max-width:520px}.rooms-state strong{font-size:15px;display:block}.rooms-state p{color:var(--color-text-600);margin:5px 0 0;font-size:12px;line-height:1.55}.loading-spinner{border:3px solid #dce6f4;border-top-color:var(--color-brand-600);border-radius:50%;flex:none;width:24px;height:24px;animation:.7s linear infinite room-spin}@keyframes room-spin{to{transform:rotate(360deg)}}.room-hover-card{z-index:100;border:1px solid var(--color-border);border-top:3px solid var(--color-brand-500);width:min(304px,100vw - 24px);color:var(--color-text-900);pointer-events:none;background:#f8fafc;border-radius:7px;padding:10px 12px;position:fixed;box-shadow:0 14px 32px #2141742e}.room-hover-card-heading{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.room-hover-card-heading strong{font-variant-numeric:tabular-nums;font-size:16px;display:block}.room-hover-card-heading p{color:var(--color-text-600);margin:2px 0 0;font-size:10px}.room-hover-status{color:var(--color-brand-700);white-space:nowrap;background:#e6efff;border-radius:4px;flex:none;padding:2px 6px;font-size:10px;font-weight:700;display:inline-flex}.room-hover-status.leave{color:#70451c;background:#f7e2c5}.room-hover-status.repair{color:#783f3a;background:#f4d9d7}.room-hover-status.clean{color:#1b5d45;background:#d9f0e6}.room-hover-status.dirty{color:#5f4a2f;background:#eee3d3}.room-hover-status.backup{color:#4b4a72;background:#e4e2f3}.room-hover-status.book{color:#5d4b13;background:#f6edc7}.icon-button{width:28px;height:28px;color:var(--color-text-600);cursor:pointer;background:0 0;border:0;font-size:20px;line-height:1}.icon-button:hover{color:var(--color-text-900);background:#e9eef5}.room-hover-card-list{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:12px;margin:9px 0 0;display:grid}.room-hover-card-list>div{border-top:1px solid var(--color-border);grid-template-columns:48px minmax(0,1fr);gap:5px;min-width:0;min-height:24px;padding:4px 0;font-size:11px;line-height:1.35;display:grid}.room-hover-card-list>.room-hover-card-remark{grid-column:1/-1}.room-hover-card-list dt{color:var(--color-text-400)}.room-hover-card-list dd{overflow-wrap:anywhere;word-break:break-word;min-width:0;color:var(--color-text-900);margin:0}.rooms-page{gap:10px}.rooms-heading{min-height:24px;padding-bottom:0}.rooms-workbench{flex:1 1 0;grid-template-columns:236px minmax(0,1fr);align-items:stretch;gap:14px;min-width:0;min-height:0;display:grid;overflow:hidden}.rooms-context-rail{scrollbar-width:thin;background:#f4f8fc;border:1px solid #d8e2ef;border-radius:8px;flex-direction:column;gap:14px;min-width:0;min-height:0;padding:14px 12px;display:flex;overflow:hidden auto}.rooms-rail-header{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.rooms-rail-header>div{gap:3px;display:grid}.rooms-rail-eyebrow{color:var(--color-text-400);letter-spacing:.04em;font-size:10px}.rooms-rail-header strong{color:var(--color-text-900);font-size:14px}.rooms-nav-button{min-height:26px;color:var(--color-brand-700);cursor:pointer;background:#fff;border:1px solid #cbd9ea;border-radius:5px;flex:none;padding:0 8px;font-size:10px}.rooms-nav-button:hover{background:#edf4ff;border-color:#8eafe0}.rooms-rail-search{background:#fff;border:1px solid #cbd9ea;border-radius:5px;align-items:center;min-width:0;height:32px;display:flex}.rooms-rail-search:focus-within{border-color:#8eafe0;box-shadow:0 0 0 2px #467cc41f}.rooms-rail-search-icon{color:var(--color-text-400);flex:0 0 28px;justify-content:center;align-items:center;display:inline-flex}.rooms-rail-search-icon svg{width:14px;height:14px}.rooms-rail-search input{width:100%;min-width:0;height:100%;color:var(--color-text-900);background:0 0;border:0;outline:0;padding:0 8px 0 0;font-size:11px}.rooms-rail-search input::placeholder{color:var(--color-text-400)}.rooms-rail-section{gap:8px;min-width:0;display:grid}.rooms-rail-section+.rooms-rail-section{border-top:1px solid #dce5f0;padding-top:12px}.rooms-rail-section-heading{color:var(--color-text-900);justify-content:space-between;align-items:center;gap:8px;font-size:11px;font-weight:700;display:flex}.rooms-rail-section-note{color:var(--color-text-400);font-size:10px;font-weight:400}.rooms-rail-reset{color:var(--color-brand-600);cursor:pointer;background:0 0;border:0;padding:0;font-size:10px}.rooms-rail-reset:disabled{color:var(--color-text-400);cursor:default}.rooms-rail-filter-list,.rooms-type-list,.rooms-attention-list{gap:2px;display:grid}.rooms-rail-filter,.rooms-type-row,.rooms-attention-row{min-width:0;min-height:27px;color:var(--color-text-600);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:5px;align-items:center;gap:7px;padding:0 7px;font-size:11px;display:flex}.rooms-rail-filter:hover,.rooms-rail-filter.active,.rooms-type-row:hover,.rooms-type-row.active,.rooms-attention-row:hover,.rooms-attention-row.active{color:var(--color-brand-700);background:#eaf2ff;border-color:#c9dafa}.rooms-rail-filter>span:nth-child(2),.rooms-type-row>span:first-child,.rooms-attention-row>span:nth-child(2){text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.rooms-rail-filter strong,.rooms-type-row strong,.rooms-attention-row strong{color:var(--color-text-900);font-variant-numeric:tabular-nums;margin-left:auto;font-size:11px}.rooms-rail-filter.active strong,.rooms-type-row.active strong,.rooms-attention-row.active strong{color:var(--color-brand-700)}.rooms-rail-select{color:var(--color-text-400);gap:5px;font-size:10px;display:grid}.rooms-rail-select select{width:100%;height:30px;color:var(--color-text-900);background:#fff;border:1px solid #cbd9ea;border-radius:5px;padding:0 7px;font-size:11px}.rooms-type-row{width:100%}.rooms-type-row strong{color:var(--color-text-500);font-size:10px}.room-status-dot{background:#cbd5e1;border-radius:50%;flex:0 0 8px;width:8px;height:8px;display:inline-block}.room-status-dot.all{background:#8295ad}.room-status-dot.clean{background:#5eaa87}.room-status-dot.dirty,.room-status-dot.occupied-dirty{background:#bf8751}.room-status-dot.occupied{background:#5b8fc9}.room-status-dot.leave{background:#cb8a3e}.room-status-dot.repair,.room-status-dot.owe{background:#c75b57}.room-status-dot.backup,.room-status-dot.inspect{background:#847fb3}.room-status-dot.book{background:#ad8e3c}.rooms-rail-metrics{border-top:1px solid #dce5f0;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:auto;padding-top:12px;display:grid}.rooms-rail-metrics>div{gap:3px;min-width:0;display:grid}.rooms-rail-metrics span{color:var(--color-text-400);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.rooms-rail-metrics strong{color:var(--color-text-900);font-variant-numeric:tabular-nums;font-size:16px}.rooms-board{flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden}.rooms-board-legend{flex:none;align-items:center;gap:9px;font-size:11px;line-height:1.2;display:flex}.rooms-board-legend span{white-space:nowrap;align-items:center;gap:4px;display:inline-flex}.rooms-heading-legend-divider{background:var(--color-border);flex:0 0 1px;width:1px;height:18px}.rooms-card-icon-legend{min-width:0;color:var(--color-text-500);flex-wrap:wrap;align-items:center;gap:4px 8px;font-size:10px;line-height:1.2;display:flex}.rooms-card-icon-legend-item{white-space:nowrap;align-items:center;gap:3px;display:inline-flex}.rooms-card-icon-legend .room-card-badge{color:#31517e;background:#f1f5fa;border:1px solid #c8d4e2;width:14px;height:14px;min-height:14px}.rooms-card-icon-legend .room-card-badge.agreement-meituan{color:#8b5824;background:#fff3d7;border-color:#d8bd88}.rooms-card-icon-legend .room-card-badge.agreement-ctrip{color:#17527f;background:#e4f3ff;border-color:#8db9d8}.rooms-card-icon-legend .room-card-badge.agreement-fliggy{color:#554083;background:#f0e8ff;border-color:#b7a1d9}.rooms-card-icon-legend .room-card-badge.agreement-douyin{color:#3d3d49;background:#f0f0f4;border-color:#b4b4bc}.rooms-card-icon-legend .room-card-badge.agreement-account{color:#76502e;background:#fff1df;border-color:#c8a882}.rooms-card-icon-legend .room-card-badge.agreement-member{color:#24684f;background:#e7f8ed;border-color:#9acbad}.rooms-card-icon-legend .room-card-badge.vip{color:#8a6716;background:#fff6d5;border-color:#d9bd70}.rooms-card-icon-legend .room-card-badge.owe{color:#a92f2c;background:#fff0f0;border-color:#e3a4a4}.rooms-card-icon-legend .room-card-badge.inspect{color:#5f5b95;background:#f2efff;border-color:#b9b1df}.rooms-card-icon-legend .room-card-badge.inspect-complete{color:#24684f;background:#e7f8ed;border-color:#9acbad}.rooms-card-icon-legend .room-card-badge.leave{color:#9a581d;background:#fff1e6;border-color:#e1b08d}.rooms-board-legend .room-status-dot{flex-basis:7px;width:7px;height:7px}.rooms-board .rooms-content{padding:0 2px 22px 0;overflow-y:auto}.rooms-board .room-grid{grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:6px}.rooms-board .room-floor-groups{gap:12px}.rooms-board .room-floor-heading{padding-bottom:4px}.rooms-board .room-floor-heading h2{font-size:11px}.rooms-board .room-card{cursor:help;border:1px solid #0000;border-radius:6px;grid-template-rows:auto auto minmax(0,1fr) auto;gap:3px;min-height:84px;padding:7px 8px}.rooms-board .room-card-topline strong{font-size:14px}.rooms-board .room-card-name{font-size:10px;font-weight:600}.rooms-board .room-card-middle{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:10px;font-weight:700;overflow:hidden}.rooms-board .room-card-bottomline{grid-row:4;min-height:14px;font-size:10px}.room-card-badges{justify-content:flex-end;align-items:center;gap:3px;min-width:0;display:inline-flex;overflow:hidden}.room-card-badge{color:currentColor;white-space:nowrap;background:#ffffff80;border-radius:3px;justify-content:center;align-items:center;width:15px;height:15px;min-height:15px;padding:0;font-weight:700;display:inline-flex}.room-card-badge-text{white-space:nowrap;justify-content:center;align-items:center;width:100%;height:100%;font-family:-apple-system,Helvetica,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,Source Han Sans SC,Noto Sans CJK SC,WenQuanYi Micro Hei,sans-serif;font-size:10px;font-weight:800;line-height:1;display:inline-flex}.room-card-broom-icon{flex:0 0 16px;width:16px;height:16px;display:block}.rooms-card-icon-legend .room-card-badge-text{font-size:10px}.room-card-badge.agreement-member .room-card-badge-text,.room-card-badge.vip .room-card-badge-text{letter-spacing:-.08em;font-size:6px}.rooms-card-icon-legend .room-card-badge.agreement-member .room-card-badge-text,.rooms-card-icon-legend .room-card-badge.vip .room-card-badge-text{font-size:7px}.room-card-badge.owe{color:#a92f2c;background:#ffffffb8}.room-card-badge.inspect{color:#5f5b95;background:#ffffff9e}.room-card-badge.leave{color:#9a581d;background:#ffffffa3}.room-card-occupied-dirty{color:#70451c;background:#f7e2c5}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.rooms-workbench{width:100%;display:block;overflow:hidden}.rooms-board{width:100%;height:100%}.rooms-board .rooms-content{flex:auto;min-height:0}.rooms-board-legend .room-legend-swatch{border-radius:2px;flex:0 0 8px;width:8px;height:8px;display:inline-block}.rooms-board-legend .room-legend-swatch.clean{background:#247a55}.rooms-board-legend .room-legend-swatch.dirty{background:#77502f}.rooms-board-legend .room-legend-swatch.occupied{background:#2f78b5}.rooms-board-legend .room-legend-swatch.occupied-dirty{background:#b46b25}.rooms-board-legend .room-legend-swatch.leave{background:#b84d2f}.rooms-board-legend .room-legend-swatch.book{background:#7441b8}.rooms-board-legend .room-legend-swatch.backup{background:#3f587b}.rooms-board-legend .room-legend-swatch.repair{background:#b44949}.rooms-board .room-card{color:#fff;border-color:#ffffff24;box-shadow:0 2px 5px #12233a17}.rooms-board .room-card-topline strong,.rooms-board .room-card-name,.rooms-board .room-card-middle,.rooms-board .room-card-bottomline{color:#fff}.rooms-board .room-card-middle{color:#000}.rooms-board .room-card-name{opacity:.84}.rooms-board .room-card-bottomline{opacity:.92}.rooms-board .room-card-state-pill{color:#fff;background:#08182c47;border:1px solid #ffffff40}.rooms-board .room-card-badge{color:#fff;background:#08182c52;border:1px solid #ffffff38}.rooms-board .room-card-badge.vip{color:#fff6cf;background:#69440c8f;border-color:#ffeca785}.rooms-board .room-card-badge.owe{color:#fff;background:#8e2631;border-color:#ffc5c56b}.rooms-board .room-card-badge.inspect{color:#fff;background:#554b99;border-color:#dbd5ff6b}.rooms-board .room-card-badge.inspect-complete{color:#e0ffec;background:#24684f;border-color:#bef5da75}.rooms-board .room-card-badge.leave{color:#fff;background:#9f4325;border-color:#ffdabe6b}.rooms-board .room-card-badge.agreement-meituan{color:#fff3c4;background:#8b5824;border-color:#ffe2a075}.rooms-board .room-card-badge.agreement-ctrip{color:#d9efff;background:#17527f;border-color:#bee0ff75}.rooms-board .room-card-badge.agreement-fliggy{color:#f0e6ff;background:#554083;border-color:#e2d0ff75}.rooms-board .room-card-badge.agreement-douyin{color:#f1f1f8;background:#4a4a58;border-color:#ececf67a}.rooms-board .room-card-badge.agreement-account{color:#fff0d9;background:#76502d;border-color:#ffe1bc7a}.rooms-board .room-card-badge.agreement-member{color:#e0ffec;background:#24684f;border-color:#bef5da75}.rooms-board .room-card .room-card-badge.dirty{color:#666;background:0 0;border:0 #0000;border-radius:2px;width:16px;height:16px;min-height:16px}.rooms-board .room-card-book{color:#fff;background:#7441b8}.rooms-board .room-card-occupied{color:#fff;background:#2f78b5}.rooms-board .room-card-occupied-dirty{color:#fff;background:#b46b25}.rooms-board .room-card-leave{color:#fff;background:#b84d2f}.rooms-board .room-card-clean{color:#fff;background:#247a55}.rooms-board .room-card-dirty{color:#fff;background:#77502f}.rooms-board .room-card-repair{color:#fff;background:#b44949}.rooms-board .room-card-backup{color:#fff;background:#3f587b}.rooms-board .room-card:hover,.rooms-board .room-card:focus-visible{border-color:#fff;box-shadow:0 7px 18px #12233a38}.rooms-board .room-card-topline strong{color:#333;font-size:12px}.reports-page{gap:var(--content-module-gap);width:100%;height:100%;min-height:0;font-family:var(--font-report-family);font-variant-numeric:tabular-nums;flex-direction:column;padding-bottom:0;display:flex}.room-register-page{gap:var(--content-module-gap)}.room-register-filters{background:0 0;border:0;flex-wrap:wrap;align-items:flex-end;gap:10px 12px;padding:8px 0 12px;display:flex}.room-register-filters>label{width:var(--filter-keyword-width);flex:0 1 var(--filter-keyword-width);min-width:156px;max-width:180px;color:var(--color-text-600);gap:5px;font-size:11px;display:grid}.room-register-filters>label:has(>select){width:var(--filter-select-width);flex-basis:var(--filter-select-width);min-width:120px;max-width:144px}.room-register-filters>label>span:first-child,.room-register-filters>.report-date-range-field>span:first-child,.room-register-filters>.report-multi-select-field>span:first-child,.settings-search>label>span:first-child{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.room-register-filters input,.room-register-filters select{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);width:100%;height:34px;color:var(--color-text-900);background:var(--color-surface);padding:0 9px;font-size:12px}.room-register-filters input:focus,.room-register-filters select:focus{border-color:var(--color-brand-500);outline:0;box-shadow:0 0 0 3px #3b82f61f}.room-register-filters input:disabled{color:var(--color-text-400);background:var(--color-surface-muted);cursor:not-allowed}.report-multi-select-field{z-index:2;color:var(--color-text-600);gap:5px;font-size:11px;display:grid;position:relative}.room-register-filters>.report-multi-select-field{width:var(--filter-select-width);flex:0 1 var(--filter-select-width);min-width:120px;max-width:144px}.report-multi-select-trigger{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);width:100%;min-width:0;height:34px;color:var(--color-text-900);background:var(--color-surface);font:inherit;text-align:left;cursor:pointer;justify-content:space-between;align-items:center;gap:8px;padding:0 9px;font-size:12px;display:flex}.report-multi-select-trigger:hover,.report-multi-select-trigger[aria-expanded=true]{border-color:var(--color-brand-500)}.report-multi-select-trigger:focus-visible{border-color:var(--color-brand-500);outline:0;box-shadow:0 0 0 3px #3b82f61f}.report-multi-select-value{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.report-multi-select-caret{color:var(--color-text-500);flex:none;font-size:11px}.report-multi-select-menu{z-index:20;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface);min-width:180px;max-width:240px;padding:6px;position:absolute;top:calc(100% + 5px);left:0;box-shadow:0 10px 24px #0f172a24}.report-multi-select-menu label,.report-multi-select-option-all{width:100%;min-height:30px;color:var(--color-text-700);white-space:nowrap;border-radius:4px;align-items:center;gap:7px;padding:5px 7px;font-size:12px;line-height:1.2;display:flex}.report-multi-select-menu label:hover,.report-multi-select-option-all:hover,.report-multi-select-option-all.active{color:var(--color-text-900);background:#eef4ff}.report-multi-select-option-all{font:inherit;text-align:left;cursor:pointer;background:0 0;border:0}.report-multi-select-menu input[type=checkbox]{min-height:16px;accent-color:var(--color-brand-500);border:0;margin:0;padding:0;width:16px!important;height:16px!important}.report-date-range-field{width:var(--filter-date-range-width);flex:1 1 var(--filter-date-range-width);min-width:224px;max-width:280px;color:var(--color-text-600);gap:5px;font-size:11px;display:grid}.room-register-filters>.report-date-basis-select{width:var(--filter-select-width);flex:0 1 var(--filter-select-width);max-width:144px;min-width:120px!important;color:var(--color-text-600)!important;gap:5px!important;font-size:11px!important;display:grid!important}.room-register-filters>.report-query-field,.room-register-filters>.report-keyword-field{color:var(--color-text-600);gap:5px;font-size:11px;display:grid}.room-register-filters>.report-query-field{width:var(--filter-select-width);flex:0 1 var(--filter-select-width);min-width:120px;max-width:144px}.room-register-filters>.report-keyword-field{width:var(--filter-keyword-width);flex:0 1 var(--filter-keyword-width);min-width:156px;max-width:180px}.report-date-basis-select select{width:100%}.room-register-filters .report-date-range-field>small{display:none}.member-points-activity-mode{align-self:end}.member-points-activity-date-field small{color:var(--color-text-500);font-size:10px;line-height:1.4}.member-points-statistics-mode{align-self:end}.member-points-statistics-date-field small,.member-charge-date-field small,.member-activation-date-field small{color:var(--color-text-500);font-size:10px;line-height:1.4}.report-date-range-picker{width:100%;position:relative}.report-single-date-picker{align-items:center;gap:6px;width:100%;display:flex}.report-single-date-input{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);min-width:0;height:34px;color:var(--color-text-700);background:var(--color-surface);font-variant-numeric:tabular-nums;flex:auto;padding:0 10px;font-size:12px}.report-single-date-input:focus{border-color:var(--color-brand-500);outline:0;box-shadow:0 0 0 3px #3b82f61f}.report-single-date-input:disabled{color:var(--color-text-400);background:var(--color-surface-muted);cursor:not-allowed}.report-date-range-nav{align-items:center;gap:6px;width:100%;display:flex}.report-date-range-step,.report-date-range-trigger{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);height:34px;color:var(--color-text-700);background:var(--color-surface);cursor:pointer;font-size:12px;transition:border-color .12s,box-shadow .12s,background .12s}.report-date-range-step{white-space:nowrap;flex:none;min-width:44px;padding:0 10px}.report-date-range-step.icon{width:30px;min-width:30px;color:var(--color-text-600);padding:0;font-size:17px;line-height:1}.report-date-range-trigger{text-align:left;flex:auto;align-items:center;gap:8px;min-width:0;padding:0 10px;display:flex}.report-date-range-trigger>span:first-of-type{text-overflow:ellipsis;white-space:nowrap;font-variant-numeric:tabular-nums;flex:auto;min-width:0;overflow:hidden}.report-date-range-icon{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;opacity:.55;flex:none;width:14px;height:14px}.report-date-range-trigger.is-empty>span:first-of-type{color:var(--color-text-400)}.report-date-range-caret{color:var(--color-text-400);flex:none;font-size:11px;transition:transform .15s}.report-date-range-picker.is-open .report-date-range-trigger{border-color:var(--color-brand-500);box-shadow:0 0 0 3px #3b82f61f}.report-date-range-picker.is-open .report-date-range-caret{transform:rotate(180deg)}.report-date-range-step:hover:not(:disabled),.report-date-range-trigger:hover:not(:disabled){border-color:var(--color-brand-500);background:#f5f9ff}.report-date-range-step:disabled,.report-date-range-trigger:disabled{color:var(--color-text-400);background:var(--color-surface-muted);cursor:not-allowed}.report-date-range-popover{z-index:80;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);display:flex;position:absolute;top:calc(100% + 6px);left:0;overflow:hidden;box-shadow:0 14px 34px #14264a2e}.report-date-range-presets{border-right:1px solid var(--color-border);background:var(--color-surface-muted);flex-direction:column;gap:2px;min-width:82px;padding:8px;display:flex}.report-date-range-presets button{border-radius:var(--radius-sm);height:28px;color:var(--color-text-600);cursor:pointer;text-align:left;white-space:nowrap;background:0 0;border:0;padding:0 10px;font-size:12px}.report-date-range-presets button:hover{color:var(--color-brand-700);background:#eaf2ff}.report-date-range-calendar{width:252px;padding:10px 12px 12px}.report-date-range-calendar-head{align-items:center;gap:6px;margin-bottom:8px;display:flex}.report-date-range-calendar-head select{border:1px solid var(--color-border);border-radius:var(--radius-sm);height:28px;color:var(--color-text-900);background:var(--color-surface);cursor:pointer;padding:0 4px;font-size:12px}.report-date-range-calendar-head select:first-of-type{flex:auto;min-width:86px}.report-date-range-calendar-head select:last-of-type{min-width:58px}.report-date-range-calendar-nav{border:1px solid var(--color-border);border-radius:var(--radius-sm);width:28px;height:28px;color:var(--color-text-600);background:var(--color-surface-muted);cursor:pointer;padding:0;font-size:17px;line-height:1}.report-date-range-calendar-nav:hover{border-color:var(--color-brand-500);color:var(--color-brand-700);background:#f5f9ff}.report-date-range-weekdays,.report-date-range-grid{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.report-date-range-weekdays span{height:22px;color:var(--color-text-400);text-align:center;font-size:11px;line-height:22px}.report-date-range-weekdays span:first-child,.report-date-range-weekdays span:last-child{color:var(--color-brand-600)}.report-date-range-day{border-radius:var(--radius-sm);height:30px;color:var(--color-text-900);cursor:pointer;font-variant-numeric:tabular-nums;background:0 0;border:0;justify-content:center;align-items:center;padding:0;font-size:12px;display:flex}.report-date-range-day.is-blank{visibility:hidden;cursor:default}.report-date-range-day:not(.is-blank):hover{background:#eaf2ff}.report-date-range-day.is-today{box-shadow:inset 0 0 0 1px var(--color-brand-400)}.report-date-range-day.is-in-range{color:var(--color-brand-700);background:#e8f1ff;border-radius:0}.report-date-range-day.is-start,.report-date-range-day.is-end{color:#fff;background:var(--color-brand-600);font-weight:700}.report-date-range-day.is-start{border-radius:var(--radius-sm) 0 0 var(--radius-sm)}.report-date-range-day.is-end{border-radius:0 var(--radius-sm) var(--radius-sm) 0}.report-date-range-day.is-start.is-end{border-radius:var(--radius-sm)}.report-date-range-footer{border-top:1px solid var(--color-border);color:var(--color-text-600);align-items:center;gap:10px;margin-top:10px;padding-top:8px;font-size:12px;display:flex}.report-date-range-footer label{min-width:auto;color:var(--color-text-600);cursor:pointer;-webkit-user-select:none;user-select:none;flex:none;align-items:center;gap:4px;font-size:12px;display:inline-flex}.report-date-range-footer input{width:14px;height:14px;margin:0}.report-date-range-footer>span{min-width:0;color:var(--color-text-600);font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap;flex:auto}.room-register-filter-actions{gap:8px;min-height:34px;margin-left:auto;display:flex}.room-register-filter-actions .primary-button,.room-register-filter-actions .secondary-button{min-height:34px;padding:0 14px;font-size:12px}.report-filter-actions{align-items:center;gap:8px;min-height:34px;margin-left:auto;display:flex}.report-filter-actions .primary-button,.report-filter-actions .secondary-button,.report-filter-actions .ghost-button{min-height:34px;padding:0 14px;font-size:12px}.ghost-button{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);color:var(--color-text-700);background:var(--color-surface);cursor:pointer}.ghost-button:hover:not(:disabled){border-color:var(--color-brand-500);color:var(--color-brand-700);background:#f5f9ff}.ghost-button:disabled{color:var(--color-text-400);background:var(--color-surface-muted);cursor:not-allowed}.room-register-status{min-width:38px;color:var(--color-text-600);background:#eef2f7;border-radius:4px;justify-content:center;padding:3px 6px;font-size:10px;font-weight:700;display:inline-flex}.room-register-status.status-0{color:#1e578c;background:#e0edff}.room-register-status.status-1{color:#6b5420;background:#f7edca}.room-register-status.status--1,.room-register-status.status--2{color:#7b3531;background:#fde8e7}.room-register-table{min-width:1180px}.room-register-text-cell{text-overflow:ellipsis;max-width:180px;overflow:hidden}.guest-history-page{gap:var(--content-module-gap)}.guest-history-table{min-width:860px}.reports-heading{flex:none;justify-content:space-between;align-items:center;gap:20px;min-width:0;min-height:24px;padding:0 0 2px;display:flex}.reports-heading>div:first-child{min-width:0}.reports-heading h2{margin:0;font-size:18px;line-height:1.3}.reports-heading>.eyebrow,.access-heading>.eyebrow,.audit-heading>.eyebrow{color:var(--color-text-900);letter-spacing:-.02em;text-transform:none;margin:0;font-size:18px;line-height:1.3}.reports-heading>div>p:not(.eyebrow),.reports-heading-note{display:none}.reports-heading>div:has(>h2)>.eyebrow{display:none}.reports-heading-actions{flex-wrap:wrap;flex:none;justify-content:flex-end;align-items:center;gap:10px;display:flex}.reports-heading-actions .primary-button,.reports-heading-actions .secondary-button,.reports-heading-actions .danger-button{min-height:32px;padding:0 12px;font-size:12px}.reports-heading-actions>.danger-button,.settings-heading-actions>.danger-button{border-left:1px solid var(--color-border);margin-left:8px;padding-left:16px}.report-source-note{color:var(--color-text-600);background:#f5f8fc;border:1px solid #dce6f2;align-items:baseline;gap:10px;padding:10px 12px;font-size:11px;line-height:1.5;display:none}.report-source-note strong{color:var(--color-text-900);flex:none;font-size:12px}.report-summary-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.report-summary-strip span{border:1px solid var(--color-border);color:var(--color-text-500);background:#fbfcfe;justify-content:space-between;align-items:baseline;gap:10px;padding:11px 13px;font-size:11px;display:flex}.report-summary-strip strong{color:var(--color-text-900);font-variant-numeric:tabular-nums;font-size:17px}.breakfast-statistics-table{min-width:1140px}.breakfast-ticket-records-table{min-width:1220px}.breakfast-ticket-records-table .report-text-cell{white-space:pre-wrap;min-width:180px;max-width:300px}.pay-item-records-table{min-width:1560px}.payment-reconciliation-table{min-width:2240px}.payment-reconciliation-table th,.payment-reconciliation-table td{white-space:nowrap}.payment-reconciliation-table td:nth-child(5),.payment-reconciliation-table td:nth-child(22),.payment-reconciliation-table td:nth-child(24),.payment-reconciliation-table td:nth-child(25){white-space:pre-wrap;min-width:140px;max-width:260px}.payment-reconciliation-filters{grid-template-columns:minmax(280px,1fr) auto}.payment-reconciliation-summary{grid-template-columns:repeat(7,minmax(0,1fr))}.sale-changed-table{min-width:1480px}.sale-changed-table td:last-child,.sale-changed-table th:last-child,.pay-item-records-table td:nth-child(10){white-space:pre-wrap;min-width:180px;max-width:300px}.pay-item-records-search{align-items:center;gap:10px;min-height:34px;display:flex}.pay-item-records-search select,.pay-item-records-search input{border:1px solid var(--color-border-strong);min-height:34px;color:var(--color-text-800);background:var(--color-surface);font-size:12px}.pay-item-records-search select{width:var(--filter-select-width);min-width:120px;max-width:144px;padding:0 8px}.pay-item-records-search input{width:var(--filter-keyword-width);min-width:156px;max-width:180px;padding:0 9px}.pay-item-records-workspace{grid-template-columns:238px minmax(0,1fr)}.pay-item-records-single-workspace,.current-prepay-single-workspace{grid-template-columns:minmax(0,1fr)}.pay-item-records-tree-group{gap:3px;display:grid}.pay-item-records-tree-status{border-left:1px solid #dbe5f0;gap:3px;margin-left:12px;padding-left:8px;display:grid}.pay-item-records-tree-status .settled-income-daily-tree-item{padding-top:6px;padding-bottom:6px}.pay-item-records-summary strong:last-child{font-size:13px}.report-filter-bar{border-bottom:1px solid var(--color-border);align-items:center;gap:2px;width:100%;min-width:0;min-height:42px;display:flex}.report-filter-tab{min-height:42px;color:var(--color-text-600);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;padding:0 13px;font-size:12px}.report-filter-tab:hover{color:var(--color-brand-700);background:#f3f7fd}.report-filter-tab.active{border-bottom-color:var(--color-brand-500);color:var(--color-brand-700);font-weight:700}.report-filter-action{flex:none;min-height:34px;margin-left:auto;padding:0 12px;font-size:12px}.report-inline-error{color:#7b3531;background:#fff5f4;border:1px solid #e8b9b7;flex:none;align-items:center;gap:10px;padding:9px 12px;font-size:12px;display:flex}.report-inline-error span{flex:auto}.text-button{color:var(--color-brand-600);cursor:pointer;background:0 0;border:0;padding:0;font-size:12px}.report-state{border:1px solid var(--color-border);background:#f8fafc;flex:auto;justify-content:center;align-items:center;gap:14px;min-width:0;min-height:124px;padding:20px;display:flex}.report-state.error{background:#fff5f4;border-color:#e8b9b7}.report-state>div:not(.state-symbol):not(.loading-spinner){flex:0 auto;min-width:0;max-width:520px}.report-state strong{font-size:15px;display:block}.report-state p{color:var(--color-text-600);margin:5px 0 0;font-size:12px;line-height:1.55}.report-workspace{flex:1 1 0;grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr);align-items:stretch;gap:16px;width:100%;min-width:0;height:100%;min-height:0;display:grid;overflow:hidden}.report-workspace:has(>.report-summary-strip){grid-template-rows:auto minmax(0,1fr)}.report-workspace:has(>.report-summary-strip):has(>.report-pagination){grid-template-rows:auto minmax(0,1fr) auto}.report-workspace:not(:has(>.report-summary-strip)):has(>.report-pagination){grid-template-rows:minmax(0,1fr) auto}.report-workspace>.report-summary-strip{min-height:0}.report-workspace>.report-pagination{width:100%}.report-table-panel{border:1px solid var(--color-border);background:#fbfcfe;flex-direction:column;width:100%;min-width:0;height:100%;min-height:0;display:flex;overflow:hidden}.reports-page>[class*=-workspace],.reports-page>[class*=-report-panel]{flex:1 1 0;width:100%;height:100%;min-height:0;overflow:hidden}.reports-page [class*=-report-panel]{flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden}.reports-page [class*=-report-panel]>.report-workspace,.reports-page [class*=-report-panel]>.report-table-panel,.reports-page [class*=-report-panel]>.report-state,.reports-page .settled-income-daily-report-panel>.settled-income-daily-table-panel{flex:1 1 0;min-height:0}.report-table-meta{border-bottom:1px solid var(--color-border);min-width:0;color:var(--color-text-600);flex:none;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;font-size:11px;display:flex}.report-table-meta span:first-child{text-overflow:ellipsis;min-width:0;color:var(--color-text-900);font-size:13px;font-weight:700;overflow:hidden}.report-table-scroll{overscroll-behavior:contain;flex:auto;min-width:0;min-height:0;overflow:auto}.report-pagination{border-top:1px solid var(--color-border);color:var(--color-text-600);background:#fbfcfe;flex:none;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;font-size:11px;display:flex}.report-pagination-actions{align-items:center;gap:8px;display:flex}.report-pagination-actions .secondary-button{min-height:28px;padding:0 10px;font-size:11px}.report-pagination-actions strong{min-width:58px;color:var(--color-text-900);text-align:center;font-variant-numeric:tabular-nums}.report-table{border-collapse:collapse;width:100%;min-width:880px;font-size:12px}.report-table th,.report-table td{text-align:left;white-space:nowrap;border-bottom:1px solid #e7edf5;padding:10px 11px}.report-table thead th{z-index:1;color:var(--color-text-600);background:#f1f5fa;font-size:11px;font-weight:700;position:sticky;top:0}.report-table tbody tr{color:var(--color-text-900);cursor:pointer}.report-table tbody tr:hover{background:#edf4ff}.report-table tbody tr.selected{box-shadow:inset 4px 0 0 var(--color-brand-600);background:#cfe0fb}.report-table tbody tr.selected:hover{background:#bfd5f7}.report-table tbody td strong{font-weight:600;display:block}.report-table tbody td small{color:var(--color-text-400);margin-top:3px;font-size:10px;display:block}.report-table .number-cell{text-align:right;font-variant-numeric:tabular-nums}.report-table .negative{color:var(--color-danger)}.report-table tfoot th{color:var(--color-text-900);background:#f5f8fc;font-weight:700}.sale-item-table{min-width:1900px}.bill-record-table{min-width:1760px}.settled-income-query-table{min-width:2860px}.settled-income-query-filters{align-items:flex-end}.settled-income-query-export-button{min-width:82px}.settled-income-query-page .report-row-warning{background:#fff1f0}.settled-income-query-page .report-row-warning:hover{background:#ffe2df}.daywork-workspace{gap:var(--content-module-gap);grid-template-columns:220px minmax(0,1fr);min-width:0;display:grid}.daywork-single-workspace{grid-template-columns:minmax(0,1fr)}.daywork-client-panel{border:1px solid var(--color-border);background:var(--color-surface);flex-direction:column;align-self:stretch;min-height:0;display:flex;overflow:hidden}.daywork-client-heading{border-bottom:1px solid var(--color-border);background:#f5f8fc;justify-content:space-between;align-items:baseline;gap:10px;padding:13px 14px;display:flex}.daywork-client-heading strong{color:var(--color-text-900);font-size:13px}.daywork-client-heading span{color:var(--color-text-500);font-size:10px}.daywork-client-list{flex:auto;align-content:start;gap:5px;min-height:0;padding:8px;display:grid;overflow:auto}.daywork-client-item{border-radius:var(--radius-sm);width:100%;color:var(--color-text-700);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;gap:4px;padding:11px 10px;display:grid}.daywork-client-item:hover{background:#edf4ff}.daywork-client-item.selected{color:var(--color-brand-900);box-shadow:inset 3px 0 0 var(--color-brand-600);background:#e5effd;border-color:#a9c6ee}.daywork-client-item strong{font-size:12px}.daywork-client-item small{color:var(--color-text-400);font-size:10px}.daywork-client-state{color:var(--color-text-500);padding:14px;font-size:12px;line-height:1.6}.daywork-report-panel,.daywork-report-panel .report-workspace,.daywork-report-panel .report-table-panel{min-width:0}.daywork-table{min-width:1840px}.member-charge-workspace{gap:var(--content-module-gap);grid-template-columns:220px minmax(0,1fr);min-width:0;display:grid}.member-charge-single-workspace{grid-template-columns:minmax(0,1fr)}.member-charge-operator-panel{border:1px solid var(--color-border);background:var(--color-surface);flex-direction:column;align-self:stretch;min-height:0;display:flex;overflow:hidden}.member-charge-operator-heading{border-bottom:1px solid var(--color-border);background:#f5f8fc;justify-content:space-between;align-items:baseline;gap:10px;padding:13px 14px;display:flex}.member-charge-operator-heading strong{color:var(--color-text-900);font-size:13px}.member-charge-operator-heading span{color:var(--color-text-500);font-size:10px}.member-charge-operator-list{flex:auto;align-content:start;gap:5px;min-height:0;padding:8px;display:grid;overflow:auto}.member-charge-operator-item{border-radius:var(--radius-sm);width:100%;color:var(--color-text-700);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;gap:4px;padding:11px 10px;display:grid}.member-charge-operator-item:hover{background:#edf4ff}.member-charge-operator-item.selected{color:var(--color-brand-900);box-shadow:inset 3px 0 0 var(--color-brand-600);background:#e5effd;border-color:#a9c6ee}.member-charge-operator-item strong{font-size:12px}.member-charge-operator-item small{color:var(--color-text-400);font-size:10px}.member-charge-operator-state{color:var(--color-text-500);padding:14px;font-size:12px;line-height:1.6}.member-charge-operator-error{color:var(--color-danger);border-top:1px solid #e8b9b7;justify-content:space-between;align-items:center;gap:10px;padding:10px 14px 12px;font-size:11px;line-height:1.5;display:flex}.member-charge-report-panel,.member-charge-report-panel .report-workspace,.member-charge-report-panel .report-table-panel{min-width:0}.sale-daily-table{min-width:1180px}.income-statistics-table{min-width:1060px}.handno-statistics-table{min-width:1100px}.deduct-by-order-statistics-table{min-width:1540px}.technician-work-statistics-table{min-width:1320px}.sales-performance-statistics-table{min-width:960px}.sales-performance-by-bill-table{min-width:1320px}.sales-performance-by-item-table{min-width:960px}.sales-performance-detail-filters{align-items:flex-end}.sales-performance-detail-date-field small{color:var(--color-text-500);font-size:10px;line-height:1.4}.sales-performance-detail-table{min-width:1840px}.sales-performance-detail-goods{white-space:pre-wrap;min-width:180px}.sales-performance-detail-note{border-top:1px solid var(--color-border);color:var(--color-text-500);margin:0;padding:9px 14px;font-size:11px;line-height:1.5}.room-occupancy-rate-date-field small{color:var(--color-text-500);font-size:10px;line-height:1.4}.room-occupancy-rate-table{min-width:2240px}.room-occupancy-rate-table th,.room-occupancy-rate-table td{white-space:nowrap}.room-occupancy-rate-note{border-top:1px solid var(--color-border);color:var(--color-text-500);margin:0;padding:9px 14px;font-size:11px;line-height:1.5}.room-market-statistics-date-field small{color:var(--color-text-500);font-size:10px;line-height:1.4}.room-market-statistics-table{min-width:1580px}.room-market-statistics-table th,.room-market-statistics-table td{white-space:nowrap}.room-market-statistics-group-row th,.room-market-statistics-group-row td{background:var(--color-surface-soft);font-weight:700}.room-market-statistics-note{border-top:1px solid var(--color-border);color:var(--color-text-500);margin:0;padding:9px 14px;font-size:11px;line-height:1.5}.cash-daily-table{min-width:960px}.settled-income-all-day-style1-table{min-width:2240px}.settled-income-all-day-style2-table{min-width:1320px}.settled-income-all-day-style2-subject{white-space:pre-wrap;min-width:220px}.room-day-accounting-detail-table{min-width:1540px}.room-account-change-daily-table{min-width:1700px}.room-account-change-daily-summary{border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);color:var(--color-text-600);flex-wrap:wrap;gap:8px 18px;padding:9px 14px;font-size:11px;line-height:1.5;display:flex}.room-account-change-daily-summary span{font-variant-numeric:tabular-nums}.room-account-change-daily-table tbody tr[role=button]{cursor:pointer}.room-account-change-daily-table tbody tr[role=button]:hover,.room-account-change-daily-table tbody tr[role=button].is-selected{background:#e8f1ff}.room-account-change-daily-note{border-top:1px solid var(--color-border);color:var(--color-text-500);margin:0;padding:9px 14px;font-size:11px;line-height:1.5}.member-account-activity-table{min-width:1680px}.member-account-activity-group-row th{color:var(--color-brand-900);background:#eaf2ff;font-weight:700}.member-account-activity-member-row th{color:var(--color-text-700);background:#f5f8fc;font-weight:600}.member-account-activity-subtotal-row th{color:var(--color-text-700);background:#fafbfd;font-weight:600}.member-account-activity-note{border-top:1px solid var(--color-border);color:var(--color-text-500);margin:0;padding:9px 14px;font-size:11px;line-height:1.5}.member-current-account-table{min-width:1860px}.member-current-account-group-row th{color:var(--color-brand-900);background:#eaf2ff;font-weight:700}.member-current-account-subtotal-row th{color:var(--color-text-700);background:#fafbfd;font-weight:600}.member-current-account-member-cell{min-width:150px}.member-current-account-member-cell strong,.member-current-account-member-cell small{display:block}.member-current-account-member-cell small{color:var(--color-text-500);margin-top:2px;font-size:11px}.member-current-account-note{border-top:1px solid var(--color-border);color:var(--color-text-500);margin:0;padding:9px 14px;font-size:11px;line-height:1.5}.member-current-account-summary{margin-bottom:8px}.member-points-activity-table{min-width:1180px}.member-points-activity-member{white-space:nowrap;min-width:220px}.member-points-activity-note{border-top:1px solid var(--color-border);color:var(--color-text-500);margin:0;padding:9px 14px;font-size:11px;line-height:1.5}.member-points-statistics-table{min-width:1280px}.member-points-statistics-group-row th{color:var(--color-brand-900);background:#eaf2ff;font-weight:700}.member-points-statistics-note{border-top:1px solid var(--color-border);color:var(--color-text-500);margin:0;padding:9px 14px;font-size:11px;line-height:1.5}.member-charge-table{min-width:1420px}.member-charge-description{white-space:pre-wrap;min-width:220px}.member-charge-note{border-top:1px solid var(--color-border);color:var(--color-text-500);margin:0;padding:9px 14px;font-size:11px;line-height:1.5}.member-activation-report-panel{min-width:0}.member-activation-selection-bar{justify-content:space-between;align-items:baseline;gap:10px;padding:0 0 10px;display:flex}.member-activation-selection-bar>div{gap:4px;display:grid}.member-activation-selection-bar strong{color:var(--color-text-900);font-size:13px}.member-activation-selection-bar span,.member-activation-selection-bar small{color:var(--color-text-500);font-size:11px}.member-tally-date-field small{color:var(--color-text-500);font-size:10px;line-height:1.4}.member-tally-workspace{gap:var(--content-module-gap);grid-template-columns:228px minmax(0,1fr);min-width:0;display:grid}.member-tally-single-workspace{grid-template-columns:minmax(0,1fr)}.member-tally-client-panel{border:1px solid var(--color-border);background:var(--color-surface);flex-direction:column;align-self:stretch;min-width:0;min-height:0;display:flex;overflow:hidden}.member-tally-client-heading,.member-tally-selection-bar{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.member-tally-client-heading{border-bottom:1px solid var(--color-border);background:#f5f8fc;padding:13px 14px}.member-tally-client-heading strong,.member-tally-selection-bar strong{color:var(--color-text-900);font-size:13px}.member-tally-client-heading span,.member-tally-selection-bar small{color:var(--color-text-500);font-size:10px}.member-tally-client-list{flex:auto;align-content:start;gap:4px;min-height:0;padding:8px;display:grid;overflow:auto}.member-tally-client-item{border-radius:var(--radius-sm);width:100%;color:var(--color-text-700);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;gap:3px;padding:9px;display:grid}.member-tally-client-item:hover{background:#edf4ff}.member-tally-client-item.selected{color:var(--color-brand-900);box-shadow:inset 3px 0 0 var(--color-brand-600);background:#e5effd;border-color:#a9c6ee}.member-tally-client-item strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.member-tally-client-item small{color:var(--color-text-400);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.member-tally-client-state{color:var(--color-text-500);padding:12px 8px;font-size:11px;line-height:1.5}.member-tally-client-error{color:var(--color-danger);justify-content:space-between;align-items:center;gap:10px;padding:10px 8px 12px;font-size:11px;line-height:1.5;display:flex}.member-tally-report-panel,.member-tally-report-panel .report-workspace,.member-tally-report-panel .report-table-panel{min-width:0}.member-tally-selection-bar{padding:0 0 10px}.member-tally-selection-bar>div{gap:4px;display:grid}.member-tally-selection-bar span{color:var(--color-text-500);font-size:11px}.member-tally-table{min-width:1260px}.member-tally-remark{white-space:pre-wrap;min-width:220px}.member-tally-note{border-top:1px solid var(--color-border);color:var(--color-text-500);margin:0;padding:9px 14px;font-size:11px;line-height:1.5}.member-activation-table{min-width:1720px}.member-activation-group-row th{color:var(--color-brand-900);background:#eaf2ff;font-weight:700}.member-activation-note{border-top:1px solid var(--color-border);color:var(--color-text-500);margin:0;padding:9px 14px;font-size:11px;line-height:1.5}.member-account-detail-date-field small{color:var(--color-text-500);font-size:10px;line-height:1.4}.member-account-detail-keyword-field{width:var(--filter-keyword-width)!important;flex:0 1 var(--filter-keyword-width)!important;min-width:156px!important;max-width:180px!important}.member-account-detail-report-panel,.member-account-detail-report-panel .report-workspace,.member-account-detail-report-panel .report-table-panel{min-width:0}.member-account-detail-selection-bar{justify-content:space-between;align-items:baseline;gap:10px;padding:0 0 10px;display:flex}.member-account-detail-selection-bar>div{gap:4px;display:grid}.member-account-detail-selection-bar strong{color:var(--color-text-900);font-size:13px}.member-account-detail-selection-bar span,.member-account-detail-selection-bar small{color:var(--color-text-500);font-size:11px}.member-account-detail-table{min-width:2480px}.member-account-detail-description{white-space:pre-wrap;min-width:180px}.member-account-detail-note{border-top:1px solid var(--color-border);color:var(--color-text-500);margin:0;padding:9px 14px;font-size:11px;line-height:1.5}.account-search-date-field{width:var(--filter-date-range-width);flex:0 252px;min-width:252px;max-width:252px}.account-search-filters{column-gap:8px}.account-search-account-type{width:var(--filter-select-width)!important;flex:0 1 var(--filter-select-width)!important;min-width:120px!important;max-width:144px!important}.account-search-page-actions{align-items:flex-end;gap:8px;min-height:34px;margin-left:auto;display:flex}.account-search-page-actions .room-register-filter-actions{margin-left:0}.account-search-export-button{border-left-color:var(--color-border-strong);min-height:34px;padding:0 12px}.account-search-report-panel,.account-search-report-panel .report-workspace,.account-search-report-panel .report-table-panel{min-width:0}.account-search-result-meta{color:var(--color-text-500);align-items:baseline;gap:10px;padding:0 0 10px;font-size:11px;display:flex}.account-search-table{min-width:2250px}.account-search-description{white-space:pre-wrap;min-width:220px;max-width:420px}.account-search-note{border-top:1px solid var(--color-border);color:var(--color-text-500);margin:0;padding:9px 14px;font-size:11px;line-height:1.5}.financial-balance-date-field{width:var(--filter-date-range-width);flex:1 1 var(--filter-date-range-width);min-width:224px;max-width:280px}.financial-balance-report-workspace{overscroll-behavior:contain;background:#f2f4f7;min-height:0;padding:14px 0 28px;display:block;height:0!important;overflow:hidden auto!important}.financial-balance-report-sheet{color:#111;background:#fff;border:1px solid #b7bec7;width:min(794px,100% - 24px);min-height:max-content;margin:0 auto;padding:30px 28px 24px;font-family:inherit;box-shadow:0 4px 18px #1c283617}.financial-balance-report-header h1{color:#111;text-align:center;margin:0;font-family:inherit;font-size:22px;font-weight:700;line-height:1.35}.financial-balance-report-date{color:#111;text-align:center;margin:10px 0 4px;font-size:12px;line-height:1.5}.financial-balance-report-meta{color:#111;justify-content:center;gap:24px;font-size:11px;line-height:1.5;display:flex}.financial-balance-report-body{margin-top:16px}.financial-balance-report-sheet .financial-balance-table{table-layout:fixed;border-collapse:collapse;color:#111;border:1px solid #555;width:100%;min-width:0;font-size:11px}.financial-balance-report-sheet .financial-balance-table th,.financial-balance-report-sheet .financial-balance-table td{color:#111;white-space:nowrap;background:#fff;border:1px solid #777;padding:5px 4px;line-height:1.35}.financial-balance-report-sheet .financial-balance-table thead th{text-align:center;font-weight:700;position:static}.financial-balance-report-sheet .financial-balance-table tbody tr,.financial-balance-report-sheet .financial-balance-table tbody tr:not(.financial-balance-group-row){cursor:pointer}.financial-balance-report-sheet .financial-balance-table tbody tr:not(.financial-balance-group-row):hover>td{background:#edf4ff}.financial-balance-report-sheet .financial-balance-table tbody tr.selected>td{background:#cfe0fb}.financial-balance-report-sheet .financial-balance-table tbody tr.selected:hover>td{background:#bfd5f7}.financial-balance-report-sheet .financial-balance-table tbody tr.selected{box-shadow:inset 4px 0 0 var(--color-brand-600)}.financial-balance-report-sheet .financial-balance-table tbody tr.financial-balance-group-row>th,.financial-balance-report-sheet .financial-balance-table tbody tr.financial-balance-group-row>td{text-align:left;font-weight:700!important}.financial-balance-report-sheet .financial-balance-table tbody tr.financial-balance-group-row th.number-cell{text-align:right}.financial-balance-report-sheet .financial-balance-table tbody tr.financial-balance-group-row:hover>th,.financial-balance-report-sheet .financial-balance-table tbody tr.financial-balance-group-row:hover>td{background:#edf4ff}.financial-balance-report-sheet .financial-balance-table tbody tr.financial-balance-group-row.selected>th,.financial-balance-report-sheet .financial-balance-table tbody tr.financial-balance-group-row.selected>td{background:#cfe0fb}.financial-balance-report-sheet .financial-balance-table tbody tr.financial-balance-group-row.selected:hover>th,.financial-balance-report-sheet .financial-balance-table tbody tr.financial-balance-group-row.selected:hover>td{background:#bfd5f7}.financial-balance-report-sheet .financial-balance-table tbody tr.financial-balance-group-row.selected{box-shadow:inset 4px 0 0 var(--color-brand-600)}.financial-balance-report-sheet .financial-balance-group-sort th{background:#f4f6f8;border-top:1.5px solid #333;padding-top:7px;padding-bottom:6px}.financial-balance-report-sheet .financial-balance-group-sort th:first-child{font-size:11.5px}.financial-balance-report-sheet .financial-balance-group-department th{white-space:normal;background:#fafafa;padding-left:14px}.financial-balance-report-notes{color:#111;margin-top:8px;padding:7px 4px 0;font-size:10px;line-height:1.65}.financial-balance-report-notes p{margin:0}.sms-report-date-field small{color:var(--color-text-500);font-size:10px;line-height:1.4}.sms-report-table{min-width:1040px}.sms-report-message{min-width:320px;max-width:560px;white-space:pre-wrap!important}.sms-report-note{border-top:1px solid var(--color-border);color:var(--color-text-500);margin:0;padding:9px 14px;font-size:11px;line-height:1.5}.room-day-accounting-detail-group-row th{color:var(--color-brand-900);background:#eaf2ff;font-weight:700}.room-day-accounting-detail-group-row th span{margin-right:20px}.room-day-accounting-detail-group-row th strong{color:var(--color-text-900);font-variant-numeric:tabular-nums}.room-day-accounting-detail-remark{min-width:270px;max-width:420px;white-space:pre-wrap!important}.room-day-accounting-detail-note{border-top:1px solid var(--color-border);color:var(--color-text-500);margin:0;padding:9px 14px;font-size:11px;line-height:1.5}.report-cell-detail{flex-direction:column;gap:2px;min-width:76px;display:inline-flex}.report-cell-detail small{color:var(--color-text-500);white-space:pre-wrap;font-size:10px;line-height:1.35}.settled-income-daily-workspace{gap:var(--content-module-gap);grid-template-columns:228px minmax(0,1fr);min-width:0;display:grid}.settled-income-statistics-workspace,.settled-income-daily-single-workspace,.pay-item-records-single-workspace,.current-prepay-single-workspace{grid-template-columns:minmax(0,1fr)}.settled-income-daily-tree{border:1px solid var(--color-border);background:var(--color-surface);flex-direction:column;align-self:stretch;min-width:0;min-height:0;display:flex;overflow:hidden}.settled-income-daily-tree-heading,.settled-income-daily-selection-bar,.settled-income-daily-payment-heading{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.settled-income-daily-tree-heading{border-bottom:1px solid var(--color-border);background:#f5f8fc;padding:13px 14px}.settled-income-daily-tree-heading strong,.settled-income-daily-selection-bar strong,.settled-income-daily-payment-heading strong{color:var(--color-text-900);font-size:13px}.settled-income-daily-tree-heading span,.settled-income-daily-selection-bar small,.settled-income-daily-payment-heading span{color:var(--color-text-500);font-size:10px}.settled-income-daily-tree-list{flex:auto;align-content:start;gap:4px;min-height:0;padding:8px;display:grid;overflow:auto}.settled-income-daily-tree-client{gap:3px;display:grid}.settled-income-daily-tree-works{border-left:1px solid #dbe5f0;gap:3px;margin-left:13px;padding-left:8px;display:grid}.settled-income-daily-tree-item{border-radius:var(--radius-sm);width:100%;color:var(--color-text-700);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;gap:3px;padding:9px;display:grid}.settled-income-daily-tree-item:hover{background:#edf4ff}.settled-income-daily-tree-item.selected{color:var(--color-brand-900);box-shadow:inset 3px 0 0 var(--color-brand-600);background:#e5effd;border-color:#a9c6ee}.settled-income-daily-tree-item strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.settled-income-daily-tree-item small{color:var(--color-text-400);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.settled-income-daily-tree-state{color:var(--color-text-500);padding:12px 8px;font-size:11px;line-height:1.5}.settled-income-daily-report-panel,.settled-income-daily-table-panel{min-width:0}.settled-income-daily-selection-bar{padding:0 0 10px}.settled-income-daily-selection-bar>div{gap:4px;display:grid}.settled-income-daily-selection-bar span{color:var(--color-text-500);font-size:11px}.settled-income-daily-summary{margin-bottom:var(--content-module-gap);gap:10px;display:grid}.settled-income-daily-summary-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.settled-income-daily-summary-card,.settled-income-daily-payment-panel,.settled-income-daily-cost-panel{border:1px solid var(--color-border);background:#fbfcfe}.settled-income-daily-summary-card{gap:7px;min-width:0;padding:12px 13px;display:grid}.settled-income-daily-summary-card.emphasis{background:#f0f5fd;border-color:#b8cdec}.settled-income-daily-summary-card span,.settled-income-daily-cost-panel span{color:var(--color-text-500);font-size:11px}.settled-income-daily-summary-card strong{color:var(--color-text-900);font-variant-numeric:tabular-nums;font-size:19px}.settled-income-daily-payment-panel{padding:12px 13px}.settled-income-daily-payment-heading{border-bottom:1px solid #e7edf5;padding-bottom:9px}.settled-income-daily-payment-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:0 14px;display:grid}.settled-income-daily-payment-grid>div{border-bottom:1px solid #edf1f6;grid-template-columns:minmax(0,1fr) auto;gap:3px 8px;padding:8px 0;display:grid}.settled-income-daily-payment-grid span{color:var(--color-text-600);font-size:11px}.settled-income-daily-payment-grid strong{color:var(--color-text-900);font-variant-numeric:tabular-nums;font-size:12px}.settled-income-daily-payment-grid small{color:var(--color-text-400);text-align:right;grid-column:1/-1;font-size:10px}.settled-income-daily-cost-panel{flex-wrap:wrap;align-items:center;gap:7px 16px;padding:10px 13px;display:flex}.settled-income-daily-cost-panel span:first-child{color:var(--color-text-700);font-weight:700}.settled-income-daily-table{min-width:760px}.settled-income-statistics-table{min-width:860px}.settled-income-statistics-payment-table{min-width:760px}.settled-income-statistics-handnum-table{min-width:520px}.daywork-fallback{background:#f8fafc;border:1px solid #d8e2ef;gap:14px;margin-top:16px;padding:15px;display:grid}.daywork-fallback-heading{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.daywork-fallback-heading strong{color:var(--color-text-900);font-size:13px}.daywork-fallback-heading span,.daywork-fallback-work{color:var(--color-text-500);font-size:11px}.daywork-fallback-work{margin:0}.daywork-fallback h3{color:var(--color-text-700);margin:0 0 8px;font-size:12px}.daywork-fallback-table{min-width:1060px}.sale-statistics-table.summary{min-width:1680px}.sale-statistics-table.trend{min-width:1780px}.sale-item-table tfoot th:first-child{text-align:left}.modal-backdrop{z-index:1000;background:#14264a57;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0;overflow:hidden}.modal-dialog{width:min(var(--modal-width), calc(100vw - 48px));border:1px solid var(--color-border);border-top:3px solid var(--color-brand-500);border-radius:var(--radius-lg);background:var(--color-surface);flex-direction:column;min-width:0;min-height:0;max-height:calc(100vh - 48px);display:flex;overflow:hidden;box-shadow:0 18px 48px #14264a33}.modal-body{overscroll-behavior:contain;flex:auto;min-width:0;min-height:0;overflow:auto}.settings-edit-modal{width:min(760px,100vw - 48px);max-height:calc(100vh - 48px);padding:22px}.access-role-modal .modal-body{flex-direction:column;display:flex;overflow:hidden}.access-role-modal .access-role-modal-list{flex:auto;min-height:0;max-height:none}.settings-page{gap:var(--content-module-gap);flex-direction:column;width:100%;height:100%;min-height:0;padding-bottom:0;display:flex}.settings-heading{flex:none;justify-content:space-between;align-items:center;gap:20px;min-width:0;min-height:24px;padding:0 0 2px;display:flex}.settings-heading>div:first-child{min-width:0}.settings-heading h2{margin:0;font-size:18px;line-height:1.3}.settings-heading>div>.eyebrow{color:var(--color-brand-600);letter-spacing:.08em;text-transform:uppercase;margin:0 0 2px;font-size:10px;line-height:1.35;display:block}.settings-heading>div:has(>h2)>.eyebrow{display:none}.settings-heading>div:not(:has(h2))>.eyebrow{color:var(--color-text-900);letter-spacing:-.02em;text-transform:none;margin:0;font-size:18px;line-height:1.3}.settings-heading>.eyebrow{color:var(--color-text-900);letter-spacing:-.02em;text-transform:none;margin:0;font-size:18px;line-height:1.3}.settings-heading>div>p:not(.eyebrow),.reports-heading-note,.report-source-note{display:none}.settings-heading-actions,.access-heading-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:9px;min-width:0;display:flex}.settings-heading-actions .primary-button,.settings-heading-actions .secondary-button,.settings-heading-actions .danger-button,.access-heading-actions .primary-button,.access-heading-actions .secondary-button,.access-heading-actions .danger-button{min-height:34px;padding:0 10px;font-size:12px}.settings-heading-actions>.danger-button{margin-left:12px}.settings-heading-actions:has(>.secondary-button)>.primary-button{border-left:1px solid var(--color-border);margin-left:8px;padding-left:16px}.settings-page-toolbar{justify-content:flex-end;align-items:center;min-height:30px;margin-top:-2px;display:flex}.settings-page-toolbar .settings-heading-actions{gap:8px}.settings-page,.reports-page{position:relative}.access-page>.access-heading,.settings-page>.settings-heading{flex:0 0 0;height:0;min-height:0;padding:0}.access-page>.access-heading>:first-child,.settings-page>.settings-heading>:first-child:not(.settings-heading-actions){clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.settings-page:not(:has(.settings-search))>.settings-heading:has(>.settings-heading-actions){border:1px solid var(--color-border);background:#f8fafc;flex:0 0 42px;justify-content:flex-end;align-items:flex-end;height:42px;min-height:42px;padding:4px 12px;display:flex}.settings-page-toolbar,.access-page-toolbar{border:1px solid var(--color-border);background:#f8fafc;min-height:42px;padding:4px 12px}.rooms-toolbar{background:0 0;border:0}.settings-page-toolbar,.access-page-toolbar{margin-top:0}.audit-page>.audit-heading{border:1px solid var(--color-border);background:#f8fafc;min-height:42px;padding:4px 12px}.audit-page>.audit-heading>:first-child{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.reports-page>.reports-heading{flex:none;height:54px;min-height:54px;padding:8px 0 12px}.reports-page>.reports-heading>:first-child:not(.reports-heading-actions){clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.reports-page>.reports-heading>.reports-heading-actions{justify-content:flex-end;width:100%;height:34px;min-height:34px;margin-left:auto;padding:0;position:static}.settings-page:has(.settings-search) .settings-heading-actions{z-index:2;top:var(--toolbar-action-top,45px);right:var(--space-page,24px);gap:6px;padding:0;position:absolute}.settings-page:has(.settings-search) .settings-search{padding-right:0}.reports-page>.reports-heading>.reports-heading-actions .primary-button,.reports-page>.reports-heading>.reports-heading-actions .secondary-button{min-height:34px;padding:0 10px;font-size:12px}.settings-page:has(.settings-search) .settings-heading-actions .primary-button{min-height:34px;padding:0 10px;font-size:12px}.settings-page:has(.settings-search) .settings-heading-actions .secondary-button{min-height:34px;padding:0 10px;font-size:12px}.reports-page>.reports-heading>.reports-heading-actions>.danger-button{border-left:0;margin-left:0;padding-left:10px}.settings-page:has(.settings-search) .settings-heading-actions>.danger-button{border-left:0;margin-left:0;padding-left:10px}:is(.settings-search>label:has(+input),.settings-search>label:has(+select)){clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.settings-search{background:0 0;border:0;flex-wrap:wrap;flex:none;align-items:flex-end;gap:10px 12px;min-width:0;padding:8px 0 12px;display:flex}.settings-search label{color:var(--color-text-600);gap:5px;font-size:11px;font-weight:600;display:grid}.settings-search input{width:min(var(--filter-keyword-width), 100%);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);min-width:156px;max-width:180px;height:34px;min-height:34px;color:var(--color-text-900);font:inherit;background:#fff;padding:0 9px;font-size:12px}.settings-search select{width:var(--filter-select-width);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);min-width:120px;max-width:144px;min-height:34px;color:var(--color-text-900);font:inherit;background:#fff;padding:0 9px;font-size:12px}.settings-search select:focus{outline-offset:1px;border-color:var(--color-brand-500);outline:2px solid #3a6cb03d}.settings-search .primary-button,.settings-search .secondary-button,.settings-search .text-button{min-height:34px;padding:0 14px;font-size:12px}.settings-search>button[type=submit]{border:1px solid var(--color-brand-600);color:#fff;background:var(--color-brand-600)}.settings-search>button[type=submit]:hover:not(:disabled){border-color:var(--color-brand-700);background:var(--color-brand-700)}.settings-search>button[type=submit]:disabled{cursor:wait;opacity:.65}.settings-search input:focus{outline-offset:1px;border-color:var(--color-brand-500);outline:2px solid #3a6cb03d}.settings-search .text-button{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);color:var(--color-brand-700);background:var(--color-surface)}.settings-search .text-button:hover:not(:disabled){border-color:var(--color-brand-500);color:var(--color-brand-700);background:#f5f9ff}.settings-search .text-button:disabled{color:var(--color-text-400);background:var(--color-surface-muted);cursor:not-allowed}.settings-success{color:var(--color-success);background:var(--color-success-bg);border:1px solid #b5ddc9;padding:9px 12px;font-size:12px}.settings-inline-error{color:#7b3531;background:#fff5f4;border:1px solid #e8b9b7;flex:none;gap:10px;padding:9px 12px;font-size:12px;display:flex}.settings-inline-error span{flex:auto}.settings-state{border:1px solid var(--color-border);background:#f8fafc;flex:auto;justify-content:center;align-items:center;gap:14px;min-width:0;min-height:124px;padding:20px;display:flex}.settings-state.error{background:#fff5f4;border-color:#e8b9b7}.settings-state>div:not(.state-symbol):not(.loading-spinner){flex:0 auto;min-width:0;max-width:520px}.settings-state strong{font-size:15px;display:block}.settings-state p{color:var(--color-text-600);margin:5px 0 0;font-size:12px;line-height:1.55}.settings-workspace{flex:1 1 0;grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr);align-items:stretch;gap:16px;width:100%;min-width:0;height:100%;min-height:0;display:grid;overflow:hidden}.borrowable-items-workspace,.goods-definition-workspace,.agreement-prices-workspace{grid-template-columns:minmax(0,1fr)}.hourly-definitions-workspace{grid-template-columns:minmax(260px,.95fr) minmax(300px,1.05fr)}.system-settings-table{min-width:760px}.system-settings-table tbody td:last-child{white-space:normal;min-width:340px;line-height:1.5}.payment-modes-table{min-width:1840px}.payment-modes-page .settings-workspace:has(>.payment-mode-detail-panel){grid-template-columns:minmax(0,1fr) minmax(220px,280px)}.payment-mode-detail-panel{flex-direction:column;align-self:stretch;min-height:0;display:flex}.payment-mode-detail-panel .payment-mode-detail-grid{overscroll-behavior:contain;flex:auto;grid-template-columns:1fr;min-height:0;overflow:auto}.permission-cards-table{min-width:2860px}.payment-modes-table td:last-child{white-space:normal;min-width:180px;line-height:1.45}.payment-mode-detail-panel{border-top:2px solid #dce8f7}.payment-mode-detail-grid{grid-template-columns:repeat(5,minmax(120px,1fr));gap:10px;padding:14px;display:grid}.payment-mode-detail-grid span{background:#fff;border:1px solid #e1e9f3;gap:5px;padding:10px 12px;display:grid}.payment-mode-detail-grid small{color:var(--color-text-500);font-size:11px}.payment-mode-detail-grid strong{color:var(--color-text-900);font-variant-numeric:tabular-nums;font-size:15px}.settings-category-panel{border:1px solid var(--color-border);background:#fbfcfe;flex-direction:column;width:100%;min-width:0;height:100%;min-height:0;display:flex;overflow:hidden}.settings-category-list{flex:auto;gap:2px;min-height:0;padding:8px;display:grid;overflow:auto}.agreement-price-category-row,.borrowable-category-row{grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:8px;display:grid}.borrowable-category-row .settings-category-button,.agreement-price-category-select{min-width:0}.settings-category-button{width:100%;color:var(--color-text-700);text-align:left;cursor:pointer;font:inherit;background:0 0;border:1px solid #0000;gap:3px;padding:10px 11px;display:grid}.settings-category-button:hover{background:#edf4ff;border-color:#c9d9ee}.settings-category-button.selected{color:var(--color-brand-700);box-shadow:inset 3px 0 0 var(--color-brand-600);background:#dceafd;border-color:#9dbce5}.settings-category-button strong{font-size:12px;font-weight:650}.settings-category-button small{color:var(--color-text-400);font-size:10px}.goods-tree-sale-node{gap:2px;display:grid}.goods-tree-sale-row{grid-template-columns:24px minmax(0,1fr);align-items:stretch;gap:2px;display:grid}.goods-tree-toggle{color:var(--color-text-500);cursor:pointer;background:0 0;border:1px solid #0000;place-items:center;font-size:14px;display:grid}.goods-tree-toggle:hover,.goods-tree-toggle:focus-visible{color:var(--color-brand-700);background:#edf4ff;border-color:#c9d9ee}.goods-tree-children{gap:2px;display:grid}.goods-sale-category-button{margin-top:4px}.goods-sort-category-button{width:calc(100% - 14px);margin-left:14px;padding-top:7px;padding-bottom:7px}.borrowable-items-table{min-width:1120px}.goods-definition-table{min-width:1500px}.settings-table-panel{border:1px solid var(--color-border);background:#fbfcfe;flex-direction:column;width:100%;min-width:0;height:100%;min-height:0;display:flex;overflow:hidden}.settings-table-meta{border-bottom:1px solid var(--color-border);flex:none;justify-content:space-between;align-items:center;gap:12px;min-width:0;padding:8px 12px;font-size:11px;display:flex}.settings-table-meta strong{font-size:13px}.settings-table-meta span{color:var(--color-text-400)}.settings-table-scroll{overscroll-behavior:contain;flex:auto;min-width:0;min-height:0;overflow:auto}.settings-table{border-collapse:collapse;width:100%;min-width:820px;font-size:12px}.settings-table th,.settings-table td{text-align:left;white-space:nowrap;border-bottom:1px solid #e7edf5;padding:8px 10px}.settings-table thead th{z-index:1;color:var(--color-text-600);background:#f1f5fa;font-size:11px;position:sticky;top:0}.settings-table tbody tr{cursor:pointer}.settings-table tbody tr:hover{background:#edf4ff}.settings-table tbody tr.selected{box-shadow:inset 4px 0 0 var(--color-brand-600);background:#cfe0fb}.settings-table tbody tr.selected:hover{background:#bfd5f7}.settings-table tbody td strong{font-weight:600;display:block}.settings-table tbody td small{color:var(--color-text-400);margin-top:3px;font-size:10px;display:block}.settings-table tbody td:last-child{min-width:150px}.settings-row-actions{white-space:nowrap;align-items:center;gap:0;min-width:max-content;display:flex}.settings-row-actions .text-button{min-height:30px;padding:6px 3px}.settings-row-actions .danger-text-button{border-left:1px solid var(--color-border);margin-left:16px;padding-left:16px}.danger-text-button{color:var(--color-danger)}.danger-text-button:disabled{color:var(--color-text-400);cursor:not-allowed}.settings-modal-heading{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.settings-modal-kicker{color:var(--color-brand-600);font-size:10px;font-weight:700}.settings-modal-heading h2{margin:7px 0 3px;font-size:20px}.settings-modal-heading p{color:var(--color-text-600);margin:0;font-size:12px}.settings-modal-error{color:#7b3531;background:#fff5f4;border:1px solid #e8b9b7;gap:10px;margin-top:18px;padding:10px 12px;font-size:12px;display:flex}.settings-modal-error span{flex:auto}.room-type-form{gap:14px;margin-top:18px;display:grid}.room-type-form-section{border-top:1px solid var(--color-border);gap:8px;padding-top:13px;display:grid}.room-type-form-section:first-child{border-top:0;padding-top:0}.room-type-form-section h3{color:var(--color-text-900);margin:0;font-size:12px;font-weight:700}.room-type-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px;display:grid}.room-type-form-section:first-child .room-type-form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.room-type-form-section:nth-child(2) .room-type-form-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.room-type-form-section:nth-child(3) .room-type-form-field-wide{grid-column:auto}.room-type-form label{min-width:0;color:var(--color-text-600);gap:5px;font-size:11px;display:grid}.room-type-form-field-wide{grid-column:1/-1}.room-type-form input,.room-type-form textarea{border:1px solid var(--color-border-strong);width:100%;min-width:0;min-height:34px;color:var(--color-text-900);background:#fff;border-radius:5px;padding:6px 9px;font-size:12px}.room-type-form textarea{resize:none;min-height:58px}.room-type-form-help{color:var(--color-text-400);margin:-3px 0 0;font-size:11px;line-height:1.55}.room-type-form-actions{border-top:1px solid var(--color-border);justify-content:flex-end;gap:10px;padding-top:16px;display:flex}.room-type-form-actions button{min-width:108px}.expanded-settings-modal{width:min(980px,100vw - 48px);max-height:calc(100vh - 48px);overflow:hidden}.settings-modal-form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 14px;display:grid}.settings-form-field{min-width:0;color:var(--color-text-600);gap:5px;font-size:11px;display:grid}.settings-form-field-wide{grid-column:1/-1}.settings-modal-form input,.settings-modal-form select,.settings-modal-form textarea{border:1px solid var(--color-border-strong);width:100%;min-width:0;min-height:34px;color:var(--color-text-900);font:inherit;background:#fff;border-radius:5px;padding:6px 9px;font-size:12px}.settings-modal-form textarea{resize:vertical;min-height:58px}.settings-modal-form input:focus,.settings-modal-form select:focus,.settings-modal-form textarea:focus{outline-offset:1px;border-color:var(--color-brand-500);outline:2px solid #3a6cb03d}.settings-modal-form input[type=checkbox]{width:16px;min-height:16px;accent-color:var(--color-brand-600);border:0;padding:0}.settings-readonly-input{color:var(--color-text-500)!important;background:#f2f5f9!important}.settings-modal-readonly-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.settings-modal-readonly-grid>div{background:#f7f9fc;border:1px solid #e1e9f3;gap:5px;min-width:0;padding:10px 12px;display:grid}.settings-modal-readonly-grid span{color:var(--color-text-500);font-size:11px}.settings-modal-readonly-grid strong{min-width:0;color:var(--color-text-900);overflow-wrap:anywhere;font-size:12px;line-height:1.45}.settings-modal-readonly-wide{grid-column:1/-1}.settings-checkbox-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.settings-checkbox-field{min-height:34px;color:var(--color-text-700);cursor:pointer;background:#f7f9fc;border:1px solid #e1e9f3;align-items:center;gap:8px;padding:7px 9px;font-size:11px;display:flex}.settings-checkbox-field:hover{background:#edf4ff;border-color:#b8cce6}.settings-report-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.settings-modal-actions{margin-top:2px}.dictionary-category-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px;margin-top:18px;display:grid}.dictionary-category-form label{min-width:0;color:var(--color-text-600);gap:5px;font-size:11px;display:grid}.dictionary-category-form input,.dictionary-category-form textarea{border:1px solid var(--color-border-strong);width:100%;min-width:0;min-height:34px;color:var(--color-text-900);background:#fff;border-radius:5px;padding:6px 9px;font-size:12px}.dictionary-category-form textarea{resize:vertical;min-height:72px}.dictionary-category-form-help,.dictionary-category-form .room-type-form-actions{grid-column:1/-1}.dictionary-category-form-help{color:var(--color-text-400);font-size:11px;line-height:1.55}.system-user-form{gap:14px;margin-top:18px;display:grid}.system-user-form-section{border-top:1px solid var(--color-border);gap:8px;padding-top:13px;display:grid}.system-user-form-section:first-child{border-top:0;padding-top:0}.system-user-form-section h3{color:var(--color-text-900);margin:0;font-size:12px;font-weight:700}.system-user-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px;display:grid}.system-user-form label{min-width:0;color:var(--color-text-600);gap:5px;font-size:11px;display:grid}.system-user-form input,.system-user-form select,.system-user-form textarea{border:1px solid var(--color-border-strong);width:100%;min-width:0;min-height:34px;color:var(--color-text-900);background:#fff;border-radius:5px;padding:6px 9px;font-size:12px}.system-user-form input[readonly]{color:var(--color-text-600);background:#f3f6fa}.system-user-form select:disabled{color:var(--color-text-400);background:#f3f6fa}.system-user-field-note{color:var(--color-text-400);font-size:10px;line-height:1.45}.system-user-form textarea{resize:none;min-height:58px}.system-user-form-field-wide{grid-column:1/-1}.system-user-valid-field{align-content:start}.system-user-checkbox-line{min-height:34px;color:var(--color-text-900);align-items:center;gap:8px;display:flex}.system-user-checkbox-line input{width:15px;min-height:15px;accent-color:var(--color-brand-600);padding:0}.system-user-form-help{color:var(--color-text-400);margin:-2px 0 0;font-size:11px;line-height:1.55}.access-page,.audit-page{gap:var(--content-module-gap);flex-direction:column;width:100%;height:100%;min-height:0;padding-bottom:0;display:flex}.access-heading,.audit-heading{flex:none;justify-content:space-between;align-items:center;gap:20px;min-width:0;min-height:24px;padding:0 0 2px;display:flex}.access-page-toolbar{justify-content:flex-end;align-items:center;min-height:30px;margin-top:-2px;display:flex}.access-page-toolbar .access-heading-actions{gap:6px}.rooms-heading>.eyebrow,.reports-heading>.eyebrow,.settings-heading>.eyebrow,.access-heading>.eyebrow,.audit-heading>.eyebrow{margin:0}.access-boundary,.audit-boundary{color:#1b694c;white-space:nowrap;background:#effaf5;border:1px solid #b8dfcf;border-radius:999px;flex:none;padding:7px 10px;font-size:11px}.access-inline-error,.access-success{color:#7b3531;background:#fff5f4;border:1px solid #e8b9b7;flex:none;gap:10px;padding:9px 12px;font-size:12px;display:flex}.access-inline-error span{flex:auto}.access-success{color:var(--color-success);background:var(--color-success-bg);border-color:#b5ddc9}.access-state,.audit-state{border:1px solid var(--color-border);background:#f8fafc;flex:auto;justify-content:center;align-items:center;gap:14px;min-width:0;min-height:124px;padding:20px;display:flex}.access-state.error,.audit-state.error{background:#fff5f4;border-color:#e8b9b7}.access-state strong,.audit-state strong{font-size:15px;display:block}.access-state p,.audit-state p{color:var(--color-text-600);margin:5px 0 0;font-size:12px;line-height:1.55}.access-state>div:not(.state-symbol):not(.loading-spinner),.audit-state>div:not(.state-symbol):not(.loading-spinner){flex:0 auto;min-width:0;max-width:520px}.access-workspace,.audit-workspace{flex:1 1 0;grid-template-columns:minmax(0,1fr);align-items:stretch;gap:16px;width:100%;min-width:0;height:100%;min-height:0;display:grid;overflow:hidden}.access-workspace.has-detail,.audit-workspace.has-detail{grid-template-columns:minmax(0,1fr) 310px}.access-user-panel,.access-detail-panel,.audit-table-panel,.audit-detail-panel{border:1px solid var(--color-border);background:#fbfcfe;flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden}.access-table-scroll{overscroll-behavior:contain;flex:auto;min-width:0;min-height:0;overflow:auto}.access-user-table{min-width:820px}.access-user-table tbody tr.selected{box-shadow:inset 4px 0 0 var(--color-brand-600);background:#cfe0fb}.access-user-table tbody tr.selected:hover{background:#bfd5f7}.access-user-table td:last-child{min-width:230px}.compact-button{min-height:30px;padding:6px 10px;font-size:11px}.access-panel-meta,.audit-panel-meta{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;font-size:11px;display:flex}.access-panel-meta strong,.audit-panel-meta strong{color:var(--color-text-900);font-size:13px}.access-panel-meta span,.audit-panel-meta span{color:var(--color-text-400)}.access-panel-meta>div{gap:4px;min-width:0;display:grid}.access-user-list{display:grid}.access-user-row{min-width:0;color:var(--color-text-900);text-align:left;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #e7edf5;align-items:center;gap:11px;padding:12px 14px;display:flex}.access-user-row:hover,.access-user-row.selected{background:#edf4ff}.access-user-avatar{width:32px;height:32px;color:var(--color-brand-700);background:#dceaff;border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:inline-flex}.access-user-copy{flex:auto;gap:3px;min-width:0;display:grid}.access-user-copy strong,.access-user-copy small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.access-user-copy strong{font-size:12px}.access-user-copy small{color:var(--color-text-400);font-size:10px}.access-user-status{color:#7b3531;white-space:nowrap;background:#fff0ee;border-radius:4px;padding:3px 6px;font-size:10px}.access-user-status.valid{color:#1b694c;background:#e4f5ed}.access-detail-panel,.audit-detail-panel{border-top:3px solid var(--color-brand-500);background:#f8fafc;min-height:0;padding:16px;position:sticky;top:12px}.audit-detail-panel{overscroll-behavior:contain;overflow:hidden auto}.access-detail-heading,.audit-detail-heading{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.access-detail-kicker,.audit-detail-kicker{color:var(--color-brand-600);font-size:10px;font-weight:700}.access-detail-heading h2,.audit-detail-heading h2{margin:7px 0 3px;font-size:20px}.access-detail-heading p,.audit-detail-heading p{color:var(--color-text-600);margin:0;font-size:12px}.access-role-list{overscroll-behavior:contain;border-top:1px solid var(--color-border);flex:auto;min-height:0;margin-top:16px;display:grid;overflow:auto}.access-role-modal{width:min(900px,100vw - 48px)}.access-role-tabs{border-bottom:1px solid var(--color-border);flex-wrap:wrap;gap:3px;margin-top:18px;display:flex}.access-role-tab{min-height:38px;color:var(--color-text-600);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:7px;padding:7px 13px;font-size:12px;display:inline-flex}.access-role-tab:hover,.access-role-tab.active{color:var(--color-brand-700);background:#eef4ff}.access-role-tab.active{border-bottom-color:var(--color-brand-600);font-weight:700}.access-role-tab small{min-width:18px;color:var(--color-text-600);text-align:center;background:#e7edf5;border-radius:10px;padding:2px 5px;font-size:10px}.access-role-tab.active small{color:var(--color-brand-700);background:#d8e7ff}.access-role-modal-list{overscroll-behavior:contain;max-height:min(52vh,360px);padding:0 2px;display:block;overflow:auto}.access-role-group+.access-role-group{border-top:1px solid var(--color-border);margin-top:8px}.access-role-group-heading{min-height:30px;color:var(--color-text-600);background:#f7f9fc;justify-content:space-between;align-items:center;padding:7px 6px 4px;font-size:11px;display:flex}.access-role-group-heading small{min-width:18px;color:var(--color-brand-700);text-align:center;background:#e7edf5;border-radius:10px;padding:2px 5px}.access-role-group-list{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));align-content:start;column-gap:10px;display:grid}.access-role-row{border-bottom:1px solid var(--color-border);cursor:pointer;align-items:flex-start;gap:9px;min-width:0;min-height:48px;padding:8px 6px;display:flex}.access-role-row:hover{background:#f5f8fd}.access-role-row input{width:15px;height:15px;accent-color:var(--color-brand-600);flex:none;margin-top:1px}.access-role-row span{gap:3px;min-width:0;display:grid}.access-role-row strong{font-size:12px;line-height:1.4}.access-role-row small{overflow-wrap:anywhere;color:var(--color-text-400);font-size:10px}.access-role-state{min-height:130px;color:var(--color-text-600);align-items:center;gap:10px;margin-top:16px;font-size:12px;display:flex}.access-role-state.error{color:#7b3531}.access-detail-actions{justify-content:space-between;align-items:center;gap:10px;margin-top:14px;display:flex}.access-detail-actions span{color:var(--color-text-400);font-size:10px}.access-detail-actions button{min-width:96px}.access-detail-note{color:var(--color-text-400);margin:16px 0 0;font-size:11px;line-height:1.55}.audit-table-scroll{overscroll-behavior:contain;flex:auto;min-width:0;min-height:0;overflow:auto}.audit-table{border-collapse:collapse;width:100%;min-width:760px;font-size:12px}.audit-table th,.audit-table td{text-align:left;white-space:nowrap;border-bottom:1px solid #e7edf5;padding:10px 11px}.audit-table thead th{z-index:1;color:var(--color-text-600);background:#f1f5fa;font-size:11px;position:sticky;top:0}.audit-table tbody tr{cursor:pointer}.audit-table tbody tr:hover,.audit-table tbody tr.selected{background:#edf4ff}.audit-table td strong,.audit-table td small{display:block}.audit-table td small{color:var(--color-text-400);margin-top:3px;font-size:10px}.audit-result{color:#1b694c;background:#e4f5ed;border-radius:4px;padding:3px 6px;font-size:10px;display:inline-flex}.audit-result.failure{color:#7b3531;background:#fff0ee}.audit-detail-list{gap:0;margin:18px 0 0;display:grid}.audit-detail-list>div{border-top:1px solid var(--color-border);grid-template-columns:64px minmax(0,1fr);gap:8px;padding:8px 0;font-size:12px;display:grid}.audit-detail-list dt{color:var(--color-text-400)}.audit-detail-list dd{overflow-wrap:anywhere;min-width:0;color:var(--color-text-900);margin:0}.audit-json-block{color:var(--color-text-400);gap:5px;margin-top:15px;font-size:10px;display:grid}.audit-json-block pre{max-height:120px;color:var(--color-text-700);white-space:pre-wrap;word-break:break-word;background:#eef3f9;margin:0 0 5px;padding:8px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:10px;overflow:auto}.full-page-state{text-align:center;background:var(--color-canvas);flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:40px;display:flex}.loading-mark{color:#fff;background:var(--color-brand-900);border-radius:14px;justify-content:center;align-items:center;width:48px;height:48px;margin-bottom:20px;font-size:20px;font-weight:700;display:flex}.full-page-state h1{margin:0;font-size:20px}.full-page-state p{color:var(--color-text-600);margin:10px 0 0;font-size:14px}@media (width<=1200px){.login-brand-panel{padding-left:72px;padding-right:72px}.login-form-panel{padding-left:32px;padding-right:32px}.topbar{padding-left:18px;padding-right:18px}.page-content{padding:8px var(--workspace-inline-gap) 20px}.page-tabs{padding-right:var(--workspace-inline-gap);padding-left:var(--workspace-inline-gap)}}@media (width<=900px){.login-page{grid-template-columns:1fr}.login-brand-panel{min-height:360px;padding:48px 28px}.login-form-panel{padding:28px 18px 42px}.login-logo{margin-bottom:34px}.brand-note{margin-top:40px}.topbar{height:auto;min-height:var(--topbar-height);flex-wrap:wrap;gap:10px;padding-top:10px;padding-bottom:10px}.topbar-actions{flex-wrap:wrap;flex:100%;gap:10px;min-width:0}.topbar-account-copy strong{max-width:150px}.page-tabs{padding-right:var(--workspace-inline-gap);padding-left:var(--workspace-inline-gap);gap:10px}.page-content{padding-right:var(--workspace-inline-gap);padding-left:var(--workspace-inline-gap)}.page-panel{padding:0}.workspace-state{flex-wrap:wrap;align-items:flex-start;gap:12px;padding:14px 0}.state-symbol{border-radius:12px;width:40px;height:40px;font-size:19px}.workspace-state>.secondary-button{margin-left:52px}.overview-cockpit-head{grid-template-columns:1fr;gap:10px;padding:13px 15px}.overview-cockpit-meta{justify-content:space-between}.overview-command-body{grid-template-columns:1fr;gap:14px}.overview-dynamics-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.overview-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.overview-dashboard-grid,.overview-secondary-grid,.overview-analysis-grid,.overview-lower-grid{grid-template-columns:1fr}.overview-account-stats-grid,.overview-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.workspace-state>.secondary-button{justify-self:start}.rooms-heading,.rooms-toolbar{flex-direction:column;align-items:flex-start}.rooms-heading-actions{justify-content:space-between;width:100%}.room-sort-select,.room-sort-select select{width:100%}.rooms-content{grid-template-columns:1fr}.rooms-workbench{grid-template-columns:204px minmax(0,1fr);gap:10px}.rooms-context-rail{padding:12px 9px}.rooms-heading-legend{display:none}.daywork-workspace,.member-charge-workspace,.member-tally-workspace,.settled-income-daily-workspace{grid-template-rows:minmax(0,1fr) minmax(220px,1fr);grid-template-columns:1fr}.daywork-single-workspace,.member-charge-single-workspace,.member-tally-single-workspace,.settled-income-daily-single-workspace,.settled-income-statistics-workspace,.pay-item-records-single-workspace,.current-prepay-single-workspace,.agreement-prices-workspace,.borrowable-items-workspace,.goods-definition-workspace{grid-template-rows:minmax(0,1fr)}.settled-income-daily-summary-cards,.settled-income-daily-payment-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.reports-heading,.report-filter-bar{flex-direction:column;align-items:flex-start}.reports-page>.reports-heading{height:auto}.report-filter-bar{flex-flow:wrap;align-items:stretch}.room-register-filters{flex-direction:column;align-items:stretch}.room-register-filters label,.room-register-filters label:nth-child(2){width:100%}.room-register-filters>label,.room-register-filters>label:nth-child(2){flex:auto;max-width:none}.room-register-filters>.report-date-basis-select,.room-register-filters>.report-query-field,.room-register-filters>.report-keyword-field,.room-register-filters>.report-multi-select-field,.room-register-filters>.account-search-account-type,.room-register-filters>.member-account-detail-keyword-field{flex:auto!important;width:100%!important;max-width:none!important}.report-date-range-field{flex:auto;width:100%;min-width:0;max-width:none}.report-date-range-popover{max-width:calc(100vw - 32px)}.room-register-filter-actions{width:100%;margin-left:0}.room-register-filter-actions button{flex:1 1 0}.reports-heading-actions,.report-filter-bar{width:100%}.report-source-note{flex-direction:column;align-items:flex-start;gap:3px}.report-summary-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.report-pagination,.settings-heading,.access-heading,.audit-heading{flex-direction:column;align-items:flex-start}.settings-heading-actions,.access-heading-actions{flex-wrap:wrap;justify-content:flex-start;width:100%}.settings-heading-actions{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:8px;display:grid}.settings-page:has(.settings-search) .settings-heading-actions{width:100%;padding:0;position:static;top:auto;right:auto}.settings-page:has(.settings-search) .settings-search{padding-right:0}.settings-heading-actions>button{width:100%}.settings-heading-actions>.danger-button{margin-left:0}.agreement-prices-page .settings-heading-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-search{align-items:stretch}.settings-search label{flex:100%}.settings-search input{flex:220px;width:auto}.access-boundary,.audit-boundary{white-space:normal}.hourly-definitions-workspace{grid-template-rows:minmax(0,1fr) minmax(220px,1fr);grid-template-columns:1fr}.settings-workspace:has(>.settings-category-panel){grid-template-rows:minmax(0,1fr) minmax(220px,1fr);grid-template-columns:1fr}.payment-modes-page .settings-workspace:has(>.payment-mode-detail-panel){grid-template-rows:minmax(0,1fr) minmax(220px,1fr);grid-template-columns:1fr}.access-workspace,.audit-workspace,.hourly-definitions-workspace{grid-template-rows:minmax(0,1fr) minmax(220px,1fr);grid-template-columns:1fr}.access-workspace.has-detail,.audit-workspace.has-detail{grid-template-columns:1fr}.access-detail-panel,.audit-detail-panel{position:static}.modal-backdrop{align-items:flex-start;padding:12px}.modal-dialog{width:100%;max-height:calc(100vh - 24px)}.settings-edit-modal{max-height:calc(100vh - 24px);padding:18px;overflow:hidden}.expanded-settings-modal{max-height:calc(100vh - 24px);overflow:hidden}.room-type-form-grid,.room-type-form-section:first-child .room-type-form-grid,.room-type-form-section:nth-child(2) .room-type-form-grid,.dictionary-category-form{grid-template-columns:1fr}.room-type-form-field-wide{grid-column:auto}.settings-modal-form-grid,.settings-modal-readonly-grid{grid-template-columns:1fr}.settings-form-field-wide,.settings-modal-readonly-wide{grid-column:auto}.settings-checkbox-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-report-grid,.system-user-form-grid{grid-template-columns:1fr}.system-user-form-field-wide{grid-column:auto}.report-filter-actions{width:100%;margin-left:0}.report-filter-actions>button{flex:1 1 0}}@media (width<=640px){.rooms-workbench{grid-template-columns:1fr;overflow-y:auto}.rooms-context-rail{max-height:360px}.rooms-board{min-height:420px}.rooms-board-header{flex-direction:column;align-items:flex-start;gap:5px}}@media (width<=1200px){.overview-data-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.overview-data-grid-three{grid-template-columns:repeat(2,minmax(0,1fr))}.overview-results-panel{grid-column:1/-1}}@media (width<=900px){.overview-data-head{grid-template-columns:1fr;gap:10px}.overview-data-head-meta{flex-wrap:wrap;justify-content:space-between;gap:8px 12px}.overview-data-kpis,.overview-data-main-grid,.overview-data-grid-three,.overview-data-grid-two{grid-template-columns:1fr}.overview-results-panel{grid-column:auto}.overview-water-chart{height:208px;min-height:208px}}@media (width<=640px){.overview-data-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.overview-data-kpi{min-height:78px;padding-left:10px;padding-right:10px}.overview-data-kpi strong{font-size:21px}.overview-water-chart{grid-template-columns:34px minmax(0,1fr);gap:4px}.overview-water-columns{gap:4px;padding-left:3px;padding-right:3px}.overview-water-track i{width:min(30px,72%)}.overview-roomtypes-row{grid-template-columns:minmax(88px,1.5fr) repeat(3,minmax(35px,.65fr)) minmax(50px,.8fr);gap:5px}.overview-account-finance-summary{grid-template-columns:1fr}}
