@font-face{font-family:Noto Sans Thai;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/noto-sans-thai-thai.woff2)format("woff2");unicode-range:U+2D7,U+303,U+331,U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:Noto Sans Thai;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/noto-sans-thai-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Noto Sans Thai;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/noto-sans-thai-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--flat-primary:#155eef;--flat-primary-hover:#004eeb;--flat-primary-soft:#eef4ff;--flat-bg:#f4f7fbdb;--flat-surface:#fff;--flat-surface-muted:#f9fafb;--flat-border:#d0d5dd;--flat-border-soft:#e4e7ec;--flat-text:#101828;--flat-text-muted:#667085;--flat-success:#16a34a;--flat-warning:#f59e0b;--flat-danger:#dc2626;--flat-cyan:#00a3a3;letter-spacing:0;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Noto Sans Thai,Kanit,Prompt,system-ui,Segoe UI,Roboto,sans-serif;font-size:16px;line-height:1.5}body,body *,button,input,textarea,select,.ant-app,.ant-app *,.ant-modal-root,.ant-modal-root *,.ant-message,.ant-message *,.ant-notification,.ant-notification *,.ant-dropdown,.ant-dropdown *,.ant-tooltip,.ant-tooltip *,.ant-picker-dropdown,.ant-picker-dropdown *,.ant-select-dropdown,.ant-select-dropdown *,.ant-upload,.ant-upload *,.ant-pagination,.ant-pagination *,.ant-float-btn,.ant-float-btn *{font-family:Noto Sans Thai,Kanit,Prompt,system-ui,Segoe UI,Roboto,sans-serif}.ant-typography,.ant-form-item-label>label,.ant-card-head-title,.ant-drawer-title,.ant-descriptions-item-label,.ant-descriptions-item-content,.ant-form-item-explain,.ant-checkbox-wrapper{line-height:1.5}.ant-form-item-label>label,.ant-card-head-title{white-space:normal;overflow-wrap:anywhere;min-width:0;height:auto}.ant-btn{justify-content:center;align-items:center}.ant-btn>span:not(.anticon){text-overflow:ellipsis;min-width:0;overflow:hidden}.ant-checkbox-wrapper{align-items:flex-start}.ant-checkbox+span,.ant-form-item-explain{overflow-wrap:anywhere;min-width:0}.ant-tag{max-width:100%;line-height:1.45}.thai-date-picker-popup .ant-picker-header-view{font-weight:600}.thai-date-picker-popup .ant-picker-content th{color:#595959;font-weight:600}.thai-date-picker-popup .ant-picker-cell-inner{font-variant-numeric:tabular-nums}*{box-sizing:border-box}html,body,#root{min-height:100%}body{color:var(--flat-text);background-color:#edf4fb;background-image:linear-gradient(#f8fbff57,#f0f7fd80),url(/ems-abstract-background.webp);background-position:50%;background-size:cover;background-attachment:fixed;margin:0}.ems-svg-ecg,.ems-svg-heart,.ems-svg-check,.ems-svg-route,.ems-svg-hero-route{vector-effect:non-scaling-stroke}.ems-svg-ecg{stroke-dasharray:54;stroke-dashoffset:54px;animation:1.2s ease-in-out both ems-line-draw}.ems-svg-heart{transform-origin:50%;animation:.9s ease-in-out both ems-heartbeat}.app-launcher-hero .ems-svg-ecg{animation:2.8s ease-in-out infinite ems-line-draw}.ems-svg-hero-route{animation:10s linear infinite ems-route-flow}.ems-svg-hero-node,.ems-svg-clinic,.ems-svg-card{transform-box:fill-box;transform-origin:50%;animation:.6s both ems-node-arrive}.ems-svg-float{animation:4s ease-in-out infinite ems-float}.ems-svg-float-delayed{animation-delay:-2s}.ems-svg-flow-dot{animation:2.6s ease-in-out infinite ems-flow-dot}.ems-svg-check{stroke-dasharray:18;stroke-dashoffset:18px;animation:2.4s ease-in-out infinite ems-check-draw}.ems-svg-search-ring{transform-box:fill-box;transform-origin:50%;animation:2.6s ease-in-out infinite ems-search-pulse}.ems-svg-clock-hand{transform-box:view-box;transform-origin:66px 39px;animation:4s steps(12,end) infinite ems-clock-tick}@keyframes ems-line-draw{0%,16%{stroke-dashoffset:54px}48%,82%{stroke-dashoffset:0}to{stroke-dashoffset:-54px}}@keyframes ems-heartbeat{0%,12%,28%,to{transform:scale(1)}18%{transform:scale(1.07)}23%{transform:scale(.98)}}@keyframes ems-check-draw{0%,16%{stroke-dashoffset:18px}48%,82%{stroke-dashoffset:0}to{stroke-dashoffset:-18px}}@keyframes ems-route-flow{to{stroke-dashoffset:-160px}}@keyframes ems-node-arrive{0%{opacity:0;transform:translateY(7px)scale(.9)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes ems-float{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes ems-flow-dot{0%{opacity:0;transform:translate(0)}18%{opacity:1}82%{opacity:1}to{opacity:0;transform:translate(49px)}}@keyframes ems-search-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}@keyframes ems-clock-tick{to{transform:rotate(360deg)}}#root{width:100%;min-height:100svh}.ant-layout{background:var(--flat-bg)}.ant-card{border-color:var(--flat-border-soft);box-shadow:none!important}.ant-card-hoverable{transition:border-color .16s,transform .16s}.ant-card-hoverable:hover{border-color:var(--flat-primary);transform:translateY(-1px)}.ant-btn,.ant-input,.ant-input-number,.ant-picker,.ant-select-selector,.ant-segmented,.ant-upload-list-item{box-shadow:none!important}.ant-btn-primary:not(:disabled){background:var(--flat-primary);border-color:var(--flat-primary)}.ant-btn-primary:not(:disabled):hover{background:var(--flat-primary-hover);border-color:var(--flat-primary-hover)}.ant-input,.ant-input-number,.ant-picker,.ant-select-selector,.ant-input-affix-wrapper{border-color:var(--flat-border)}.ant-input:hover,.ant-input-number:hover,.ant-picker:hover,.ant-select-selector:hover,.ant-input-affix-wrapper:hover{border-color:var(--flat-primary)}.ant-segmented{background:var(--flat-surface-muted);border:1px solid var(--flat-border-soft)}.ant-segmented-item-selected{color:var(--flat-primary);font-weight:600}.ant-tag{font-weight:600}.ant-progress-line{line-height:1}.ant-progress-bg,.ant-progress-inner{border-radius:4px!important}.ant-empty-normal{margin-block:24px}.dashboard-workflow-table{border:1px solid var(--flat-border-soft);background:#fff;border-radius:6px;overflow:hidden}.dashboard-workflow-table .ant-table{background:#fff}.dashboard-workflow-table .ant-table-thead>tr>th{color:#475467;background:#f9fafb;font-size:12px;font-weight:700}.dashboard-workflow-table .ant-table-tbody>tr>td{border-bottom-color:var(--flat-border-soft)}.dashboard-workflow-table .ant-table-tbody>tr.ant-table-row{cursor:pointer}.dashboard-workflow-table .ant-table-tbody>tr.ant-table-row:hover>td{background:#f5f8ff}.dashboard-workflow-table .ant-table-cell{vertical-align:middle}.dashboard-workflow-table .ant-table-pagination{margin:12px}.dashboard-topbar{border:1px solid var(--flat-border-soft);background:#fff;border-radius:8px;gap:14px;margin-bottom:14px;padding:16px;display:grid}.dashboard-heading-row{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.dashboard-topbar-title{min-width:0}.dashboard-topbar-title>.ant-typography+.ant-typography{margin-top:2px;font-size:12px;display:block}.dashboard-primary-actions{flex:none;gap:8px;display:flex}.dashboard-toolbar{grid-template-columns:minmax(280px,1fr) minmax(180px,auto) minmax(470px,auto);align-items:center;gap:8px;min-width:0;display:grid}.dashboard-search{width:100%;min-width:0}.dashboard-stage-filter.ant-btn{width:100%;min-width:0;max-width:240px}.dashboard-preset-toggle.ant-segmented,.dashboard-density-toggle.ant-segmented{max-width:100%}.dashboard-preset-toggle.ant-segmented{justify-self:end;width:100%}.dashboard-preset-toggle .ant-segmented-item,.dashboard-density-toggle .ant-segmented-item{min-width:0}.dashboard-create-button.ant-btn,.dashboard-report-button.ant-btn{flex:none}.dashboard-quick-strip{gap:8px;margin-bottom:12px;display:grid}.dashboard-quick-group{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.dashboard-quick-label{flex:none;font-size:12px;font-weight:700}.dashboard-quick-group .ant-space{min-width:0}.dashboard-quick-group .ant-btn{max-width:min(260px,100%)}.dashboard-stat-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-bottom:8px;display:grid}.dashboard-stat-pill{--stat-color:var(--flat-primary);border:1px solid var(--flat-border-soft);border-left:3px solid var(--stat-color);background:#fff;border-radius:6px;grid-template-columns:8px minmax(0,1fr) auto;align-items:center;gap:7px;min-width:0;min-height:34px;padding:5px 9px;display:grid}.dashboard-stat-dot{background:var(--stat-color);border-radius:999px;width:7px;height:7px}.dashboard-stat-label{color:#475467;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:12px;font-weight:600;line-height:1.2;overflow:hidden}.dashboard-stat-value{color:var(--stat-color);font-variant-numeric:tabular-nums;text-align:right;font-size:17px;line-height:1}.dashboard-ops-panel{margin-bottom:8px;display:grid}.dashboard-stage-collapse{border:1px solid var(--flat-border-soft);background:#fff;border-radius:6px}.dashboard-stage-collapse .ant-collapse-header{padding:7px 10px!important}.dashboard-stage-collapse .ant-collapse-content-box{padding:0 10px 9px!important}.dashboard-stage-collapse-label{justify-content:space-between;align-items:center;gap:12px;min-width:0;font-size:12px;display:flex}.dashboard-stage-collapse-label>span{color:#667085;white-space:nowrap;font-size:11px}.dashboard-ops-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;display:grid}.dashboard-ops-metric{--ops-color:var(--flat-primary);border:1px solid color-mix(in srgb, var(--ops-color) 32%, #e4e7ec);color:#101828;cursor:pointer;text-align:left;background:#fff;border-radius:6px;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;min-width:0;min-height:54px;padding:8px 10px;display:grid}.dashboard-ops-metric:hover{background:color-mix(in srgb, var(--ops-color) 7%, #fff)}.dashboard-ops-metric>span{color:#475467;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:12px;font-weight:700;overflow:hidden}.dashboard-ops-metric>strong{color:var(--ops-color);font-variant-numeric:tabular-nums;font-size:24px;line-height:1}.dashboard-stage-strip{flex-wrap:wrap;gap:6px;display:flex}.dashboard-stage-chip{--stage-color:var(--flat-primary);border:1px solid color-mix(in srgb, var(--stage-color) 28%, #e4e7ec);cursor:pointer;text-align:center;background:#fff;border-radius:999px;align-items:center;gap:6px;min-width:0;min-height:30px;padding:4px 8px;display:inline-flex}.dashboard-stage-chip:hover,.dashboard-stage-chip.is-active{border-color:color-mix(in srgb, var(--stage-color) 50%, #d0d5dd);background:color-mix(in srgb, var(--stage-color) 8%, #fff)}.dashboard-stage-chip-label{min-width:0;color:var(--stage-color);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:700;overflow:hidden}.dashboard-stage-chip-count{color:#101828;font-variant-numeric:tabular-nums;font-size:13px;font-weight:800;line-height:1}.dashboard-stage-chip-stuck{color:#b42318;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:10px;font-weight:700;overflow:hidden}.inspection-history-list{gap:12px;display:grid}.inspection-history-item{border:1px solid var(--flat-border-soft);background:#fff;border-radius:6px;gap:10px;min-width:0;padding:12px;display:grid}.inspection-history-head{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.inspection-history-link-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.subject-year-list{gap:10px;display:grid}.subject-year-item{border:1px solid var(--flat-border-soft);background:#fff;border-radius:6px;gap:10px;min-width:0;padding:10px;display:grid}.subject-year-head,.subject-year-link-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.dashboard-aging-badge{--aging-color:#155eef;--aging-bg:#eef4ff;--aging-border:#84adff;border:1px solid var(--aging-border);width:fit-content;max-width:100%;min-height:22px;color:var(--aging-color);background:var(--aging-bg);white-space:nowrap;border-radius:6px;grid-auto-columns:max-content;grid-auto-flow:column;align-items:center;gap:4px;padding:2px 6px;font-size:11px;font-weight:700;line-height:1.2;display:inline-grid}.dashboard-report-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.dashboard-report-summary-item{border:1px solid var(--flat-border-soft);background:#fff;border-radius:6px;gap:2px;min-width:0;min-height:48px;padding:8px;display:grid}.dashboard-report-stage-list{gap:12px;display:grid}.dashboard-report-stage{gap:6px;display:grid}.dashboard-report-stage-heading{grid-template-columns:8px minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0;display:grid}.dashboard-report-stage-heading>span:first-child{--stage-color:var(--flat-primary);background:var(--stage-color);border-radius:999px;width:8px;height:8px}.dashboard-report-workflows{gap:6px;display:grid}.dashboard-report-workflow{border:1px solid var(--flat-border-soft);cursor:pointer;text-align:left;background:#fff;border-radius:6px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;width:100%;min-width:0;padding:8px;display:grid}.dashboard-report-workflow:hover{background:#f5f8ff}.dashboard-report-workflow>span:first-child{gap:2px;min-width:0;display:grid}.dashboard-workflow-table .ant-pagination .ant-pagination-prev,.dashboard-workflow-table .ant-pagination .ant-pagination-next,.dashboard-workflow-table .ant-pagination .ant-pagination-item{min-width:32px;height:32px;line-height:30px}.dashboard-workflow-table .ant-pagination .ant-pagination-item-link{width:32px;min-width:32px;height:32px}.ant-drawer .ant-drawer-close{width:32px;height:32px}.contact-channel-selector{gap:8px;display:grid}.contact-channel-reveal.ant-btn{text-align:left;border-color:#d0d5dd;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;height:auto;min-height:44px;padding:7px 10px;display:grid}.contact-channel-reveal-icons{grid-template-columns:repeat(4,24px);gap:4px;display:inline-grid}.contact-channel-reveal-icons>span{width:24px;height:24px;color:var(--channel-color);background:var(--channel-soft);opacity:.45;border-radius:6px;place-items:center;font-size:13px;display:grid}.contact-channel-reveal-icons>span.is-filled{opacity:1;color:#fff;background:var(--channel-color)}.contact-channel-reveal-copy{gap:1px;min-width:0;display:grid}.contact-channel-reveal-copy>span:first-child{color:#101828;font-weight:700;line-height:1.2}.contact-channel-reveal-copy>span:last-child{color:#667085;font-size:11px;line-height:1.2}.contact-channel-grid{align-items:start;gap:8px}.contact-channel-card{border:1px solid var(--flat-border-soft);background:#fff;border-radius:6px;min-width:0;padding:8px;transition:border-color .2s,background-color .2s;overflow:hidden}.contact-channel-card.is-checked{border-color:var(--channel-color);background:var(--channel-soft)}.contact-channel-card.has-error{background:snow;border-color:#ff4d4f}.contact-channel-heading{grid-template-columns:24px minmax(0,1fr);align-items:center;gap:6px;margin-bottom:6px;display:grid}.contact-channel-icon{width:24px;height:24px;color:var(--channel-color);background:var(--channel-soft);border-radius:6px;place-items:center;font-size:13px;display:grid}.contact-channel-card.is-checked .contact-channel-icon{color:#fff;background:var(--channel-color)}.contact-channel-copy{min-width:0}.contact-channel-label{color:#101828;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:12px;font-weight:700;line-height:1.25;overflow:hidden}.contact-channel-card .ant-input-affix-wrapper,.contact-channel-card .ant-input{font-size:12px}.contact-channel-card .ant-input-show-count-suffix{font-size:10px}.contact-channel-error{color:#cf1322;overflow-wrap:anywhere;margin-top:4px;font-size:11px;line-height:1.35}.coordinator-card{background:#fcfcfd;border:1px solid #e4e7ec;border-radius:8px;padding:10px}@media (width<=575px){.contact-channel-reveal.ant-btn{grid-template-columns:minmax(0,1fr) auto}.contact-channel-reveal-icons{grid-column:1/-1;grid-template-columns:repeat(4,minmax(0,1fr));width:100%}.contact-channel-reveal-icons>span{width:100%}}.stage-form{max-width:100%}.stage-form .ant-form-item{margin-bottom:14px}.stage-form .ant-form-item-label{padding-bottom:4px}.stage-form .ant-form-item-label>label{color:#344054;font-weight:600}.stage-section-heading{margin:0 0 10px}.stage-section-heading+.ant-row{margin-top:0}.stage-section-title.ant-typography{color:#101828;margin:0}.stage-section-desc{margin-top:2px;font-size:12px;line-height:1.45;display:block}.stage-stat-grid{gap:8px;margin-bottom:14px;display:grid}.stage-stat-card{border-radius:6px;min-width:0;padding:9px 10px}.stage-stat-label{font-size:12px;line-height:1.35;display:block}.stage-stat-value{font-size:18px;line-height:1.3;display:block}.stage-task-card.ant-card{margin-bottom:12px}.stage-task-card .ant-card-body{padding:12px}.stage-row-action{align-items:flex-end;display:flex}.stage-submit-item.ant-form-item{margin:2px 0 0}.stage-submit-item .ant-form-item-control-input-content{justify-content:flex-end;display:flex}.stage-error-summary.ant-alert{border-radius:6px;margin-bottom:12px}.stage-error-link.ant-btn{text-align:left;white-space:normal;height:auto;min-height:24px;padding:0}.stage-error-link>span{display:inline}.stage-file-panel{border:1px solid var(--flat-border-soft);background:#fff;border-radius:8px;padding:9px}.stage-file-header{border-bottom:1px solid #eef2f6;grid-template-columns:minmax(0,1fr) auto;align-items:flex-start;gap:8px;margin-bottom:9px;padding-bottom:8px;display:grid}.stage-file-title{min-width:0}.stage-file-title-text{color:#101828;overflow-wrap:anywhere;line-height:1.35;display:block}.stage-file-description{overflow-wrap:anywhere;margin-top:2px;font-size:12px;line-height:1.45;display:block}.stage-file-summary,.stage-file-zone-actions,.stage-file-actions,.stage-link-tags,.stage-link-buttons{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.stage-file-summary,.stage-file-zone-actions,.stage-file-actions{justify-content:flex-end}.stage-file-body{gap:9px;display:grid}.stage-file-zone{background:#fcfcfd;border:1px solid #e4e7ec;border-radius:8px;padding:8px}.stage-file-zone-head{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.stage-file-zone-title{color:#344054;align-items:center;gap:7px;min-width:0;display:flex}.stage-file-hint{margin-top:4px;font-size:12px;line-height:1.4;display:block}.stage-file-list{margin-top:8px}.stage-file-list .ant-list-items{gap:6px;display:grid}.stage-file-list-item.ant-list-item{border-block-end:0;padding:0}.stage-uploaded-row{background:#fff;border:1px solid #e4e7ec;border-radius:6px;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:8px;width:100%;min-height:42px;padding:7px 8px;display:grid}.stage-file-artifact{color:#155eef;background:#eef4ff;border-radius:6px;place-items:center;width:30px;height:30px;display:grid}.stage-file-main{gap:1px;min-width:0;display:grid}.stage-file-name{min-width:0;line-height:1.3}.stage-file-meta{font-size:12px;line-height:1.35;display:block}.stage-icon-button.ant-btn{width:32px;height:32px}.stage-manual-link-row{background:#fff;border:1px solid #e4e7ec;border-radius:6px;grid-template-columns:minmax(150px,.75fr) minmax(240px,1.35fr) minmax(220px,auto);align-items:start;gap:8px;width:100%;padding:8px;display:grid}.stage-link-tags-actions{justify-content:space-between;align-items:center;gap:6px;min-width:0;display:flex}.stage-empty-compact{background:#fff;border:1px dashed #d0d5dd;border-radius:6px;place-items:center;min-height:50px;margin-top:8px;display:grid}.stage-empty-compact .ant-empty{margin:0;padding:6px 8px}.stage-empty-compact .ant-empty-image{display:none}.mobile-workflow-action-bar{z-index:20;padding:10px 10px calc(10px + env(safe-area-inset-bottom));border-top:1px solid var(--flat-border-soft);background:#fffffffa;grid-template-columns:minmax(0,.9fr) minmax(0,1fr) minmax(0,1fr);gap:8px;display:grid;position:fixed;bottom:0;left:0;right:0}.mobile-workflow-action-bar .ant-badge,.mobile-workflow-action-bar .ant-btn{width:100%}.workflow-year-locked-content{opacity:.72;pointer-events:none;border:0;min-width:0;margin:0;padding:0}@media (width<=767px){.dashboard-topbar{gap:12px;padding:12px}.dashboard-heading-row{align-items:center}.dashboard-topbar-title>.ant-typography+.ant-typography{display:none}.dashboard-primary-actions{gap:6px}.dashboard-toolbar{grid-template-columns:minmax(0,1fr)}.dashboard-stage-filter.ant-btn{width:100%}.dashboard-primary-actions .ant-btn{width:36px;padding-inline:0}.dashboard-stage-filter.ant-btn{max-width:none}.dashboard-preset-toggle.ant-segmented{grid-column:1/-1;width:100%}.dashboard-preset-toggle .ant-segmented-group{grid-template-columns:repeat(5,minmax(0,1fr));width:100%;display:grid}.dashboard-preset-toggle .ant-segmented-item-label{text-overflow:ellipsis;min-width:0;padding-inline:6px;overflow:hidden}.dashboard-stat-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.dashboard-ops-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-ops-metric{min-height:46px;padding:7px 8px}.dashboard-ops-metric>strong{font-size:20px}.dashboard-stage-strip{scroll-snap-type:x proximity;gap:6px;padding-bottom:2px;display:flex;overflow-x:auto}.dashboard-stage-chip{scroll-snap-align:start;flex:none;min-height:30px}.dashboard-report-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-report-workflow{grid-template-columns:minmax(0,1fr)}.dashboard-stat-pill{min-height:32px;padding:5px 8px}.dashboard-stat-label{font-size:11px}.dashboard-stat-value{font-size:16px}.stage-form .ant-form-item{margin-bottom:12px}.stage-section-heading{margin-bottom:8px}.stage-stat-grid{gap:8px;margin-bottom:12px}.stage-stat-card{padding:8px 10px}.stage-stat-label{font-size:11px;line-height:1.3}.stage-stat-value{font-size:16px}.stage-submit-item .ant-form-item-control-input-content{display:block}.stage-row-action{align-items:stretch}.stage-file-header{grid-template-columns:minmax(0,1fr);gap:8px}.stage-file-summary,.stage-file-zone-actions{justify-content:flex-start}.stage-file-zone-head,.stage-manual-link-row{grid-template-columns:minmax(0,1fr)}.stage-file-upload-control,.stage-file-upload-control .ant-upload,.stage-file-command.ant-btn{width:100%}.stage-uploaded-row{grid-template-columns:30px minmax(0,1fr)}.stage-file-actions{border-top:1px solid #f2f4f7;grid-column:1/-1;justify-content:space-between;padding-top:6px}.stage-link-tags-actions{flex-direction:column;align-items:flex-start}.stage-link-buttons{justify-content:flex-end;width:100%}}@media (width<=1180px) and (width>=768px){.dashboard-toolbar{grid-template-columns:minmax(280px,1fr) minmax(180px,auto)}.dashboard-preset-toggle.ant-segmented{grid-column:1/-1;justify-self:stretch}}.app-launcher-layout{background:var(--flat-bg);min-height:100svh}.app-launcher-header.ant-layout-header{border-bottom:1px solid var(--flat-border-soft);background:#fff;justify-content:space-between;align-items:center;height:64px;padding:0 24px;line-height:normal;display:flex}.app-launcher-brand-icon{color:#155eef;background:#eef4ff;border-radius:6px;place-items:center;width:30px;height:30px;font-size:16px;display:grid}.app-launcher-brand-title.ant-typography{color:#101828;margin:0}.app-launcher-logout.ant-btn{color:#667085}.app-launcher-logout.ant-btn:hover,.app-launcher-logout.ant-btn:focus-visible{color:#b42318;background:#fef3f2}.app-launcher-content{align-content:center;gap:20px;width:min(960px,100%);min-height:calc(100svh - 64px);margin:auto;padding:32px 24px;display:grid}.app-launcher-hero{background:linear-gradient(115deg,#fff 0%,#f8faff 55%,#eef4ff 100%);border:1px solid #dbe7ff;border-radius:12px;grid-template-columns:minmax(230px,.8fr) minmax(360px,1.2fr);align-items:center;gap:12px;min-width:0;min-height:196px;padding:20px 24px;display:grid;overflow:hidden}.app-launcher-hero-copy{z-index:1;gap:5px;min-width:0;display:grid;position:relative}.app-launcher-hero-copy .ant-typography{margin:0}.app-launcher-hero-copy .app-launcher-eyebrow{color:#155eef}.app-launcher-hero-title.ant-typography{color:#101828;letter-spacing:.025em;overflow-wrap:anywhere;max-width:13ch;font-size:clamp(1.55rem,1rem + 2.15vw,3rem);font-weight:800;line-height:1.08}.app-launcher-hero-svg{color:#155eef;width:100%;min-width:0}.app-launcher-heading .ant-typography{margin:0}.app-launcher-eyebrow{margin-bottom:6px;font-size:12px;font-weight:700;display:block}.app-launcher-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.app-launcher-option{--launcher-accent:#155eef;--launcher-surface:#eef4ff;border-color:var(--flat-border-soft);color:#101828;cursor:pointer;width:100%;height:auto;min-height:176px;font:inherit;text-align:left;white-space:normal;background:#fff;border-radius:6px;padding:20px}.app-launcher-option:hover,.app-launcher-option:focus-visible{border-color:var(--launcher-accent);color:#101828;background:#f8faff}.app-launcher-option:focus-visible{outline:2px solid var(--launcher-accent);outline-offset:2px}.app-launcher-option-manager{--launcher-accent:#007c83;--launcher-surface:#ecfeff}.app-launcher-option-manager:hover,.app-launcher-option-manager:focus-visible{background:#f0fdfa}.app-launcher-option-content{grid-template-columns:64px minmax(0,1fr) 32px;align-items:center;gap:12px;width:100%;height:100%;display:grid}.app-launcher-option-icon{background:var(--launcher-surface);width:64px;height:56px;color:var(--launcher-accent);border-radius:6px;place-items:center;font-size:21px;display:grid}.app-launcher-option-icon svg{width:58px;height:46px;overflow:visible}.app-launcher-option:hover .app-launcher-option-icon svg,.app-launcher-option:focus-visible .app-launcher-option-icon svg{transition:transform .18s;transform:translateY(-2px)}.app-launcher-option-copy{min-width:0}.app-launcher-option-title{overflow-wrap:anywhere;font-size:16px;font-weight:700;line-height:1.4;display:block;overflow:hidden}.app-launcher-option-arrow{width:32px;height:32px;color:var(--launcher-accent);border-radius:6px;place-items:center;font-size:16px;display:grid}.app-launcher-option:hover .app-launcher-option-arrow,.app-launcher-option:focus-visible .app-launcher-option-arrow{background:var(--launcher-surface)}.coordination-dashboard-layout{background:var(--flat-bg);min-height:100svh}.coordination-dashboard-header.ant-layout-header{border-bottom:1px solid var(--flat-border-soft);z-index:10;background:#fff;justify-content:space-between;align-items:center;gap:12px;padding:0 24px;display:flex;position:sticky;top:0}.coordination-dashboard-brand-icon{color:#fff;background:#155eef;border-radius:6px;flex:none;place-items:center;width:32px;height:32px;display:grid}.coordination-dashboard-title.ant-typography{color:#101828;min-width:0;margin:0;font-weight:700}.coordination-dashboard-avatar.ant-avatar{background:#00a3a3;flex:none}.coordination-dashboard-content{width:min(1680px,100%);margin:0 auto;padding:18px 16px 28px}.coordination-dashboard-toolbar{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;margin-bottom:14px;display:grid}.coordination-dashboard-toolbar-copy{min-width:0}.coordination-dashboard-toolbar-copy .ant-typography{margin:0}.coordination-dashboard-toolbar-copy .ant-typography+.ant-typography{margin-top:2px;font-size:12px;display:block}.coordination-dashboard-toolbar-actions{justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:flex}.coordination-dashboard-search{width:min(360px,100%)}.coordination-dashboard-complete-toggle{white-space:nowrap;align-items:center;gap:7px;display:flex}.coordination-dashboard-complete-toggle .ant-typography{font-size:12px}.coordination-dashboard-export-actions{flex:none}.coordination-mobile-stage-picker{margin-bottom:10px;display:none}.coordination-mobile-stage-picker .ant-select{width:100%}.coordination-dashboard-loading{place-items:center;min-height:360px;display:grid}.coordination-board-scroll{padding-bottom:4px;overflow-x:auto}.coordination-board{grid-template-columns:repeat(7,minmax(194px,1fr));align-items:start;gap:10px;min-width:1418px;display:grid}.coordination-lane{border:1px solid var(--lane-border);border-top:3px solid var(--lane-color);background:var(--lane-background);border-radius:6px;min-width:0;min-height:360px;padding:10px}.coordination-lane-header{justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.coordination-lane-title{align-items:center;gap:6px;min-width:0;display:flex}.coordination-lane-title .ant-typography{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.coordination-lane-number{background:var(--lane-color);color:#fff;border-radius:4px;flex:none;place-items:center;width:22px;height:22px;font-size:12px;font-weight:700;display:grid}.coordination-lane-number svg{width:15px;height:15px}.coordination-lane:hover .coordination-lane-number svg{animation:.45s ems-stage-bounce}.coordination-lane-description.ant-typography{-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:34px;margin-top:5px;font-size:11px;line-height:1.45;display:-webkit-box;overflow:hidden}.coordination-lane-cards{gap:8px;margin-top:8px;display:grid}.coordination-workflow-card{color:#101828;cursor:pointer;text-align:left;width:100%;min-width:0;font:inherit;background:#fff;border:1px solid #d0d5dd;border-radius:6px;padding:10px;animation:.32s both ems-card-arrive}.coordination-workflow-card:hover,.coordination-workflow-card:focus-visible{border-color:var(--lane-color);outline:none}.coordination-workflow-card-heading{justify-content:space-between;align-items:flex-start;gap:6px;min-width:0;display:flex}.coordination-workflow-school{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;font-weight:700;line-height:1.4;overflow:hidden}.coordination-workflow-card .ant-tag{text-overflow:ellipsis;white-space:nowrap;flex:0 auto;max-width:100px;margin-inline-end:0;font-size:10px;line-height:18px;overflow:hidden}.coordination-workflow-note,.coordination-workflow-updated{overflow-wrap:anywhere;margin-top:7px;display:block}.coordination-workflow-note{color:#475467;font-size:12px;line-height:1.45}.coordination-workflow-updated{color:#667085;font-size:11px;line-height:1.4}.coordination-lane-empty{color:#667085;text-align:center;padding:16px 8px;font-size:12px}.coordination-dashboard-empty{margin-top:16px}.coordination-export-root{z-index:-1;pointer-events:none;position:fixed;top:0;left:-12000px}.coordination-export-sheet{color:#101828;background:#f4f7fb;width:1080px;padding:36px;font-family:Noto Sans Thai,Kanit,Prompt,system-ui,sans-serif}.coordination-export-heading{gap:8px;margin-bottom:20px;display:grid}.coordination-export-heading>span{color:#155eef;font-size:18px;font-weight:700}.coordination-export-heading>strong{font-size:28px;line-height:1.35}.coordination-export-heading>small{color:#667085;font-size:15px}.coordination-export-list{gap:12px;display:grid}.coordination-export-card{background:#fff;border:1px solid #d0d5dd;border-radius:6px;grid-template-columns:minmax(0,1fr) auto;gap:8px 16px;padding:16px;display:grid}.coordination-export-card>strong{min-width:0;font-size:18px}.coordination-export-card>span{color:#475467;font-size:14px}.coordination-export-card>p,.coordination-export-card>small{grid-column:1/-1;margin:0}.coordination-export-card>p{color:#344054;font-size:16px}.coordination-export-card>small{color:#667085;font-size:13px}@media (width<=1199px) and (width>=768px){.coordination-board-scroll{overflow:visible}.coordination-board{grid-template-columns:repeat(2,minmax(0,1fr));min-width:0}}.dashboard-workflow-cell{grid-template-columns:32px minmax(0,1fr);align-items:center;gap:10px;min-width:0;display:grid}.dashboard-workflow-copy{min-width:0}.dashboard-workflow-school-name.ant-typography{max-width:100%;display:block}.dashboard-workflow-note,.dashboard-workflow-note-editor{align-items:center;gap:2px;min-width:0;margin-top:1px;display:flex}.dashboard-workflow-note-text.ant-btn{color:#667085;text-align:left;flex:auto;justify-content:flex-start;min-width:0;height:26px;padding-inline:0}.dashboard-workflow-note-text.ant-btn>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:12px;line-height:1.45;overflow:hidden}.dashboard-workflow-note-icon.ant-btn{color:#667085;flex:none;width:28px;min-width:28px;height:28px;padding:0}.dashboard-workflow-note-edit.ant-btn{opacity:0}.dashboard-workflow-cell:hover .dashboard-workflow-note-edit.ant-btn,.dashboard-workflow-note-edit.ant-btn:focus-visible{opacity:1}.dashboard-workflow-note-editor .ant-input{min-width:0;height:28px;font-size:12px}.recent-activity-layout{background:var(--flat-bg);min-height:100svh}.manager-workspace-layout.ant-layout{background:var(--flat-bg);flex-direction:row;min-height:100svh}.manager-navigation{border-right:1px solid var(--flat-border-soft);z-index:12;background:#fff;flex-direction:column;flex:0 0 214px;gap:18px;width:214px;height:100svh;padding:18px 12px 14px;display:flex;position:sticky;top:0}.manager-navigation-brand{align-items:center;gap:10px;min-width:0;padding:0 8px;display:flex}.manager-navigation-logo{color:#155eef;flex:0 0 36px;width:36px;height:36px}.manager-navigation-brand>span{min-width:0;display:grid}.manager-navigation-brand strong{color:#101828;line-height:1.25}.manager-navigation-brand .ant-typography{font-size:11px}.manager-navigation-items{gap:5px;display:grid}.manager-navigation-items button,.manager-navigation-home{color:#475467;cursor:pointer;width:100%;min-height:40px;font:inherit;text-align:left;background:0 0;border:1px solid #0000;border-radius:7px;grid-template-columns:22px minmax(0,1fr);align-items:center;gap:8px;padding:8px 10px;font-size:13px;font-weight:600;display:grid}.manager-navigation-items button:hover,.manager-navigation-home:hover{color:#155eef;background:#f5f8ff}.manager-navigation-items button.is-active{color:#155eef;background:#eef4ff;border-color:#b9c9f8}.manager-navigation-home{border-top-color:var(--flat-border-soft);border-radius:0;margin-top:auto}.manager-mobile-menu.ant-btn{color:#155eef;width:34px;min-width:34px;padding-inline:0}.dashboard-brand-mark,.recent-activity-brand-icon,.coordination-dashboard-brand-icon,.app-launcher-brand-icon{overflow:hidden}.dashboard-brand-mark{color:#155eef;flex:0 0 30px;place-items:center;width:30px;height:30px;display:grid}.dashboard-brand-mark svg,.recent-activity-brand-icon svg,.coordination-dashboard-brand-icon svg,.app-launcher-brand-icon svg{width:100%;height:100%}.coordination-dashboard-brand-icon svg{color:#fff}.dashboard-workflow-stage-glyph{width:18px;height:18px}.dashboard-stage-chip-icon{width:15px;height:15px;color:var(--stage-color);flex:0 0 15px}.dashboard-stage-chip:hover .dashboard-stage-chip-icon,.dashboard-stage-chip.is-active .dashboard-stage-chip-icon{animation:.45s ems-stage-bounce}.workflow-stepper-glyph,.stage-modal-glyph{width:17px;height:17px}.stage-modal-glyph{width:18px;height:18px}.ems-empty-svg{width:180px;max-width:100%;height:110px}@keyframes ems-stage-bounce{0%,to{transform:translateY(0)scale(1)}45%{transform:translateY(-2px)scale(1.08)}}@keyframes ems-card-arrive{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.recent-activity-header.ant-layout-header{z-index:10;border-bottom:1px solid var(--flat-border-soft);background:#fff;justify-content:space-between;align-items:center;gap:12px;padding:0 24px;display:flex;position:sticky;top:0}.recent-activity-header .ant-typography{min-width:0;margin:0}.recent-activity-brand-icon{color:#7c3aed;background:#f5f3ff;border-radius:6px;flex:none;place-items:center;width:32px;height:32px;display:grid}.recent-activity-content{width:min(960px,100%);margin:0 auto;padding:24px}.recent-activity-heading{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:16px;display:flex}.recent-activity-heading .ant-typography{margin:0}.recent-activity-heading .ant-typography+.ant-typography{margin-top:4px;display:block}.recent-activity-count.ant-tag{flex:none;margin:0;padding:3px 10px}.recent-activity-filters{border:1px solid var(--flat-border-soft);background:#fff;border-radius:8px;grid-template-columns:minmax(260px,1fr) 210px;gap:8px;margin-bottom:12px;padding:12px;display:grid}.recent-activity-list{gap:8px;display:grid}.recent-activity-item{border:1px solid var(--flat-border-soft);color:#101828;cursor:pointer;width:100%;font:inherit;text-align:left;background:#fff;border-radius:8px;grid-template-columns:38px minmax(0,1fr);gap:12px;padding:13px 14px;display:grid}.recent-activity-item:hover,.recent-activity-item:focus-visible{background:#f8faff;border-color:#b9c9f8}.recent-activity-item:focus-visible{outline-offset:1px;outline:2px solid #84adff}.recent-activity-icon{color:#475467;background:#f2f4f7;border-radius:999px;place-items:center;width:38px;height:38px;font-size:16px;display:grid}.recent-activity-copy{gap:3px;min-width:0;display:grid}.recent-activity-item-heading{justify-content:space-between;align-items:center;gap:10px;min-width:0;display:flex}.recent-activity-item-heading>strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.recent-activity-tags{flex:none;gap:4px;display:flex}.recent-activity-tags .ant-tag{margin:0}.recent-activity-message{color:#475467;overflow-wrap:anywhere;font-size:13px}.recent-activity-time{color:#98a2b3;font-size:11px}.recent-activity-loading,.recent-activity-empty{border:1px solid var(--flat-border-soft);background:#fff;border-radius:8px;place-items:center;min-height:320px;display:grid}@media (width<=767px){body{background-position:58%;background-attachment:scroll}.app-launcher-header.ant-layout-header{height:56px;padding:0 16px}.app-launcher-content{gap:16px;min-height:calc(100svh - 56px);padding:16px}.app-launcher-hero{grid-template-columns:minmax(0,1fr);min-height:0;padding:15px}.app-launcher-hero-copy .ant-typography:last-child{font-size:12px}.app-launcher-hero-svg{display:none}.app-launcher-grid{grid-template-columns:1fr}.app-launcher-option{min-height:96px;padding:14px}.app-launcher-option-content{grid-template-columns:48px minmax(0,1fr) 28px;gap:10px}.app-launcher-option-icon{width:48px;height:44px;font-size:18px}.app-launcher-option-icon svg{width:44px;height:38px}.app-launcher-option-arrow{width:28px;height:28px}.app-launcher-option-title{font-size:15px}.recent-activity-header.ant-layout-header{height:56px;padding:0 12px}.recent-activity-content{padding:14px 10px 24px}.recent-activity-heading{align-items:center}.recent-activity-heading .ant-typography+.ant-typography{display:none}.recent-activity-filters{grid-template-columns:minmax(0,1fr)}.recent-activity-item{grid-template-columns:32px minmax(0,1fr);gap:9px;padding:11px}.recent-activity-icon{width:32px;height:32px}.recent-activity-item-heading{flex-direction:column;align-items:flex-start;gap:5px}.recent-activity-tags{flex-wrap:wrap}.coordination-dashboard-header.ant-layout-header{padding:0 16px}.coordination-dashboard-content{padding:12px 10px 20px}.coordination-dashboard-toolbar{grid-template-columns:1fr;gap:10px}.coordination-dashboard-toolbar-actions{grid-template-columns:minmax(0,1fr) auto auto auto;justify-content:stretch;display:grid}.coordination-dashboard-search{grid-column:1/-1;width:100%}.coordination-dashboard-complete-toggle{min-height:32px}.coordination-dashboard-export-actions{justify-self:end}.coordination-mobile-stage-picker{display:block}.coordination-board-scroll{overflow:visible}.coordination-board{grid-template-columns:minmax(0,1fr);min-width:0}.coordination-lane-mobile-hidden{display:none}.coordination-lane{min-height:0}.dashboard-workflow-note-edit.ant-btn{opacity:1}}@media (prefers-reduced-motion:reduce){.ems-svg-ecg,.ems-svg-heart,.ems-svg-hero-route,.ems-svg-hero-node,.ems-svg-clinic,.ems-svg-card,.ems-svg-float,.ems-svg-flow-dot,.ems-svg-check,.ems-svg-search-ring,.ems-svg-clock-hand,.coordination-workflow-card,.coordination-lane-number svg,.dashboard-stage-chip-icon{animation:none!important}.app-launcher-option-icon svg{transition:none!important}}
