.ecc-hospitality-page{position:relative}.ecc-h-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0}.ecc-h-summary>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border:1px solid var(--ui-line,#d8e5f2);border-radius:10px;background:var(--ui-surface,#fff)}.ecc-h-summary span,.ecc-h-cell small{color:var(--ui-muted,#627b97)}.ecc-h-summary b{font-size:22px;color:var(--ui-ink,#153b67)}.ecc-h-summary b.is-danger{color:#c53030}.ecc-h-tools{display:flex;gap:10px;align-items:center;margin:12px 0}.ecc-h-tools input,.ecc-h-tools select,.ecc-h-form-grid input,.ecc-h-form-grid select{min-height:40px;border:1px solid var(--ui-line-strong,#c7d9eb);border-radius:8px;padding:8px 10px;background:#fff;color:var(--ui-ink,#163a63);font:inherit}.ecc-h-tools select{min-width:160px}.ecc-h-search{display:flex;align-items:center;gap:8px;min-width:min(420px,100%);padding-left:10px;border:1px solid var(--ui-line-strong,#c7d9eb);border-radius:8px;background:#fff;color:var(--ui-muted,#627b97)}.ecc-h-search input{width:100%;border:0;outline:0}.ecc-h-table-wrap{width:100%;overflow:auto;border:1px solid var(--ui-line,#d8e5f2);border-radius:10px}.ecc-h-table{min-width:1140px}.ecc-h-head,.ecc-h-row{display:grid;grid-template-columns:minmax(180px,1.25fr) minmax(125px,.82fr) minmax(190px,1.25fr) minmax(145px,.95fr) minmax(135px,.9fr) minmax(140px,.95fr) minmax(175px,1.15fr);align-items:stretch}.ecc-h-head{position:sticky;top:0;z-index:1;background:#f2f7fc;color:#315b85;font-size:13px;font-weight:700}.ecc-h-head>span{padding:12px 10px;border-bottom:1px solid var(--ui-line,#d8e5f2)}.ecc-h-row{min-height:82px;border-bottom:1px solid var(--ui-line,#e3ebf3);color:var(--ui-ink,#163a63)}.ecc-h-row:last-child{border-bottom:0}.ecc-h-cell{min-width:0;padding:12px 10px;text-align:left;font:inherit}.ecc-h-person{display:flex;align-items:center;gap:10px}.ecc-h-person>span:last-child{min-width:0}.ecc-h-person b,.ecc-h-owner b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ecc-h-person small,.ecc-h-cell small{display:block;margin-top:5px;line-height:1.45;overflow-wrap:anywhere}.ecc-h-avatar{display:grid;flex:0 0 36px;width:36px;height:36px;place-items:center;border-radius:50%;background:#e5f1ff;color:#1670d2;font-weight:700}.ecc-h-trigger{border:0;border-right:1px solid #edf2f7;background:transparent;cursor:pointer}.ecc-h-trigger:hover{background:#f8fbff}.ecc-h-trigger:focus-visible,.ecc-h-tools :focus-visible,.ecc-h-drawer button:focus-visible{outline:2px solid #1670d2;outline-offset:2px}.ecc-h-status{display:inline-flex;align-items:center;min-height:24px;padding:2px 8px;border-radius:20px;background:#e8f1ff;color:#245c9b;font-size:12px;white-space:nowrap}.ecc-h-status.is-green{background:#e7f7ef;color:#16804b}.ecc-h-status.is-amber{background:#fff5dd;color:#956300}.ecc-h-status.is-red{background:#fff0f0;color:#c53030}.ecc-h-status.is-muted{background:#edf0f4;color:#6b7280}.ecc-h-owner{display:flex;flex-direction:column;justify-content:center}.ecc-h-owner a{margin-top:6px;color:#1670d2;font-size:13px}.ecc-h-empty{padding:28px;text-align:center;color:var(--ui-muted,#627b97)}.ecc-h-footnote{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:12px;color:var(--ui-muted,#627b97);font-size:13px}.ecc-h-footnote strong{color:#1670d2}.ecc-h-overlay{position:fixed;inset:0;z-index:1000;display:flex;justify-content:flex-end;background:rgba(9,27,48,.42)}.ecc-h-backdrop{position:absolute;inset:0;border:0;background:transparent}.ecc-h-drawer{position:relative;display:flex;flex-direction:column;width:min(720px,100%);height:100%;background:#fff;box-shadow:-12px 0 35px rgba(10,38,68,.18)}.ecc-h-drawer-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:22px 24px;border-bottom:1px solid var(--ui-line,#d8e5f2)}.ecc-h-drawer-head h3{margin:0 0 6px;font-size:22px;color:var(--ui-ink,#153b67)}.ecc-h-drawer-head p{margin:0;color:var(--ui-muted,#627b97)}.ecc-h-drawer-head button{border:0;background:transparent;color:#58718b;font-size:24px;cursor:pointer}.ecc-h-drawer-body{overflow:auto;padding:8px 24px 28px}.ecc-h-detail-section{scroll-margin-top:12px;padding:18px 0;border-bottom:1px solid var(--ui-line,#e2ebf4)}.ecc-h-section-title{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px;margin-bottom:14px}.ecc-h-section-title b{color:#153b67}.ecc-h-section-title small{color:var(--ui-muted,#627b97)}.ecc-h-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ecc-h-form-grid label{display:grid;gap:6px;min-width:0;color:#345775;font-size:13px}.ecc-h-form-grid input,.ecc-h-form-grid select{width:100%;min-width:0}.ecc-h-wide{grid-column:1/-1}.ecc-h-save-row{display:flex;justify-content:flex-end;align-items:center;gap:12px;margin-top:12px}.ecc-h-save-message{margin-right:auto;color:#b42318;font-size:13px}.ecc-h-owner-readonly{display:flex;align-items:center;gap:12px;padding:10px;border-radius:8px;background:#f4f8fc;color:#345775}.ecc-h-audit{margin-top:10px;color:var(--ui-muted,#627b97);font-size:12px}.ecc-h-programs{display:grid;gap:8px}.ecc-h-program{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 10px;border:1px solid #e2ebf4;border-radius:8px}.ecc-h-program select{min-height:36px;max-width:150px;border:1px solid var(--ui-line-strong,#c7d9eb);border-radius:7px;background:#fff;color:var(--ui-ink,#163a63)}.ecc-h-drawer-footer{padding:12px 24px;border-top:1px solid var(--ui-line,#d8e5f2)}.ecc-h-error,.ecc-h-loading{padding:28px;color:var(--ui-muted,#627b97)}
@media(max-width:900px){.ecc-h-table{min-width:1020px}.ecc-h-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.ecc-h-tools{flex-wrap:wrap}.ecc-h-search{flex:1 1 100%;min-width:0}.ecc-h-drawer{width:min(640px,100%)}}
@media(max-width:600px){.ecc-h-summary{gap:8px}.ecc-h-summary>div{padding:11px 12px}.ecc-h-summary span{font-size:12px}.ecc-h-summary b{font-size:19px}.ecc-h-tools select{flex:1;min-width:0}.ecc-h-table{min-width:940px}.ecc-h-head,.ecc-h-row{grid-template-columns:minmax(165px,1.2fr) minmax(110px,.8fr) minmax(170px,1.2fr) minmax(130px,.9fr) minmax(120px,.8fr) minmax(130px,.9fr) minmax(160px,1.1fr)}.ecc-h-drawer-head{padding:18px 16px}.ecc-h-drawer-body{padding:6px 16px 22px}.ecc-h-drawer-footer{padding:10px 16px}.ecc-h-form-grid{grid-template-columns:1fr}.ecc-h-wide{grid-column:auto}.ecc-h-save-row{align-items:flex-start;flex-direction:column}.ecc-h-save-row button{width:100%;min-height:42px}.ecc-h-program{align-items:flex-start;flex-direction:column}.ecc-h-program select{max-width:none;width:100%}}
.ecc-h-anchors{position:sticky;top:0;z-index:2;display:flex;gap:8px;overflow:auto;padding:10px 24px;border-bottom:1px solid var(--ui-line,#d8e5f2);background:#fff}.ecc-h-anchors button{flex:0 0 auto;min-height:36px;padding:6px 12px;border:1px solid var(--ui-line,#d8e5f2);border-radius:18px;background:#fff;color:#315b85;cursor:pointer}.ecc-h-anchors button:hover{border-color:#1670d2;color:#1670d2}.ecc-h-drawer-scroll{flex:1;min-height:0;overflow:auto;padding:8px 24px 28px}
.ecc-hospitality-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.ecc-inline-form{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.ecc-inline-form input,.ecc-inline-form select{min-height:38px;border:1px solid var(--ui-line-strong,#c7d9eb);border-radius:8px;padding:0 10px;background:var(--ui-surface,#fff);color:var(--ui-ink,#163a63)}.ecc-mini-list{display:grid;gap:8px;margin-top:14px;color:var(--ui-muted,#526a84);font-size:13px}.ecc-mini-list span{padding:9px 10px;background:var(--ui-surface-soft,#f7faff);border-radius:7px}.ecc-point-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ecc-point-row img{margin-left:auto;border:1px solid var(--ui-line-strong,#c7d9eb);border-radius:6px;background:var(--ui-surface,#fff)}.ecc-hint{color:var(--ui-helper,#6e88a4);line-height:1.7}.ecc-message{color:var(--ui-blue-hover,#216cc0)}@media(max-width:800px){.ecc-hospitality-grid{grid-template-columns:1fr}.ecc-inline-form input,.ecc-inline-form select,.ecc-inline-form button{width:100%}}
.ehr-page{display:grid;gap:14px;color:#173e73}.ehr-intro{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px 22px;border:1px solid #d7e7fa;border-radius:9px;background:#f4f9ff}.ehr-intro small{color:#1470df;font-weight:700}.ehr-intro h3{margin:7px 0;color:#123b73;font-size:22px}.ehr-intro p,.ehr-list-head p{margin:0;color:#6883a5;font-size:13px}.ehr-intro>span{padding:9px 12px;border-radius:20px;background:#fff;color:#6682a6;font-size:12px;white-space:nowrap}.ehr-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.ehr-metrics>div{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 16px;border:1px solid #d9e7f7;border-radius:8px;background:#fff}.ehr-metrics span{color:#6580a2;font-size:13px}.ehr-metrics b{color:#0b58bc;font-size:24px}.ehr-metrics>div:nth-child(3) b{color:#b57c20}.ehr-metrics>div:nth-child(4) b{color:#d85050}.ehr-table-card{padding:17px 18px!important}.ehr-list-head{display:grid;gap:12px;margin-bottom:12px}.ehr-list-head h4{margin:0 0 4px;color:#123b73;font-size:18px}.ehr-filters{display:grid;grid-template-columns:minmax(220px,1fr) 190px 170px;gap:9px}.ehr-filters input,.ehr-filters select,.ehr-form-grid input,.ehr-form-grid select,.ehr-phase select{box-sizing:border-box;min-width:0;height:38px;padding:0 10px;border:1px solid #cbdcf1;border-radius:7px;background:#fff;color:#244e7d;font:inherit;font-size:13px}.ehr-table{overflow:auto;border:1px solid #dce8f5;border-radius:7px}.ehr-row{display:grid;grid-template-columns:minmax(155px,1.25fr) minmax(115px,.86fr) minmax(115px,.95fr) minmax(110px,.9fr) minmax(90px,.72fr) minmax(100px,.8fr) minmax(145px,1.1fr) 104px;align-items:center;gap:9px;min-width:1000px;padding:12px 11px;border-top:1px solid #e2ebf5;color:#244970;font-size:12px}.ehr-table-head{position:sticky;top:0;z-index:1;min-height:38px;border-top:0;background:#f0f6fd;color:#244e7e}.ehr-table-head b{font-size:11px}.ehr-person{display:flex;align-items:center;gap:9px;min-width:0}.ehr-person>span{display:grid;place-items:center;flex:0 0 36px;height:36px;border-radius:8px;background:#e4f1ff;color:#0969dc;font-size:15px;font-weight:700}.ehr-person>div{display:grid;gap:4px;min-width:0}.ehr-person b{color:#153f73;font-size:13px}.ehr-person small,.ehr-cell small{display:block;color:#778eaa;font-size:11px;line-height:1.5;overflow-wrap:anywhere}.ehr-cell{min-width:0;line-height:1.5}.ehr-status{display:inline-block;padding:4px 8px;border-radius:16px;background:#e7f2ff;color:#1766bf;font-size:11px;font-weight:700;white-space:nowrap}.ehr-status:empty{display:none}.ehr-row-action{justify-self:end}.ehr-row-action .btn{min-height:33px;padding:6px 8px;font-size:11px;white-space:nowrap}.ehr-table-foot{padding:10px 0 0;color:#7086a2;font-size:12px}.ehr-empty{padding:20px;color:#7187a5;text-align:center;font-size:13px}.ehr-overlay{position:fixed;inset:0;z-index:100;background:#112b4f66}.ehr-overlay[hidden]{display:none!important}.ehr-drawer{position:absolute;top:0;right:0;display:flex;flex-direction:column;width:min(620px,94vw);height:100%;overflow:auto;background:#f7faff;box-shadow:-10px 0 34px #173d681f}.ehr-drawer-head{position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:20px 22px 14px;border-bottom:1px solid #dce8f5;background:#fff}.ehr-drawer-head small{color:#0b6de0;font-weight:700}.ehr-drawer-head h3{margin:7px 0;color:#143d73;font-size:22px}.ehr-drawer-head h3 span{display:inline-block;padding:4px 8px;border-radius:14px;background:#e8f3ff;color:#1768c7;font-size:11px;vertical-align:middle}.ehr-drawer-head p{margin:0;color:#6e86a5;font-size:13px}.ehr-drawer-head>button{width:34px;height:34px;border:0;border-radius:7px;background:#eff5fd;color:#53749d;font-size:22px;cursor:pointer}.ehr-drawer form{display:grid;gap:11px;padding:14px 18px 18px}.ehr-stage{padding:13px 14px;border:1px solid #dce8f6;border-radius:8px;background:#fff}.ehr-stage h4{margin:0 0 5px;color:#123f78;font-size:15px}.ehr-stage>p{margin:0 0 8px;color:#7088a6;font-size:11px}.ehr-phase{display:grid;grid-template-columns:minmax(0,1fr) 148px;align-items:center;gap:10px;padding:7px 0;border-top:1px solid #edf2f8}.ehr-phase>span{display:grid;gap:3px;color:#284e7c;font-size:12px}.ehr-phase small{color:#7a91ac;font-size:11px}.ehr-phase select{height:34px}.ehr-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.ehr-form-grid label{display:grid;gap:4px;min-width:0;color:#607b9d;font-size:11px}.ehr-form-grid input,.ehr-form-grid select{width:100%;height:35px;font-size:12px}.ehr-span-2{grid-column:1/-1}.ehr-disclaimer{padding:10px 12px;border-radius:6px;background:#eaf3ff;color:#58799e;font-size:11px;line-height:1.6}.ehr-drawer-actions{position:sticky;bottom:0;display:flex;justify-content:flex-end;gap:9px;padding:11px 0 0;background:#f7faff}.ehr-message,.ehr-global-message{margin:0;color:#34699f;font-size:12px;line-height:1.5}.ehr-global-message:empty{display:none}
@media(max-width:1050px){.ehr-row{grid-template-columns:minmax(140px,1.1fr) repeat(3,minmax(100px,.8fr)) minmax(85px,.6fr) minmax(90px,.7fr) minmax(130px,1fr) 98px;gap:7px;padding:10px 8px}.ehr-table-card{padding:14px 12px!important}}
@media(max-width:760px){.ehr-intro{align-items:flex-start;flex-direction:column;padding:14px}.ehr-intro h3{font-size:20px}.ehr-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.ehr-metrics>div{padding:11px}.ehr-metrics span{font-size:11px}.ehr-metrics b{font-size:20px}.ehr-filters{grid-template-columns:1fr 1fr}.ehr-filters input{grid-column:1/-1}.ehr-table{overflow:visible;border:0}.ehr-table-head{display:none}.ehr-table-body{display:grid;gap:10px}.ehr-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 12px;min-width:0;padding:10px 12px;border:1px solid #dce8f5;border-radius:8px;background:#fff}.ehr-person{grid-column:1/-1;padding:3px 0 10px;border-bottom:1px solid #e8eff7}.ehr-cell{padding:8px 0;border-bottom:1px solid #eff3f8}.ehr-cell:before{content:attr(data-label);display:block;margin-bottom:3px;color:#7a90aa;font-size:10px}.ehr-row-action{grid-column:1/-1;justify-self:stretch;padding-top:8px}.ehr-row-action .btn{width:100%;min-height:38px}.ehr-drawer{width:100vw}.ehr-drawer-head{padding:15px}.ehr-drawer form{padding:11px}.ehr-stage{padding:11px}.ehr-phase{grid-template-columns:minmax(0,1fr) 126px}.ehr-form-grid{grid-template-columns:1fr 1fr}.ehr-span-2{grid-column:1/-1}}
.ehr-drawer{width:min(560px,94vw)}.ehr-stage-nav{position:sticky;top:124px;z-index:3;display:flex;flex:0 0 56px;align-items:center;gap:6px;min-height:56px;overflow-x:auto;padding:8px 14px;border-bottom:1px solid #e2ebf5;background:#fff}.ehr-stage-nav button{flex:0 0 auto;min-height:36px;padding:0 10px;border:1px solid #d6e5f7;border-radius:6px;background:#edf5ff;color:#195caa;font:inherit;font-size:12px;font-weight:700;cursor:pointer}.ehr-stage-nav button:hover,.ehr-stage-nav button:focus-visible{border-color:#6aa6ed;background:#e1efff;outline:2px solid #b8d8ff}.ehr-stage{scroll-margin-top:12px}
.ehr-status.is-success{background:#e3f6ef;color:#138260}.ehr-status.is-warning{background:#fff2d5;color:#a66a08}.ehr-status.is-danger{background:#ffebeb;color:#c43d42}.ehr-status.is-info{background:#e7f2ff;color:#1766bf}
.ehr-row{grid-template-columns:minmax(155px,1.25fr) minmax(115px,.86fr) minmax(115px,.95fr) minmax(110px,.9fr) minmax(90px,.72fr) minmax(100px,.8fr) minmax(190px,1.4fr)}.ehr-edit-link{display:block;margin-top:5px;padding:0;border:0;background:none;color:#0869d8;font:inherit;font-weight:700;text-align:left;cursor:pointer}.ehr-edit-link:hover,.ehr-edit-link:focus-visible{text-decoration:underline;outline:2px solid #9bc9ff;outline-offset:2px}@media(max-width:1050px){.ehr-row{grid-template-columns:minmax(140px,1.1fr) repeat(3,minmax(100px,.8fr)) minmax(85px,.6fr) minmax(90px,.7fr) minmax(160px,1.2fr)}}@media(max-width:760px){.ehr-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.ehr-cell .ehr-edit-link{min-height:32px}}
.ehr-view-context{display:grid;justify-items:start;gap:3px;min-width:220px;padding:9px 13px;border:1px solid #d6e6f8;border-radius:8px;background:#fff}.ehr-view-context small{color:#7189a8;font-size:11px;font-weight:400}.ehr-view-context span{color:#174b8c;font-size:13px;font-weight:700}
@media(max-width:760px){.ehr-view-context{min-width:0;width:100%}}
.ehr-row{padding-top:5px;padding-bottom:5px}
.ehr-updated{display:block;margin:3px 0 8px;color:#6d87a6;font-size:11px}
