:root{color-scheme:light;--navy:#13243b;--navy2:#223953;--gold:#b58a47;--goldsoft:#f1e8d9;--bg:#f5f6f8;--paper:#fff;--ink:#202d40;--muted:#697587;--line:#e2e6eb;--green:#237754;--red:#b74747;--blue:#315e98;--radius:12px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:14px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink)}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:3px}button{cursor:pointer;border:1px solid var(--line);background:#fff;border-radius:7px;padding:9px 13px;color:var(--ink);font-weight:600}button:hover{border-color:#b9c3ce;background:#f8fafc}button:disabled{cursor:not-allowed;opacity:.5}.primary{background:var(--navy);border-color:var(--navy);color:#fff}.primary:hover{background:var(--navy2);color:#fff}.gold{background:var(--gold);border-color:var(--gold);color:#fff}.danger{color:var(--red)}.quiet{border-color:transparent;background:transparent}.small{padding:6px 9px;font-size:12px}a{color:var(--blue)}.boot{min-height:100vh;display:grid;place-content:center;text-align:center}.wordmark{font-family:Georgia,serif;font-size:29px;letter-spacing:5px;color:var(--gold)}.wordmark span{display:block;font-family:system-ui,sans-serif;font-size:9px;letter-spacing:2.8px;color:#b5bfcc;margin-top:9px}.app-shell{display:grid;grid-template-columns:224px 1fr;min-height:100vh}.sidebar{background:var(--navy);color:#d2d9e2;padding:29px 16px 16px;display:flex;flex-direction:column;position:fixed;inset:0 auto 0 0;width:224px;z-index:10}.sidebar .wordmark{padding:0 15px 27px}.nav-label{font-size:10px;letter-spacing:1.5px;color:#8896a8;padding:17px 13px 8px}.nav-button{width:100%;display:flex;align-items:center;gap:11px;background:transparent;border-color:transparent;color:#bdc7d5;text-align:left;margin:3px 0;padding:11px 13px;font-weight:500}.nav-button:hover{background:#20344c;border-color:transparent;color:white}.nav-button.active{background:#314052;color:#f6d79c;border-color:#4d4a42}.nav-icon{width:21px;text-align:center;font-size:17px}.sidebar-foot{margin-top:auto;border-top:1px solid #2d3c51;padding:16px 10px 0;line-height:1.7;font-size:12px}.sidebar-foot strong{color:#fff}.connection{display:flex;align-items:center;gap:7px;font-size:11px;color:#9dabbc}.dot{width:7px;height:7px;background:#51b98b;border-radius:50%;display:inline-block}.dot.offline{background:#e4af55}.workspace{grid-column:2;min-width:0}.topbar{height:73px;display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid var(--line);padding:0 30px;gap:12px;position:sticky;top:0;z-index:5}.company-picker{font-size:15px;font-weight:650;max-width:330px;border:0;background:#fff;padding:8px 0}.top-actions{display:flex;align-items:center;gap:9px}.role-badge,.badge{display:inline-flex;align-items:center;gap:5px;padding:4px 8px;font-size:11px;border-radius:5px;background:#eef1f5;color:#59677a;font-weight:600;white-space:nowrap}.role-badge{background:var(--goldsoft);color:#8a642d}.badge.good{background:#e5f3eb;color:#216443}.badge.warn{background:#fff1d9;color:#916c23}.badge.bad{background:#fae7e7;color:#a83b3b}.content{padding:28px 30px 45px;max-width:1700px;margin:auto}.page-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:23px}.eyebrow{font-size:10px;color:var(--gold);letter-spacing:1.8px;font-weight:700;text-transform:uppercase;margin:0 0 8px}h1{font-size:27px;letter-spacing:-.6px;font-weight:650;margin:0 0 8px}h2{font-size:16px;margin:0 0 15px;font-weight:650}h3{font-size:13px;margin:0 0 8px}p{line-height:1.6}.subtle{color:var(--muted);margin:0;font-size:13px}.toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.toolbar select{max-width:250px}.grid{display:grid;gap:17px}.metrics{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:22px}.metric,.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:20px}.metric{min-height:115px;position:relative;overflow:hidden}.metric::before{content:"";position:absolute;top:0;left:0;bottom:0;width:3px;background:var(--gold)}.metric-label{color:var(--muted);font-size:12px;margin-bottom:12px}.metric-value{font-size:27px;letter-spacing:-.6px;font-weight:650}.metric-note{font-size:11px;color:var(--muted);margin-top:8px}.columns{grid-template-columns:minmax(0,1.65fr) minmax(280px,1fr)}.grid.columns>*{min-width:0}.card-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:16px}.card-header h2{margin:0}.card.flush{padding:0;overflow:hidden}.card.flush .card-header{padding:20px 20px 0}.module-actions{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:20px}.module-actions button{background:#fff}.module-actions button:first-child{background:var(--navy);color:white;border-color:var(--navy)}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);overflow:auto;margin-bottom:16px}.tab{border:0;border-radius:0;background:transparent;padding:12px 14px;color:var(--muted);white-space:nowrap}.tab.active{border-bottom:2px solid var(--gold);color:var(--navy);font-weight:700}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:12px;white-space:nowrap}th{color:#738094;background:#f8f9fb;font-size:10px;text-transform:uppercase;letter-spacing:.5px;text-align:left;font-weight:650;border-bottom:1px solid var(--line);padding:12px 15px}td{padding:12px 15px;border-bottom:1px solid #edf0f3;max-width:310px;overflow:hidden;text-overflow:ellipsis}tbody tr:hover{background:#fafbfd}tbody tr:last-child td{border-bottom:0}.cell-title{font-weight:600}.cell-sub{color:var(--muted);font-size:10px;margin-top:4px}.table-controls{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 16px;border-top:1px solid var(--line);font-size:12px}.search{min-width:210px}.table-summary{font-size:12px;color:var(--muted)}.date-controls{display:flex;gap:6px;align-items:center}.date-controls input{width:135px}.date-controls select{width:100px}.empty{text-align:center;padding:45px 20px;color:var(--muted)}.empty .empty-icon{font-size:30px;color:#b0bac7;margin-bottom:12px}.empty strong{display:block;color:var(--ink);font-size:14px;margin-bottom:8px}.notice{background:#f9f4e9;border:1px solid #e8d8b4;padding:13px 15px;border-radius:8px;font-size:12px;line-height:1.6;color:#806329;margin-bottom:17px}.notice.error{background:#fdf0f0;border-color:#f1d3d3;color:#a43e3e}.notice.info{background:#eff4fb;border-color:#d7e2f2;color:#476587}.error-text{color:var(--red);font-size:12px;white-space:pre-wrap}.integration-list{display:grid;gap:12px}.integration{border:1px solid var(--line);border-radius:8px;padding:15px}.integration-head{display:flex;justify-content:space-between;align-items:center;gap:15px}.integration p{font-size:12px;color:var(--muted);margin:8px 0 0}.queue-strip{padding:10px 15px;background:#fff6e6;border-bottom:1px solid #efdfbd;font-size:12px;display:flex;justify-content:space-between;align-items:center}.auth-layout{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}.auth-brand{background:var(--navy);padding:60px 10%;display:flex;flex-direction:column;justify-content:center;color:white}.auth-brand .wordmark{margin-bottom:65px}.auth-brand .wordmark span{color:#bac4d1}.auth-brand h1{font-family:Georgia,serif;font-size:43px;line-height:1.2;font-weight:400;max-width:450px}.auth-brand p{color:#aebbcc;max-width:420px;font-size:15px}.auth-content{padding:50px 12%;display:flex;align-items:center}.auth-box{width:100%;max-width:420px}.auth-box h1{font-size:26px}.auth-box form{margin-top:27px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:flex;flex-direction:column;gap:7px;min-width:0}.field.full{grid-column:1/-1}.field label{font-size:12px;font-weight:600;color:#526174}.field input,.field select,.field textarea,input,select,textarea{border:1px solid #d8dee6;background:#fff;border-radius:6px;padding:10px 11px;min-width:0;max-width:100%;color:var(--ink)}.field input:focus,.field select:focus,.field textarea:focus{border-color:#9e835b;outline:2px solid #f3ebdc}.field textarea{min-height:80px;resize:vertical}.field small{font-size:11px;color:var(--muted);line-height:1.4}.field.check{flex-direction:row;align-items:center;gap:9px}.field.check input{width:17px;height:17px}.field.check label{font-weight:500}.field-error{font-size:11px;color:var(--red)}.section-label{grid-column:1/-1;color:var(--gold);font-size:10px;letter-spacing:1.2px;text-transform:uppercase;border-bottom:1px solid var(--line);padding:10px 0 8px}.auth-box .primary{width:100%;margin-top:24px;padding:12px}.help{font-size:11px;color:var(--muted);margin-top:15px}dialog{border:1px solid var(--line);border-radius:14px;box-shadow:0 25px 90px #13243b40;padding:0;width:min(760px,94vw);max-height:90vh;color:var(--ink)}dialog::backdrop{background:#0b182d75;backdrop-filter:blur(2px)}.dialog-head{padding:22px 25px 18px;display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid var(--line)}.dialog-head h2{font-size:19px;margin:0 0 5px}.dialog-body{padding:22px 25px;max-height:65vh;overflow:auto}.dialog-foot{padding:16px 25px;border-top:1px solid var(--line);display:flex;justify-content:flex-end;gap:9px;background:#fafbfd}.dialog-head .close{padding:3px 8px;font-size:23px;line-height:1;font-weight:400}.form-note{grid-column:1/-1;font-size:12px;color:var(--muted);line-height:1.6;margin:0}.review-table{white-space:normal}.review-table th,.review-table td{word-break:break-word;max-width:450px}.details-list{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin:0}.details-list dt{font-size:11px;color:var(--muted)}.details-list dd{margin:4px 0 0;font-size:12px;word-break:break-word}.quick-item{display:flex;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid var(--line)}.quick-item:last-child{border:0}.quick-mark{width:34px;height:34px;background:var(--goldsoft);color:#967037;display:grid;place-items:center;border-radius:8px;font-size:17px}.quick-copy{flex:1}.quick-copy strong{font-size:12px}.quick-copy p{font-size:11px;margin:4px 0 0;color:var(--muted)}.mobile-menu{display:none}.schema-note{font-size:11px;color:var(--muted);margin-top:20px}.check-group{display:flex;flex-wrap:wrap;gap:12px}.check-group label{display:flex;align-items:center;gap:5px;font-size:12px}.keymap{display:grid;gap:8px}.map-row{display:grid;grid-template-columns:1fr 1fr auto;gap:7px}.muted{color:var(--muted)}.mono{font-family:ui-monospace,monospace;font-size:11px}#toast{position:fixed;bottom:22px;right:25px;z-index:50;max-width:450px;pointer-events:none}#toast div{background:var(--navy);color:white;border-radius:9px;padding:13px 18px;box-shadow:0 6px 25px #13243b35;font-size:13px}.report-values{display:flex;flex-wrap:wrap;gap:15px}.report-value{padding:13px;border:1px solid var(--line);border-radius:8px;min-width:130px}.report-value strong{display:block;font-size:20px;margin-top:8px}.footer-note{font-size:10px;color:#8b95a3;margin-top:24px}.pill{display:inline-flex;gap:7px;padding:7px 10px;border-radius:6px;background:#f2f4f7;font-size:11px}.busy{opacity:.65;pointer-events:none}.row-actions{display:flex;gap:5px}.action-select{max-width:300px}
@media(max-width:1100px){.metrics{grid-template-columns:repeat(2,1fr)}.columns{grid-template-columns:1fr}.app-shell{grid-template-columns:195px 1fr}.sidebar{width:195px}.content{padding:24px 20px}.topbar{padding:0 20px}.nav-button{padding:11px 9px}.sidebar .wordmark{font-size:24px;padding-left:8px}.top-actions .role-badge{display:none}}
@media(max-width:760px){.app-shell{display:block}.sidebar{transform:translateX(-100%);transition:transform .2s;width:224px;box-shadow:10px 0 30px #13243b25}.sidebar.open{transform:translateX(0)}.workspace{display:block}.mobile-menu{display:block}.topbar{padding:0 14px;height:63px}.top-actions{gap:4px}.top-actions .refresh-label{display:none}.company-picker{max-width:210px;font-size:13px}.content{padding:20px 14px}.page-heading{display:block}h1{font-size:24px}.page-heading .toolbar{margin-top:15px}.metrics{gap:10px}.metric{padding:16px;min-height:100px}.metric-value{font-size:24px}.card{padding:16px}.auth-layout{display:block}.auth-brand{padding:26px}.auth-brand .wordmark{margin:0}.auth-brand h1,.auth-brand>p{display:none}.auth-content{padding:35px 25px}.form-grid{grid-template-columns:1fr}.field{grid-column:1/-1}.dialog-head,.dialog-body{padding:18px}.dialog-foot{padding:13px 18px}.table-controls{flex-wrap:wrap}.date-controls{flex-wrap:wrap}.toolbar select{max-width:210px}.search{width:100%;min-width:0}.top-actions .user-name{display:none}.details-list{grid-template-columns:1fr}.module-actions{gap:6px}.module-actions button{font-size:12px;padding:8px 10px}}
.queue-strip[hidden]{display:none}.repeat-group .field label{font-size:11px}.repeat-group .form-grid{gap:12px}.repeat-group .card{background:#fafbfd}.dialog-body .details-list{margin-bottom:15px}.field input[type=file]{padding:8px;font-size:12px}
@media(max-width:760px){.top-actions [data-action=group-center]{display:none}.company-picker{max-width:170px}.topbar .toolbar{flex-wrap:nowrap}.sidebar:not(.open){visibility:hidden}.sidebar.open{visibility:visible}}
.chart-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin:18px 0}.chart-card:first-child{grid-column:1/-1}.chart-scroll{overflow:auto}.daily-chart{display:block;width:100%;min-width:610px;height:auto}.hotel-month{margin:26px 0}.hotel-month .metric-value{font-size:23px}.hotel-week .card-header{align-items:flex-start;padding-bottom:15px}.hotel-week .card-header>.toolbar{justify-content:flex-end}.hotel-week input[type=date]{max-width:145px}.hotel-month input[type=month]{max-width:150px}@media(max-width:1000px){.chart-grid{grid-template-columns:1fr}.hotel-week .card-header{flex-direction:column;align-items:flex-start}.hotel-week .card-header>.toolbar{justify-content:flex-start}}@media(max-width:760px){.hotel-month .metric-value{font-size:18px}.hotel-week .card-header{padding:16px}.hotel-week .card-header>.toolbar{gap:5px}.hotel-week .card-header>.toolbar button{font-size:11px}.hotel-week input[type=date]{width:130px}.hotel-month .page-heading .toolbar{margin-top:10px}.daily-chart{min-width:620px}}
.chart-summary{font-size:22px;font-weight:650;margin:8px 0 0;color:var(--navy);letter-spacing:-.4px}.chart-card .card-header{align-items:flex-start}
.chart-card,.chart-grid,.hotel-month{min-width:0}.chart-scroll{min-width:0;max-width:100%}.hotel-week,.hotel-month{max-width:100%}@media(max-width:760px){.card-header{flex-wrap:wrap}.card-header>.toolbar{max-width:100%}.hotel-month .page-heading>.toolbar{max-width:100%}}
.daily-chart{min-width:0}.daily-chart text{font-size:14px}@media(max-width:760px){.daily-chart{min-width:620px}}
.chart-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.chart-card:first-child{grid-column:auto}.daily-chart text{font-size:24px}.chart-readout{min-height:32px;font-size:11px;line-height:1.5;color:var(--muted);margin:9px 0 0}.daily-chart g:focus{outline:none}.daily-chart g:focus rect{fill:var(--gold)}@media(max-width:1000px){.chart-grid{grid-template-columns:1fr}}@media(max-width:760px){.chart-grid{grid-template-columns:1fr}.daily-chart{min-width:620px}}

/* Ready-to-share synthetic demo. */
.demo-banner{display:flex;gap:12px;align-items:center;flex-wrap:wrap;background:#fff4d9;border-bottom:1px solid #ead4a8;color:#71501f;padding:9px 30px;font-size:12px}.demo-banner strong{background:var(--navy);color:#fff;letter-spacing:1px;font-size:10px;padding:4px 7px;border-radius:4px}.demo-banner small{margin-left:auto;font-size:10px}.demo-auth-badge{font-size:10px;font-weight:700;letter-spacing:1.4px;color:#e3c18a;border:1px solid #806944;border-radius:5px;padding:8px 10px;align-self:flex-start;margin-bottom:18px}.facility-chips{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.facility-chips span{font-size:10px;color:#78613d;background:var(--goldsoft);border-radius:4px;padding:4px 7px}.demo-tenant-strip{background:#fff;border:1px solid var(--line);border-radius:10px;padding:16px 18px;margin-bottom:20px}.demo-tenant-strip>div:first-child{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-bottom:12px}.demo-tenant-strip strong{font-size:12px}.demo-tenant-strip span{font-size:11px;color:var(--muted)}.demo-tenant-list{display:flex;gap:7px;flex-wrap:wrap}.demo-tenant-list button{font-size:11px;font-weight:500}.demo-tenant-list button.selected{background:var(--navy);border-color:var(--navy);color:white}.demo-window-note{font-size:11px;line-height:1.5;color:var(--muted);margin:0 0 15px}.date-controls{flex-wrap:wrap}.date-controls #demo-year{width:112px}.date-controls #date-range{width:126px}@media(max-width:760px){.demo-banner{padding:8px 14px;gap:7px;font-size:10px}.demo-banner small{width:100%;margin-left:0}.demo-tenant-strip{padding:14px}.demo-tenant-list{max-height:150px;overflow:auto}.company-picker{max-width:180px}.date-controls{gap:5px}.date-controls input{max-width:130px}}

.demo-banner{position:sticky;top:73px;z-index:4}.demo-dialog-note{border-left:3px solid var(--gold);padding:8px 11px;margin:0 0 17px;background:#fcf7ed;color:#806329;font-size:11px}.demo-banner[hidden]{display:none}@media(max-width:760px){.demo-banner{top:63px}}

.report-period{margin:-5px 0 17px;font-size:12px}

/* The management center is a distinct workspace; legal-company actions retain a visible target. */
.workspace-mode{font-size:9px;letter-spacing:.8px;border:1px solid var(--line);border-radius:4px;color:var(--muted);padding:4px 6px;white-space:nowrap}.workspace-mode.center{color:#8b642a;border-color:#e4d1ac;background:#fff6e5}.management-target{display:flex;justify-content:space-between;align-items:center;gap:20px;background:#edf2f8;border:1px solid #d5dfeb;border-left:3px solid var(--gold);border-radius:10px;padding:17px 20px;margin-bottom:25px}.management-target .eyebrow{display:block;font-size:9px;margin-bottom:5px}.management-target strong{font-size:13px}.management-target p{font-size:11px;color:var(--muted);margin:5px 0 0}.management-target>div:last-child{display:grid;gap:6px;min-width:260px}.management-target select{font-size:13px;max-width:380px;width:100%}.management-target small{font-size:10px;color:var(--muted)}.management-shortcuts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin:20px 0}.management-shortcut{text-align:left;display:grid;gap:10px;font-weight:400}.management-shortcut strong{font-size:13px}.management-shortcut>span:last-child{font-size:11px;color:var(--muted);line-height:1.6}.management-report{margin-bottom:20px}.management-company-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.management-company{border:1px solid var(--line);border-radius:9px;padding:16px;min-width:0}.management-company>strong{font-size:13px}.management-company .toolbar{margin-top:17px}.management-company .facility-chips{min-height:25px}.management-company-grid .toolbar button{font-size:11px}.management-report th,.management-report td{padding:11px 13px}@media(max-width:1100px){.management-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr))}.management-company-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.workspace-mode{display:none}.management-target{display:block;padding:15px}.management-target>div:last-child{min-width:0;margin-top:13px}.management-target select{max-width:100%}.management-shortcuts,.management-company-grid{grid-template-columns:1fr}.management-shortcuts{gap:10px}.management-shortcut{grid-template-columns:auto 1fr;align-items:start}.management-shortcut>span:last-child{grid-column:2}.management-shortcut .quick-mark{grid-row:1/3}.management-company .toolbar{margin-top:12px}.management-target small{overflow-wrap:anywhere}}
.home-action-strip{background:#fff;border:1px solid var(--line);border-radius:9px;padding:15px 18px;margin:0 0 19px;display:flex;gap:16px;align-items:center;flex-wrap:wrap}.home-action-strip>span{font-size:11px;font-weight:650;color:var(--muted)}.home-action-strip .toolbar{gap:7px}.row-actions{flex-wrap:wrap;max-width:430px;min-width:170px}.row-actions .small{white-space:nowrap;padding:4px 7px;font-size:10px}.management-shortcuts button{transition:background .15s}

/* Native room/date planning; dates scroll inside the component on small screens. */
.room-plan{--rp-label-width:174px;--rp-day-width:94px;min-width:0;max-width:100%;margin:20px 0;padding:20px}.rp-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:17px}.rp-heading h2{margin:0 0 7px;font-size:18px}.rp-heading p{font-size:11px;line-height:1.6;color:var(--muted);margin:0}.rp-legend{display:flex;gap:7px 12px;flex-wrap:wrap;justify-content:flex-end;font-size:10px;color:#526174}.rp-legend>span{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.rp-legend>span:before{content:'';width:9px;height:9px;border-radius:2px;display:block;background:#dbe9fb;border:1px solid #97b5df}.rp-legend .checked_in:before{background:#d9eee4;border-color:#80b89f}.rp-legend .checked_out:before{background:#e9edf2;border-color:#aeb9c7}.rp-legend .blocked:before{background:repeating-linear-gradient(135deg,#e5d7c9 0 2px,#f7efe5 2px 5px);border-color:#bca489}.rp-controls{display:flex;flex-direction:column;gap:10px;margin-bottom:15px}.rp-date-nav,.rp-filters{display:flex;align-items:center;flex-wrap:wrap;gap:7px}.rp-date-nav input{width:145px}.rp-date-nav select{width:95px}.rp-filters select{min-width:148px;max-width:240px}.rp-filters input{flex:1;min-width:180px;font-size:12px}.rp-controls select,.rp-controls input{font-size:12px;padding:8px 9px}.rp-notice{margin:0 0 12px;font-size:11px;line-height:1.6;color:#856331;background:#fff7e9;padding:9px 12px;border-left:2px solid #c49b5c;border-radius:3px}.rp-scroll{overflow:auto;max-width:100%;max-height:68vh;border:1px solid var(--line);border-radius:8px;position:relative;background:#fff;overscroll-behavior:contain}.rp-scroll:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.rp-table{min-width:calc(var(--rp-label-width) + var(--rp-days)*var(--rp-day-width));width:100%}.rp-table-head,.rp-room-row{display:grid;grid-template-columns:var(--rp-label-width) minmax(0,1fr)}.rp-table-head{position:sticky;top:0;z-index:7;box-shadow:0 1px 0 var(--line)}.rp-corner{position:sticky;left:0;z-index:9;background:#eaf0f7;color:#415875;font-size:11px;font-weight:650;padding:13px 12px;border-right:1px solid #cfd9e7;display:grid;gap:6px}.rp-corner span{font-size:10px;font-weight:400;color:#718198}.rp-date-heads,.rp-cells,.rp-segments,.rp-checkouts{display:grid;grid-template-columns:repeat(var(--rp-days),minmax(0,1fr))}.rp-date{background:#f2f5f9;border-right:1px solid #dde4ee;min-width:0;min-height:61px;text-align:center;padding:10px 2px 7px;position:relative}.rp-date strong{display:block;font-size:12px;font-weight:650;color:#314a69}.rp-date>span{display:block;margin-top:5px;font-size:10px;color:#8794a5}.rp-date.is-weekend{background:#eaf0f7}.rp-date.is-today{background:#f8eedb;box-shadow:inset 0 3px 0 var(--gold)}.rp-date small{display:inline-block;font-size:8px;letter-spacing:.6px;color:#967037;margin-top:3px}.rp-room-row{min-height:calc(40px * var(--rp-lanes) + 36px)}.rp-room-label{position:sticky;left:0;z-index:4;background:#fff;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:11px 10px;display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-width:0;box-shadow:2px 0 3px #13243b06}.rp-room-name{display:inline-flex;align-items:center;gap:8px;border:0;background:transparent;border-radius:3px;padding:0;color:#243c5b;font-size:14px;font-weight:700}.rp-room-name span{font-size:11px;color:#8b9cb0}.rp-room-name:hover{background:#eff4fa}.rp-room-name:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.rp-category-name{font-size:10px;color:#7c8999;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rp-room-badges{display:flex;gap:4px;flex-wrap:wrap}.rp-room-badges>span{font-size:8px;line-height:1.4;border-radius:3px;padding:3px 5px;background:#f1f3f6;color:#778394}.rp-room-badges .dirty{color:#916a25;background:#fcf2dc}.rp-room-badges .clean{color:#448369;background:#eaf5ee}.rp-room-badges .inspected{color:#4b709c;background:#eaf1f9}.rp-room-badges .rp-inactive{color:#8e5e5e;background:#f7eaea}.rp-room-badges .rp-conflict-badge{color:#b04040;background:#f9e4e4}.rp-room-timeline{position:relative;min-width:0;min-height:calc(40px * var(--rp-lanes) + 36px);border-bottom:1px solid var(--line)}.rp-cells{position:absolute;inset:0}.rp-cell{border:0;border-right:1px solid #edf0f4;border-radius:0;min-width:0;width:100%;padding:0;position:relative;background:#fff;box-shadow:none;font-size:14px;color:#bcc8d6}.rp-cell:disabled{opacity:1;cursor:default}.rp-cell.is-today{background:#fffbf1}.rp-cell-free:not(:disabled):hover{background:#f1f6fd}.rp-cell:focus-visible{outline:2px solid #9d783f;outline-offset:-3px;z-index:2}.rp-cell .rp-plus{opacity:0;font-weight:400}.rp-cell:not(:disabled):hover .rp-plus,.rp-cell:focus-visible .rp-plus{opacity:1}.rp-cell.has-unassigned{background:#fffbef}.rp-pending-dot{position:absolute;bottom:4px;right:6px;color:#c09852;font-size:18px}.rp-cell-blocked{background:repeating-linear-gradient(135deg,#f5eee5 0 3px,#fcf8f2 3px 7px)}.rp-cell-unavailable{background:repeating-linear-gradient(135deg,#f3f4f6 0 3px,#fafbfc 3px 7px);color:#b0b7c2}.rp-cell-conflict{background:#fff0f0;box-shadow:inset 0 0 0 2px #d38d8d}.rp-segments{position:relative;pointer-events:none;padding-top:6px;grid-auto-rows:40px}.rp-segment{pointer-events:auto;justify-self:stretch;align-self:start;min-width:0;height:35px;margin:0 3px;border:1px solid #9bb9e1;border-left:3px solid #7599cb;border-radius:5px;background:#e7effb;text-align:left;padding:4px 7px;display:flex;flex-direction:column;justify-content:center;gap:3px;color:#365b8f;overflow:hidden;box-shadow:0 1px 2px #13243b09;line-height:1.1}.rp-segment strong,.rp-segment span{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rp-segment strong{font-size:10px;font-weight:650}.rp-segment span{font-size:8px;font-weight:400;opacity:.8}.rp-segment.rp-checked_in{background:#def0e7;border-color:#96c4ad;border-left-color:#599a7e;color:#366f58}.rp-segment.rp-checked_out{background:#edf0f4;border-color:#c7d0db;border-left-color:#9aaabb;color:#6d8095}.rp-segment.rp-block{background:repeating-linear-gradient(135deg,#f2e8dc 0 3px,#faf4eb 3px 7px);border-color:#cbb49a;border-left-color:#a88e72;color:#816b55}.rp-segment:hover{filter:brightness(.97);box-shadow:0 2px 7px #13243b20}.rp-segment:focus-visible{outline:2px solid var(--navy);outline-offset:1px;z-index:3}.rp-segment.continues-before{border-top-left-radius:0;border-bottom-left-radius:0;border-left:1px dashed currentColor;margin-left:0}.rp-segment.continues-after{border-top-right-radius:0;border-bottom-right-radius:0;border-right:1px dashed currentColor;margin-right:0}.rp-checkouts{height:20px;position:relative;pointer-events:none}.rp-checkout{pointer-events:auto;align-self:start;justify-self:start;max-width:calc(100% - 5px);overflow:hidden;white-space:nowrap;text-overflow:ellipsis;background:transparent;border:0;border-radius:3px;padding:2px 3px;color:#8c9bae;font-size:9px;font-weight:400;line-height:1}.rp-checkout:hover{background:#eef2f7}.rp-checkout>span{font-size:8px}.rp-unassigned{display:flex;gap:15px;align-items:flex-start;background:#fff8ea;border:1px solid #eddcb6;border-radius:7px;padding:12px;margin:0 0 14px}.rp-unassigned>div:first-child{min-width:190px;max-width:245px}.rp-unassigned strong{font-size:11px;color:#8e6d32}.rp-unassigned p{font-size:10px;line-height:1.6;color:#9b875f;margin:6px 0 0}.rp-unassigned-list{display:flex;gap:7px;flex-wrap:wrap;max-height:155px;overflow:auto}.rp-unassigned-list button{background:#fffdf8;border:1px solid #e5d3ad;display:grid;gap:5px;text-align:left;padding:8px 10px}.rp-unassigned-list span{font-size:9px;font-weight:400;color:#9b875f}.rp-footnote{font-size:10px;line-height:1.7;color:#91a0b0;margin:13px 0 0}.rp-empty{padding:35px 12px;text-align:center;color:var(--muted);font-size:12px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:760px){.room-plan{--rp-label-width:130px;--rp-day-width:89px;padding:14px;margin:16px 0}.rp-heading{display:block}.rp-legend{justify-content:flex-start;margin-top:13px}.rp-date-nav{gap:5px}.rp-date-nav input{width:132px}.rp-filters{gap:6px}.rp-filters select{flex:1;min-width:120px;max-width:none}.rp-filters input{flex-basis:100%}.rp-unassigned{display:block}.rp-unassigned>div:first-child{max-width:none;margin-bottom:10px}.rp-scroll{max-height:65vh}.rp-room-label{padding:10px 7px}.rp-room-name{font-size:12px}.rp-room-badges>span{font-size:7px}.rp-date strong{font-size:11px}.rp-footnote{font-size:9px}.rp-category-name{font-size:9px}}
.room-plan fieldset.rp-controls{border:0;padding:0;min-width:0}.room-plan[aria-busy=true] .rp-scroll{opacity:.55;pointer-events:none}.room-plan[aria-busy=true] .rp-controls{opacity:.65}
.rp-scroll-hint{display:none;font-size:10px;color:#8291a4;margin:0 0 8px}@media(max-width:760px){.rp-scroll-hint{display:block}}

/* Agency dispatch and SPA resource agendas share operational records and forms. */
.service-agenda{min-width:0;max-width:100%;padding:20px;margin:20px 0}.sa-heading{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:17px}.sa-heading h2{font-size:18px;margin:0 0 7px}.sa-heading p{font-size:11px;color:var(--muted);margin:0}.sa-legend{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end;color:#7a899c;font-size:10px}.sa-legend span:before{content:'';display:inline-block;width:8px;height:8px;background:#dceafb;border:1px solid #a8c3e5;border-radius:2px;margin-right:5px}.sa-legend span:nth-child(2):before{background:#e5efe9;border-color:#9fbdad}.sa-legend span:nth-child(3):before{background:repeating-linear-gradient(135deg,#e9e3db 0 2px,#faf6f0 2px 4px);border-color:#cabba7}.sa-controls{border:0;padding:0;margin:0 0 15px;min-width:0;display:grid;gap:9px}.sa-dates,.sa-filters{display:flex;flex-wrap:wrap;align-items:center;gap:7px}.sa-controls select,.sa-controls input{font-size:12px;padding:8px 9px}.sa-dates input{width:144px}.sa-dates select{width:100px}.sa-filters select{min-width:125px;max-width:245px}.sa-filters input{flex:1;min-width:190px}.sa-note{font-size:11px;line-height:1.6;color:#74869d;background:#f0f5fa;border-left:2px solid #c1d3e8;border-radius:3px;padding:9px 12px;margin:0 0 13px}.sa-note.error{background:#fff0ee;border-color:#d1a39a;color:#9b6358}.sa-calendar-scroll,.sa-time-scroll{max-width:100%;overflow:auto;max-height:70vh;border:1px solid var(--line);border-radius:8px;overscroll-behavior:contain}.sa-calendar{width:100%;min-width:calc(160px + var(--sa-days)*165px)}.sa-calendar-head,.sa-calendar-row{display:grid;grid-template-columns:160px repeat(var(--sa-days),minmax(0,1fr))}.sa-calendar-head{position:sticky;top:0;z-index:8;background:#f0f4f9;border-bottom:1px solid var(--line)}.sa-calendar-head>div{position:sticky;left:0;background:#e9eff7;z-index:10;color:#4e6787;font-size:11px;font-weight:650;padding:14px 12px;border-right:1px solid #d4deeb}.sa-calendar-head>button{min-width:0;border:0;border-right:1px solid #dde4ed;border-radius:0;background:#f0f4f9;text-align:center;padding:10px 3px;color:#4e6787}.sa-calendar-head>button.today{background:#faf0dc;box-shadow:inset 0 3px 0 var(--gold)}.sa-calendar-head strong{font-size:12px}.sa-calendar-head>button span{display:block;margin-top:5px;color:#8796aa;font-size:10px;font-weight:400}.sa-calendar-row{border-bottom:1px solid var(--line);min-height:108px}.sa-calendar-row:last-child{border-bottom:0}.sa-resource-label{position:sticky;left:0;z-index:5;min-width:0;background:#fff;border-right:1px solid var(--line);padding:14px 11px;box-shadow:2px 0 3px #13243b05}.sa-resource-label strong{display:block;overflow-wrap:anywhere;font-size:12px;color:#3e5776}.sa-resource-label span{display:block;font-size:10px;margin-top:7px;color:#8c9bae}.sa-date-cell{padding:6px;border-right:1px solid #e9edf3;min-width:0;display:flex;flex-direction:column;gap:6px;align-items:stretch;position:relative}.sa-date-cell.today{background:#fffdf6}.sa-date-cell.outside-coverage{background:repeating-linear-gradient(135deg,#f6f7f8 0 3px,#fcfcfd 3px 7px)}.sa-event{display:flex;flex-direction:column;gap:4px;align-items:flex-start;min-width:0;max-width:100%;text-align:left;border:1px solid #aac4e5;border-left:3px solid #729ccb;border-radius:5px;padding:6px 7px;background:#e9f1fc;color:#3e6293;font-weight:400;overflow:hidden;box-shadow:0 1px 2px #13243b07;line-height:1.2}.sa-event strong,.sa-event span,.sa-event small{display:block;width:100%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sa-event strong{font-size:10px;font-weight:650}.sa-event span{font-size:10px}.sa-event .sa-event-time{font-size:9px;font-weight:650;color:#6e8cae}.sa-event small{font-size:8px;opacity:.8}.sa-event.completed{background:#e9f2ed;border-color:#b6cebf;border-left-color:#7fa58d;color:#537663}.sa-event.cancelled,.sa-event.no_show{background:#f1f2f5;border-color:#d2d8e0;border-left-color:#b1bcc9;color:#929eac}.sa-event.cancelled strong,.sa-event.no_show strong{text-decoration:line-through}.sa-event.has-conflict{border-color:#c78d83;border-left-color:#b26b5c;background:#fff0ec;color:#9a5c4c}.sa-event:hover{filter:brightness(.98);box-shadow:0 2px 5px #13243b1c}.sa-event:focus-visible{outline:2px solid var(--navy);outline-offset:1px;z-index:5}.sa-add{margin-top:auto;padding:5px 7px;text-align:left;border:1px dashed #d3deeb;border-radius:4px;background:#fafcfe;color:#8295ad;font-size:10px;font-weight:400}.sa-add:hover{background:#eef5ff;color:#547ca9}.sa-no-slot{color:#b0bac7;font-size:10px;align-self:center;margin:auto 0;line-height:1.6;text-align:center}.sa-time-scroll{position:relative}.sa-day-head,.sa-day-grid{display:grid;grid-template-columns:65px repeat(var(--sa-resources),minmax(180px,1fr));min-width:calc(65px + var(--sa-resources)*180px)}.sa-day-head{position:sticky;top:0;z-index:8;background:#edf3fa;border-bottom:1px solid var(--line)}.sa-day-head>div{padding:12px 9px;text-align:center;border-right:1px solid var(--line);min-width:0}.sa-day-head>div:first-child{position:sticky;left:0;z-index:10;background:#e5edf7;font-size:10px;color:#6a809c;display:grid;place-items:center}.sa-day-head strong{display:block;font-size:11px;color:#506987;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sa-day-head span{font-size:9px;color:#93a1b4;display:block;margin-top:6px}.sa-day-grid{position:relative}.sa-time-axis{position:sticky;left:0;z-index:6;background:#f8fafc;border-right:1px solid var(--line)}.sa-time-axis>span{position:absolute;right:9px;font-size:9px;color:#8a9ab0;transform:translateY(3px)}.sa-resource-day{position:relative;min-width:0;border-right:1px solid var(--line);background:repeating-linear-gradient(to bottom,#fff 0 29px,#edf1f6 29px 30px)}.sa-time-slot{position:absolute;left:0;width:100%;min-width:0;border:0;border-radius:0;background:transparent;box-shadow:none;padding:2px;text-align:center;color:transparent;font-size:14px}.sa-time-slot:disabled{opacity:1;cursor:default}.sa-time-slot.unavailable{background:repeating-linear-gradient(135deg,#f3f5f780 0 2px,#ffffff50 2px 6px)}.sa-time-slot.available:hover{color:#8da6c4;background:#eaf2ff99}.sa-time-slot:focus-visible{outline:2px solid var(--gold);outline-offset:-2px;color:#8da6c4}.sa-resource-day>.sa-event{position:absolute;margin:0 2px;max-width:calc(100% - 4px);z-index:3;padding:5px 6px;box-sizing:border-box}.sa-resource-day>.sa-event small{font-size:8px}.sa-cleanup{position:absolute;background:repeating-linear-gradient(135deg,#d9d0c480 0 3px,#faf5ed 3px 7px);border-left:3px solid #c4b19a;color:#a08a6d;font-size:7px;text-align:center;line-height:1.3;overflow:hidden;pointer-events:none;z-index:2}.sa-footnote{font-size:10px;color:#8e9eb1;line-height:1.7;margin:13px 0 0}.sa-empty{padding:35px 15px;text-align:center;color:var(--muted);font-size:12px}.service-agenda[aria-busy=true] .sa-calendar-scroll,.service-agenda[aria-busy=true] .sa-time-scroll{opacity:.5;pointer-events:none}.service-agenda[aria-busy=true] .sa-controls{opacity:.65}@media(max-width:760px){.service-agenda{padding:14px;margin:16px 0}.sa-heading{display:block}.sa-legend{justify-content:flex-start;margin-top:12px;font-size:9px}.sa-filters select{flex:1;min-width:115px;max-width:none}.sa-filters input{flex-basis:100%}.sa-calendar{min-width:calc(125px + var(--sa-days)*150px)}.sa-calendar-head,.sa-calendar-row{grid-template-columns:125px repeat(var(--sa-days),minmax(0,1fr))}.sa-calendar-head>div,.sa-resource-label{padding:12px 8px}.sa-resource-label strong{font-size:10px}.sa-resource-label span{font-size:9px}.sa-calendar-scroll,.sa-time-scroll{max-height:66vh}.sa-note{font-size:10px}.sa-footnote{font-size:9px}.sa-day-head,.sa-day-grid{grid-template-columns:50px repeat(var(--sa-resources),minmax(170px,1fr));min-width:calc(50px + var(--sa-resources)*170px)}}

/* Scoped group channel metrics; currency totals remain separate. */
.group-hotel-dashboard{min-width:0;max-width:100%;margin:19px 0}.gh-heading{margin:0 0 17px}.gh-heading h2{font-size:19px;margin:0 0 7px}.gh-heading p{font-size:12px;color:var(--muted);line-height:1.6;margin:0}.gh-controls{padding:17px 18px;margin:0 0 18px;border:1px solid var(--line);border-radius:9px;background:#fff;min-width:0}.gh-period-controls{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap}.gh-period-controls>div>span{display:block;font-size:10px;color:#8191a6;margin-bottom:7px;letter-spacing:.15px}.gh-period-controls .toolbar{gap:6px;flex-wrap:wrap}.gh-period-controls input,.gh-period-controls select{font-size:12px;padding:8px 9px}.gh-period-controls input[type=date]{width:142px}.gh-period-controls input[type=month]{width:137px}.gh-period-controls select{width:90px}.gh-hotels{margin-top:16px;padding-top:14px;border-top:1px solid #edf1f6}.gh-hotels>div:first-child{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:10px}.gh-hotels strong{font-size:11px;color:#536b89}.gh-hotels strong span{color:#9aa7b7;font-size:10px;font-weight:400;margin-left:5px}.gh-hotels .small{font-size:10px;padding:4px 7px}.gh-hotel-options{display:flex;gap:7px;flex-wrap:wrap}.gh-hotel-options label{font-size:10px;display:flex;align-items:center;gap:6px;padding:7px 9px;border:1px solid #dbe4ef;border-radius:5px;background:#fbfcfe;color:#72859d;cursor:pointer}.gh-hotel-options label:has(input:checked){background:#eef4fc;border-color:#b9cde5;color:#44668d}.gh-hotel-options input{width:13px;height:13px;padding:0;margin:0;accent-color:#6387b0}.gh-note{background:#fff8e9;border-left:2px solid #caa469;border-radius:3px;padding:10px 13px;margin:0 0 15px;font-size:11px;color:#8b744b;line-height:1.6}.gh-section{border:1px solid var(--line);border-radius:9px;background:#fff;margin:0 0 18px;overflow:hidden;min-width:0}.gh-section-heading{padding:17px 18px 15px;display:flex;align-items:center;justify-content:space-between;gap:12px}.gh-section-heading h3{font-size:13px;color:#405a7a;margin:0 0 6px}.gh-section-heading p{font-size:10px;color:#8b9aae;margin:0;line-height:1.5}.gh-table-scroll{max-width:100%;overflow:auto}.gh-week-table{min-width:1120px;table-layout:fixed}.gh-week-table th:first-child{width:178px}.gh-week-table th,.gh-week-table td{padding:12px 10px;white-space:normal;max-width:none}.gh-week-table thead th{font-size:9px;line-height:1.6;text-align:left;color:#7d8fa7;background:#f1f5fa}.gh-week-table tbody th,.gh-week-table tfoot th{font-size:11px;font-weight:600;color:#546d8b;position:sticky;left:0;z-index:2;background:#fff;border-right:1px solid #e9eef5;box-shadow:2px 0 3px #13243b05}.gh-week-table tbody td strong,.gh-week-table tfoot td strong{display:block;font-size:10px;color:#496788;font-weight:650;line-height:1.5}.gh-week-table td>span{display:block;color:#8395ad;font-size:10px;margin-top:4px}.gh-week-table td>small{display:block;color:#98a7ba;font-size:9px;line-height:1.5;margin-top:4px}.gh-week-table tbody tr:nth-child(even){background:#fcfdff}.gh-week-table tfoot,.gh-month-table tfoot{background:#edf3fa}.gh-week-table tfoot td{border-top:1px solid #cddbea}.gh-week-table tfoot th{background:#edf3fa;border-top:1px solid #cddbea}.gh-week-table .gh-unknown{color:#b0bac7;font-size:10px;line-height:1.6}.gh-month-table{min-width:780px}.gh-month-table th,.gh-month-table td{padding:12px 16px;font-size:11px}.gh-month-table thead th{font-size:9px;color:#7f91a8}.gh-month-table tbody th,.gh-month-table tfoot th{position:sticky;left:0;z-index:2;background:#fff;font-size:11px;font-weight:600;color:#59718e;border-right:1px solid #edf1f6}.gh-month-table tfoot th{background:#edf3fa}.gh-month-table tfoot td{font-weight:650;color:#4f6c8c}.gh-chart-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-top:19px;min-width:0}.gh-chart-card{background:#fff;border:1px solid var(--line);border-radius:9px;padding:17px 14px 13px;min-width:0;max-width:100%}.gh-chart-heading{padding:0 4px}.gh-chart-heading h3{font-size:12px;font-weight:600;color:#8190a4;margin:0 0 7px}.gh-chart-heading>strong{display:block;font-size:25px;font-weight:650;letter-spacing:-.5px;color:#314d70;line-height:1.4}.gh-chart-heading p{font-size:9px;color:#a1adbd;line-height:1.6;margin:6px 0 13px;min-height:29px}.gh-chart-scroll{max-width:100%;min-width:0;overflow:auto}.gh-chart{display:block;width:100%;height:auto}.gh-chart text{font-size:19px;fill:#a0aec1;font-family:inherit}.gh-chart rect{fill:#819fbd}.gh-chart.gh-occupancy rect{fill:#7595b8}.gh-chart.gh-adr rect{fill:#9aab92}.gh-chart.gh-revenue rect{fill:#c6ac7e}.gh-chart g:focus{outline:0}.gh-chart g:hover rect,.gh-chart g:focus rect{fill:#4d739b}.gh-chart-readout{font-size:10px;color:#8c9eb5;line-height:1.6;min-height:32px;margin:10px 4px 0}.gh-footnote{font-size:10px;color:#96a5b8;line-height:1.7;margin:15px 0 0}.gh-empty{border:1px solid var(--line);border-radius:9px;background:#fff;padding:35px 18px;text-align:center;color:var(--muted);font-size:12px}.group-hotel-dashboard[aria-busy=true] .gh-section,.group-hotel-dashboard[aria-busy=true] .gh-chart-grid{opacity:.5;pointer-events:none}.group-hotel-dashboard[aria-busy=true] .gh-controls{opacity:.65}@media(max-width:1100px){.gh-chart-grid{grid-template-columns:1fr}.gh-chart{max-height:260px}.gh-chart text{font-size:16px}.gh-chart-heading p{min-height:0}.gh-chart-heading>strong{font-size:24px}}@media(max-width:760px){.gh-controls{padding:14px}.gh-period-controls{gap:14px}.gh-period-controls>div{width:100%}.gh-period-controls .toolbar{gap:5px}.gh-period-controls input[type=date]{width:132px}.gh-period-controls .small{font-size:10px;padding:7px}.gh-hotel-options{gap:5px}.gh-hotel-options label{font-size:9px;padding:7px}.gh-week-table{min-width:1080px}.gh-week-table th:first-child{width:145px}.gh-section-heading{padding:15px 13px}.gh-chart-card{padding:15px 11px}.gh-chart-heading>strong{font-size:24px}.gh-chart{min-width:620px;max-height:none}.gh-chart text{font-size:18px}.gh-chart-readout{font-size:10px}.gh-footnote{font-size:9px}}
.gh-partial{display:block;font-style:normal;font-size:8px;color:#b69b71;margin-top:4px}
.gh-table-scroll:focus-visible{outline:2px solid var(--gold);outline-offset:-2px}
.gh-chart .gh-future rect{opacity:.55}.gh-chart .gh-future:hover rect,.gh-chart .gh-future:focus rect{opacity:1}

/* Scoped channel A/B comparison; its wide detail tables scroll inside the card. */
.channel-analytics{min-width:0;max-width:100%;display:grid;gap:18px}.channel-analytics header h2{margin:0 0 6px}.channel-analytics header p{margin:0;color:var(--muted,#64748b)}.ca-periods{display:grid;grid-template-columns:1fr 1fr;gap:14px}.ca-period,.ca-filters{margin:0;border:1px solid var(--line,#dbe4ee);border-radius:12px;padding:14px;min-width:0}.ca-period legend{font-weight:750;padding:0 7px}.ca-period-inputs{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:end}.ca-period label,.ca-basis label{display:grid;gap:6px;font-size:.86rem}.ca-period input,.ca-basis select{min-width:0;width:100%}.ca-period .toolbar{margin-top:10px;flex-wrap:wrap;justify-content:space-between}.ca-period [role=status]{margin:5px 0 0;color:#c74b3c;font-size:.8rem;min-height:1em}.ca-filters{display:grid;gap:14px}.ca-basis{display:flex;flex-wrap:wrap;gap:14px}.ca-basis label:first-child{min-width:min(100%,280px)}.ca-filter-group>div:first-child{display:flex;align-items:center;gap:10px;margin-bottom:8px}.ca-filter-group>div:last-child{display:flex;flex-wrap:wrap;gap:9px 16px}.ca-filter-group label{display:flex;gap:7px;align-items:center;font-size:.86rem}.ca-filter-group input{width:auto}.ca-note,.ca-footnote{font-size:.86rem;line-height:1.55;margin:0;color:var(--muted,#64748b)}.ca-note{padding:11px 13px;border-radius:9px;background:var(--soft,#f0f5fb)}.ca-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.ca-kpis article{min-width:0;border:1px solid var(--line,#dbe4ee);border-radius:12px;padding:15px;display:grid;gap:6px}.ca-kpis article>span{font-size:.85rem;color:var(--muted,#64748b)}.ca-kpis strong{font-size:1.35rem}.ca-kpis small,.ca-kpis p{font-size:.78rem;color:var(--muted,#64748b);margin:0}.ca-section{min-width:0}.ca-section h3{margin:0 0 10px}.ca-table-scroll{overflow:auto;max-width:100%;border:1px solid var(--line,#dbe4ee);border-radius:10px}.ca-table-scroll table{min-width:1040px;width:100%;border-collapse:collapse;font-size:.8rem}.ca-table-scroll th,.ca-table-scroll td{padding:11px 9px;text-align:right;vertical-align:middle;white-space:nowrap;border-bottom:1px solid var(--line,#e4eaf1)}.ca-table-scroll th:first-child{text-align:left;position:sticky;left:0;background:var(--surface,#fff);max-width:230px;white-space:normal;z-index:1}.ca-table-scroll thead th{background:var(--soft,#f4f7fb)}.ca-table-scroll small{display:block;color:var(--muted,#64748b);font-size:.74rem;margin-top:4px}.ca-costs{border-top:1px solid var(--line,#dbe4ee);padding-top:15px}.ca-costs p{font-size:.85rem;color:var(--muted,#64748b)}.ca-costs>div{display:flex;gap:20px;flex-wrap:wrap}.ca-costs strong{margin:0 5px}.ca-empty{padding:24px;text-align:center;border:1px dashed var(--line,#dbe4ee);border-radius:10px;color:var(--muted,#64748b)}
@media(max-width:780px){.ca-periods{grid-template-columns:1fr}.ca-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.ca-period-inputs{grid-template-columns:1fr 1fr}.ca-period-inputs>button{grid-column:1/-1}.ca-period .toolbar{font-size:.8rem}.ca-table-scroll th:first-child{max-width:160px}.ca-basis{display:grid;grid-template-columns:1fr}.ca-kpis strong{font-size:1.15rem}}

.workspace-groups{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 16px;border-bottom:1px solid var(--line,#d9dce0);padding-bottom:10px}.workspace-groups .tab{white-space:nowrap;border-radius:8px}.workspace-list-picker{padding:14px 16px;gap:12px}.workspace-list-picker select{max-width:100%;min-width:180px}.workspace-list-picker label{font-size:13px;color:var(--muted,#667085)}

.setup-definition-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin-top:18px}.setup-definition-grid button{text-align:left;min-height:48px;white-space:normal}

/* Shared list preferences use the active prototype theme. */
.table-view-settings{margin:12px 0;padding:10px;border:1px solid var(--line,#ddd);border-radius:8px}.table-view-settings summary{cursor:pointer;font-size:12px}.table-view-settings fieldset{display:flex;gap:12px;flex-wrap:wrap;border:0;padding:10px 0}.table-view-settings fieldset label{display:flex;gap:5px;align-items:center;font-size:12px}.table-column-filters{align-items:flex-end;margin:12px 0}.table-column-filters>label,.table-column-filter label{display:flex;gap:5px;flex-direction:column;font-size:11px}.table-column-filter{display:flex;gap:6px;border:0;padding:0;margin:0}.table-column-filter legend{font-size:11px;color:var(--muted,#69717c)}.table-column-filters input{max-width:170px}.table-column-filters select{max-width:180px}[data-core-table]{padding:0 10px 10px}[data-core-table]>.table-wrap{margin-top:10px}
