/* Application-wide readability layer. Loaded last to normalize legacy micro typography. */
:root{--readable-body:14px;--readable-small:12px;--readable-label:13px;--readable-control:14px}
html{font-size:16px}body{font-size:var(--readable-body);line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.is-content p,.is-content li,.is-content td,.is-content dd,.is-content .text-muted{font-size:13px;line-height:1.55}
.is-content small,.is-sidebar small,.user-dropdown small,.portal-confirm small,.portal-toast small{font-size:var(--readable-small)!important;line-height:1.45!important}
.is-content label,.modal label,.offcanvas label{font-size:var(--readable-label)!important;line-height:1.4}
.is-content input:not([type=checkbox]):not([type=radio]),.is-content select,.is-content textarea,.modal input,.modal select,.modal textarea{font-size:var(--readable-control)!important;line-height:1.45}
.is-content button,.is-content .btn,.is-content .portal-btn,.is-content a[class*="btn"]{font-size:13px!important}
.is-content table th{font-size:12px!important;line-height:1.4;letter-spacing:.025em}.is-content table td{font-size:13px!important}
.is-content .eyebrow,.is-content [class*="eyebrow"],.is-content [class*="-title"]{font-size:12px!important}

/* Navigation and header */
.is-brand-copy strong{font-size:17px}.is-brand-copy small{font-size:11px!important}.is-menu-title{font-size:12px;line-height:1.35}.is-nav-link{font-size:15px}.is-submenu a{padding-block:9px;font-size:14px}.is-breadcrumb{font-size:13px}.is-page-title{font-size:19px}.is-footer{font-size:13px}.user-dropdown a,.user-dropdown button{font-size:14px}

/* Cards, badges, status chips and metadata */
.is-content [class*="badge"],.is-content [class*="status"],.is-content [class*="state-"],.is-content [class*="chip"],.is-content [class*="ribbon"]{font-size:11px!important;line-height:1.35}
.is-content [class*="meta"] small,.is-content [class*="facts"] small,.is-content [class*="summary"] small,.is-content [class*="card"] small{font-size:11.5px!important}
.is-content [class*="facts"] strong,.is-content [class*="card"] strong,.is-content [class*="row"] strong{font-size:max(13px,1em)}

/* Journey Operations workspace */
.ops-tabs a{font-size:13px!important}.ops-panel-head>div>small,.ops-tab-form>header small,.ops-live-badge{font-size:11px!important}.ops-panel-head p,.ops-tab-form>header p{font-size:13px!important}.ops-data-row strong{font-size:14px}.ops-data-row small{font-size:12px!important}.ops-record-actions em,.ops-data-row>em{font-size:11px!important}.ops-summary-card small{font-size:12px!important}.ops-hero-meta small{font-size:11px!important}.ops-hero-meta strong{font-size:13px}.ops-phase-track small{font-size:10px!important}.ops-phase-track strong{font-size:12px}.ops-status-guide summary small,.ops-status-guide article p{font-size:12px!important}.ops-client-search input{font-size:14px}.ops-client-search>span{font-size:11px}.ops-client-no-results p{font-size:12px}.canvas-client-cover small,.canvas-info-card header p,.canvas-facts small,.canvas-emergency small,.canvas-finance small,.canvas-documents small{font-size:11px!important}.canvas-facts strong,.canvas-emergency strong,.canvas-finance strong,.canvas-documents strong{font-size:13px!important}.client-canvas-toolbar small{font-size:10px!important}.client-canvas-toolbar strong{font-size:13px}.client-canvas-cover p{font-size:13px}.client-canvas-cover>div:last-child>span{font-size:12px}.client-canvas-status small{font-size:10px!important}.client-canvas-status strong{font-size:12px}

/* Journey leader manifest */
.journey-leader-summary small{font-size:11px!important}.journey-leader-summary em{font-size:12px}.journey-leader-identity>small{font-size:11px!important}.journey-leader-identity p{font-size:12px}.journey-leader-identity>div>span{font-size:11px!important}.leader-passport-panel small,.leader-selection-preview small{font-size:10.5px!important}.leader-passport-panel strong{font-size:14px}.leader-passport-panel em,.leader-selection-preview em{font-size:11.5px}.leader-travel-facts small{font-size:10.5px!important}.leader-travel-facts strong{font-size:12px!important}.leader-travel-note strong{font-size:12px}.leader-travel-note small{font-size:11px!important}.leader-travel-actions button{font-size:11.5px!important}.leader-check strong{font-size:12px}.leader-check small{font-size:10.5px!important}.leader-form-empty-link{font-size:12px}

/* Agency leaders, volunteer and finance workspaces */
.leader-card-head small,.leader-profile-copy small,.leader-info-strip small,.leader-form-section p,.leader-file-field small,.leader-photo-update small,.leader-save-bar small,.leader-doc-head small,.leader-document-card small,.leader-document-card em,.product-card-copy small,.product-card-copy em,.selected-year-cost small,.selected-year-cost em,.section-mini-title small,.cost-history-row small{font-size:11.5px!important}.leader-card-facts span,.leader-directory-card footer,.leader-profile-copy>div span,.leader-info-strip strong,.leader-document-card strong{font-size:12.5px!important}.leader-fields label,.leader-doc-upload label,.volunteer-fields label,.field-label,.package-form-grid label,.agency-fields label{font-size:13px!important}.volunteer-stepper small,.volunteer-page header small,.passport-visual small,.volunteer-toggle-card>span small,.volunteer-progress-ring small,.volunteer-status-row,.volunteer-review-banner p{font-size:11.5px!important}.volunteer-stepper strong{font-size:12.5px}.product-filter-bar label>span,.product-check-grid small,.package-card small,.service-class-card small{font-size:11.5px!important}

/* Authentication remains spacious and readable. */
.auth-card>.lead{font-size:15px;line-height:1.55}.auth-card label{font-size:14px}.auth-card input,.auth-card select{font-size:15px}.auth-card small{font-size:12px!important}.auth-links{font-size:14px}

/* Keep the journey leader assignment form inside its right-hand column. */
.leader-tab-layout,.leader-tab-layout>*{min-width:0}.leader-assignment-form{width:100%;max-width:100%;min-width:0;overflow:hidden}.leader-assignment-form>header,.leader-assignment-form>form,.leader-assignment-form form>*{min-width:0;max-width:100%}.leader-assignment-form input:not([type=checkbox]),.leader-assignment-form select,.leader-assignment-form textarea{display:block;width:100%;max-width:100%;min-width:0;box-sizing:border-box}.leader-assignment-form select{text-overflow:ellipsis;white-space:nowrap}.leader-form-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;width:100%;min-width:0}.leader-form-grid>label{min-width:0}.leader-selection-preview{grid-template-columns:48px minmax(0,1fr);width:100%;min-width:0}.leader-selection-preview>div{min-width:0}.leader-check>span{min-width:0;overflow-wrap:anywhere}

/* Badal performer allocation and contribution ledger. */
.badal-allocation-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:23px 27px;border-radius:18px;background:radial-gradient(circle at 80% 20%,rgba(225,194,104,.2),transparent 24%),linear-gradient(120deg,#073b32,#087159);color:#fff;box-shadow:0 16px 40px rgba(7,91,70,.16)}.badal-allocation-hero small{color:#e3c46a!important;font-weight:800;letter-spacing:.1em}.badal-allocation-hero h2{margin:4px 0;color:#fff}.badal-allocation-hero p{max-width:720px;margin:0;color:#d4e5de}.badal-policy{display:flex;align-items:center;gap:10px;min-width:270px;padding:13px 15px;border:1px solid rgba(255,255,255,.15);border-radius:13px;background:rgba(255,255,255,.08)}.badal-policy>i{color:#e6c86f;font-size:22px}.badal-policy strong,.badal-policy small{display:block}.badal-policy small{color:#cfe0d9!important}.badal-allocation-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:13px 0}.badal-allocation-stats article{display:flex;align-items:center;gap:10px;padding:13px;border:1px solid #dde7e2;border-radius:12px;background:#fff}.badal-allocation-stats article>i{width:37px;height:37px;display:grid;place-items:center;border-radius:10px;background:#eaf5f0;color:#087159}.badal-allocation-stats small,.badal-allocation-stats strong,.badal-allocation-stats em{display:block}.badal-allocation-stats strong{color:#24483b;font-size:18px}.badal-allocation-stats em{color:#87948d;font-size:11px;font-style:normal}.badal-auto-panel{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:14px;padding:14px 16px;border:1px solid #e2d09b;border-radius:14px;background:linear-gradient(120deg,#fffaf0,#fff)}.badal-auto-panel>div{display:flex;align-items:center;gap:11px}.badal-auto-panel>div>span{width:43px;height:43px;display:grid;place-items:center;border-radius:11px;background:#fff0c9;color:#927020}.badal-auto-panel strong,.badal-auto-panel small{display:block}.badal-auto-panel p{margin:2px 0;color:#7e8b84}.badal-auto-panel form{display:grid;grid-template-columns:125px 85px auto;gap:8px;align-items:end}.badal-auto-panel input,.badal-auto-panel select{width:100%;padding:8px;border:1px solid #dce4e0;border-radius:8px}.badal-auto-panel .portal-btn{height:40px;padding:0 13px;white-space:nowrap}.badal-allocation-layout{display:grid;grid-template-columns:minmax(0,1fr) 345px;gap:14px;align-items:start}.badal-assignment-list{min-width:0;overflow:hidden;border:1px solid #dde6e2;border-radius:14px;background:#fff}.badal-assignment-cards{display:grid;gap:12px;padding:14px}.badal-assignment-card{overflow:hidden;border:1px solid #dfe7e3;border-radius:14px;background:#fff;box-shadow:0 7px 22px rgba(30,62,49,.045);animation:leader-card-in .4s both}.badal-assignment-card>header{display:grid;grid-template-columns:43px 1fr auto;gap:11px;align-items:center;padding:13px 15px;background:#f8fbf9}.badal-beneficiary-icon{width:41px;height:41px;display:grid;place-items:center;border-radius:11px;background:#e9f5ef;color:#087159}.badal-assignment-card h4,.badal-assignment-card p{margin:0}.badal-assignment-card header>div>small{color:#9c7727!important}.badal-assignment-card header p{color:#7e8c85}.allocation-status{padding:5px 8px;border-radius:13px;background:#e9f5ef;color:#087159;font-style:normal}.badal-performer-band{display:grid;grid-template-columns:46px 1fr auto;gap:10px;align-items:center;margin:12px 14px;padding:10px;border:1px solid #dfe7e3;border-radius:11px}.badal-performer-band>span{width:44px;height:48px;display:grid;place-items:center;overflow:hidden;border-radius:10px;background:#075b46;color:#fff;font-weight:800}.badal-performer-band img{width:100%;height:100%;object-fit:cover}.badal-performer-band small,.badal-performer-band strong,.badal-performer-band em{display:block}.badal-performer-band em{color:#839089;font-style:normal}.badal-performer-band>i{color:#b08a34}.contribution-split{display:grid;grid-template-columns:1fr 100px 1fr;gap:9px;align-items:center;margin:0 14px 12px}.contribution-split>div:not(.split-line){padding:10px;border:1px solid #e1e8e4;border-radius:10px;background:#fafcfb}.contribution-split span,.contribution-split strong,.contribution-split em{display:block}.contribution-split strong{margin:3px 0;color:#25483b}.contribution-split em{color:#8a9790;font-style:normal}.split-line{position:relative;height:8px;border-radius:8px;background:#e5ebe8}.split-line>i{display:block;height:100%;border-radius:8px;background:linear-gradient(90deg,#087159,#d0a847)}.split-line>span{position:absolute;left:50%;top:-19px;transform:translateX(-50%);white-space:nowrap;color:#80621f;font-size:10px}.badal-assignment-update{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:8px;align-items:end;padding:11px 14px;border-top:1px solid #e5ebe8;background:#fbfcfb}.badal-assignment-update select{width:100%;padding:7px;border:1px solid #dce4e0;border-radius:7px}.badal-assignment-update button{height:37px;padding:0 10px;border:0;border-radius:8px;background:#075b46;color:#fff}.badal-assignment-card>footer{display:flex;align-items:center;gap:10px;padding:9px 14px;border-top:1px solid #e7ece9}.badal-assignment-card>footer>a{color:#087159;text-decoration:none}.badal-assignment-card>footer>span{margin-left:auto;color:#89958f}.badal-assignment-card>footer form button{border:0;background:transparent;color:#a44b4b}.badal-manual-form{width:100%;min-width:0;overflow:hidden}.badal-manual-form form>*{min-width:0;max-width:100%}.badal-manual-form select,.badal-manual-form input,.badal-manual-form textarea{width:100%;min-width:0;max-width:100%}.badal-split-preview{display:flex;align-items:center;gap:9px;padding:10px;border-radius:10px;background:#f3f7f5;color:#5a6d63}.badal-split-preview.volunteer-split{background:#fff7df;color:#795d1e}.badal-split-preview strong,.badal-split-preview small{display:block}.badal-money-fields{display:grid;grid-template-columns:minmax(0,1fr) 90px;gap:8px}

.badal-auto-panel form{grid-template-columns:105px 105px 115px 75px auto}.badal-assignment-update{grid-template-columns:repeat(5,minmax(0,1fr)) auto}.manager-split-fields{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 80px}.manager-contribution-box{overflow:hidden;border:1px solid #dbe5e0;border-radius:12px;background:#fbfdfc}.manager-contribution-box>header{display:flex;align-items:center;gap:9px;padding:11px 12px;border-bottom:1px solid #e2e9e5;background:linear-gradient(100deg,#edf7f2,#fffaf0)}.manager-contribution-box>header>i{width:34px;height:34px;display:grid;place-items:center;border-radius:9px;background:#075b46;color:#e5c66a}.manager-contribution-box strong,.manager-contribution-box small{display:block}.manager-contribution-box>div{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:11px}.manager-contribution-box>div label{position:relative;padding:9px;border:1px solid #e0e8e4;border-radius:9px;background:#fff}.manager-contribution-box>div label>span{display:block;margin-bottom:4px;color:#63746b;font-weight:700}.manager-contribution-box>div label:last-child{grid-column:1/-1}.manager-contribution-box input,.manager-contribution-box select{margin-top:0!important;border-color:#d5e1db!important;background:#f9fbfa!important}.manager-contribution-box>p{margin:0;padding:9px 11px;border-top:1px solid #e4ebe7;background:#fff8e7;color:#7a6127;font-size:11px!important}.manager-contribution-box>p i{margin-right:5px}.expense-posted-link{padding:4px 7px;border-radius:8px;background:#eaf6f0;color:#087159!important;font-weight:700}
.badal-assignment-update{display:block!important;padding:0!important;background:#fbfcfb}.allocation-money-editor{margin:12px 14px;overflow:hidden;border:1px solid #d8e4de;border-radius:13px;background:#fff;box-shadow:0 5px 15px rgba(30,61,49,.035)}.allocation-money-editor>header{display:flex;align-items:center;gap:9px;padding:10px 12px;border-bottom:1px solid #e3eae6;background:linear-gradient(100deg,#f4faf7,#fffaf0)}.allocation-money-editor>header>span{width:34px;height:34px;display:grid;place-items:center;border-radius:9px;background:#075b46;color:#e5c66b}.allocation-money-editor>header>div{min-width:0}.allocation-money-editor>header strong,.allocation-money-editor>header small{display:block}.allocation-money-editor>header strong{color:#354f43}.allocation-money-editor>header>em{margin-left:auto;padding:5px 8px;border-radius:8px;background:#fff;color:#8b6a22;font-size:11px;font-style:normal;font-weight:800;box-shadow:0 1px 5px rgba(50,50,30,.08)}.allocation-money-editor>div{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:12px}.allocation-money-editor label{min-width:0;padding:11px;border:1px solid #e1e8e4;border-radius:11px;background:#fafcfb}.allocation-money-editor label>span{display:block;margin-bottom:7px;color:#51655b;font-size:12px;font-weight:750}.allocation-money-editor label>small{display:block;margin-top:6px;color:#87958e!important}.amount-control{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:stretch;overflow:hidden;width:100%;min-width:0;height:44px;border:1px solid #cfded7;border-radius:9px;background:#fff;transition:.2s}.amount-control:focus-within{border-color:#087159;box-shadow:0 0 0 3px rgba(7,113,89,.09)}.amount-control>b{display:grid;place-items:center;min-width:48px;padding:0 9px;border-right:1px solid #d9e4df;background:#eaf5f0;color:#087159;font-size:11px}.amount-control.performer>b{background:#fff3d6;color:#8a671d}.amount-control.leader>b{background:#edf0f8;color:#56659a}.amount-control input{display:block!important;width:100%!important;min-width:0!important;height:42px!important;margin:0!important;padding:0 12px!important;border:0!important;border-radius:0!important;background:#fff!important;color:#243c32!important;font-size:15px!important;font-weight:700!important;line-height:42px!important;outline:0!important;box-shadow:none!important}.allocation-workflow-editor{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:9px;align-items:end;padding:12px 14px;border-top:1px solid #e2e9e5;background:#f6f9f7}.allocation-workflow-editor label{min-width:0;color:#586b61;font-weight:700}.allocation-workflow-editor select{display:block;width:100%;min-width:0;height:39px;margin-top:5px;padding:0 8px;border:1px solid #d6e1dc;border-radius:8px;background:#fff;font-size:12px}.allocation-workflow-editor button{display:flex;align-items:center;justify-content:center;gap:6px;min-width:118px;height:39px;padding:0 12px;border-radius:9px;background:linear-gradient(135deg,#064b3b,#087159);box-shadow:0 5px 13px rgba(7,91,70,.16)}
.badal-assignment-cards{gap:8px}.badal-assignment-card{perspective:1300px;transition:border-color .25s,box-shadow .25s}.badal-assignment-card.active{border-color:#b7cfc3;box-shadow:0 14px 34px rgba(27,62,48,.09)}.badal-card-summary{display:grid!important;grid-template-columns:42px minmax(150px,1.2fr) minmax(150px,1fr) 120px auto 18px;gap:11px;align-items:center;width:100%;min-width:0;padding:12px 14px!important;border:0!important;background:#fff!important;color:#40544a!important;text-align:left;box-shadow:none!important;transition:.25s}.badal-card-summary:hover{background:#f8fbf9!important}.badal-assignment-card.active .badal-card-summary{background:linear-gradient(100deg,#f3faf6,#fffaf0)!important}.badal-list-number{width:38px;height:38px;display:grid;place-items:center;border-radius:10px;background:#eaf5f0;color:#087159;font-size:12px;font-weight:800}.badal-list-person,.badal-list-performer>span,.badal-list-money{min-width:0}.badal-list-person small,.badal-list-person strong,.badal-list-person em,.badal-list-performer small,.badal-list-performer strong,.badal-list-money small,.badal-list-money strong{display:block}.badal-list-person small,.badal-list-performer small,.badal-list-money small{color:#98752b!important;font-size:10px!important;font-weight:800;letter-spacing:.055em}.badal-list-person strong,.badal-list-performer strong,.badal-list-money strong{overflow:hidden;color:#344d42;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.badal-list-person em{overflow:hidden;color:#849189;font-size:11px;font-style:normal;text-overflow:ellipsis;white-space:nowrap}.badal-list-performer{display:grid;grid-template-columns:30px minmax(0,1fr);gap:8px;align-items:center;min-width:0}.badal-list-performer>i{width:30px;height:30px;display:grid;place-items:center;border-radius:8px;background:#f0f5f2;color:#087159}.badal-list-money{text-align:right}.badal-list-chevron{color:#88968f;font-size:10px;transition:transform .5s cubic-bezier(.2,.8,.25,1)}.badal-assignment-card.active .badal-list-chevron{transform:rotate(180deg);color:#087159}.badal-card-fold{display:grid;grid-template-rows:0fr;opacity:0;transform-origin:top;transition:grid-template-rows .58s cubic-bezier(.2,.78,.24,1),opacity .28s ease}.badal-card-sheet{min-height:0;overflow:hidden;transform-origin:top center;transform:perspective(1200px) rotateX(-12deg) translateY(-8px);filter:brightness(.97);transition:transform .58s cubic-bezier(.2,.78,.24,1),filter .4s}.badal-assignment-card.active .badal-card-fold{grid-template-rows:1fr;opacity:1}.badal-assignment-card.active .badal-card-sheet{transform:perspective(1200px) rotateX(0) translateY(0);filter:none}.badal-card-sheet>header{display:grid;grid-template-columns:43px 1fr auto;gap:11px;align-items:center;padding:13px 15px;border-top:1px solid #dfe8e3;background:#f8fbf9}.badal-card-sheet>footer{display:flex;align-items:center;gap:10px;padding:9px 14px;border-top:1px solid #e7ece9}.badal-card-sheet>footer>a{color:#087159;text-decoration:none}.badal-card-sheet>footer>span{margin-left:auto;color:#89958f}.badal-card-sheet>footer form button{border:0;background:transparent;color:#a44b4b}
@media(max-width:1250px){.leader-tab-layout,.badal-allocation-layout{grid-template-columns:1fr!important}.leader-assignment-form,.badal-manual-form{position:static!important}.leader-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.badal-allocation-stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:850px){.badal-allocation-hero,.badal-auto-panel{align-items:flex-start;flex-direction:column}.badal-policy{min-width:0;width:100%}.badal-auto-panel form{width:100%;grid-template-columns:1fr 1fr}.badal-auto-panel form button{grid-column:1/-1}.contribution-split{grid-template-columns:1fr}.split-line{margin:13px 0}.allocation-workflow-editor{grid-template-columns:1fr 1fr}.allocation-workflow-editor button{grid-column:1/-1}.badal-card-summary{grid-template-columns:42px minmax(140px,1fr) minmax(140px,1fr) auto 18px}.badal-list-money{display:none}}
@media(max-width:700px){:root{--readable-body:14px;--readable-small:11.5px;--readable-label:12.5px}.is-page-title{font-size:17px}.is-content{padding-inline:16px}.journey-leader-identity h4{font-size:15px}.leader-form-grid{grid-template-columns:1fr!important}.badal-allocation-stats,.badal-auto-panel form{grid-template-columns:1fr}.badal-card-summary{grid-template-columns:38px minmax(0,1fr) auto 16px;padding-inline:10px!important}.badal-list-performer{display:none}.badal-card-sheet>header{grid-template-columns:40px 1fr}.badal-card-sheet>header .allocation-status{grid-column:2;justify-self:start}.badal-card-sheet>footer{align-items:flex-start;flex-wrap:wrap}.badal-card-sheet>footer>span{margin-left:0}.badal-money-fields,.allocation-money-editor>div,.allocation-workflow-editor{grid-template-columns:1fr}.allocation-workflow-editor button{grid-column:auto}.allocation-money-editor{margin-inline:9px}}
/* Journey hotel, contracted-room and occupant control centre */
.hotel-control-centre{display:grid;gap:1.35rem}.hotel-command-hero{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:2rem 2.2rem;border-radius:28px;color:#fff;background:linear-gradient(125deg,#073f32 0%,#0c755a 62%,#c59a34 150%);box-shadow:0 22px 55px rgba(7,63,50,.2)}.hotel-command-hero:before{content:"";position:absolute;width:380px;height:380px;border:1px solid rgba(255,255,255,.13);border-radius:50%;right:-120px;top:-160px;box-shadow:0 0 0 45px rgba(255,255,255,.035),0 0 0 95px rgba(255,255,255,.025)}.hotel-command-hero>div:first-child{position:relative;z-index:1;max-width:760px}.hotel-command-hero span{display:block;font-size:.78rem;font-weight:800;letter-spacing:.13em;color:#ecd389}.hotel-command-hero h2{margin:.5rem 0 .45rem;font-size:clamp(1.55rem,2.1vw,2.15rem);font-weight:800;color:#fff}.hotel-command-hero p{margin:0;max-width:700px;font-size:1rem;color:rgba(255,255,255,.82)}.hotel-occupancy-dial{position:relative;z-index:1;flex:0 0 126px;aspect-ratio:1;display:grid;place-content:center;text-align:center;border-radius:50%;background:radial-gradient(circle at center,#0b5d49 57%,transparent 59%),conic-gradient(#f1cb68 var(--hotel-progress),rgba(255,255,255,.16) 0);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12),0 15px 30px rgba(0,0,0,.16)}.hotel-occupancy-dial strong{font-size:1.65rem;color:#fff}.hotel-occupancy-dial small{font-size:.68rem;color:#d9eee8;text-transform:uppercase;letter-spacing:.08em}
.hotel-kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.9rem}.hotel-kpi-grid article{display:flex;align-items:center;gap:.85rem;padding:1rem 1.1rem;background:#fff;border:1px solid #e2ebe7;border-radius:18px;box-shadow:0 8px 25px rgba(14,52,42,.055);transition:.25s ease}.hotel-kpi-grid article:hover{transform:translateY(-4px);border-color:#c8dfd7;box-shadow:0 15px 30px rgba(14,52,42,.1)}.hotel-kpi-grid article>i{display:grid;place-items:center;width:43px;height:43px;border-radius:13px;background:#e9f6f1;color:#087458;font-size:1.05rem}.hotel-kpi-grid strong,.hotel-kpi-grid span{display:block}.hotel-kpi-grid strong{font-size:1.32rem;color:#183e34}.hotel-kpi-grid span{font-size:.78rem;color:#71827d}
.hotel-workspace-grid{display:grid;grid-template-columns:minmax(0,1fr) 370px;gap:1.25rem;align-items:start}.hotel-property-list{min-width:0}.hotel-section-heading{margin-bottom:1rem;background:#fff;border:1px solid #e4ebe8;border-radius:20px;padding:1.15rem 1.3rem}.journey-hotel-card{margin-bottom:.9rem;border:1px solid #dfe9e5;border-radius:22px;background:#fff;box-shadow:0 8px 26px rgba(21,58,48,.06);overflow:hidden;transition:box-shadow .3s,border-color .3s,transform .3s}.journey-hotel-card.active{border-color:#afd5c8;box-shadow:0 18px 42px rgba(9,92,69,.13)}.journey-hotel-card>summary{list-style:none;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1rem;padding:1.1rem 1.25rem;cursor:pointer;background:linear-gradient(100deg,#fff,#f8fcfa);transition:.25s}.journey-hotel-card>summary::-webkit-details-marker{display:none}.journey-hotel-card>summary:hover{background:#f3faf7}.hotel-place-icon{display:grid;place-items:center;width:50px;height:50px;border-radius:16px;background:linear-gradient(145deg,#0b7b5d,#07513f);color:#fff;box-shadow:0 9px 19px rgba(8,102,78,.2)}.hotel-summary-copy{min-width:0}.hotel-summary-copy>*{display:block}.hotel-summary-copy small{font-size:.69rem;font-weight:800;letter-spacing:.1em;color:#b18122}.hotel-summary-copy strong{margin:.18rem 0;font-size:1.08rem;color:#173d33}.hotel-summary-copy span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;color:#71817d}.hotel-summary-copy span i{color:#c3922e}.hotel-summary-metrics{display:flex;align-items:center;gap:.65rem}.hotel-summary-metrics span{padding:.46rem .65rem;border-radius:10px;background:#edf6f2;font-size:.75rem;color:#62736e}.hotel-summary-metrics span b{color:#0c604a}.hotel-summary-metrics>i{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:#eef3f1;color:#667671;transition:transform .35s}.journey-hotel-card[open] .hotel-summary-metrics>i{transform:rotate(180deg)}.journey-hotel-sheet{padding:0 1.25rem 1.25rem;border-top:1px solid #e6eeeb;transform-origin:top;animation:hotelSheetOpen .42s cubic-bezier(.2,.75,.2,1)}.journey-hotel-card.hotel-folding .journey-hotel-sheet{animation:hotelSheetFold .3s ease forwards}@keyframes hotelSheetOpen{from{opacity:0;transform:perspective(900px) rotateX(-15deg) translateY(-12px)}to{opacity:1;transform:none}}@keyframes hotelSheetFold{to{opacity:0;transform:perspective(900px) rotateX(22deg) scaleY(.7)}}
.hotel-profile-grid{display:grid;grid-template-columns:minmax(280px,.9fr) 1.1fr;gap:1rem;padding:1.15rem 0}.hotel-map-panel{position:relative;min-height:235px;border-radius:18px;overflow:hidden;background:#e5eee9}.hotel-map-panel iframe{width:100%;height:235px;border:0;display:block}.hotel-map-panel>a,.hotel-live-map>a{position:absolute;right:10px;bottom:10px;padding:.45rem .65rem;border-radius:9px;background:rgba(6,53,42,.88);color:#fff;font-size:.72rem;text-decoration:none;backdrop-filter:blur(5px)}.hotel-map-empty,.hotel-live-map>div{height:100%;min-height:220px;display:grid;place-content:center;text-align:center;gap:.35rem;color:#70827c;background:radial-gradient(circle at top,#f6fbf8,#e7f0ec)}.hotel-map-empty i,.hotel-live-map>div i{font-size:2rem;color:#3c9b7d}.hotel-map-empty strong,.hotel-live-map>div strong,.hotel-map-empty span,.hotel-live-map>div span{display:block}.hotel-map-empty span,.hotel-live-map>div span{font-size:.8rem}.hotel-fact-panel{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}.hotel-fact-panel>div{padding:.75rem .85rem;border:1px solid #e1ebe7;border-radius:13px;background:#fbfdfc}.hotel-fact-panel>div>span,.hotel-fact-panel>div>strong{display:block}.hotel-fact-panel>div>span{font-size:.69rem;text-transform:uppercase;letter-spacing:.06em;color:#84928e}.hotel-fact-panel>div>strong{margin-top:.2rem;font-size:.83rem;color:#24463d}.hotel-progress-fact{grid-column:1/-1}.hotel-progress-fact>span{display:flex!important;justify-content:space-between}.hotel-progress-fact>div{height:7px;margin-top:.5rem;border-radius:9px;background:#e0ebe7;overflow:hidden}.hotel-progress-fact>div i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#0a795b,#dbb24f);transition:width .65s ease}
.hotel-room-section{border-top:1px solid #e5ece9;padding-top:1rem}.hotel-room-section>header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.8rem}.hotel-room-section>header small{font-size:.69rem;color:#ad8127;letter-spacing:.11em;font-weight:800}.hotel-room-section>header h4{margin:.1rem 0;font-size:1.05rem;color:#183f34}.hotel-room-section>header>span{padding:.4rem .65rem;border-radius:9px;background:#e8f6f0;color:#087354;font-size:.75rem;font-weight:700}.hotel-room-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.hotel-room-card{position:relative;border:1px solid #e0e9e5;border-radius:16px;padding:.85rem;background:#fff;overflow:hidden}.hotel-room-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#21a47d}.hotel-room-card.room-full:before{background:#d69a2c}.hotel-room-card>header{display:flex;justify-content:space-between;align-items:flex-start}.hotel-room-card>header>span{display:grid;grid-template-columns:auto 1fr;column-gap:.5rem;align-items:center}.hotel-room-card>header i{grid-row:1/3;color:#168564}.hotel-room-card>header b{font-size:.88rem;color:#24473e}.hotel-room-card>header small{font-size:.7rem;color:#87948f}.hotel-room-card>header em{padding:.3rem .5rem;border-radius:8px;background:#eaf6f1;color:#087255;font-size:.72rem;font-weight:800;font-style:normal}.room-tags{display:flex;gap:.35rem;flex-wrap:wrap;margin:.65rem 0}.room-tags span{padding:.25rem .45rem;border-radius:7px;background:#f0f4f2;color:#64746f;font-size:.66rem}.room-occupants{display:grid;gap:.4rem}.room-guest{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.45rem;padding:.5rem;border-radius:10px;background:#f8fbfa}.room-guest>span{width:29px;height:29px;display:grid;place-items:center;border-radius:9px;background:#dff3eb;color:#087459;font-size:.7rem;font-weight:800}.room-guest>span.guest-type-leader{background:#fff0cb;color:#8b6519}.room-guest>span.guest-type-volunteer{background:#e8e9fc;color:#4d54a6}.room-guest strong,.room-guest small{display:block}.room-guest strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;color:#25463d}.room-guest small{font-size:.63rem;color:#7f8d88}.room-guest-actions{display:flex;gap:.25rem;align-items:center}.room-guest-actions select{width:82px;padding:.3rem;border:1px solid #dce5e1;border-radius:7px;background:#fff;font-size:.62rem}.room-guest-actions button{border:0;width:25px;height:25px;border-radius:7px;color:#b34d4d;background:#faeaea}.room-empty-bed{padding:.65rem;border:1px dashed #d7e2de;border-radius:10px;text-align:center;color:#87948f;font-size:.7rem}.room-delete-form{text-align:right;margin-top:.55rem}.room-delete-form button,.hotel-remove-form button{border:0;background:none;color:#a15b58;font-size:.68rem}.hotel-room-empty{grid-column:1/-1;padding:1.6rem;text-align:center;border:1px dashed #cbdcd5;border-radius:15px;background:#f8fcfa;color:#74837e}.hotel-room-empty i{display:block;margin-bottom:.4rem;font-size:1.5rem;color:#3a9b7b}.hotel-room-empty strong{display:block;color:#315048}.hotel-room-empty p{margin:.15rem 0;font-size:.78rem}
.hotel-action-forms{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;margin-top:1rem}.hotel-action-forms>form{display:grid;grid-template-columns:1fr 1fr;gap:.65rem;padding:1rem;border-radius:17px;background:#f4f9f7;border:1px solid #dce9e4}.hotel-action-forms form>header,.hotel-action-forms .form-wide,.hotel-action-forms form>.portal-btn{grid-column:1/-1}.hotel-action-forms form>header{display:flex;align-items:center;gap:.6rem}.hotel-action-forms form>header>i{width:36px;height:36px;display:grid;place-items:center;border-radius:11px;background:#dcefe8;color:#08765a}.hotel-action-forms form>header strong,.hotel-action-forms form>header small{display:block}.hotel-action-forms form>header strong{font-size:.86rem;color:#22483d}.hotel-action-forms form>header small{font-size:.68rem;color:#7a8984}.hotel-action-forms label,.hotel-registration-panel label{display:grid;gap:.28rem;font-size:.72rem;font-weight:700;color:#4f625c}.hotel-action-forms input,.hotel-action-forms select,.hotel-action-forms textarea,.hotel-registration-panel input,.hotel-registration-panel select,.hotel-registration-panel textarea{width:100%;min-width:0;padding:.65rem .7rem;border:1px solid #ceddd7;border-radius:10px;background:#fff;color:#233e37;font:inherit;font-weight:500;outline:0;transition:.2s}.hotel-action-forms input:focus,.hotel-action-forms select:focus,.hotel-action-forms textarea:focus,.hotel-registration-panel input:focus,.hotel-registration-panel select:focus,.hotel-registration-panel textarea:focus{border-color:#19906f;box-shadow:0 0 0 3px rgba(25,144,111,.11)}.hotel-remove-form{text-align:right;margin-top:.65rem}
.hotel-registration-panel{position:sticky;top:92px;border:1px solid #dce8e3;border-radius:22px;background:#fff;box-shadow:0 14px 40px rgba(14,52,42,.09);overflow:hidden}.hotel-registration-panel>header{padding:1.3rem;background:linear-gradient(135deg,#073e32,#0a7157);color:#fff}.hotel-registration-panel>header small{font-size:.68rem;letter-spacing:.12em;color:#e9ca75;font-weight:800}.hotel-registration-panel>header h3{margin:.25rem 0;font-size:1.2rem;color:#fff}.hotel-registration-panel>header p{margin:0;font-size:.78rem;color:rgba(255,255,255,.75)}.hotel-registration-panel>form{display:grid;gap:.72rem;padding:1.15rem;max-height:calc(100vh - 215px);overflow:auto}.hotel-location-presets{display:grid;grid-template-columns:repeat(3,1fr);gap:.35rem}.hotel-location-presets button{padding:.5rem .35rem;border:1px solid #d7e4df;border-radius:9px;background:#f7faf9;color:#52665f;font-size:.69rem;font-weight:700;transition:.2s}.hotel-location-presets button:hover,.hotel-location-presets button.active{color:#fff;border-color:#087559;background:#087559;transform:translateY(-2px)}.hotel-coordinate-grid{display:grid;grid-template-columns:1fr 1fr;gap:.55rem}.hotel-geolocate{padding:.55rem;border:1px dashed #9dcbbd;border-radius:10px;background:#eff9f5;color:#0a765a;font-size:.72rem;font-weight:700}.hotel-live-map{position:relative;height:205px;overflow:hidden;border:1px solid #d5e4de;border-radius:14px}.hotel-live-map iframe{width:100%;height:100%;border:0}.hotel-property-empty{padding:3rem 1.5rem;text-align:center;border:1px dashed #c6d9d2;border-radius:22px;background:#f8fcfa}.hotel-property-empty i{font-size:2.3rem;color:#2e9978}.hotel-property-empty h4{margin:.6rem 0 .2rem;color:#254a40}.hotel-property-empty p{margin:0;color:#75857f}
@media(max-width:1300px){.hotel-workspace-grid{grid-template-columns:minmax(0,1fr) 330px}.hotel-kpi-grid{grid-template-columns:repeat(3,1fr)}.hotel-action-forms{grid-template-columns:1fr}.hotel-room-grid{grid-template-columns:1fr}}
@media(max-width:1050px){.hotel-workspace-grid{grid-template-columns:1fr}.hotel-registration-panel{position:static}.hotel-registration-panel>form{max-height:none}.hotel-room-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.hotel-command-hero{padding:1.35rem}.hotel-occupancy-dial{flex-basis:92px}.hotel-kpi-grid{grid-template-columns:1fr 1fr}.journey-hotel-card>summary{grid-template-columns:auto 1fr}.hotel-summary-metrics{grid-column:1/-1;justify-content:flex-end}.hotel-profile-grid,.hotel-room-grid,.hotel-fact-panel,.hotel-action-forms>form{grid-template-columns:1fr}.hotel-progress-fact,.hotel-action-forms .form-wide,.hotel-action-forms form>.portal-btn{grid-column:auto}.room-guest{grid-template-columns:auto 1fr}.room-guest-actions{grid-column:2}.hotel-coordinate-grid{grid-template-columns:1fr}.hotel-registration-panel>form{padding:.85rem}}
.hotel-batch-allocation{align-content:start}.rooming-batch-status{display:flex;justify-content:space-between;align-items:center;gap:.6rem;padding:.55rem .7rem;border:1px solid #dce8e3;border-radius:10px;background:#fff}.rooming-batch-status span{font-size:.69rem;color:#65766f}.rooming-batch-status span:first-child{color:#126b53}.rooming-batch-status .capacity-warning{color:#b25d35;font-weight:700}.rooming-batch-rows{display:grid;gap:.5rem}.rooming-person-row{display:grid;grid-template-columns:30px minmax(0,1.45fr) minmax(100px,.7fr) 30px;align-items:end;gap:.45rem;padding:.6rem;border:1px solid #dce8e3;border-radius:12px;background:#fff;animation:roomingRowIn .3s ease}.rooming-row-number{align-self:center;width:28px;height:28px;display:grid;place-items:center;border-radius:9px;background:#e2f3ec;color:#087356;font-size:.72rem;font-weight:800}.remove-rooming-person{width:30px;height:35px;border:0;border-radius:9px;background:#faecec;color:#b04e4e}.remove-rooming-person:disabled{opacity:.35;cursor:not-allowed}.add-rooming-person{padding:.58rem;border:1px dashed #84bfae;border-radius:10px;background:#ecf7f3;color:#087257;font-size:.72rem;font-weight:750;transition:.2s}.add-rooming-person:hover:not(:disabled){background:#dff2eb;transform:translateY(-1px)}.add-rooming-person:disabled{opacity:.48;cursor:not-allowed}@keyframes roomingRowIn{from{opacity:0;transform:translateY(-8px) scale(.98)}to{opacity:1;transform:none}}@media(max-width:700px){.rooming-batch-status{align-items:flex-start;flex-direction:column}.rooming-person-row{grid-template-columns:28px 1fr 30px}.rooming-person-row label:nth-of-type(2){grid-column:2}.remove-rooming-person{grid-column:3;grid-row:1;align-self:center}}
.hotel-workspace-grid{transition:grid-template-columns .38s cubic-bezier(.2,.75,.2,1)}.hotel-workspace-grid.registration-collapsed{grid-template-columns:minmax(0,1fr) 74px}.hotel-workspace-grid.registration-expanded{grid-template-columns:minmax(0,1fr) 370px}.hotel-registration-panel>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:.7rem;padding:1rem;cursor:pointer;color:#fff;background:linear-gradient(145deg,#073e32,#0a7157);transition:.3s}.hotel-registration-panel>summary::-webkit-details-marker{display:none}.hotel-registration-panel>summary>span{display:flex;align-items:center;gap:.65rem;min-width:0}.hotel-registration-panel>summary>span>i{flex:0 0 38px;width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:rgba(255,255,255,.14);color:#efd078}.hotel-registration-panel>summary span span{min-width:0}.hotel-registration-panel>summary small,.hotel-registration-panel>summary strong{display:block}.hotel-registration-panel>summary small{font-size:.61rem;letter-spacing:.1em;color:#e9ca75}.hotel-registration-panel>summary strong{font-size:.84rem;white-space:nowrap}.hotel-registration-panel>summary>i{transition:transform .35s}.hotel-registration-panel[open]>summary>i{transform:rotate(-180deg)}.hotel-registration-panel:not([open])>summary{min-height:230px;flex-direction:column;justify-content:flex-start;padding:.85rem .55rem}.hotel-registration-panel:not([open])>summary>span{flex-direction:column}.hotel-registration-panel:not([open])>summary>span span{display:flex;align-items:center;margin-top:.35rem}.hotel-registration-panel:not([open])>summary small{writing-mode:vertical-rl;text-orientation:mixed;letter-spacing:.13em}.hotel-registration-panel:not([open])>summary strong{display:none}.hotel-registration-panel:not([open])>summary>i{margin-top:auto;transform:rotate(0)}.hotel-registration-body{transform-origin:top;animation:hotelSheetOpen .38s ease}.hotel-registration-body>header{padding:1.15rem 1.3rem;background:#f0f8f5;border-bottom:1px solid #dae8e2}.hotel-registration-body>header small{font-size:.66rem;letter-spacing:.11em;font-weight:800;color:#a87920}.hotel-registration-body>header h3{margin:.22rem 0;color:#17483a;font-size:1.12rem}.hotel-registration-body>header p{margin:0;color:#6f817a;font-size:.75rem}.hotel-registration-body>form{display:grid;gap:.72rem;padding:1.15rem;max-height:calc(100vh - 315px);overflow:auto}@media(max-width:1300px) and (min-width:1051px){.hotel-workspace-grid.registration-expanded{grid-template-columns:minmax(0,1fr) 330px}}@media(max-width:1050px){.hotel-workspace-grid.registration-collapsed,.hotel-workspace-grid.registration-expanded{grid-template-columns:1fr}.hotel-registration-panel:not([open])>summary{min-height:0;flex-direction:row;justify-content:space-between}.hotel-registration-panel:not([open])>summary>span{flex-direction:row}.hotel-registration-panel:not([open])>summary>span span{display:block;margin:0}.hotel-registration-panel:not([open])>summary small{writing-mode:horizontal-tb}.hotel-registration-panel:not([open])>summary strong{display:block}.hotel-registration-body>form{max-height:none}}
