:root{--navy:#063f68;--navy2:#0a5f89;--blue:#168bc8;--blue-soft:#dcecf7;--ink:#17243a;--muted:#66758d;--line:#d8e1eb;--surface:#fff;--bg:#f4f7fb;--danger:#b42318;--warning:#9a6700;--success:#147a4a;--shadow:0 10px 30px rgba(14,50,84,.08);font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--ink);background:var(--bg)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink)}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.hidden{display:none!important}.muted-text{color:var(--muted)}.loading-screen,.loading-panel,.error-panel,.empty-state{padding:42px;text-align:center;color:var(--muted)}.error-panel h1{color:#0a3970}.error-banner,.success-banner,.safety-note,.return-banner{padding:14px 16px;border-radius:10px;margin:12px 0}.error-banner{background:#fff0ef;color:#8e1d15}.success-banner{background:#eaf8f0;color:#12613d}.safety-note{background:#fff8db;color:#675100}.return-banner{background:#fff3d6;border-left:4px solid #d9a400}.button{border:1px solid transparent;border-radius:7px;padding:10px 16px;font-weight:650;background:#e9eef4;color:var(--ink)}.button.primary{background:var(--blue);color:#fff}.button.secondary{background:#fff;border-color:#aebccc}.button.warning{background:#fff3d6;color:#795a00;border-color:#e4c774}.button.danger{background:#b42318;color:#fff}.button.small{padding:7px 11px;font-size:13px}.button:disabled{opacity:.5;cursor:not-allowed}.text-button{border:0;background:transparent;color:#075e9f;text-decoration:none;padding:7px;font-weight:650}.danger-text{color:var(--danger)}.full-width{width:100%}.mobile-only{display:none}.field{display:flex;flex-direction:column;gap:7px;min-width:0}.field>span{font-size:13px;font-weight:650;color:#46556b}.field input,.field select,.field textarea{width:100%;border:1px solid #cbd6e2;border-radius:7px;background:#fff;padding:10px 11px;color:var(--ink)}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid rgba(22,139,200,.18);border-color:var(--blue)}.field-full{grid-column:1/-1}.align-end{justify-content:flex-end}.muted-field{opacity:.48}.form-grid{display:grid;gap:16px}.columns-2{grid-template-columns:repeat(2,minmax(0,1fr))}.columns-3{grid-template-columns:repeat(3,minmax(0,1fr))}.columns-4{grid-template-columns:repeat(4,minmax(0,1fr))}.check-grid{display:grid;gap:8px}.check-grid.columns-1{grid-template-columns:1fr}.check-grid.columns-2{grid-template-columns:repeat(2,minmax(0,1fr))}.check-grid.columns-3{grid-template-columns:repeat(3,minmax(0,1fr))}.check-grid.columns-5{grid-template-columns:repeat(5,minmax(0,1fr))}.check-item{display:flex;align-items:flex-start;gap:8px;font-size:14px}.check-item input{margin-top:2px}.radio-row{display:flex;flex-wrap:wrap;gap:12px}.paired-panel{display:grid;grid-template-columns:1fr 1fr;gap:18px}.paired-panel>div,.paired-panel>label{border:1px solid var(--line);border-radius:9px;padding:14px;background:#fafcff}.paired-panel h3{margin:0 0 12px;font-size:14px}.panel{background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow);padding:20px;margin:18px}.panel-heading{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:18px}.panel-heading h2{margin:0 0 4px;font-size:19px}.panel-heading p{margin:0;color:var(--muted);font-size:14px}.page-header{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;padding:28px 28px 8px}.page-header h1{margin:4px 0 8px;font-size:30px}.page-header p{margin:0;color:var(--muted)}.compact-header{padding-bottom:0}.eyebrow{text-transform:uppercase;letter-spacing:.13em;font-size:12px;font-weight:800;color:#6fc4ef;margin:0 0 10px}.app-header{height:64px;display:grid;grid-template-columns:minmax(270px,1fr) auto minmax(270px,1fr);align-items:center;padding:0 22px;background:linear-gradient(90deg,#034572,#075b82);color:#fff;position:sticky;top:0;z-index:30;box-shadow:0 3px 12px rgba(0,0,0,.12)}.app-header:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 12% 20%,rgba(0,171,198,.25) 0 42px,transparent 43px),radial-gradient(circle at 68% 0,rgba(0,171,198,.17) 0 58px,transparent 59px),radial-gradient(circle at 87% 85%,rgba(0,171,198,.18) 0 42px,transparent 43px)}.app-header>*{position:relative}.brand-block{display:flex;align-items:center;gap:11px}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:linear-gradient(145deg,#164f7e,#168bc8);color:#fff;font-weight:800;font-size:20px}.brand-mark.large{width:94px;height:94px;border-radius:24px;font-size:38px}.brand-block strong,.brand-block span,.account-block strong,.account-block span{display:block}.brand-block span,.account-block span{font-size:12px;color:#cfe4f4;margin-top:2px}.app-header nav{display:flex;align-self:stretch}.app-header nav a{display:flex;align-items:center;padding:0 18px;font-weight:650;border-bottom:3px solid transparent}.app-header nav a.active{border-color:#8bd4f5;background:rgba(255,255,255,.08)}.account-block{justify-self:end;display:flex;align-items:center;gap:12px;text-align:right}.app-header .text-button{color:#fff}.app-footer,.login-footer{text-align:center;color:#7c899d;font-size:12px;padding:18px}.login-layout{min-height:calc(100vh - 38px);display:grid;grid-template-columns:minmax(400px,1.1fr) minmax(360px,.9fr);background:linear-gradient(135deg,#083f6b,#0877aa 58%,#eef4fa 58%)}.login-intro{padding:70px 7vw;color:#fff;display:flex;flex-direction:column;justify-content:center}.login-intro h1{font-size:54px;line-height:1.05;margin:30px 0 0}.login-card{align-self:center;justify-self:center;width:min(470px,88%);background:#fff;padding:38px;border-radius:22px;box-shadow:0 20px 50px rgba(10,42,78,.16)}.login-card h2{font-size:36px;margin:0 0 8px}.login-card>p{color:var(--muted);margin:0 0 28px}.login-card form{display:grid;gap:18px}.form-message{min-height:20px;color:var(--danger);margin:0}.metrics-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:18px 28px}.metric-card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:18px;box-shadow:var(--shadow)}.metric-card strong{display:block;font-size:30px;color:#064a7b}.metric-card span{display:block;margin-top:3px;font-weight:650}.metric-card small{display:block;color:var(--muted);margin-top:5px}.overview-grid{display:grid;grid-template-columns:1fr 1fr}.stats-list{display:grid;gap:16px}.stat-bar-label{display:flex;justify-content:space-between;margin-bottom:6px}.stat-bar-track{height:9px;border-radius:8px;background:#e8eef4;overflow:hidden}.stat-bar-track i{display:block;height:100%;background:linear-gradient(90deg,#0a6a9b,#38a6d5);border-radius:8px}.overview-note{font-size:14px}.report-list-toolbar{display:flex;justify-content:space-between;align-items:center;padding:12px 24px;background:#fff;border-bottom:1px solid var(--line);position:sticky;top:64px;z-index:20}.quick-tabs,.action-toolbar{display:flex;align-items:center;gap:9px}.pill{border:1px solid #7f98b4;background:#fff;border-radius:20px;padding:7px 15px;color:#1f4168}.pill.active{background:#dfeaf4;border-color:#5f83a8}.quick-tabs select{border:1px solid #7f98b4;border-radius:20px;padding:7px 13px;background:#fff}.list-heading{display:flex;justify-content:space-between;align-items:flex-start;padding:18px 28px 6px}.list-heading h1{margin:0 0 14px}.active-filter-row{display:flex;align-items:center;gap:11px;font-size:13px}.filter-chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.filter-chip{border:0;background:#dce7f0;border-radius:20px;padding:8px 12px;color:#173d62}.filter-panel{margin:0 28px 12px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:16px}.report-list-panel{padding:0;margin-top:10px}.table-wrap{overflow:auto}.data-table{border-collapse:collapse;width:100%;min-width:850px}.data-table th,.data-table td{text-align:left;border-bottom:1px solid #e3e9ef;padding:12px 14px;vertical-align:top}.data-table th{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:#45566c;background:#f7f9fc;position:sticky;top:0}.compact-table td{font-size:13px;padding-top:11px;padding-bottom:11px}.clickable-row{cursor:pointer}.clickable-row:hover{background:#f1f8fc}.workflow-pill{display:inline-flex;align-items:center;white-space:nowrap;border-radius:14px;padding:5px 9px;background:#e7eef5;color:#254866;font-size:12px;font-weight:750}.workflow-closed_complete{background:#e3f4e9;color:#17603b}.workflow-closed_incomplete_directorate,.workflow-closed_incomplete_iphvc{background:#f8e7e4;color:#8a281f}.workflow-hospital_correction,.workflow-directorate_returned{background:#fff0cf;color:#795a00}.pagination{display:flex;justify-content:center;align-items:center;gap:15px;padding:14px}.report-page-heading{padding:10px 22px;background:#fff;border-bottom:1px solid var(--line);display:flex;justify-content:space-between}.workflow-bar{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:14px 22px;background:#fff;border-bottom:1px solid var(--line);position:sticky;top:64px;z-index:18}.workflow-summary{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.workflow-summary small{color:var(--muted)}.workflow-buttons{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.closure-banner{margin:14px 22px;padding:14px 18px;border-radius:8px;display:flex;gap:14px;align-items:center;flex-wrap:wrap}.closure-banner.complete{background:#e8f6ed;color:#155d37}.closure-banner.incomplete{background:#fcecea;color:#7d2119}.report-layout{display:grid;grid-template-columns:180px minmax(0,1fr);gap:18px;padding:14px 20px 30px}.report-sidebar{background:#fff;border:1px solid var(--line);align-self:start;position:sticky;top:144px}.section-nav-item{width:100%;display:flex;justify-content:space-between;align-items:center;border:0;border-bottom:1px solid #e5eaf0;background:#fff;padding:12px 13px;text-align:left;font-size:13px;color:#34465d}.section-nav-item.active{background:#07466f;color:#fff;font-weight:750}.section-nav-item i{width:7px;height:7px;border-radius:50%;background:#c4cbd4}.section-nav-item.active i{background:#72cef3}.report-main{min-width:0}.report-tab-panel{display:none;margin:0 0 18px}.report-tab-panel.active{display:block}.report-form{background:#fff;border:1px solid var(--line);border-radius:7px}.report-form fieldset{border:0;margin:0;padding:0}.form-section{padding:20px}.section-heading{display:flex;align-items:center;gap:10px;background:#274372;color:#fff;margin:-20px -20px 20px;padding:10px 14px}.section-heading span{display:grid;place-items:center;background:#6f8cb9;border-radius:50%;width:24px;height:24px;font-size:12px}.section-heading h2{font-size:16px;margin:0}.vitals-table{width:100%;border-collapse:collapse}.vitals-table th,.vitals-table td{border:1px solid var(--line);padding:9px}.vitals-table input{width:100%;border:0;background:transparent}.assessment-panel{margin:0}.form-actions{padding:12px 0}.overview-definition{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.overview-definition div{border-bottom:1px solid var(--line);padding:10px}.overview-definition dt{font-size:12px;color:var(--muted)}.overview-definition dd{margin:4px 0 0;font-weight:650}.workflow-dialog,.audit-dialog{border:0;border-radius:12px;box-shadow:0 24px 70px rgba(0,0,0,.28);width:min(640px,92vw);max-height:90vh;overflow:auto;padding:22px}.wide-dialog{width:min(900px,94vw)}.audit-dialog{width:min(900px,94vw)}dialog::backdrop{background:rgba(8,30,52,.55)}.dialog-heading{display:flex;justify-content:space-between;align-items:flex-start}.dialog-heading h2{margin:0}.dialog-close{font-size:24px;border:0;background:transparent}.dialog-actions,.audit-export-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:18px}.timeline{list-style:none;padding:0;margin:20px 0;display:grid;gap:12px}.timeline li{display:grid;grid-template-columns:15px 1fr;gap:10px}.timeline-dot{width:11px;height:11px;border-radius:50%;background:var(--blue);margin-top:12px}.timeline-card{border:1px solid var(--line);border-radius:8px;padding:12px}.timeline-header{display:flex;justify-content:space-between;gap:12px}.timeline-card p{margin:6px 0;color:#47566a}.timeline-card blockquote{margin:8px 0;padding:8px 12px;border-left:3px solid var(--blue);background:#f5f9fc}.changes-list{display:grid;gap:5px;margin-top:9px}.changes-list div{display:grid;grid-template-columns:minmax(140px,.4fr) 1fr;gap:10px;font-size:12px}.admin-tabs{display:flex;gap:5px;margin:10px 18px 0;border-bottom:1px solid var(--line)}.admin-tab{border:0;background:transparent;padding:12px 16px;font-weight:650;border-bottom:3px solid transparent}.admin-tab.active{border-color:var(--blue);color:#075b91}.admin-grid{display:grid;grid-template-columns:1fr 1fr}.progress-message{margin:12px 0}.import-help{display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:13px}.app-footer{background:#fff;border-top:1px solid var(--line)}
@media(max-width:1000px){.app-header{grid-template-columns:1fr auto}.app-header nav{position:fixed;bottom:0;left:0;right:0;height:58px;background:linear-gradient(100deg,var(--crimson-950),var(--crimson-800),#b00024);justify-content:center;z-index:40}.account-block{display:none}.app-footer{padding-bottom:72px}.report-list-toolbar{top:64px}.workflow-bar{top:64px}.columns-4{grid-template-columns:repeat(2,minmax(0,1fr))}.metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.overview-grid{grid-template-columns:1fr}.admin-grid{grid-template-columns:1fr}.report-layout{grid-template-columns:1fr}.report-sidebar{position:fixed;left:-260px;top:64px;bottom:58px;width:250px;z-index:60;transition:left .2s;overflow:auto}.report-sidebar.open{left:0}.mobile-only{display:inline-flex}.workflow-bar{align-items:flex-start;flex-direction:column}.workflow-buttons{justify-content:flex-start}}
@media(max-width:720px){.login-layout{display:block;background:linear-gradient(#074b78 0 38%,#eef4fa 38%)}.login-intro{padding:36px 28px 58px;min-height:38vh}.login-intro h1{font-size:38px;margin-top:22px}.brand-mark.large{width:70px;height:70px}.login-card{margin:-30px auto 30px;padding:28px}.columns-2,.columns-3,.columns-4,.paired-panel,.overview-definition{grid-template-columns:1fr}.check-grid.columns-2,.check-grid.columns-3,.check-grid.columns-5{grid-template-columns:1fr}.app-header{padding:0 12px}.brand-block span{display:none}.report-list-toolbar{align-items:flex-start;gap:12px;overflow:auto}.quick-tabs,.action-toolbar{flex-wrap:nowrap}.list-heading{padding:16px;gap:8px}.filter-panel{margin:0 12px 10px}.panel{margin:12px;padding:16px}.metrics-grid{grid-template-columns:1fr;margin:12px}.report-layout{padding:10px}.workflow-summary{font-size:13px}.workflow-buttons{width:100%;overflow:auto;flex-wrap:nowrap}.workflow-buttons .button{white-space:nowrap}.form-section{padding:15px}.section-heading{margin:-15px -15px 16px}.page-header{padding:20px 16px}.page-header h1{font-size:25px}}

.stacked-actions {
  align-items: stretch;
}
.stacked-actions .button {
  flex: 1 1 220px;
}

/* Version 0.60 visual identity and usability refinements */
:root{--crimson-950:#5b0614;--crimson-900:#76091d;--crimson-800:#8f1027;--crimson-700:#a41431;--crimson-100:#f9e8ed;--ink:#182033;--page:#f6f7f9;--pastel-blue:#e7f0f8;--pastel-blue-text:#24577a;--pastel-amber:#fff1d6;--pastel-amber-text:#8a5a00;--pastel-green:#e4f3e8;--pastel-green-text:#2f6b3d;--pastel-grey:#eceff2;--pastel-grey-text:#4b5563}
body{background:var(--page);color:var(--ink)}
.app-header.crimson-header{height:64px;min-height:64px;padding:0 24px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;background:linear-gradient(100deg,var(--crimson-950),var(--crimson-800),#b00024);color:#fff;border:0;box-shadow:0 1px 4px rgba(31,3,10,.18)}
.header-left{display:flex;align-items:center;gap:11px;min-width:0}.home-button{width:38px;height:38px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.35);border-radius:7px;color:#fff;text-decoration:none;font-size:23px}.header-divider{width:1px;height:34px;background:rgba(255,255,255,.28)}
.iphvc-header-logo{display:block;width:31px;height:auto;max-height:37px;object-fit:contain;filter:brightness(0) invert(1)}.iphvc-wordmark{font-size:20px;line-height:1;font-weight:800;color:#fff;white-space:nowrap}.header-title{font-size:20px;font-weight:650;letter-spacing:-.01em;white-space:nowrap}.account-menu-button{justify-self:end;display:flex;align-items:center;gap:9px;border:0;background:transparent;color:#fff;font:inherit;font-size:14px;font-weight:600;cursor:pointer}.square-user-icon{width:34px;height:34px;border:2px solid rgba(255,255,255,.92);border-radius:7px;display:grid;place-items:center;font-size:20px}
.primary-navigation{height:72px;display:flex;gap:18px;align-items:center;padding:0 32px;background:#fff;border-bottom:1px solid #d9dde4}.primary-navigation a{display:flex;align-items:center;gap:10px;padding:11px 21px;border:1px solid #d69aa8;border-radius:7px;color:#7d1025;text-decoration:none;font-size:15px;font-weight:650;position:relative}.primary-navigation a.active{border-color:#a41431;background:#fff9fa;box-shadow:inset 0 0 0 1px #a41431}.primary-navigation a.active:before{content:"";position:absolute;left:0;right:55%;top:-19px;height:4px;background:#a41431;border-radius:4px}
.account-menu-dialog{margin:72px 18px auto auto;min-width:240px;border:1px solid #d8dce3;border-radius:10px;padding:18px;box-shadow:0 18px 55px rgba(0,0,0,.2)}.account-menu-dialog div{display:flex;flex-direction:column;margin-bottom:15px}.account-menu-dialog span{color:#687385;font-size:13px}
.app-footer.iphvc-footer{display:flex;align-items:center;justify-content:center;gap:15px;background:#fff;border-top:1px solid #dce0e7;padding:16px;color:#596579}.iphvc-footer img{width:48px;height:auto;object-fit:contain}.iphvc-footer div{display:flex;flex-direction:column;gap:2px}.iphvc-footer strong{color:#253044}.iphvc-footer span{font-size:12px}
.login-logo{width:92px;height:auto;object-fit:contain;filter:brightness(0) invert(1)}
.home-page{padding:44px;max-width:1000px;margin:auto}.home-page h1{color:#6e0b1e}.home-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;margin-top:30px}.home-card{min-height:110px;border:1px solid #c57f8e;border-radius:12px;background:#fff;color:#6e0b1e;text-decoration:none;display:flex;align-items:center;gap:18px;padding:24px;font-size:19px}.home-card span{font-size:31px}
.update-notice-dialog,.message-dialog{width:min(620px,calc(100vw - 32px));border:0;border-radius:14px;padding:24px;box-shadow:0 24px 70px rgba(0,0,0,.25)}.update-notice-dialog::backdrop,.message-dialog::backdrop,.account-menu-dialog::backdrop{background:rgba(18,24,36,.38)}.update-notice-dialog h3{color:#761126;margin:18px 0 8px}.update-notice-dialog ul{padding-left:22px}
.report-list-toolbar,.list-heading{background:#fff}.report-table{font-size:14px}.report-table th{font-size:13px}.report-id-cell{display:flex;align-items:center;gap:8px}.message-icon-button{border:0;background:transparent;color:#7b1025;font-size:18px;cursor:pointer;padding:2px 5px}
.workflow-pill{font-size:95%;padding:.28rem .64rem;border-radius:999px;border:1px solid transparent;white-space:nowrap}.workflow-hospital_draft{background:var(--pastel-grey)!important;color:var(--pastel-grey-text)!important;border-color:#d5dae0!important}.workflow-hospital_correction,.workflow-directorate_returned{background:var(--pastel-amber)!important;color:var(--pastel-amber-text)!important;border-color:#ead18b!important}.workflow-directorate_new,.workflow-directorate_resubmitted,.workflow-directorate_review,.workflow-iphvc_new,.workflow-iphvc_resubmitted,.workflow-iphvc_review{background:var(--pastel-blue)!important;color:var(--pastel-blue-text)!important;border-color:#c6d9e9!important}.workflow-closed_complete,.workflow-closed_incomplete_directorate,.workflow-closed_incomplete_iphvc{background:var(--pastel-green)!important;color:var(--pastel-green-text)!important;border-color:#bfdec7!important}
.latest-note{margin:0 24px 18px;padding:15px 18px;background:#fff6d8;border:1px solid #e8d28a;border-radius:9px;color:#6b5200}.latest-note strong{display:block;margin-bottom:5px}.latest-note p{margin:0 0 7px}.latest-note small{color:#806b25}
.message-list{max-height:420px;overflow:auto;display:flex;flex-direction:column;gap:10px;margin:14px 0}.message-item{border:1px solid #e0e3e8;border-radius:9px;padding:11px 13px;background:#fafafb}.message-item header{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.message-item header span,.message-item time{font-size:12px;color:#6d7787}.message-item time{margin-left:auto}.message-item p{margin:7px 0 0;white-space:pre-wrap}.message-compose{display:grid;grid-template-columns:1fr auto;gap:9px;align-items:stretch}.message-compose textarea{resize:vertical;border:1px solid #cdd2da;border-radius:8px;padding:10px;font:inherit}.message-compose button{align-self:stretch}
.filter-panel{border-top:4px solid #8f1027}.filter-panel .field span{font-size:12px}.filter-chips .filter-chip{background:#f9e8ed;color:#711026;border-color:#dba8b4}
.mobile-reporting-form{display:block}.mobile-reporting-form .report-sidebar{display:none}.mobile-reporting-form .report-main{width:100%;max-width:760px;margin:0 auto}.mobile-reporting-form .report-tab-panel{display:block!important;margin:0 10px 18px}.mobile-reporting-form .panel-heading{background:#7c1025;color:#fff;padding:12px 15px;border-radius:8px 8px 0 0}.mobile-reporting-form .panel-heading h2,.mobile-reporting-form .panel-heading p{color:#fff;margin:0}.mobile-reporting-form input[type="checkbox"],.mobile-reporting-form input[type="radio"]{accent-color:#8f1027}.mobile-reporting-form .form-grid{grid-template-columns:1fr!important}.mobile-reporting-form .field,.mobile-reporting-form .check-grid{font-size:16px}
@media(max-width:800px){.app-header.crimson-header{height:58px;min-height:58px;padding:0 12px;grid-template-columns:auto 1fr auto}.header-title{font-size:14px;text-align:center;overflow:hidden;text-overflow:ellipsis}.iphvc-wordmark{display:none}.iphvc-header-logo{width:27px}.home-button{width:33px;height:33px}.account-menu-button>span:not(.square-user-icon):not(:last-child){display:none}.square-user-icon{width:31px;height:31px}.primary-navigation{height:58px;padding:0 10px;gap:8px;overflow-x:auto}.primary-navigation a{padding:8px 12px;font-size:13px}.primary-navigation a.active:before{top:-14px}.report-list-toolbar{align-items:flex-start}.message-compose{grid-template-columns:1fr}.iphvc-footer{flex-direction:column;text-align:center}}

/* Version 0.61 corrections */
:root{--navy:#7c1025;--navy2:#8f1027;--blue:#8f1027;--blue-soft:#f9e8ed}
.error-panel h1,.text-button,.metric-card strong{color:#7c1025}
.button.primary{background:#8f1027}.field input:focus,.field select:focus,.field textarea:focus{outline-color:rgba(143,16,39,.18);border-color:#8f1027}
.section-nav-item.active,.section-heading{background:#7c1025}.section-heading span{background:#a94a5d}.timeline-dot{background:#8f1027}.timeline-card blockquote{border-left-color:#8f1027}.admin-tab.active{border-color:#8f1027;color:#7c1025}
.desktop-report-view{grid-template-columns:220px minmax(720px,1fr);max-width:1500px;margin:0 auto;width:100%}.desktop-report-view .report-main{width:100%;max-width:none}.desktop-report-view .report-form{width:100%}
@media(min-width:1001px){.desktop-report-view .report-tab-panel{width:100%;max-width:none}.desktop-report-view .form-grid.columns-3{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* Version 0.63 refinements */
html{font-size:95%}
.login-layout{background:linear-gradient(135deg,#5b0614,#8f1027 58%,#f5f1f2 58%)}
@media(max-width:720px){.login-layout{background:linear-gradient(#76091d 0 38%,#f5f1f2 38%)}}
.login-card{box-shadow:0 20px 50px rgba(91,6,20,.16)}
.login-card h2,.login-card a,.login-card .text-button{color:#76091d}
.login-card input:focus{border-color:#8f1027!important;outline-color:rgba(143,16,39,.18)!important}
.quick-tabs .pill,.quick-tabs select{font-size:.9rem;padding:6px 12px}
.iphvc-footer strong{font-size:1.05em}
.reporter-subsection{padding:14px 0}.reporter-subsection+ .reporter-subsection{border-top:1px solid var(--line);margin-top:16px;padding-top:20px}.reporter-subsection h3{color:#7c1025;margin:0 0 5px}.field-help{color:var(--muted);font-size:.88rem;margin:0 0 14px}.same-sender-control{margin:8px 0 16px;font-weight:650}.same-sender-active input:not([type="hidden"]),.same-sender-active select{background:#f6f7f9;color:#596579}
.desktop-new-report{grid-template-columns:220px minmax(720px,1fr);max-width:1500px;margin:0 auto;width:100%}.desktop-new-report .report-main{width:100%}.desktop-new-report .report-form{width:100%}
input[type="checkbox"],input[type="radio"]{accent-color:#8f1027}

/* Version 0.65 compact navigation, crimson cleanup and export rendering */
.app-header.crimson-header{grid-template-columns:minmax(330px,1fr) auto minmax(330px,1fr)}
.header-left{gap:9px}.header-icon-navigation{display:flex;align-items:center;gap:5px}.header-nav-icon{width:38px;height:38px;display:grid;place-items:center;border:1px solid transparent;border-radius:7px;color:#fff;opacity:.82}.header-nav-icon svg{width:20px;height:20px;fill:currentColor}.header-nav-icon:hover,.header-nav-icon:focus-visible{background:rgba(255,255,255,.12);opacity:1;outline:2px solid rgba(255,255,255,.38);outline-offset:1px}.header-nav-icon.active{background:rgba(255,255,255,.18);border-color:rgba(255,255,255,.45);opacity:1}.header-divider{height:30px}.iphvc-header-logo{width:29px;max-height:34px}.iphvc-wordmark{font-size:18px}.header-title{font-size:18px}
.report-list-toolbar{top:64px}.quick-tabs .pill,.quick-tabs select{font-size:.82rem;padding:5px 10px;border-color:#b96a7c;color:#6f1023}.pill.active{background:#f8e8ec;border-color:#9b1932}.quick-tabs select{background:#fff}.filter-chip{background:#f8e8ec;color:#6f1023}.stat-bar-track i{background:linear-gradient(90deg,#8f1027,#bd3855)}.stat-bar-track{background:#f1e5e8}.metric-card strong{color:#7c1025}
.report-preview-table{table-layout:fixed;min-width:1080px}.report-preview-table th,.report-preview-table td{padding:8px 9px}.report-preview-table td{font-size:12px}.report-preview-table th{font-size:10.5px}.report-preview-table .select-column{width:42px}.report-preview-table .report-id-column{width:178px}.report-preview-table .workflow-column{width:145px}.report-preview-table .patient-column{width:190px}.report-preview-table .organization-column{width:215px}.report-preview-table .event-column{width:175px}.report-preview-table .actions-column{width:190px}.report-preview-table .change-column{width:145px;white-space:nowrap}.report-preview-table .patient-column{font-size:12.5px}.organization-cell,.organization-column{line-height:1.25}.organization-facility,.organization-regional{display:block}.organization-facility{font-size:11.5px}.organization-regional{font-size:10.5px;color:#687385;margin-top:3px}.report-id-cell strong{font-size:11.5px}.workflow-pill{font-size:11px;padding:.25rem .55rem}.clickable-row:hover{background:#fff7f9}
.pdf-render-host{position:fixed;left:-10000px;top:0;width:794px;background:#fff;z-index:-1}.pdf-document{width:794px;background:#fff;color:#202632;padding:30px 34px;font-family:Arial,"Segoe UI",Tahoma,sans-serif;font-size:12px;line-height:1.45}.pdf-document header{border-bottom:3px solid #8f1027;padding-bottom:12px;margin-bottom:15px;display:grid;gap:3px}.pdf-document header h1{margin:0;color:#76091d;font-size:22px}.pdf-document header strong{font-size:15px}.pdf-document header span{color:#667085}.pdf-section{break-inside:avoid;margin:0 0 14px}.pdf-section h2{margin:0;background:#7c1025;color:#fff;padding:7px 10px;font-size:14px}.pdf-section table{width:100%;border-collapse:collapse;table-layout:fixed}.pdf-section th,.pdf-section td{border:1px solid #d9dde4;padding:6px 8px;vertical-align:top;overflow-wrap:anywhere}.pdf-section th{width:34%;background:#f5f1f2;text-align:left;color:#4b2330}.pdf-section td[dir="auto"]{unicode-bidi:plaintext}.pdf-note{background:#fff6d8;border:1px solid #e8d28a;border-radius:6px;padding:10px 12px;margin-bottom:14px;color:#6b5200}.pdf-note p{margin:4px 0}.pdf-note small{display:block}.pdf-document footer{text-align:center;color:#667085;border-top:1px solid #ddd;padding-top:8px;margin-top:12px}
@media(max-width:800px){.app-header.crimson-header{grid-template-columns:auto minmax(0,1fr) auto}.header-icon-navigation{gap:2px}.header-nav-icon{width:33px;height:33px}.header-nav-icon svg{width:18px;height:18px}.header-divider,.iphvc-wordmark{display:none}.iphvc-header-logo{width:24px}.header-title{font-size:13px}.report-list-toolbar{top:58px}}


/* Version 0.66 workflow, audit, export and density corrections */
:root{--pastel-red:#fbe7e9;--pastel-red-text:#8f1d2c}
.section-nav-item{justify-content:flex-start}.section-nav-item i{display:none!important}
.workflow-buttons{gap:6px}.workflow-buttons .button{font-size:.88rem;padding:8px 12px;border-radius:6px}.workflow-buttons .button.complete{background:#e4f3e8;color:#2f6b3d;border-color:#a9d0b2}.workflow-buttons .button.complete:hover{background:#d3ead9}
.workflow-closed_complete{background:var(--pastel-green)!important;color:var(--pastel-green-text)!important;border-color:#bfdec7!important}
.workflow-closed_incomplete_directorate,.workflow-closed_incomplete_iphvc{background:var(--pastel-red)!important;color:var(--pastel-red-text)!important;border-color:#e8bbc2!important}
.report-preview-table th,.report-preview-table td{vertical-align:middle!important}.report-preview-table .organization-cell,.report-preview-table .organization-column{vertical-align:middle!important}
.pdf-section td.rtl-value{direction:rtl;text-align:right;unicode-bidi:plaintext;font-family:Tahoma,Arial,"Segoe UI",sans-serif}.pdf-section td.ltr-value{direction:ltr;text-align:left}.pdf-section td{white-space:pre-line}
@media(max-width:800px){.workflow-buttons .button{font-size:.84rem;padding:7px 10px}}


/* Version 0.67 report information, paper form, icons and workflow colour fixes */
:root{--pastel-grey:#eceff2;--pastel-grey-text:#4b5563;--pastel-blue:#e7f0f8;--pastel-blue-text:#24577a;--pastel-amber:#fff1d6;--pastel-amber-text:#8a5a00;--pastel-green:#e4f3e8;--pastel-green-text:#2f6b3d}
.workflow-hospital_draft{background:var(--pastel-grey)!important;color:var(--pastel-grey-text)!important;border-color:#d5dae0!important}
.workflow-hospital_correction,.workflow-directorate_returned{background:var(--pastel-amber)!important;color:var(--pastel-amber-text)!important;border-color:#e4c776!important}
.workflow-directorate_new,.workflow-directorate_resubmitted,.workflow-directorate_review,.workflow-iphvc_new,.workflow-iphvc_resubmitted,.workflow-iphvc_review{background:var(--pastel-blue)!important;color:var(--pastel-blue-text)!important;border-color:#bcd3e5!important}
.workflow-closed_complete{background:var(--pastel-green)!important;color:var(--pastel-green-text)!important;border-color:#a9d0b2!important}
.workflow-closed_incomplete_directorate,.workflow-closed_incomplete_iphvc{background:var(--pastel-red)!important;color:var(--pastel-red-text)!important;border-color:#e4b5bd!important}
.workflow-buttons .button.close-incomplete,.button.close-incomplete{background:#fbe7e9;color:#8f1d2c;border-color:#e4b5bd}.workflow-buttons .button.close-incomplete:hover{background:#f6d8dd}
.paper-form-button{background:#fff1d6!important;color:#8a5a00!important;border-color:#e4c776!important}.paper-form-button:hover{background:#ffe7b3!important}.icon-action{display:inline-flex;align-items:center;gap:6px}.ui-icon{font-size:1.2em;line-height:1}
.report-details-subsection{border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:18px}.about-panel h3,.about-panel h4{color:#7c1025}.version-history{margin-top:18px;border-top:1px solid var(--line);padding-top:12px}.version-history summary{cursor:pointer;font-weight:700;color:#7c1025}.version-history article{padding:12px 0;border-bottom:1px solid var(--line)}.version-history article>span{margin-left:10px;color:var(--muted);font-size:.85rem}
.pdf-section th{width:18%}.pdf-section td{width:32%}.pdf-section table{font-size:11px}.pdf-section th,.pdf-section td{padding:5px 6px}.pdf-section h2{font-size:13px;padding:6px 9px}

/* v0.68 unified SVG icon system */
.app-icon{width:1.15em;height:1.15em;display:inline-block;flex:0 0 auto;vertical-align:-.16em;overflow:visible}
.header-nav-icon .app-icon{width:21px;height:21px}
.account-menu-button .app-icon{width:22px;height:22px}
.icon-action .app-icon,.workflow-buttons .app-icon{width:17px;height:17px}
.button.icon-action{display:inline-flex;align-items:center;justify-content:center;gap:6px}
.workflow-buttons .button:has(.app-icon){display:inline-flex;align-items:center;gap:6px}


/* v0.69 icon rendering and alignment corrections */
.app-icon{display:block;width:24px;height:24px;flex:0 0 24px;overflow:visible;shape-rendering:geometricPrecision}
.app-icon *{vector-effect:non-scaling-stroke}
.button-icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;flex:0 0 20px;line-height:0}
.button-icon .app-icon{width:19px;height:19px;flex-basis:19px}
.icon-action{display:inline-flex!important;align-items:center!important;justify-content:center;gap:7px;line-height:1.1}
.icon-action>span:last-child{display:inline-flex;align-items:center}
.header-nav-icon{display:inline-flex!important;align-items:center;justify-content:center;padding:0;line-height:0}
.header-nav-icon .app-icon{width:20px;height:20px;flex-basis:20px}
.header-account-icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;flex:0 0 24px;line-height:0}
.header-account-icon .app-icon{width:22px;height:22px;flex-basis:22px}
.account-menu-button{display:flex;align-items:center;gap:8px}
.workflow-buttons .button.icon-action{display:inline-flex!important;align-items:center!important;justify-content:center}
@media(max-width:800px){.header-nav-icon .app-icon{width:18px;height:18px;flex-basis:18px}.button-icon{width:18px;height:18px;flex-basis:18px}.button-icon .app-icon{width:17px;height:17px;flex-basis:17px}}

/* ACP v1.2.5 protected Read-only Admin identity. */
.read-only-role-label{display:inline-flex;align-self:flex-start;margin-top:3px;padding:3px 7px;border-radius:999px;background:#f5e7ea;color:#7c1025;font-size:11px;font-weight:750;letter-spacing:.02em}
.read-only-mode-note{display:inline-flex;align-items:center;min-height:34px;padding:5px 11px;border:1px solid #d6a5af;border-radius:999px;background:#fff7f8;color:#7c1025;font-size:12px;font-weight:750}

/* v0.70 compact controls, aligned choices, and inverted header navigation */
.button{padding:7px 13px;min-height:36px}
.button.small{padding:5px 9px;min-height:32px}
.workflow-buttons .button{padding:6px 10px;min-height:34px}
.report-list-toolbar .button,.list-heading .button{padding-top:6px;padding-bottom:6px;min-height:36px}

.check-grid{column-gap:24px;row-gap:10px;align-items:start}
.check-item{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:start;gap:9px;line-height:1.25;min-width:0}
.check-item input[type="checkbox"],.check-item input[type="radio"],input[type="checkbox"],input[type="radio"]{width:17.6px;height:17.6px;margin:0;accent-color:#a50f32;flex:0 0 auto}
fieldset:disabled input[type="checkbox"],fieldset:disabled input[type="radio"],input[type="checkbox"]:disabled,input[type="radio"]:disabled{accent-color:#721126;opacity:1}
.radio-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px 18px;align-items:start}
.paired-panel .radio-row{grid-template-columns:repeat(auto-fit,minmax(145px,1fr))}

.header-nav-icon{width:46px;height:46px;border-radius:8px;opacity:.92}
.header-nav-icon .app-icon{width:24px;height:24px;flex-basis:24px}
.header-nav-icon.active{background:#fff!important;color:#8f1027!important;border-color:#fff!important;opacity:1;box-shadow:0 1px 3px rgba(0,0,0,.12)}
.header-nav-icon:hover:not(.active),.header-nav-icon:focus-visible:not(.active){background:rgba(255,255,255,.12)}

.latest-note{padding:9px 14px;margin-bottom:12px}
.latest-note-header{display:grid;grid-template-columns:auto minmax(180px,1fr) auto;align-items:center;gap:16px}
.latest-note-header strong{margin:0}
.latest-note-author{text-align:center;font-size:12px;color:#806b25;min-width:0}
.latest-note-header time{font-size:12px;color:#806b25;text-align:right;white-space:nowrap}
.latest-note p{margin:6px 0 0;white-space:pre-wrap}

.about-panel,.update-notice-dialog{font-size:80%;color:#263244}
.about-panel h2,.about-panel h3,.about-panel h4,.update-notice-dialog h2,.update-notice-dialog h3{color:#263244}
.about-panel h2{font-size:1.6rem}.about-panel h3{font-size:1.25rem}.about-panel h4{font-size:1rem}
.update-notice-dialog .eyebrow{color:#5c6778}.update-notice-dialog h2{font-size:1.5rem}.update-notice-dialog h3{font-size:1rem}
.version-history{display:none!important}

/* Reserved validity markers; activated after validity criteria are approved. */
.validity-required.is-missing{border:2px solid #721126!important;background:#fff8f9!important}
.section-nav-item.has-missing-required::after,.section-heading.has-missing-required::after{content:"!";display:inline-grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#721126;color:#fff;font-weight:800}

@media(max-width:800px){
  .header-nav-icon{width:40px;height:40px}.header-nav-icon .app-icon{width:22px;height:22px;flex-basis:22px}
  .latest-note-header{grid-template-columns:1fr;gap:3px}.latest-note-author{text-align:left}.latest-note-header time{text-align:left}
  .button{min-height:40px}
}


/* v0.71 distinct three-zone header and compact metadata/filter layout */
.app-header.crimson-header{
  height:76px;min-height:76px;
  grid-template-columns:minmax(190px,1fr) minmax(280px,auto) minmax(390px,1fr);
  padding:0 22px;background:#8f1027;
}
.app-header.crimson-header:before{display:none!important;background:none!important}
.header-brand{display:flex;align-items:center;gap:10px;justify-self:start;min-width:0}
.header-title{justify-self:center;text-align:center;font-size:18px;font-weight:700;white-space:nowrap}
.header-icon-navigation{justify-self:end;align-self:stretch;display:flex;align-items:stretch;gap:3px}
.header-nav-icon{
  width:78px;height:76px;border:0;border-radius:0;padding:7px 5px 6px;
  display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:4px;
  color:#fff;background:transparent;opacity:.94;font:inherit;line-height:1;
}
.header-nav-symbol{display:grid;place-items:center;width:30px;height:30px;line-height:0}
.header-nav-symbol .app-icon{width:27px;height:27px;flex-basis:27px}
.header-nav-label{display:block;font-size:10px;font-weight:650;line-height:1.1;white-space:nowrap}
.header-nav-icon.active{background:#fff!important;color:#8f1027!important;box-shadow:none;border:0!important}
.header-nav-icon:hover:not(.active),.header-nav-icon:focus-visible:not(.active){background:rgba(255,255,255,.11);outline:none}
.account-nav-item{appearance:none}
.latest-note-header{display:flex;align-items:center;justify-content:flex-start;gap:18px}
.latest-note-meta{display:inline-flex;align-items:center;gap:8px;min-width:0;color:#806b25;font-size:12px}
.latest-note-author{text-align:left;color:inherit;font-size:inherit}
.latest-note-header time{color:inherit;font-size:inherit;text-align:left;white-space:nowrap}
.latest-note-separator{opacity:.7}
.compact-list-heading{align-items:center;min-height:auto;padding-top:12px;padding-bottom:10px}
.compact-list-heading h1{font-size:22px;margin:0}
.list-summary{display:flex;align-items:center;gap:14px;min-width:0;flex-wrap:wrap}
.list-filter-actions{display:flex;align-items:center;gap:6px}
.compact-list-heading .filter-chips{margin:0;display:flex;gap:6px;flex-wrap:wrap}
.compact-list-heading .filter-chip{padding:4px 8px;font-size:12px}
@media(max-width:1000px){
  .app-header.crimson-header{grid-template-columns:auto minmax(180px,1fr) auto;padding:0 12px}
  .iphvc-wordmark{display:none}.header-title{font-size:15px}
  .header-nav-icon{width:62px}.header-nav-label{font-size:9px}
}
@media(max-width:800px){
  .app-header.crimson-header{height:64px;min-height:64px;grid-template-columns:auto 1fr auto;padding:0 8px}
  .header-title{font-size:12px;white-space:normal;line-height:1.15;padding:0 6px}
  .header-icon-navigation{height:64px;gap:0}
  .header-nav-icon{width:43px;height:64px;padding:5px 2px;gap:2px}
  .header-nav-symbol{width:24px;height:24px}.header-nav-symbol .app-icon{width:22px;height:22px;flex-basis:22px}
  .header-nav-label{font-size:7.5px;max-width:42px;overflow:hidden;text-overflow:ellipsis}
  .iphvc-header-logo{width:25px}
  .report-list-toolbar{top:64px}
  .latest-note-header{align-items:flex-start;gap:6px;flex-wrap:wrap}
  .latest-note-meta{gap:6px;flex-wrap:wrap}
}


/* v0.72 workflow reliability and compact form grouping */
.account-menu-popover{position:fixed;top:70px;right:14px;z-index:1200;width:min(300px,calc(100vw - 28px));background:#fff;border:1px solid #d7dee8;border-radius:12px;box-shadow:0 16px 40px rgba(13,30,48,.22);padding:18px;display:grid;gap:16px;color:var(--ink)}
.account-menu-popover>div{display:grid;gap:2px}.account-menu-popover strong{font-size:18px}.account-menu-popover span{color:var(--muted)}
.compact-back-link{padding:2px 6px 2px 0;white-space:nowrap;color:#8f1027}.workflow-summary{flex-wrap:wrap}.workflow-summary .compact-back-link{margin-right:4px}
.compact-choice-group{max-width:760px}.compact-choice-group .check-grid{grid-template-columns:repeat(3,minmax(150px,1fr));gap:12px 22px}.compact-choice-group .check-item{align-items:center;gap:10px}
.component-choice-group{margin-bottom:15px}.conditional-other-field{max-width:620px;margin-top:4px}.conditional-other-field .field-full{grid-column:auto}
.distinct-question-groups{gap:22px}.choice-question{margin:0;border:1px solid var(--line);border-radius:10px;padding:14px 16px;background:#fafcff;min-width:0}.choice-question legend{padding:0 6px;font-size:13px;font-weight:700;color:#46556b}.choice-question .radio-row{display:grid;grid-template-columns:repeat(3,max-content);gap:12px 30px}
.check-item input[type="checkbox"],.check-item input[type="radio"]{width:1.1em;height:1.1em;accent-color:#a50f32;flex:0 0 auto}.report-form fieldset:disabled .check-item input[type="checkbox"],.report-form fieldset:disabled .check-item input[type="radio"]{accent-color:#721126;opacity:1}
@media(max-width:800px){.account-menu-popover{top:66px;right:8px}.compact-choice-group .check-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.distinct-question-groups{grid-template-columns:1fr}.choice-question .radio-row{grid-template-columns:repeat(3,max-content);gap:10px 22px}.compact-back-link{width:100%;text-align:left}}
@media(max-width:480px){.compact-choice-group .check-grid{grid-template-columns:1fr}.choice-question .radio-row{grid-template-columns:1fr;gap:9px}}

/* v0.73 compact report-header actions */
.icon-only-action {
  width: 2.5rem;
  min-width: 2.5rem;
  height: 2.5rem;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.icon-only-action .button-icon {
  margin: 0;
}
.sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}


/* v0.74 semantic icon-only workflow actions */
.workflow-buttons .workflow-action{
  --action-color:#8b5f00;
  --action-hover:#fff3d6;
  --action-active:#d6a62b;
  width:2.5rem;min-width:2.5rem;height:2.5rem;padding:0;
  display:inline-flex;align-items:center;justify-content:center;
  background:#fff;border:1px solid #b8c3cf;color:var(--action-color);
  border-radius:7px;box-shadow:none;position:relative;
  transition:background-color .14s ease,border-color .14s ease,color .14s ease,transform .08s ease;
}
.workflow-buttons .workflow-action .button-icon{margin:0;display:grid;place-items:center;line-height:0}
.workflow-buttons .workflow-action .app-icon{width:23px;height:23px;flex-basis:23px}
.workflow-buttons .workflow-action-return{--action-color:#9a6700;--action-hover:#fff3d6;--action-active:#d7a62a}
.workflow-buttons .workflow-action-incomplete{--action-color:#a61b31;--action-hover:#fbe7e9;--action-active:#c84b5e}
.workflow-buttons .workflow-action-complete{--action-color:#247344;--action-hover:#e4f3e8;--action-active:#419660}
.workflow-buttons .workflow-action:hover,.workflow-buttons .workflow-action:focus-visible{
  background:var(--action-hover);border-color:var(--action-color);color:var(--action-color);outline:none;
}
.workflow-buttons .workflow-action:active,
.workflow-buttons .workflow-action.is-pressed{
  background:var(--action-active);border-color:var(--action-active);color:#fff;transform:translateY(1px);
}
.workflow-buttons .workflow-action:disabled{opacity:.58;transform:none}
/* Equal optical boxes for the four top-navigation items. */
.header-nav-symbol{flex:0 0 30px}
.header-nav-symbol .app-icon{display:block;margin:auto}
.header-nav-label{min-height:11px;display:flex;align-items:center;justify-content:center}

/* Unified 0.77 maintenance overrides — single coherent deployment snapshot. */
:root{
  --navy:#721126;
  --navy2:#8f1027;
  --blue:#a50f32;
  --blue-soft:#f6e7eb;
  --danger:#b42318;
  --shadow:0 10px 30px rgba(75,20,35,.08);
}
.button.primary{background:#a50f32;color:#fff}
.button.primary:hover{background:#8f1027}
.text-button{color:#8f1027}
.error-panel h1{color:#721126}
.eyebrow{color:#5f2936}
.login-intro .eyebrow{color:#fff}
.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid rgba(165,15,50,.17);border-color:#a50f32}
.metric-card strong{color:#721126}
.stat-bar-track i{background:linear-gradient(90deg,#8f1027,#c05269)}
.pill{border-color:#b99aa3;color:#652334}
.pill.active{background:#f5e7eb;border-color:#a50f32;color:#721126}
.quick-tabs select{border-color:#b99aa3}
.filter-chip{background:#f2e5e9;color:#652334}
.clickable-row:hover{background:#fbf4f6}
.section-nav-item.active{background:#8f1027;color:#fff}
.section-nav-item.active i{background:#fff}
.timeline-card blockquote{background:#fbf4f6}
.admin-tab.active{border-color:#8f1027;color:#721126}

/* Report form additions. */
#section-case-narrative textarea[name="caseNarrative"]{min-height:180px;resize:vertical;line-height:1.5}
.assessment-tab{padding:20px}
.assessment-stack{display:grid;gap:18px}
.assessment-subpanel{border:1px solid var(--line);border-radius:9px;padding:18px;background:#fff}
.assessment-subpanel .panel-heading{margin-bottom:14px}
.assessment-subpanel .panel-heading h3{margin:0 0 4px;font-size:17px}
.assessment-subpanel .panel-heading p{margin:0;color:var(--muted);font-size:13px}
.assessment-subpanel+.assessment-subpanel{margin-top:0}
.conditional-other-field{max-width:620px;margin-top:15px}
.distinct-question-groups{margin-top:16px}
.choice-question{min-width:0}

/* Keep all compact report actions visually aligned. */
.workflow-buttons{align-items:center}
.workflow-buttons .icon-only-action,.workflow-buttons .workflow-action{flex:0 0 2.5rem}
.header-nav-symbol{display:grid;place-items:center}
.header-nav-icon[data-route="reports"] .app-icon{transform:translateX(.25px)}
.header-nav-icon[data-route="admin"] .app-icon{transform:translateY(-.35px)}
.account-nav-item .app-icon{transform:translateY(.2px)}

/* Mobile section control must never consume a desktop row. */
@media(min-width:1001px){
  #sections-toggle.mobile-only{display:none!important}
}
@media(max-width:1000px){
  #sections-toggle.mobile-only{display:inline-flex}
  .assessment-tab{padding:15px}
}

/* v0.78 workflow simplification, delegation, assessments, notifications and paper forms */
.workflow-draft{
  background:#eceff2!important;color:#4b5563!important;border-color:#d5dae0!important;
}
.workflow-under_review{
  background:#e7f0f8!important;color:#24577a!important;border-color:#bcd3e5!important;
}
.workflow-inquiry{
  background:#fff1d6!important;color:#8a5a00!important;border-color:#e4c776!important;
}
.workflow-completed{
  background:#e4f3e8!important;color:#2f6b3d!important;border-color:#a9d0b2!important;
}
.workflow-closed_incomplete{
  background:#fbe7e9!important;color:#8f1d2c!important;border-color:#e4b5bd!important;
}
.workflow-deleted{
  background:#721126!important;color:#fff!important;border-color:#5b0c1e!important;
}

/* A dense table with deliberate space reserved for patient names. */
.report-preview-table{table-layout:fixed;min-width:1260px}
.report-preview-table th,.report-preview-table td{vertical-align:middle!important;padding:8px 8px}
.report-preview-table .select-column{width:38px;text-align:center}
.report-preview-table .report-id-column{width:154px}
.report-preview-table .patient-column{width:clamp(180px,18vw,250px);font-size:12.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.report-preview-table .organization-column{width:188px}
.report-preview-table .workflow-column{width:126px}
.report-preview-table .delegated-column{width:174px;line-height:1.25}
.report-preview-table .event-column{width:138px}
.report-preview-table .actions-column{width:168px}
.report-preview-table .change-column{width:128px;white-space:nowrap}
.report-preview-table .report-id-cell strong{font-size:11.5px;white-space:nowrap}
.report-preview-table .organization-facility,.report-preview-table .organization-regional,
.report-preview-table .delegated-column span{display:block;overflow:hidden;text-overflow:ellipsis}
.report-preview-table .organization-facility,.report-preview-table .delegated-column span{white-space:normal;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.report-preview-table .organization-regional{white-space:nowrap}

/* Paper form popover. */
.paper-form-menu{position:relative;display:inline-flex}
.paper-form-popover{
  position:absolute;right:0;top:calc(100% + 8px);z-index:70;width:min(390px,calc(100vw - 28px));
  background:#fff;border:1px solid #d8dee7;border-radius:10px;padding:7px;
  box-shadow:0 16px 42px rgba(30,20,25,.2);
}
.paper-form-popover a{display:grid;grid-template-columns:28px minmax(0,1fr) 22px;align-items:center;gap:10px;padding:11px;border-radius:7px;color:var(--ink)}
.paper-form-popover a:hover,.paper-form-popover a:focus-visible{background:#fff6e2;outline:none}
.paper-form-popover a+a{border-top:1px solid #edf0f4}
.paper-form-popover strong,.paper-form-popover small{display:block}
.paper-form-popover small{color:var(--muted);font-size:11px;margin-top:3px}
.paper-form-popover .popover-file-icon{color:#8a5a00;display:grid;place-items:center}
.paper-form-popover .popover-download{color:#721126;display:grid;place-items:center}
.paper-form-popover .app-icon{width:18px;height:18px}

/* Compact two-line report identity. */
.report-header-bar{padding:10px 22px;min-height:70px;align-items:center}
.report-header-left{display:flex;align-items:center;gap:16px;min-width:0}
.report-header-identity{display:grid;gap:5px;min-width:0}
.report-header-primary,.report-header-secondary{display:flex;align-items:center;gap:12px;min-width:0}
.report-header-id{font-size:18px;color:#10243b;white-space:nowrap}
.report-header-secondary{color:#4c5d72;font-size:13px}
.report-header-secondary>span{font-weight:650;max-width:520px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.report-header-secondary small{color:#718096;white-space:nowrap}

/* Assessment hierarchy and the structured Hospital/Center causality control. */
.assessment-subpanel textarea{min-height:145px;resize:vertical;line-height:1.5}
.assessment-subpanel fieldset:disabled textarea{background:#f6f7f9;color:#3f4b5b;opacity:1}
.causality-assessment{border:1px solid #efb4bc!important;border-radius:0!important;margin-top:17px!important;padding:0 0 1px!important;overflow:hidden;background:#fff5f6}
.causality-assessment legend{display:block;width:100%;background:linear-gradient(90deg,#c90000 0,#d73b3b 38%,#fff 100%);color:#fff;font-weight:800;padding:5px 12px;font-size:15px}
.causality-options{display:grid;grid-template-columns:repeat(5,minmax(105px,1fr));align-items:center}
.causality-option{display:flex;align-items:center;justify-content:center;gap:10px;padding:7px 8px;font-weight:650;color:#3d3d3d;white-space:nowrap}
.causality-option input[type="radio"]{appearance:none;-webkit-appearance:none;width:13px;height:13px;border:2px solid #444;border-radius:0;background:#fff;display:grid;place-items:center;margin:0}
.causality-option input[type="radio"]:checked{border-color:#8f1027;background:#8f1027;box-shadow:inset 0 0 0 2px #fff}
.causality-option input[type="radio"]:disabled{opacity:1;border-color:#721126}
.causality-option input[type="radio"]:disabled:checked{background:#721126}

/* Report-specific workflow notifications. */
.one-time-notification{margin:14px 22px 0;padding:13px 16px;border:1px solid;border-radius:9px;display:flex;justify-content:space-between;align-items:flex-start;gap:16px}
.notification-main{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;min-width:0}
.notification-main strong{font-size:14px}.notification-main span{font-size:13px}.notification-main p{flex-basis:100%;margin:2px 0 0;white-space:pre-wrap}
.notification-dismiss{border:0;background:transparent;font-size:22px;line-height:1;color:inherit;padding:0 2px}
.notification-complete{background:#e8f6ed;border-color:#b9ddc6;color:#155d37}
.notification-incomplete{background:#fcecea;border-color:#e6b7b2;color:#7d2119}
.notification-inquiry{background:#fff6d8;border-color:#e8d28a;color:#6b5200}
.notification-deleted{background:#721126;border-color:#5b0c1e;color:#fff}
.notification-information{background:#eaf3fa;border-color:#bfd6e7;color:#24577a}
.notification-dialog{width:min(720px,calc(100vw - 32px));max-height:88vh;overflow:auto}
.notification-history{display:grid;gap:10px;margin-top:16px}
.notification-history-item{border:1px solid #dfe4ea;border-left-width:5px;border-radius:8px;padding:12px 14px;background:#fff}
.notification-history-item.notification-complete{border-left-color:#3f8b5c}
.notification-history-item.notification-incomplete{border-left-color:#b42318}
.notification-history-item.notification-inquiry{border-left-color:#d5a100}
.notification-history-item.notification-deleted{border-left-color:#721126}
.notification-history-item.notification-information{border-left-color:#4f8db8}
.notification-history-heading{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}
.notification-history-heading time,.notification-author{font-size:12px;color:#6d7787}
.notification-author,.notification-reason{margin:5px 0}.notification-history-item blockquote{margin:9px 0 0;padding:9px 12px;background:#f7f8fa;border-left:3px solid #aeb8c5;white-space:pre-wrap}

/* New controlled workflow actions. */
.workflow-buttons .workflow-action-reopen{--action-color:#376b8a;--action-hover:#e7f0f8;--action-active:#5689a7}
.workflow-buttons .workflow-action-delete{--action-color:#721126;--action-hover:#f3e2e7;--action-active:#721126}

@media(max-width:1000px){
  .report-header-bar{align-items:flex-start;flex-direction:column}
  .report-header-left{width:100%;align-items:flex-start;flex-wrap:wrap}
  .report-header-primary,.report-header-secondary{flex-wrap:wrap}
  .report-header-secondary>span{max-width:70vw}
  .workflow-buttons{width:100%;justify-content:flex-start}
  .causality-options{grid-template-columns:repeat(3,minmax(105px,1fr))}
}
@media(max-width:650px){
  .report-header-left{gap:8px}.compact-back-link{width:auto!important}
  .report-header-id{font-size:16px}.report-header-secondary{align-items:flex-start;flex-direction:column;gap:3px}
  .one-time-notification{margin:10px 10px 0}.notification-main{display:grid;gap:4px}
  .causality-options{grid-template-columns:1fr}.causality-option{justify-content:flex-start;padding-left:18px}
  .paper-form-popover{position:fixed;top:126px;right:10px;left:10px;width:auto}
}

/* v0.79 clinical overview and form-polish release */
textarea{resize:vertical;max-width:100%}
.vertical-resize-textarea{resize:vertical!important;width:100%!important;max-width:100%!important}
.system-readonly-field>span{display:flex;align-items:center;justify-content:space-between;gap:10px}
.system-readonly-field>span small{font-weight:500;color:#8a94a3}
.field input[readonly]{background:#f1f3f5!important;border-color:#d5d9df!important;color:#5c6673!important;cursor:default;box-shadow:none!important;outline:none!important}
.system-readonly-field input[readonly]{font-weight:650;user-select:text}

.gender-pregnancy-field{gap:9px}
.gender-pregnancy-field>.radio-row{margin-top:1px}
.pregnancy-subfield{display:grid;gap:8px;margin-top:14px;padding-top:13px;border-top:1px solid #e3e7ec}
.pregnancy-subfield>span{font-size:13px;font-weight:650;color:#46556b}
.patient-blood-groups{margin-top:18px}
.patient-demographics-grid>.field-full{margin-bottom:0}
.component-section-block{margin-top:18px}
.component-section-block>span{margin-bottom:2px}
.component-choice-group{margin-top:8px;margin-bottom:0}
.medical-other-block{margin-top:17px}
.surgical-history-block{margin-top:18px}
.surgical-history-block>.field{width:100%}
.distinct-question-groups{margin-top:20px}
.choice-question{padding:16px!important}
.choice-question legend{margin-bottom:7px}
.choice-question .radio-row{margin-top:7px}
.symptom-choice-block{margin-bottom:18px}
.other-detail-block{margin-top:4px}
.other-detail-block>.field>span{margin-bottom:1px}
.other-detail-block+.safety-note{margin-top:15px}
.report-editing-presence-banner{display:flex;align-items:center;gap:6px 10px;flex-wrap:wrap;margin:8px 22px 0;padding:7px 11px;border:1px solid #e6d596;border-left:3px solid #b88700;border-radius:6px;background:#fffaf0;color:#675100;font-size:12px}.report-editing-presence-banner strong{font-size:12px}.report-editing-presence-banner span{font-weight:700}.report-editing-presence-banner small{color:#786321}
.action-choice-block{margin-bottom:18px}
.conditional-other-field{margin-top:16px}
.classification-field>span{margin-bottom:8px}
.classification-field .radio-row{gap:14px 28px}
.classification-field .check-item{column-gap:11px}

.vitals-table th{vertical-align:middle}
.vitals-table th small{display:block;margin-top:4px;color:#788393;font-weight:500;font-size:11px}
.vitals-table td{min-width:240px}
.vitals-table input{border:1px solid #cbd6e2!important;border-radius:7px!important;background:#fff!important;padding:9px 10px!important;min-width:0}
.vitals-table input:focus{outline:2px solid rgba(165,15,50,.17)!important;border-color:#a50f32!important}
.vital-input-wrap{display:grid;grid-template-columns:minmax(95px,1fr) auto;align-items:center;gap:9px}
.vital-unit{font-size:12px;color:#647184;white-space:nowrap}
.blood-pressure-inputs{display:grid;grid-template-columns:minmax(82px,1fr) auto minmax(82px,1fr) auto;align-items:center;gap:7px}
.bp-separator{font-weight:800;color:#6d7684}

.assessment-tab{padding:20px;background:#fff;border:1px solid var(--line);border-radius:7px;box-shadow:none}
.assessment-tab>.section-heading{margin:-20px -20px 20px}
.assessment-causality-field{border:1px solid var(--line)!important;border-radius:9px!important;padding:14px 16px 16px!important;background:#fafcff;margin:0 0 18px!important}
.assessment-causality-field legend{padding:0 6px;font-size:13px;font-weight:700;color:#46556b}
.assessment-causality-options{display:grid;grid-template-columns:repeat(5,minmax(105px,1fr));gap:12px 20px;margin-top:7px}
.assessment-causality-options .check-item{align-items:center;column-gap:11px}
.assessment-free-text{margin-top:0}
.assessment-subpanel textarea{width:100%;max-width:100%;resize:vertical}

.quick-filter{display:inline-flex;align-items:center;gap:8px}
.pill-count{display:inline-grid;place-items:center;min-width:24px;height:20px;padding:0 6px;border-radius:999px;background:#f3e6ea;color:#721126;font-size:11px;line-height:1}
.quick-filter.active .pill-count{background:#721126;color:#fff}

/* Login brand lockup and footer beneath the sign-in card. */
.login-layout.simplified-login{min-height:100vh}
.login-brand-lockup{display:inline-grid;justify-items:center;align-self:flex-start;gap:8px;width:max-content;max-width:100%}
.login-brand-lockup .login-logo{display:block;margin:0 auto;width:112px}
.login-brand-lockup .eyebrow{margin:0;text-align:center;white-space:nowrap}
.login-intro h1{margin-top:42px}
.login-panel{align-self:center;justify-self:center;width:min(510px,90%);display:grid;justify-items:stretch;gap:14px}
.login-panel .login-card{width:100%;margin:0;align-self:auto;justify-self:auto}
.login-panel .login-footer{padding:0 10px;color:#7c899d;display:grid;gap:3px;line-height:1.35}
.login-panel .login-footer strong,.login-panel .login-footer span{display:block}

/* VigiLyze-inspired clinical overview, adapted to the IPhVC design language. */
.overview-page-header{padding-bottom:14px}
.overview-filter-panel{margin:8px 28px 18px;padding:18px;background:#fff;border:1px solid #dde2e8;border-radius:10px;box-shadow:0 5px 18px rgba(75,20,35,.05)}
.overview-filter-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:15px}
.overview-filter-heading h2{margin:0 0 3px;font-size:18px}
.overview-filter-heading p{margin:0;color:var(--muted);font-size:13px}
.overview-filter-grid{display:grid;grid-template-columns:repeat(6,minmax(150px,1fr));gap:12px}
.overview-filter-grid .field>span{font-size:12px}
.overview-filter-grid .field input,.overview-filter-grid .field select{padding:8px 9px;font-size:13px}
.overview-filter-chips{margin-top:14px}
.overview-clinical-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;margin:0 28px 28px}
.overview-clinical-card{grid-column:span 2;background:#fff;border:1px solid #dfe3e8;border-radius:9px;box-shadow:0 4px 16px rgba(44,33,38,.07);padding:15px;min-width:0}
.overview-clinical-card.overview-card-wide{grid-column:span 3}
.overview-clinical-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}
.overview-clinical-card h2{margin:0;font-size:15px;color:#3d4a5c}
.overview-clinical-card header p{margin:4px 0 0;color:#7b8492;font-size:11.5px}
.overview-card-toggle{display:flex;align-items:center;border:1px solid #dfe3e8;border-radius:5px;overflow:hidden;flex:0 0 auto}
.overview-card-toggle button{width:30px;height:27px;border:0;background:#fff;color:#7a8492;font-size:14px}
.overview-card-toggle button+button{border-left:1px solid #dfe3e8}
.overview-card-toggle button.active{background:#f4e8eb;color:#721126}
.overview-horizontal-chart{display:grid;gap:9px}
.overview-bar-row{display:grid;grid-template-columns:minmax(120px,1.35fr) minmax(100px,2fr) 48px 38px;gap:8px;align-items:center;width:100%;border:0;background:transparent;padding:0;text-align:left;color:#4d596a}
.overview-bar-row:hover{color:#721126}
.overview-bar-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11.5px}
.overview-bar-track{height:8px;background:#f0e7ea;border-radius:999px;overflow:hidden}
.overview-bar-track i{display:block;height:100%;background:#721126;border-radius:999px}
.overview-bar-row strong{font-size:11px;text-align:right;color:#721126}
.overview-bar-row small{font-size:10.5px;color:#7f8794;text-align:right}
.overview-show-more{border:0;background:transparent;color:#721126;font-size:11px;font-weight:700;padding:5px 0 0;text-align:left}
.overview-more-rows{display:grid;gap:9px}
.overview-donut-layout{display:grid;grid-template-columns:150px minmax(0,1fr);gap:18px;align-items:center;min-height:220px}
.overview-donut{width:145px;aspect-ratio:1;border-radius:50%;display:grid;place-items:center;position:relative}
.overview-donut:after{content:"";position:absolute;inset:30px;background:#fff;border-radius:50%}
.overview-donut>span{position:relative;z-index:1;display:grid;text-align:center}
.overview-donut>span strong{font-size:22px;color:#721126}
.overview-donut>span small{font-size:10px;color:#7c8592}
.overview-donut-legend{display:grid;gap:8px}
.overview-donut-legend button{display:grid;grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:8px;border:0;background:transparent;padding:1px;text-align:left;color:#4e5968;font-size:11.5px}
.overview-donut-legend button:hover{color:#721126}
.overview-donut-legend i{width:9px;height:9px;border-radius:2px}
.overview-donut-legend strong{font-size:11px;color:#721126}
.overview-data-table{width:100%;border-collapse:collapse;font-size:12px}
.overview-data-table th,.overview-data-table td{padding:8px;border-bottom:1px solid #e8ebef;text-align:left}
.overview-data-table th{font-size:10px;text-transform:uppercase;color:#697485;background:#f8f9fb}
.overview-history-groups{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.overview-history-groups>section{min-width:0}
.overview-history-groups h3,.overview-table-subheading{font-size:12px;margin:0 0 8px;color:#4e5968}
.overview-history-groups .overview-donut-layout{grid-template-columns:95px minmax(0,1fr);gap:10px;min-height:150px}
.overview-history-groups .overview-donut{width:92px}
.overview-history-groups .overview-donut:after{inset:20px}
.overview-history-groups .overview-donut>span strong{font-size:16px}
.overview-history-groups .overview-donut-legend{gap:5px}
.overview-table-subheading:not(:first-child){margin-top:16px}

@media(max-width:1250px){
  .overview-filter-grid{grid-template-columns:repeat(4,minmax(150px,1fr))}
  .overview-clinical-card{grid-column:span 3}
  .overview-clinical-card.overview-card-wide{grid-column:span 3}
  .overview-history-groups{grid-template-columns:1fr}
}
@media(max-width:850px){
  .assessment-causality-options{grid-template-columns:repeat(2,minmax(120px,1fr))}
  .overview-filter-panel{margin:8px 14px 14px}
  .overview-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .overview-clinical-grid{grid-template-columns:1fr;margin:0 14px 20px}
  .overview-clinical-card,.overview-clinical-card.overview-card-wide{grid-column:1}
  .overview-donut-layout{grid-template-columns:125px minmax(0,1fr)}
  .overview-donut{width:120px}
  .vitals-table td{min-width:200px}
}
@media(max-width:720px){
  .login-layout.simplified-login{display:block;background:linear-gradient(145deg,#721126 0 34%,#f3edef 34%)}
  .login-intro{padding:34px 24px 72px;min-height:auto}
  .login-brand-lockup{margin:0 auto}
  .login-brand-lockup .eyebrow{white-space:normal}
  .login-intro h1{font-size:36px;margin:28px auto 0;text-align:center}
  .login-panel{width:min(92%,480px);margin:-44px auto 28px}
  .login-panel .login-card{padding:28px}
  .patient-blood-groups{grid-template-columns:1fr}
  .assessment-causality-options{grid-template-columns:1fr}
  .overview-filter-grid{grid-template-columns:1fr}
  .overview-filter-heading{align-items:stretch;flex-direction:column}
  .overview-filter-heading .button{align-self:flex-start}
  .overview-donut-layout{grid-template-columns:1fr;justify-items:center}
  .overview-donut-legend{width:100%}
  .overview-bar-row{grid-template-columns:minmax(105px,1.3fr) minmax(80px,1.7fr) 42px 34px}
}

input::placeholder,
textarea::placeholder {
  color: #b4bbc5;
  opacity: .72;
}

select:has(option[value=""]:checked) {
  color: #b4bbc5;
}

select option {
  color: var(--ink);
}


/* v0.80 narrative split, dashboard accuracy, and unified icon family */
.narrative-fields-grid{display:grid;gap:20px}
.narrative-fields-grid .field>span{font-size:14px;font-weight:750;color:#34445a;margin-bottom:7px}
.narrative-fields-grid textarea{min-height:150px}
.narrative-fields-grid textarea[name="caseNarrative"]{min-height:210px}
.overview-card-toggle button{display:grid;place-items:center;line-height:0;cursor:pointer}
.overview-card-toggle .app-icon{width:15px;height:15px;flex-basis:15px}
.overview-donut-legend strong{display:inline-flex;align-items:center;justify-content:flex-end;gap:4px;white-space:nowrap}
.overview-donut-legend strong b{font:inherit;font-weight:750}
.overview-donut-legend strong em{font-style:normal;color:#9aa1aa}
.icon-only-action .app-icon,.workflow-buttons .workflow-action .app-icon{shape-rendering:geometricPrecision}


/* v0.81 automatic review, unified save state, report-header alignment, and history-chart spacing */
.report-header-identity{min-width:0}
.report-header-primary{display:flex;align-items:flex-start;gap:12px;min-width:0;flex-wrap:wrap}
.report-header-id-block{display:inline-grid;justify-items:center;align-items:start;gap:3px;line-height:1.15}
.report-header-id-block .report-header-id{white-space:nowrap}
.report-header-facility{max-width:100%;font-size:12px;font-weight:650;color:#66758a;text-align:center;line-height:1.25}
.report-last-update{align-self:center;color:#718096;font-size:12px;white-space:nowrap}
#save-report-top:disabled{opacity:.48;cursor:not-allowed;background:#f1f3f6;color:#8b94a1;border-color:#d7dde5}

.overview-history-groups .overview-donut-layout{grid-template-columns:100px minmax(145px,1fr);gap:14px;min-height:158px}
.overview-history-groups .overview-donut{width:96px}
.overview-history-groups .overview-donut-legend button{grid-template-columns:10px minmax(68px,1fr) 78px;gap:7px;min-width:0}
.overview-history-groups .overview-donut-legend button>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.overview-history-groups .overview-donut-legend strong{min-width:78px;text-align:right}

@media(max-width:1450px){
  .overview-history-groups{grid-template-columns:1fr}
  .overview-history-groups .overview-donut-layout{grid-template-columns:110px minmax(180px,1fr)}
}
@media(max-width:850px){
  .report-header-primary{gap:8px 10px}
  .report-last-update{white-space:normal;flex-basis:100%}
}

/* v0.82 report-header optical alignment */
.report-header-primary > .workflow-pill{align-self:flex-start;margin-top:2px}
.report-header-primary > .report-last-update{align-self:flex-start;margin-top:6px;line-height:1.2}

/* v0.84 canonical workflow colours */
.workflow-draft{background:#eceff3!important;color:#4c5867!important;border-color:#d4dae1!important}
.workflow-review{background:#dcecf7!important;color:#155c86!important;border-color:#bdd8ea!important}
.workflow-inquiry{background:#fff0cf!important;color:#795a00!important;border-color:#ead18b!important}
.workflow-completed{background:#e3f4e9!important;color:#17603b!important;border-color:#bfdec7!important}
.workflow-closed{background:#f8e7e4!important;color:#8a281f!important;border-color:#e8c1bc!important}
.workflow-deleted{background:#6f1d1b!important;color:#fff!important;border-color:#511311!important}
.overview-breakdown{display:grid;gap:12px}
.overview-breakdown-row{display:grid;grid-template-columns:minmax(120px,1fr) minmax(160px,2fr) 56px;align-items:center;gap:12px}
.overview-breakdown-row .bar{height:9px;background:#e8eef4;border-radius:999px;overflow:hidden}
.overview-breakdown-row .bar i{display:block;height:100%;background:linear-gradient(90deg,#0a6a9b,#38a6d5);border-radius:999px}
@media(max-width:720px){.overview-breakdown-row{grid-template-columns:minmax(90px,1fr) minmax(100px,1.5fr) 44px}}
/* v0.84 dashboard containment: prevents labels and values from overlapping */
.overview-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));align-items:start}
.overview-breakdown-card{min-width:0;overflow:hidden}
.overview-breakdown-list{display:grid;gap:8px;min-width:0}
.overview-breakdown-list>div{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:9px 0;border-bottom:1px solid var(--line);min-width:0}
.overview-breakdown-list>div:last-child{border-bottom:0}
.overview-breakdown-list span{min-width:0;overflow-wrap:anywhere}
.overview-breakdown-list strong{white-space:nowrap}

.organization-name-with-status{display:inline-flex;align-items:center;gap:9px;min-width:0}.organization-status-dot{display:inline-block;flex:0 0 auto;width:9px;height:9px;border-radius:50%;vertical-align:middle;margin-right:6px;box-shadow:0 0 0 2px rgba(0,0,0,.04)}.organization-name-with-status .organization-status-dot{margin-right:0}.organization-status-dot.is-active{background:#22a06b}.organization-status-dot.is-inactive{background:#a8b0ba}.organization-note{display:block;margin:4px 0 0 18px;color:var(--muted)}

/* v0.86.2 Report Registry restoration: compact pills, advanced filter panel and paper-form action. */
.registry-page-header{padding-bottom:14px}
.registry-toolbar{
  position:static;
  top:auto;
  margin:0 28px;
  padding:11px 14px;
  border:1px solid var(--line);
  border-radius:10px;
  box-shadow:0 4px 16px rgba(44,33,38,.05);
  gap:14px;
  flex-wrap:wrap;
}
.registry-quick-tabs,.registry-actions{flex-wrap:wrap}
.registry-quick-tabs .pill,.registry-quick-tabs select{
  min-height:34px;
  padding:5px 10px;
  font-size:.82rem;
  border-radius:999px;
  white-space:nowrap;
}
.registry-quick-tabs .pill{display:inline-flex;align-items:center;gap:7px}
.registry-quick-tabs .pill-count{min-width:22px;height:19px;padding:0 6px}
.registry-actions .button{min-height:34px}
.registry-list-heading{padding:14px 28px 8px;gap:14px}
.registry-list-heading .list-summary{align-items:center}
.registry-list-heading .list-summary h1{font-size:21px;white-space:nowrap}
.registry-filter-actions{flex-wrap:wrap;justify-content:flex-end}
.registry-id-search{
  display:grid;
  grid-template-columns:minmax(150px,230px) 36px;
  align-items:stretch;
  border:1px solid #cbd6e2;
  border-radius:8px;
  overflow:hidden;
  background:#fff;
}
.registry-id-search input{
  width:100%;
  min-width:0;
  border:0;
  padding:7px 10px;
  color:var(--ink);
  background:#fff;
}
.registry-id-search input:focus{outline:none}
.registry-id-search:focus-within{outline:2px solid rgba(165,15,50,.16);border-color:#a50f32}
.registry-id-search .button{
  width:36px;
  min-height:34px;
  border:0;
  border-left:1px solid #d6dce4;
  border-radius:0;
  padding:0;
}
.registry-filter-panel{margin-top:10px}
.registry-filter-grid{grid-template-columns:repeat(6,minmax(145px,1fr));align-items:end}
.registry-filter-grid .field>span{font-size:12px}
.registry-filter-grid .field input,.registry-filter-grid .field select{padding:8px 9px;font-size:13px}
.registry-report-panel{margin-top:10px}
.registry-report-panel .report-preview-table{min-width:1120px}
.registry-report-panel .report-preview-table .report-id-column{width:164px}
.registry-report-panel .report-preview-table .workflow-column{width:112px}
.registry-report-panel .report-preview-table .patient-column{width:210px}
.registry-report-panel .report-preview-table .organization-column{width:205px}
.registry-report-panel .report-preview-table .event-column{width:170px}
.registry-report-panel .report-preview-table .delegated-column{width:175px}
.registry-report-panel .report-preview-table .change-column{width:125px}
.registry-report-panel .report-preview-table .updated-on-cell{font-size:11.4px;line-height:1.25;white-space:nowrap}
.registry-report-panel .report-preview-table .updated-on-date,.registry-report-panel .report-preview-table .updated-on-time{display:block}
.registry-report-panel .delegated-column{line-height:1.3}
.registry-report-panel .needs-action{box-shadow:inset 4px 0 0 #d7a316}

@media(max-width:1100px){
  .registry-filter-grid{grid-template-columns:repeat(3,minmax(150px,1fr))}
  .registry-toolbar{align-items:flex-start}
}
@media(max-width:800px){
  .registry-toolbar{margin:0 12px;padding:10px;overflow:visible}
  .registry-quick-tabs,.registry-actions{width:100%;overflow-x:auto;flex-wrap:nowrap;padding-bottom:2px}
  .registry-list-heading{padding:12px 14px 8px;align-items:stretch;flex-direction:column}
  .registry-filter-actions{justify-content:flex-start}
  .registry-id-search{grid-template-columns:minmax(130px,1fr) 36px;flex:1 1 220px}
  .registry-filter-panel{margin:8px 12px 12px}
  .registry-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .paper-form-popover{position:fixed;top:116px;right:10px;left:10px;width:auto}
}
@media(max-width:520px){
  .registry-filter-grid{grid-template-columns:1fr}
  .registry-filter-actions{display:grid;grid-template-columns:1fr auto;align-items:center}
  .registry-filter-actions .registry-id-search{grid-column:1/-1;width:100%}
}

/* v0.87.0 application-only registry and Assessment corrections */
.report-sidebar{
  max-height:calc(100vh - 164px);
  overflow-y:auto;
}
#assessment-panel-container{min-width:0}
.registry-report-panel .report-preview-table{
  min-width:1320px;
  border-collapse:separate;
  border-spacing:0;
}
.registry-report-panel .report-preview-table th,
.registry-report-panel .report-preview-table td{
  border-bottom:0;
}
.registry-report-panel .report-preview-table tbody tr > td{
  border-bottom:1px solid #e3e9ef;
  vertical-align:middle!important;
}
.registry-report-panel .report-preview-table tbody tr:last-child > td{
  border-bottom:0;
}
.registry-report-panel .report-preview-table td.report-id-cell{
  display:table-cell;
}
.registry-report-panel .report-preview-table .report-id-cell strong{
  display:inline-block;
  border:0;
}
.registry-report-panel .report-preview-table .report-title-column{
  width:220px;
}
.registry-report-panel .report-preview-table .report-title-cell{
  width:220px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:12.5px;
}
.registry-report-panel .report-preview-table tbody tr{
  min-height:48px;
}


/* v0.87.1 Report Registry pagination alignment */
.registry-report-panel .pagination-bar{
  display:flex;
  justify-content:flex-end;
  align-items:center;
  gap:10px;
  min-height:58px;
  padding:10px 16px;
  border-top:1px solid #e3e9ef;
  background:#fff;
}
.registry-report-panel .pagination-bar #page-status{
  min-width:92px;
  text-align:center;
  white-space:nowrap;
  color:var(--muted);
  font-size:13px;
  font-weight:650;
}
.registry-report-panel .pagination-bar .button{
  min-width:78px;
  min-height:36px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}
.registry-report-panel .pagination-bar .button:disabled{
  background:#f7f9fc;
  border-color:#d7e0e9;
  color:#7f8996;
  opacity:1;
}
@media(max-width:520px){
  .registry-report-panel .pagination-bar{
    justify-content:flex-end;
    gap:8px;
    padding:10px 12px;
  }
  .registry-report-panel .pagination-bar .button{
    min-width:72px;
  }
}


/* v0.87.1 consolidated registry toolbar, grouped filters, and three-level causality assessments */
.registry-toolbar{
  width:100%;
  margin:0;
  padding:8px 28px;
  border-left:0;
  border-right:0;
  border-radius:0;
  box-shadow:0 3px 12px rgba(44,33,38,.05);
}
.registry-quick-tabs .pill,
.registry-quick-tabs select{
  min-height:30px;
  padding:3px 9px;
}
.registry-actions .button{
  min-height:30px;
  padding-top:5px;
  padding-bottom:5px;
}
.registry-filter-panel{padding:14px 16px}
.registry-filter-groups{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}
.registry-filter-group{
  min-width:0;
  margin:0;
  padding:10px 12px 12px;
  border:1px solid var(--line);
  border-radius:9px;
  background:#fafcff;
}
.registry-filter-group legend{
  padding:0 6px;
  color:#46556b;
  font-size:12px;
  font-weight:800;
}
.registry-filter-group-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.registry-filter-panel-actions{display:flex;justify-content:flex-end;margin-top:12px}
.assessment-subpanel .assessment-causality-field{margin-bottom:14px}
.assessment-subpanel .assessment-causality-options{justify-content:space-between;gap:12px 24px}
@media(max-width:1100px){
  .registry-filter-groups{grid-template-columns:1fr 1fr}
}
@media(max-width:800px){
  .registry-toolbar{margin:0;padding:8px 14px}
  .registry-filter-groups{grid-template-columns:1fr}
}
@media(max-width:520px){
  .registry-filter-group-grid{grid-template-columns:1fr}
}

/* ACP 1.1.1 workflow integration: reopening and append-only follow-up notes */
.report-type-field-wrap{min-width:0}
.report-type-field-wrap>.field{width:100%}
.report-type-lock-note{display:block;margin-top:5px;color:#7a2537;font-weight:650}
.follow-up-notes-tab>.field-help{margin:0 0 14px}
.follow-up-note-compose{padding:14px;border:1px solid var(--line);border-radius:9px;background:#fafcff;margin-bottom:16px}
.follow-up-note-actions{display:flex;justify-content:flex-end;margin-top:10px}
.follow-up-notes-list{display:grid;gap:10px}
.follow-up-note{border:1px solid var(--line);border-radius:9px;background:#fff;padding:13px 14px}
.follow-up-note-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}
.follow-up-note-heading time{color:var(--muted);font-size:12px;white-space:nowrap}
.follow-up-note-affiliation{margin:3px 0 10px;color:var(--muted);font-size:12px}
.follow-up-note-text{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.5}
.compact-empty-state{padding:20px}
#reopen-dialog .safety-note{margin-top:12px}
@media(max-width:620px){
  .follow-up-note-heading{align-items:flex-start;flex-direction:column;gap:3px}
}

/* v0.87.2 report-type linkage, follow-up markers, and reopen delegation */
.report-type-detail-field{align-self:start}
.prefixed-report-id-input{
  display:flex;
  align-items:stretch;
  width:100%;
  min-height:40px;
  border:1px solid var(--line);
  border-radius:7px;
  overflow:hidden;
  background:#fff;
}
.prefixed-report-id-input:focus-within{
  border-color:#4b83a7;
  box-shadow:0 0 0 3px rgba(41,107,148,.12);
}
.prefixed-report-id-input>span{
  display:inline-flex;
  align-items:center;
  padding:0 10px;
  background:#f1f5f8;
  border-right:1px solid var(--line);
  color:#42556b;
  font-weight:750;
  white-space:nowrap;
}
.prefixed-report-id-input>input{
  min-width:0;
  flex:1;
  border:0;
  border-radius:0;
  box-shadow:none!important;
  font-variant-numeric:tabular-nums;
  letter-spacing:.04em;
}
.report-id-with-type,.report-header-id-line{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:7px;
}
.follow-up-report-badge{
  display:inline-flex;
  align-items:center;
  gap:4px;
  min-height:24px;
  padding:2px 8px;
  border:1px solid #7da3bc;
  border-radius:999px;
  background:#edf6fb;
  color:#245d7d;
  font-size:11px;
  font-weight:800;
  line-height:1;
  white-space:nowrap;
}
.follow-up-report-badge>span[aria-hidden="true"]{
  font-size:15px;
  line-height:1;
}
.follow-up-report-badge.compact{
  min-height:20px;
  padding:1px 6px;
  font-size:10px;
}
@media(max-width:700px){
  .follow-up-report-badge.compact>span:last-child{display:none}
  .prefixed-report-id-input>span{padding:0 8px}
}

/* v0.87.3 guided reporting, nested sections, and submission-only required fields */
.report-subsection{
  margin:16px 0 0;
  padding:16px;
  border:1px solid var(--line);
  border-radius:10px;
  background:#fff;
}
.report-subsection:first-of-type{margin-top:10px}
.report-subsection>h3{
  margin:0 0 14px;
  color:#34465b;
  font-size:15px;
  font-weight:800;
}
.section-heading{
  display:flex;
  align-items:center;
  gap:10px;
}
.section-heading h2{margin-right:0}
.section-info-button{
  flex:0 0 auto;
  width:28px;
  height:28px;
  padding:0;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid #aebdcc;
  border-radius:50%;
  background:#f7fafc;
  color:#37566f;
  font:800 14px/1 Georgia,serif;
  cursor:pointer;
}
.section-info-button:hover,.section-info-button:focus-visible{
  border-color:#6f8fa7;
  background:#eef5f9;
  outline:none;
}
.section-guidance{
  margin:10px 0 14px;
  padding:12px 14px;
  border:1px solid #d5e2eb;
  border-radius:9px;
  background:#f7fbfd;
  color:#384b5d;
  line-height:1.5;
}
.section-guidance strong{display:block;margin-bottom:4px}
.section-guidance p{margin:0 0 4px}
.section-guidance small{color:var(--muted)}
.submission-required-note{
  margin:0 0 12px;
  color:#68798a;
  font-size:12px;
}
.submission-required-note span,.required-marker{
  color:#a92f46;
  font-weight:900;
}
.required-marker{margin-left:3px}
.submission-error{
  border-radius:8px;
  box-shadow:0 0 0 2px rgba(169,47,70,.16);
}
.field.submission-error>input,
.field.submission-error>select,
.field.submission-error>textarea,
.submission-error .prefixed-report-id-input{
  border-color:#a92f46;
}
.submission-validation-summary{margin:0 0 14px}
.follow-up-checkbox-control{
  align-self:end;
  min-height:40px;
  padding:8px 10px;
  border:1px solid var(--line);
  border-radius:8px;
  background:#fafcff;
}
.follow-up-lock-note{grid-column:1/-1;margin-top:-4px}
.same-sender-control{margin-bottom:12px}
.same-sender-active{opacity:.72}
.conditional-other-field{margin-top:10px}
.nested-treatment-block{display:grid;gap:10px}
.nested-treatment-block h4{margin:4px 0 0;color:#4a5a6d;font-size:13px}
.patient-blood-groups{margin-top:14px}
@media(max-width:700px){
  .report-subsection{padding:13px}
  .section-info-button{width:30px;height:30px}
}


/* v0.87.4 form placement and assessment reset refinements */
.section-info-button{margin-left:2px}
.transfusion-blood-groups{margin:16px 0}
.assessment-causality-field>legend{display:flex;align-items:center;gap:10px;max-width:100%;}
.assessment-causality-clear{border:0;background:transparent;color:#6d7887;padding:2px 5px;font-size:12px;font-weight:700;text-decoration:underline;text-underline-offset:2px;cursor:pointer}
.assessment-causality-clear:hover,.assessment-causality-clear:focus-visible{color:#7c1025;outline:none}
@media(max-width:720px){.transfusion-blood-groups{grid-template-columns:1fr}}

/* v0.87.5 workflow, report-details, status indicators and menu consistency */
.login-acp-version{font-size:11px;color:#929cac}

.field input:disabled,.field select:disabled,.field textarea:disabled{
  background:#f2f4f7;
  color:#788493;
  border-color:#d8dee6;
  opacity:1;
  cursor:not-allowed;
}
.system-readonly-field input:disabled{font-weight:650;-webkit-text-fill-color:#687586}

.report-details-core-grid{gap:16px 20px;align-items:start}
.report-details-conditional-grid{margin-top:14px;gap:14px 20px}
.follow-up-checkbox-field{min-width:0}
.follow-up-checkbox-field>.follow-up-checkbox-control{
  display:flex;
  align-items:center;
  gap:9px;
  width:100%;
  min-height:40px;
  padding:8px 10px;
  border:1px solid #cbd6e2;
  border-radius:7px;
  background:#fff;
  color:var(--ink);
  font-size:14px;
  font-weight:500;
}
.follow-up-checkbox-field>.follow-up-checkbox-control input{margin:0;flex:0 0 auto}
.follow-up-checkbox-field .follow-up-lock-note{margin-top:3px}

.registry-report-panel .needs-action{box-shadow:none}
.registry-status-cell{white-space:nowrap}
.registry-status-indicators{display:inline-flex;align-items:center;gap:6px;min-height:34px}
.registry-status-indicators>.workflow-pill{
  width:88px;
  min-width:88px;
  height:26px;
  margin:0;
  padding:0 8px;
  justify-content:center;
  align-items:center;
  text-align:center;
}
.registry-state-icons{display:flex;flex-direction:column;gap:2px;align-items:center;justify-content:center}
.registry-state-icon{
  width:16px;
  height:16px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#eef1f4;
  color:#9aa3ad;
  border:1px solid #dde2e8;
}
.registry-state-icon .app-icon{width:10px;height:10px;stroke-width:2}
.registry-follow-up-icon.is-active{background:#e4efff;color:#2563a8;border-color:#bcd2ef}
.registry-message-icon.has-unread-message{background:#f8e3e5;color:#b4232f;border-color:#e6b6bd;animation:message-color-breathe 2.2s ease-in-out infinite}

.report-status-stack{display:flex;flex-direction:column;align-items:center;gap:4px;align-self:flex-start}
.report-status-stack>.workflow-pill{
  width:92px;
  min-width:92px;
  height:27px;
  margin:2px 0 0;
  padding:0 8px;
  justify-content:center;
}
.report-follow-up-indicator{
  width:18px;
  height:18px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#e4efff;
  color:#2563a8;
  border:1px solid #bfd3ea;
}
.report-follow-up-indicator .app-icon{width:12px;height:12px;stroke-width:1.8}

.message-alert-button.has-unread-message{
  background:#f8e3e5!important;
  color:#b4232f!important;
  border-color:#e1aeb6!important;
  animation:message-color-breathe 2.2s ease-in-out infinite;
}
@keyframes message-color-breathe{
  0%,100%{background-color:#f5e8ea;color:#9c2833;border-color:#e1bdc2}
  50%{background-color:#f4cdd2;color:#cf2034;border-color:#d88692}
}
@media (prefers-reduced-motion:reduce){
  .registry-message-icon.has-unread-message,.message-alert-button.has-unread-message{animation:none}
}

.process-report-menu{position:relative;display:inline-flex;flex:0 0 auto}
.process-report-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;white-space:nowrap;min-height:34px}
.process-report-chevron{display:grid;place-items:center;line-height:0}
.process-report-chevron .app-icon{width:14px;height:14px}
.process-report-popover{
  position:absolute;
  top:calc(100% + 6px);
  right:0;
  z-index:95;
  min-width:230px;
  padding:6px;
  background:#fff;
  border:1px solid #d8dee7;
  border-radius:9px;
  box-shadow:0 14px 36px rgba(30,20,25,.18);
}
.process-report-option{
  width:100%;
  min-height:38px;
  display:flex;
  align-items:center;
  gap:9px;
  padding:8px 10px;
  border:0;
  border-radius:6px;
  background:#fff;
  color:var(--ink);
  text-align:left;
  font-weight:650;
}
.process-report-option:hover,.process-report-option:focus-visible{background:#f3f6f9;outline:none}
.process-report-option+.process-report-option{margin-top:2px}
.process-report-option-icon{width:20px;display:grid;place-items:center;color:#536779}
.process-report-option-icon .app-icon{width:18px;height:18px}

/* One spacing rhythm across workflow/action dialogs and menus. */
.workflow-dialog form{display:flex;flex-direction:column;gap:16px}
.workflow-dialog form>.dialog-heading,.workflow-dialog form>.field,.workflow-dialog form>.safety-note,.workflow-dialog form>.dialog-actions,.workflow-dialog form>p{margin:0}
.workflow-dialog .dialog-heading{gap:16px}
.workflow-dialog .field{gap:7px}
.workflow-dialog .dialog-actions{padding-top:2px;gap:9px}
/* Native <dialog> elements must remain out of document flow while closed.
   Only switch the Messages dialog to flex layout while it is actually open. */
.message-dialog{flex-direction:column;gap:16px}
.message-dialog[open]{display:flex}
.message-dialog:not([open]){display:none}
.message-dialog>.dialog-heading,.message-dialog>.muted-text{margin:0}
.message-compose{display:flex;flex-direction:column;gap:10px}
.paper-form-popover{padding:6px}
.paper-form-popover a{padding:10px;gap:10px}
.account-menu-popover{gap:14px;padding:16px}

@media(max-width:800px){
  .process-report-popover{position:fixed;top:auto;right:12px;bottom:72px;left:12px;width:auto;min-width:0}
  .report-status-stack{align-items:flex-start}
}


/* v0.87.6 registry density, active filters, account layout, form spacing and dashboard analytics */
.app-header.crimson-header{height:72px;min-height:72px}
.header-nav-icon{height:72px}
.header-icon-navigation{height:72px}
.header-account-inline{display:flex;align-items:center;gap:10px;align-self:stretch;padding:0 4px 0 10px;min-width:0;color:#fff}
.header-account-name{display:block;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:700;line-height:1.1}
.header-logout-button{border:1px solid rgba(255,255,255,.55);border-radius:6px;background:transparent;color:#fff;padding:5px 8px;font-size:11px;font-weight:700;white-space:nowrap}
.header-logout-button:hover,.header-logout-button:focus-visible{background:rgba(255,255,255,.12);outline:2px solid rgba(255,255,255,.34);outline-offset:1px}
.workflow-bar{top:72px}
.report-sidebar{top:140px;max-height:calc(100vh - 160px)}

.registry-toolbar{padding-top:7.6px;padding-bottom:7.6px;border-bottom:0;box-shadow:none}
.registry-list-heading{padding-top:7px;padding-bottom:6px;min-height:0;align-items:flex-start}
.registry-filter-summary{display:grid;gap:5px;min-width:0;width:100%}
.registry-filter-summary h1{margin:0;font-size:22.05px;line-height:1.15;display:flex;align-items:center;gap:.24em;min-height:25px}
.registry-active-filter-heading{display:flex;align-items:center;gap:8px;min-height:22px}
.registry-active-filter-heading>span{font-size:10px;font-weight:800;letter-spacing:.08em;color:#6b7280}
.registry-filter-command{padding:2px 4px;color:#721126;font-size:11px}
.registry-filter-command:disabled{color:#a9afb7;cursor:default;opacity:.72}
.registry-active-filter-controls{display:flex;align-items:center;gap:7px;flex-wrap:wrap;min-height:30px}
.registry-active-filter-controls .filter-chips{margin:0;gap:6px}
.registry-active-filter-chip{display:inline-flex;align-items:center;gap:6px;padding:5px 9px!important;background:#f3f4f6!important;color:#384150!important;border:1px solid #d9dde3!important}
.registry-active-filter-chip:hover{background:#eceff2!important;color:#721126!important}
.filter-chip-remove{font-size:15px;line-height:1;color:#737b86}
.registry-add-filter-wrap{position:relative;display:inline-flex}
.registry-add-filter{display:inline-flex;align-items:center;gap:6px;padding:5px 10px!important;border:1px solid #9b1932!important;background:#fff!important;color:#721126!important;font-weight:750}
.registry-add-filter .button-icon,.registry-add-filter .app-icon{width:14px;height:14px;color:#721126}
.registry-filter-popover{position:absolute;z-index:110;top:calc(100% + 7px);left:0;width:min(500px,calc(100vw - 56px));margin:0;padding:14px 16px;box-shadow:0 16px 38px rgba(31,24,28,.18);border:1px solid #d6dce3;background:#fff}
.registry-filter-popover .registry-filter-groups{grid-template-columns:1fr;gap:10px}
.registry-filter-popover .registry-filter-group{padding:9px 10px 11px}
.registry-filter-popover .registry-filter-group-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.registry-filter-popover .field-full{grid-column:1/-1}
.registry-filter-panel-actions{gap:8px}

.registry-report-panel .report-preview-table tbody tr{min-height:42px}
.registry-report-panel .report-preview-table tbody tr>td{padding-top:6px;padding-bottom:6px}
.registry-report-panel .report-preview-table .report-id-cell strong{font-size:12.1px}
.registry-report-panel .report-preview-table .workflow-column{width:132px;padding-right:20px}
.registry-report-panel .registry-status-cell{padding-right:20px}
.registry-status-indicators{gap:7px;min-height:28px}
.registry-state-icons{flex-direction:row;gap:5px}
.registry-state-icon{width:14px;height:14px;border:0;border-radius:0;background:transparent;color:#9aa3ad}
.registry-state-icon .app-icon{width:13px;height:13px;stroke-width:1.8}
.registry-follow-up-icon.is-active{background:transparent;color:#2563a8;border:0}
.registry-message-icon.has-unread-message{background:transparent;border:0;animation:message-color-breathe 2.2s ease-in-out infinite}
@keyframes message-color-breathe{0%,100%{color:#9c2833}50%{color:#cf2034}}

.report-header-id{font-size:18.9px}
.report-status-stack{gap:0}

.field[data-field-name="eventOutcomeContext"]{margin-top:11px;gap:7px}
.vitals-table{font-size:95%}
.vitals-table input,.vitals-table .vital-unit,.vitals-table .bp-separator{font-size:95%}
.vitals-table th small{font-size:10.45px}

.overview-date-filter{display:flex;align-items:end;gap:10px;flex-wrap:wrap;margin:6px 28px 14px;padding:12px 14px;background:#fff;border:1px solid #dde2e8;border-radius:9px}
.overview-date-filter .field{width:min(190px,100%)}
.overview-date-filter .field>span{font-size:12px}
.overview-date-filter input{padding:7px 9px;font-size:13px}
.overview-date-filter .button{min-height:34px;padding:7px 12px}
.overview-metrics-grid{grid-template-columns:repeat(5,minmax(0,1fr));margin-top:14px}
.overview-clinical-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.overview-clinical-card{grid-column:auto}
.overview-donut-legend-row{display:grid;grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:8px;color:#4e5968;font-size:11.5px}
.overview-donut-legend-row i{width:9px;height:9px;border-radius:2px}
.overview-donut-legend-row strong{display:inline-flex;align-items:center;gap:5px;white-space:nowrap;font-size:11px;color:#721126}
.overview-donut-legend-row strong b{font:inherit;font-weight:750}
.overview-donut-legend-row strong em{font-style:normal;color:#8c939d}

@media(max-width:1100px){
  .header-account-name{max-width:130px}
  .overview-metrics-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:800px){
  .app-header.crimson-header{height:61px;min-height:61px}
  .header-icon-navigation{height:61px}
  .header-nav-icon{height:61px}
  .workflow-bar{top:61px}
  .header-account-inline{gap:5px;padding-left:5px}
  .header-account-name{max-width:90px;font-size:9px}
  .header-logout-button{padding:4px 5px;font-size:9px}
  .registry-list-heading{padding-top:6px;padding-bottom:5px}
  .registry-filter-popover{position:fixed;top:74px;right:12px;left:12px;width:auto;max-height:calc(100vh - 90px);overflow:auto}
  .overview-date-filter{margin:6px 14px 12px}
  .overview-metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-left:14px;margin-right:14px}
  .overview-clinical-grid{grid-template-columns:1fr}
}
@media(max-width:520px){
  .header-account-name{display:none}
  .registry-filter-popover .registry-filter-group-grid{grid-template-columns:1fr}
  .overview-date-filter{display:grid;grid-template-columns:1fr 1fr}
  .overview-date-filter .field{width:100%}
  .overview-date-filter .button{grid-column:1/-1;justify-self:start}
  .overview-metrics-grid{grid-template-columns:1fr 1fr}
}


/* v0.87.7 compact registry polish and responsive continuous report layout */
.header-account-inline{
  flex-direction:column;
  justify-content:center;
  align-items:flex-end;
  gap:2px;
  line-height:1;
}
.header-account-name{max-width:190px;text-align:right}
.header-logout-button{padding:4px 7px;font-size:10px;line-height:1.05}

.registry-actions .button{
  min-height:27px;
  padding:4px 9px;
  font-size:11.7px;
  gap:5px;
}
.registry-actions .button .app-icon{width:15.3px;height:15.3px}

.registry-list-heading{padding-top:8px;padding-bottom:8px}
.registry-filter-summary{
  display:flex;
  align-items:stretch;
  gap:0;
  width:100%;
}
.registry-report-count-block{
  display:flex;
  align-items:center;
  flex:0 0 auto;
  padding:6px 22px 6px 0;
}
.registry-report-count-block h1{margin:0}
.registry-active-filter-block{
  min-width:0;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:7px;
  padding:5px 0 5px 22px;
  border-left:1px solid #d9dee5;
}
.registry-active-filter-heading{min-height:18px}
.registry-active-filter-controls{min-height:24px;gap:6px}
.registry-active-filter-controls .filter-chips{gap:5px}
.registry-active-filter-chip{
  min-height:22px;
  padding:3px 8px!important;
  font-size:11.5px;
  line-height:1.1;
  background:#f9e8ed!important;
  color:#711026!important;
  border:1px solid #e2b9c3!important;
}
.registry-active-filter-chip:hover{background:#f4dbe1!important;color:#621020!important}
.registry-active-filter-chip .filter-chip-remove{font-size:13px;color:#8b4554}
.registry-add-filter{
  min-height:22px;
  padding:3px 8px!important;
  font-size:11.5px;
  line-height:1.1;
  gap:0;
}
.registry-report-panel .report-preview-table tbody tr>td{padding-top:9px;padding-bottom:9px}
.registry-report-panel .table-wrap{-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}

.report-header-bar{
  min-height:63px;
  padding-top:8px;
  padding-bottom:8px;
}
.report-sidebar{top:135px;max-height:calc(100vh - 151px)}

@media(max-width:800px){
  .header-account-inline{gap:2px;padding-left:5px}
  .header-account-name{display:block;max-width:92px;font-size:9px}
  .header-logout-button{padding:3px 5px;font-size:8.5px}

  .registry-filter-summary{flex-direction:column;align-items:stretch}
  .registry-report-count-block{padding:5px 0 7px}
  .registry-active-filter-block{border-left:0;padding:7px 0 4px;gap:6px}

  .report-layout,.report-layout.desktop-report-view,.report-layout.mobile-reporting-form,.report-layout.desktop-new-report{
    display:block;
    padding:10px 12px 24px;
  }
  .report-sidebar{display:none!important}
  .report-main{width:100%;min-width:0}
  .report-tab-panel{display:block!important;margin:0 0 12px}
  .report-form{border-radius:7px}
  .report-form .report-tab-panel:last-child{margin-bottom:0}
  #assessment-panel-container .report-tab-panel{display:block!important}
  .report-header-bar{min-height:0;padding:7px 12px}
}

@media(max-width:520px){
  .header-account-name{display:block;max-width:72px;font-size:8.5px}
  .registry-active-filter-heading{flex-wrap:wrap}
  .registry-active-filter-controls{align-items:flex-start}
}

/* v0.87.8 session security, responsive layout correction, and report metadata polish */
.registry-state-icon{width:15.4px;height:15.4px}
.registry-state-icon .app-icon{width:14.3px;height:14.3px}

.component-section-card{
  margin-top:16px;
  border:1px solid var(--line);
  border-radius:9px;
  padding:14px;
  background:#fafcff;
}
.component-section-card h3{margin:0 0 12px;font-size:14px}
.component-section-card .conditional-other-field{margin-top:10px;max-width:620px}
.sender-information-grid{align-items:start}

.session-timeout-dialog{
  border:0;
  border-radius:12px;
  width:min(500px,calc(100vw - 32px));
  padding:22px;
  box-shadow:0 24px 70px rgba(0,0,0,.28);
  color:var(--ink);
}
.session-timeout-dialog::backdrop{background:rgba(8,30,52,.58)}
.session-timeout-dialog p:not(.eyebrow){color:#46556b;line-height:1.5}
.session-timeout-dialog #session-time-left{color:#721126}

/* Fluid desktop/compact-desktop form layout. The old <=1000px mobile shell is
   explicitly reset here so desktop browser windows do not inherit mobile nav/sidebar geometry. */
@media (min-width:721px) and (max-width:1000px){
  .app-header.crimson-header .header-icon-navigation{
    position:static;
    top:auto;right:auto;bottom:auto;left:auto;
    width:auto;
    height:72px;
    background:transparent;
    justify-content:flex-end;
    justify-self:end;
    z-index:auto;
  }
  .app-footer{padding-bottom:18px}
  .report-layout,.report-layout.desktop-report-view,.report-layout.desktop-new-report,.report-layout.mobile-reporting-form{
    display:grid;
    grid-template-columns:clamp(150px,16vw,180px) minmax(0,1fr);
    gap:14px;
    padding:12px 16px 26px;
    width:100%;
  }
  .report-sidebar{
    display:block!important;
    position:sticky;
    left:auto;right:auto;bottom:auto;
    top:135px;
    width:auto;
    max-height:calc(100vh - 151px);
    z-index:auto;
    transition:none;
    overflow:auto;
  }
  .report-tab-panel{display:none!important;margin:0 0 18px}
  .report-tab-panel.active{display:block!important}
  #assessment-panel-container .report-tab-panel{display:none!important}
  #assessment-panel-container .report-tab-panel.active{display:block!important}
  .mobile-only{display:none!important}
}

@media (min-width:721px) and (max-width:1180px){
  .report-main .form-grid.columns-3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .report-main .form-grid.columns-4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .report-main,.report-form,.form-section,.subsection{min-width:0;max-width:100%}
  .report-main input,.report-main select,.report-main textarea{max-width:100%}
}

/* True mobile structural layout: continuous report sections and full-width bottom navigation. */
@media (max-width:720px){
  .app-header.crimson-header .header-icon-navigation{
    position:fixed;
    top:auto;right:0;bottom:0;left:0;
    width:100vw;
    max-width:none;
    height:58px;
    margin:0;
    background:linear-gradient(100deg,var(--crimson-950),var(--crimson-800),#b00024);
    justify-content:center;
    justify-self:stretch;
    z-index:40;
  }
  .app-footer{padding-bottom:72px}
  .report-layout,.report-layout.desktop-report-view,.report-layout.mobile-reporting-form,.report-layout.desktop-new-report{
    display:block;
    width:100%;
    max-width:100%;
    margin:0;
    padding:10px 10px 78px;
  }
  .report-sidebar{display:none!important}
  .report-main{width:100%;min-width:0;max-width:100%;margin:0}
  .report-tab-panel,#assessment-panel-container .report-tab-panel{display:block!important;margin:0 0 12px}
  .report-form,.form-section,.subsection,.paired-panel>div,.paired-panel>label,.component-section-card{min-width:0;max-width:100%}
  .report-main .form-grid.columns-2,
  .report-main .form-grid.columns-3,
  .report-main .form-grid.columns-4,
  .report-main .paired-panel,
  .report-main .distinct-question-groups{grid-template-columns:1fr}
  .report-main input,.report-main select,.report-main textarea{width:100%;max-width:100%;min-width:0}
  .workflow-bar.report-header-bar{width:100%;max-width:100%;overflow:visible}
  .report-header-left,.report-header-primary,.workflow-buttons{max-width:100%}
  .workflow-buttons{gap:6px}
}

/* v0.88.0 mobile stabilization, registry spacing, compact quick filters, and footer polish */
/* Registry: create a clearly larger visual separation between Status and Updated. */
.registry-report-panel .report-preview-table .workflow-column{
  width:172px;
  padding-right:60px;
}
.registry-report-panel .registry-status-cell{padding-right:60px}

/* Account block: stacked, centered, and padded as one visual unit. */
.header-account-inline{
  align-items:center;
  justify-content:center;
  text-align:center;
  padding-left:10px;
  padding-right:10px;
}
.header-account-name{
  max-width:190px;
  width:100%;
  text-align:center;
}
.header-logout-button{align-self:center}

/* Compact quick-filter row and reduce the dead space before the count/filter block. */
.registry-quick-tabs .pill,
.registry-quick-tabs select{
  min-height:27px;
  padding:2px 8px;
  line-height:1.1;
}
.registry-quick-tabs .pill-count{
  height:17px;
  min-width:20px;
  padding:0 5px;
}
.registry-toolbar{padding-top:5px;padding-bottom:3px}
.registry-list-heading{padding-top:3px}

/* Footer wording shares the application visual language; versions are supplied dynamically by app.js. */
.login-footer-versioned{color:#596579}
.login-footer-versioned div{display:flex;flex-direction:column;align-items:center;gap:2px}
.login-footer-versioned strong{color:#253044;font-size:1.05em}
.login-footer-versioned span{display:block;font-size:12px}
.login-footer-versioned .login-version-line{color:#7c899d}

@media (max-width:720px){
  /* The mobile shell must never create page-level horizontal panning. The registry table
     retains its own horizontal scroller via .table-wrap. */
  html,body,#app,#page-content{
    width:100%;
    max-width:100%;
    overflow-x:hidden;
  }
  .app-header.crimson-header{
    width:100%;
    max-width:100%;
    min-width:0;
  }

  /* Full-width branded mobile navigation. Use inset instead of 100vw so browser chrome,
     scrollbars, and mobile viewport quirks cannot shorten or offset the bar. */
  .app-header.crimson-header .header-icon-navigation{
    position:fixed;
    top:auto;
    right:0;
    bottom:0;
    left:0;
    inset-inline:0;
    width:auto;
    max-width:none;
    min-width:0;
    height:calc(58px + env(safe-area-inset-bottom));
    margin:0;
    padding:0 max(6px,env(safe-area-inset-right)) env(safe-area-inset-bottom) max(6px,env(safe-area-inset-left));
    box-sizing:border-box;
    background:linear-gradient(100deg,var(--crimson-950),var(--crimson-800),#b00024);
    justify-content:center;
    align-items:stretch;
    justify-self:stretch;
    z-index:80;
  }
  .header-icon-navigation>.header-nav-icon,
  .header-icon-navigation>.header-account-inline{
    flex:1 1 0;
    width:auto;
    min-width:0;
    max-width:112px;
    height:58px;
  }
  .header-icon-navigation>.header-nav-icon{
    padding:5px 4px;
    gap:2px;
  }
  .header-icon-navigation>.header-account-inline{
    align-self:stretch;
    align-items:center;
    justify-content:center;
    text-align:center;
    padding:4px 7px;
    gap:2px;
  }
  .header-account-name{
    display:block;
    width:100%;
    max-width:100%;
    text-align:center;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .header-logout-button{align-self:center}
  .app-footer{padding-bottom:calc(72px + env(safe-area-inset-bottom))}

  /* Report pages are continuous and constrained to the actual mobile viewport. */
  .report-layout,.report-layout.desktop-report-view,.report-layout.mobile-reporting-form,.report-layout.desktop-new-report,
  .report-main,.report-form,.report-form>fieldset,.form-section,.report-subsection,.subsection{
    width:100%;
    max-width:100%;
    min-width:0;
  }
  .report-layout,.report-layout.desktop-report-view,.report-layout.mobile-reporting-form,.report-layout.desktop-new-report{
    overflow-x:hidden;
  }
  .report-main input[type="checkbox"],
  .report-main input[type="radio"]{
    width:auto!important;
    max-width:none!important;
    min-width:0;
    flex:0 0 auto;
  }
  .follow-up-checkbox-field>.follow-up-checkbox-control{
    width:100%;
    max-width:100%;
    min-width:0;
    justify-content:flex-start;
    overflow:hidden;
  }
  .follow-up-checkbox-field>.follow-up-checkbox-control>span{
    min-width:0;
    white-space:normal;
    overflow-wrap:anywhere;
  }

  /* Messages use a true mobile dialog instead of a desktop-sized panel. */
  .message-dialog,
  .notification-dialog{
    box-sizing:border-box;
    width:calc(100% - 24px);
    max-width:calc(100% - 24px);
    max-height:calc(100dvh - 24px);
    margin:auto;
    padding:18px;
    overflow:auto;
    overscroll-behavior:contain;
  }
  #report-notification-list,
  .notification-history,
  .notification-history-item{
    width:100%;
    max-width:100%;
    min-width:0;
    overflow-x:hidden;
  }
  .notification-history-heading{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:8px;
  }
  .notification-history-heading strong,
  .notification-author,
  .notification-history-item blockquote{
    min-width:0;
    overflow-wrap:anywhere;
    word-break:break-word;
  }
  .notification-history-heading time{white-space:normal;text-align:right}

  /* Keep Report List horizontal scrolling local to the table, not the page. */
  .registry-report-panel .table-wrap{
    width:100%;
    max-width:100%;
    overflow-x:auto;
    overflow-y:visible;
    -webkit-overflow-scrolling:touch;
  }
}

/* v0.88.1 corrective mobile shell: phone-class layout remains mobile even when the
   browser exposes a desktop-sized layout viewport. The class is applied by
   responsive-layout.js using viewport width plus coarse-pointer/screen short-side data. */
html.hv-mobile-layout,
html.hv-mobile-layout body,
html.hv-mobile-layout #app,
html.hv-mobile-layout #page-content{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin-left:0!important;
  margin-right:0!important;
  box-sizing:border-box;
  overflow-x:hidden!important;
}

html.hv-mobile-layout .app-header.crimson-header{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin:0!important;
  padding-left:12px!important;
  padding-right:12px!important;
  grid-template-columns:auto minmax(0,1fr)!important;
  box-sizing:border-box;
}
html.hv-mobile-layout .app-header.crimson-header .header-brand{min-width:0}
html.hv-mobile-layout .app-header.crimson-header .header-title{
  min-width:0;
  justify-self:center;
  text-align:center;
  white-space:normal;
  line-height:1.15;
  overflow-wrap:anywhere;
}

html.hv-mobile-layout .app-header.crimson-header .header-icon-navigation{
  position:fixed!important;
  top:auto!important;
  right:0!important;
  bottom:0!important;
  left:0!important;
  inset-inline:0!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  height:calc(58px + env(safe-area-inset-bottom))!important;
  margin:0!important;
  padding:0 max(6px,env(safe-area-inset-right)) env(safe-area-inset-bottom) max(6px,env(safe-area-inset-left))!important;
  box-sizing:border-box!important;
  display:flex!important;
  justify-content:center!important;
  align-items:stretch!important;
  gap:0!important;
  background:linear-gradient(100deg,var(--crimson-950),var(--crimson-800),#b00024)!important;
  transform:none!important;
  z-index:100!important;
}
html.hv-mobile-layout .header-icon-navigation>.header-nav-icon,
html.hv-mobile-layout .header-icon-navigation>.header-account-inline{
  flex:1 1 0!important;
  width:auto!important;
  min-width:0!important;
  max-width:124px!important;
  height:58px!important;
}
html.hv-mobile-layout .header-icon-navigation>.header-account-inline{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  padding:4px 7px!important;
  gap:2px!important;
}
html.hv-mobile-layout .header-account-name{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  text-align:center!important;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
html.hv-mobile-layout .header-logout-button{align-self:center!important}
html.hv-mobile-layout .app-footer{padding-bottom:calc(72px + env(safe-area-inset-bottom))!important}

/* Existing report page: remove every desktop/sidebar geometry dependency and use one
   continuous full-width report stream. */
html.hv-mobile-layout .workflow-bar.report-header-bar{
  position:relative!important;
  top:auto!important;
  left:auto!important;
  right:auto!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin:0!important;
  padding:8px 12px!important;
  box-sizing:border-box!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  overflow:hidden!important;
}
html.hv-mobile-layout .report-header-left,
html.hv-mobile-layout .report-header-identity,
html.hv-mobile-layout .report-header-primary,
html.hv-mobile-layout .workflow-buttons{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin-left:0!important;
  margin-right:0!important;
  box-sizing:border-box!important;
}
html.hv-mobile-layout .report-header-primary{flex-wrap:wrap!important}
html.hv-mobile-layout .workflow-buttons{
  justify-content:flex-start!important;
  flex-wrap:wrap!important;
  overflow:visible!important;
  gap:6px!important;
}
html.hv-mobile-layout .report-layout,
html.hv-mobile-layout .report-layout.desktop-report-view,
html.hv-mobile-layout .report-layout.mobile-reporting-form,
html.hv-mobile-layout .report-layout.desktop-new-report{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin:0!important;
  padding:10px 10px calc(78px + env(safe-area-inset-bottom))!important;
  box-sizing:border-box!important;
  overflow-x:hidden!important;
}
html.hv-mobile-layout .report-sidebar{display:none!important}
html.hv-mobile-layout .report-main,
html.hv-mobile-layout .report-form,
html.hv-mobile-layout .report-form>fieldset,
html.hv-mobile-layout .form-section,
html.hv-mobile-layout .report-subsection,
html.hv-mobile-layout .subsection,
html.hv-mobile-layout .component-section-card,
html.hv-mobile-layout .paired-panel>div,
html.hv-mobile-layout .paired-panel>label{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin-left:0!important;
  margin-right:0!important;
  box-sizing:border-box!important;
}
html.hv-mobile-layout .report-tab-panel,
html.hv-mobile-layout #assessment-panel-container .report-tab-panel{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  margin:0 0 12px!important;
}
html.hv-mobile-layout .report-main .form-grid.columns-2,
html.hv-mobile-layout .report-main .form-grid.columns-3,
html.hv-mobile-layout .report-main .form-grid.columns-4,
html.hv-mobile-layout .report-main .paired-panel,
html.hv-mobile-layout .report-main .distinct-question-groups{
  grid-template-columns:minmax(0,1fr)!important;
}
html.hv-mobile-layout .report-main input:not([type="checkbox"]):not([type="radio"]),
html.hv-mobile-layout .report-main select,
html.hv-mobile-layout .report-main textarea{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
}

/* Follow-up checkbox: intrinsic checkbox + adjacent wrapping label. */
html.hv-mobile-layout .follow-up-checkbox-field>.follow-up-checkbox-control{
  display:grid!important;
  grid-template-columns:18px minmax(0,1fr)!important;
  align-items:center!important;
  justify-content:start!important;
  column-gap:9px!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  min-height:40px!important;
  overflow:visible!important;
  box-sizing:border-box!important;
}
html.hv-mobile-layout .follow-up-checkbox-field>.follow-up-checkbox-control input[type="checkbox"]{
  display:block!important;
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  max-width:18px!important;
  margin:0!important;
  padding:0!important;
  justify-self:start!important;
  flex:none!important;
}
html.hv-mobile-layout .follow-up-checkbox-field>.follow-up-checkbox-control>span{
  display:block!important;
  width:auto!important;
  min-width:0!important;
  max-width:100%!important;
  margin:0!important;
  white-space:normal!important;
  overflow-wrap:break-word!important;
  word-break:normal!important;
}
html.hv-mobile-layout .report-main input[type="radio"]{
  width:1.1em!important;
  height:1.1em!important;
  min-width:1.1em!important;
  max-width:1.1em!important;
  flex:0 0 auto!important;
}

/* Keep dialogs and the Report List's deliberate table scroller bounded on a phone-class layout. */
html.hv-mobile-layout .message-dialog,
html.hv-mobile-layout .notification-dialog{
  box-sizing:border-box!important;
  width:calc(100% - 24px)!important;
  max-width:calc(100% - 24px)!important;
  max-height:calc(100dvh - 24px)!important;
  margin:auto!important;
  overflow:auto!important;
}
html.hv-mobile-layout .registry-report-panel .table-wrap{
  width:100%!important;
  max-width:100%!important;
  overflow-x:auto!important;
  overflow-y:visible!important;
  -webkit-overflow-scrolling:touch;
}


/* v0.88.2 mobile branding and login-background correction */
/* Keep the mobile title entirely on the crimson field. This replaces the previous
   diagonal split that crossed through "Reporting System" on phone screens. */
@media (max-width:720px){
  .login-layout.simplified-login{
    background:linear-gradient(145deg,#721126 0 48%,#f3edef 48%)!important;
  }
}
html.hv-mobile-layout .login-layout.simplified-login{
  background:linear-gradient(145deg,#721126 0 48%,#f3edef 48%)!important;
}
html.hv-mobile-layout .login-intro{
  position:relative;
  z-index:1;
}
html.hv-mobile-layout .login-intro h1{
  position:relative;
  z-index:2;
}

/* Never allow an older <=1000px navigation fallback to reintroduce the historic blue bar. */
@media (max-width:1000px){
  .app-header nav,
  .app-header.crimson-header nav,
  .app-header.crimson-header .header-icon-navigation{
    background:linear-gradient(100deg,var(--crimson-950),var(--crimson-800),#b00024)!important;
  }
}
html.hv-mobile-layout .app-header nav,
html.hv-mobile-layout .app-header.crimson-header .header-icon-navigation{
  background:linear-gradient(100deg,var(--crimson-950),var(--crimson-800),#b00024)!important;
}


/* v0.88.4 HemoWatch rebrand and installable-shell update */
:root{--crimson-950:#6d081a;--crimson-900:#7f0b20;--crimson-800:#8f1027;}
.loading-screen{color:#8f1027;font-weight:600}
.hemowatch-header{grid-template-columns:minmax(140px,1fr) auto minmax(520px,1fr)!important;background:linear-gradient(100deg,var(--crimson-950),var(--crimson-800),#b00024)!important;}
.hemowatch-header .header-brand{justify-self:start}
.hemowatch-header .iphvc-text-only{font-size:22px;font-weight:800;letter-spacing:-.01em}
.hemowatch-header-branding{display:flex;align-items:center;justify-self:center;gap:10px;min-width:0;color:#fff}
.hemowatch-header-wording{display:flex;flex-direction:column;align-items:flex-start;line-height:1}
.hemowatch-header-wordmark{font-size:26px;font-weight:800;letter-spacing:-.02em;color:#fff}
.hemowatch-header-subtitle{margin-top:4px;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.9);white-space:nowrap}
.hemowatch-footer img{width:38px}
.hemowatch-footer strong{font-size:1.05em}
.hemowatch-login-layout{background:linear-gradient(135deg,#5b0614,#8f1027 58%,#f5f1f2 58%)}
.hemowatch-login-intro{padding:70px 7vw;color:#fff;display:flex;align-items:center;justify-content:center}
.hemowatch-login-lockup{display:flex;align-items:center;gap:20px;justify-content:flex-start;margin:0 auto;width:min(560px,100%)}
.hemowatch-login-logo{display:block;width:110px;height:auto;object-fit:contain;filter:none}
.hemowatch-login-wording{display:flex;flex-direction:column;align-items:flex-start;text-align:left}
.hemowatch-login-wording .eyebrow{margin:0 0 10px;color:#fff}
.hemowatch-login-wording h1{margin:0;font-size:56px;line-height:1;color:#fff}
.hemowatch-login-subtitle{margin:8px 0 0;font-size:15px;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.92)}
.hemowatch-login-footer strong{color:#8f1027}
.offline-state-banner{position:sticky;top:0;z-index:45;padding:10px 14px;text-align:center;background:#fff4d5;color:#7a5b00;border-bottom:1px solid #ead69a;font-size:13px;font-weight:650}
@media (max-width:1100px){
  .hemowatch-header{grid-template-columns:auto minmax(0,1fr) auto!important;padding:0 12px!important}
  .hemowatch-header-branding{gap:8px}
  .hemowatch-header-wordmark{font-size:22px}
  .hemowatch-header-subtitle{font-size:10px}
}
@media (max-width:800px){
  .hemowatch-header{grid-template-columns:auto minmax(0,1fr) auto!important;padding:0 10px!important}
  .hemowatch-header-branding{gap:7px}
  .hemowatch-header-wordmark{font-size:20px}
  .hemowatch-header-subtitle{display:none}
  .hemowatch-login-lockup{gap:16px;justify-content:center;text-align:center}
  .hemowatch-login-wording{align-items:center;text-align:center}
  .hemowatch-login-wording h1{font-size:42px}
  .hemowatch-login-subtitle{font-size:13px}
}
@media (max-width:640px){
  .hemowatch-header .iphvc-text-only{font-size:18px}
  .hemowatch-header-branding{gap:6px}
  .hemowatch-header-wordmark{font-size:18px}
  .hemowatch-login-intro{padding:34px 22px 72px}
  .hemowatch-login-lockup{flex-direction:column;gap:14px}
  .hemowatch-login-logo{width:88px}
  .hemowatch-login-wording h1{font-size:34px}
}
html.hv-mobile-layout .hemowatch-header{grid-template-columns:auto 1fr auto!important;padding:0 8px!important}
html.hv-mobile-layout .hemowatch-header .iphvc-text-only{font-size:16px}
html.hv-mobile-layout .hemowatch-header-branding{gap:6px}
html.hv-mobile-layout .hemowatch-header-wordmark{font-size:16px}
html.hv-mobile-layout .hemowatch-header-subtitle{display:none}
html.hv-mobile-layout .hemowatch-login-lockup{flex-direction:column;gap:14px}
html.hv-mobile-layout .hemowatch-login-wording{align-items:center;text-align:center}
html.hv-mobile-layout .hemowatch-login-wording h1{font-size:32px}

/* v0.88.5 login-card signal border and user-contact polish */
@property --hv-login-border-angle{syntax:"<angle>";initial-value:0deg;inherits:false}
.hemowatch-neon-login-card{
  position:relative;
  isolation:isolate;
  border:1px solid rgba(143,16,39,.16);
  box-shadow:0 20px 50px rgba(91,6,20,.16),0 0 0 1px rgba(255,255,255,.5) inset;
}
.hemowatch-neon-login-card::before{
  content:"";
  position:absolute;
  inset:-2px;
  z-index:2;
  border-radius:inherit;
  padding:2px;
  background:conic-gradient(from var(--hv-login-border-angle),transparent 0deg 235deg,rgba(109,8,26,.08) 258deg,rgba(143,16,39,.55) 286deg,#b00024 310deg,rgba(143,16,39,.48) 332deg,transparent 350deg);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
  pointer-events:none;
  animation:hv-login-border-travel 5.8s linear infinite;
}
@keyframes hv-login-border-travel{to{--hv-login-border-angle:360deg}}
/* v0.88.8 display fix: keep the decorative login perimeter motion consistent across
   desktop and phone-class devices. This effect is deliberately isolated from the
   report/workflow motion rules and does not affect functional state indicators. */
.hemowatch-neon-login-card::before{
  animation:hv-login-border-travel 5.8s linear infinite;
}
.field>span small{font-size:.9em;font-weight:500;color:var(--muted)}
.admin-user-create-actions{display:flex;justify-content:flex-end}


/* v0.88.6 HemoWatch wordmark lockup and interaction-led animated icons */
.hemowatch-wordmark-lockup{
  display:inline-flex;
  flex-direction:column;
  align-items:flex-start;
  line-height:1;
  min-width:0;
  font-family:Inter,"Segoe UI",Arial,sans-serif;
}
.hemowatch-wordmark-name{
  display:block;
  white-space:nowrap;
  font-size:26px;
  font-weight:800;
  letter-spacing:-.035em;
}
.hemowatch-wordmark-hemo{color:#9b1832}
.hemowatch-wordmark-watch{color:#111318}
.hemowatch-wordmark-descriptor{
  display:block;
  margin-top:5px;
  color:#17191d;
  font-size:9.5px;
  font-weight:700;
  letter-spacing:.145em;
  line-height:1.15;
  white-space:nowrap;
}
.hemowatch-wordmark-lockup.is-on-dark .hemowatch-wordmark-hemo{color:#ffb0bf}
.hemowatch-wordmark-lockup.is-on-dark .hemowatch-wordmark-watch{color:#fff}
.hemowatch-wordmark-lockup.is-on-dark .hemowatch-wordmark-descriptor{color:rgba(255,255,255,.9)}
.hemowatch-wordmark-lockup.is-compact .hemowatch-wordmark-name{font-size:25px}
.hemowatch-wordmark-lockup.is-compact .hemowatch-wordmark-descriptor{font-size:8.5px;margin-top:4px;letter-spacing:.12em}
.hemowatch-wordmark-lockup.is-hero .hemowatch-wordmark-name{font-size:56px}
.hemowatch-wordmark-lockup.is-hero .hemowatch-wordmark-descriptor{font-size:14px;margin-top:9px;letter-spacing:.11em}
.hemowatch-footer .hemowatch-wordmark-lockup{margin-bottom:3px}
.hemowatch-footer .hemowatch-wordmark-name{font-size:17px}
.hemowatch-footer .hemowatch-wordmark-descriptor{font-size:6.8px;margin-top:3px;letter-spacing:.1em}
.hemowatch-login-footer .hemowatch-wordmark-lockup{align-items:center;margin-bottom:5px}
.hemowatch-login-footer .hemowatch-wordmark-name{font-size:18px}
.hemowatch-login-footer .hemowatch-wordmark-descriptor{font-size:7px;margin-top:3px;letter-spacing:.105em}

/* Animate UI-inspired behavior adapted to the app's existing SVG/ES-module stack. */
.app-icon-animated,
.app-icon-animated *{
  transform-box:fill-box;
  transform-origin:center;
}
.app-icon-animated{
  overflow:visible;
  transition:transform 220ms cubic-bezier(.2,.75,.25,1),opacity 180ms ease;
}
.app-icon-animated *{
  transition:transform 220ms cubic-bezier(.2,.75,.25,1),opacity 180ms ease,stroke-dashoffset 260ms ease;
}
button:hover .app-icon-animated,
button:focus-visible .app-icon-animated,
a:hover .app-icon-animated,
a:focus-visible .app-icon-animated,
.header-account-inline:hover .app-icon-animated{
  transform:translateY(-.6px);
}
button:active .app-icon-animated,
a:active .app-icon-animated{
  transform:translateY(0) scale(.94);
  transition-duration:100ms;
}

/* UserRound: head lifts and shoulders open slightly. */
button:hover .app-icon-user .icon-motion-head,
button:focus-visible .app-icon-user .icon-motion-head,
a:hover .app-icon-user .icon-motion-head,
a:focus-visible .app-icon-user .icon-motion-head,
.header-account-inline:hover .app-icon-user .icon-motion-head{transform:translateY(-1px)}
button:hover .app-icon-user .icon-motion-shoulders,
button:focus-visible .app-icon-user .icon-motion-shoulders,
a:hover .app-icon-user .icon-motion-shoulders,
a:focus-visible .app-icon-user .icon-motion-shoulders,
.header-account-inline:hover .app-icon-user .icon-motion-shoulders{transform:scaleX(1.055)}

/* Administration: user remains calm while the settings element rotates. */
button:hover .app-icon-administration .icon-motion-head,
a:hover .app-icon-administration .icon-motion-head{transform:translateY(-.7px)}
button:hover .app-icon-administration .icon-motion-gear,
button:focus-visible .app-icon-administration .icon-motion-gear,
a:hover .app-icon-administration .icon-motion-gear,
a:focus-visible .app-icon-administration .icon-motion-gear{transform:rotate(22deg)}

/* Directional actions. */
button:hover .app-icon-export .icon-motion-arrow,
button:focus-visible .app-icon-export .icon-motion-arrow,
a:hover .app-icon-export .icon-motion-arrow,
a:focus-visible .app-icon-export .icon-motion-arrow{transform:translateY(-1.8px)}
button:hover .app-icon-import .icon-motion-arrow,
button:focus-visible .app-icon-import .icon-motion-arrow,
a:hover .app-icon-import .icon-motion-arrow,
a:focus-visible .app-icon-import .icon-motion-arrow,
button:hover .app-icon-download .icon-motion-arrow,
button:focus-visible .app-icon-download .icon-motion-arrow,
a:hover .app-icon-download .icon-motion-arrow,
a:focus-visible .app-icon-download .icon-motion-arrow{transform:translateY(1.6px)}
button:hover .app-icon-return .icon-motion-arrow,
button:focus-visible .app-icon-return .icon-motion-arrow{transform:translateX(-1.4px)}
button:hover .app-icon-back .icon-motion-arrow,
button:focus-visible .app-icon-back .icon-motion-arrow,
a:hover .app-icon-back .icon-motion-arrow,
a:focus-visible .app-icon-back .icon-motion-arrow{transform:translateX(-1.5px)}

/* Creation/filter/message/status actions. */
button:hover .app-icon-add .icon-motion-plus,
button:focus-visible .app-icon-add .icon-motion-plus,
a:hover .app-icon-add .icon-motion-plus,
a:focus-visible .app-icon-add .icon-motion-plus{transform:rotate(90deg) scale(1.04)}
button:hover .app-icon-filter .icon-motion-funnel,
button:focus-visible .app-icon-filter .icon-motion-funnel,
a:hover .app-icon-filter .icon-motion-funnel,
a:focus-visible .app-icon-filter .icon-motion-funnel{transform:translateY(1px) scale(.96)}
button:hover .app-icon-messages .icon-motion-bubble,
button:focus-visible .app-icon-messages .icon-motion-bubble,
a:hover .app-icon-messages .icon-motion-bubble,
a:focus-visible .app-icon-messages .icon-motion-bubble{transform:translateY(-1px)}
button:hover .app-icon-messages .icon-motion-message-lines,
button:focus-visible .app-icon-messages .icon-motion-message-lines,
a:hover .app-icon-messages .icon-motion-message-lines,
a:focus-visible .app-icon-messages .icon-motion-message-lines{transform:translateX(.7px)}
button:hover .app-icon-follow-up .icon-motion-envelope,
button:focus-visible .app-icon-follow-up .icon-motion-envelope{transform:translateY(-.8px)}
button:hover .app-icon-follow-up .icon-motion-return,
button:focus-visible .app-icon-follow-up .icon-motion-return{transform:translateX(-1px)}

/* Review/workflow actions. */
button:hover .app-icon-audit .icon-motion-orbit,
button:focus-visible .app-icon-audit .icon-motion-orbit{transform:rotate(-18deg)}
button:hover .app-icon-reopen .icon-motion-reopen,
button:focus-visible .app-icon-reopen .icon-motion-reopen{transform:rotate(-18deg)}
button:hover .app-icon-delete .icon-motion-lid,
button:focus-visible .app-icon-delete .icon-motion-lid{transform:translateY(-1.2px) rotate(-4deg)}
button:hover .app-icon-complete .icon-motion-check,
button:focus-visible .app-icon-complete .icon-motion-check{transform:scale(1.12)}
button:hover .app-icon-close-incomplete .icon-motion-cross,
button:focus-visible .app-icon-close-incomplete .icon-motion-cross,
button:hover .app-icon-close .icon-motion-cross,
button:focus-visible .app-icon-close .icon-motion-cross{transform:rotate(8deg) scale(1.05)}
button[aria-expanded="true"] .app-icon-chevron-down .icon-motion-chevron{transform:rotate(180deg)}

/* Navigation/document indicators. */
a:hover .app-icon-report-list .icon-motion-lines,
a:focus-visible .app-icon-report-list .icon-motion-lines{transform:translateX(.8px)}
a:hover .app-icon-overview .icon-motion-accent,
a:focus-visible .app-icon-overview .icon-motion-accent{transform:rotate(10deg)}
button:hover .app-icon-paper .icon-motion-lines,
button:focus-visible .app-icon-paper .icon-motion-lines,
a:hover .app-icon-paper .icon-motion-lines,
a:focus-visible .app-icon-paper .icon-motion-lines{transform:translateX(.7px)}

.header-account-user-icon{
  display:grid;
  place-items:center;
  width:23px;
  height:23px;
  flex:0 0 auto;
  color:rgba(255,255,255,.95);
}
.header-account-user-icon .app-icon{width:20px;height:20px}

@media (max-width:1100px){
  .hemowatch-wordmark-lockup.is-compact .hemowatch-wordmark-name{font-size:22px}
  .hemowatch-wordmark-lockup.is-compact .hemowatch-wordmark-descriptor{font-size:7.5px}
}
@media (max-width:800px){
  .hemowatch-wordmark-lockup.is-compact .hemowatch-wordmark-name{font-size:20px}
  .hemowatch-wordmark-lockup.is-compact .hemowatch-wordmark-descriptor{display:none}
  .hemowatch-wordmark-lockup.is-hero{align-items:center}
  .hemowatch-wordmark-lockup.is-hero .hemowatch-wordmark-name{font-size:42px}
  .hemowatch-wordmark-lockup.is-hero .hemowatch-wordmark-descriptor{font-size:11px;text-align:center;white-space:normal}
}
@media (max-width:640px){
  .hemowatch-wordmark-lockup.is-compact .hemowatch-wordmark-name{font-size:18px}
  .hemowatch-wordmark-lockup.is-hero .hemowatch-wordmark-name{font-size:34px}
  .hemowatch-wordmark-lockup.is-hero .hemowatch-wordmark-descriptor{font-size:9px}
  .header-account-user-icon{display:none}
}
html.hv-mobile-layout .hemowatch-wordmark-lockup.is-compact .hemowatch-wordmark-name{font-size:16px}
html.hv-mobile-layout .hemowatch-wordmark-lockup.is-compact .hemowatch-wordmark-descriptor{display:none}
html.hv-mobile-layout .hemowatch-wordmark-lockup.is-hero{align-items:center}
html.hv-mobile-layout .hemowatch-wordmark-lockup.is-hero .hemowatch-wordmark-name{font-size:32px}
html.hv-mobile-layout .hemowatch-wordmark-lockup.is-hero .hemowatch-wordmark-descriptor{font-size:9px;white-space:normal;text-align:center}
html.hv-mobile-layout .header-account-user-icon{display:none}

/* v0.88.8 display fix: interaction-led icon motion must remain available on
   fine-pointer desktop devices as well as touch/phone devices. The icons remain
   static at rest; movement is still triggered only by hover/focus/tap/state. */

/* v0.88.6 branding correction: use the supplied HemoWatch wordmark artwork exactly, not recreated text. */
.hemowatch-wordmark-lockup{
  display:block;
  width:auto;
  max-width:100%;
  line-height:0;
}
.hemowatch-wordmark-image{
  display:block;
  width:190px;
  max-width:100%;
  height:auto;
  object-fit:contain;
}
.hemowatch-wordmark-lockup.is-compact .hemowatch-wordmark-image{width:205px}
.hemowatch-wordmark-lockup.is-hero .hemowatch-wordmark-image{width:min(500px,100%)}
.hemowatch-footer .hemowatch-wordmark-image{width:175px}
.hemowatch-login-footer .hemowatch-wordmark-image{width:180px;margin-inline:auto}

@media (max-width:1100px){
  .hemowatch-wordmark-lockup.is-compact .hemowatch-wordmark-image{width:185px}
}
@media (max-width:800px){
  .hemowatch-wordmark-lockup.is-compact .hemowatch-wordmark-image{width:160px}
  .hemowatch-wordmark-lockup.is-hero .hemowatch-wordmark-image{width:min(420px,100%)}
}
@media (max-width:640px){
  .hemowatch-wordmark-lockup.is-compact .hemowatch-wordmark-image{width:145px}
  .hemowatch-wordmark-lockup.is-hero .hemowatch-wordmark-image{width:min(340px,100%)}
}
html.hv-mobile-layout .hemowatch-wordmark-lockup.is-compact .hemowatch-wordmark-image{width:135px}
html.hv-mobile-layout .hemowatch-wordmark-lockup.is-hero .hemowatch-wordmark-image{width:min(320px,100%)}


/* v0.88.6 top-bar branding correction: supplied wordmark artwork only, retained at +10% size. */
.hemowatch-header .hemowatch-wordmark-lockup.is-compact .hemowatch-wordmark-image{width:226px}
@media (max-width:1100px){
  .hemowatch-header .hemowatch-wordmark-lockup.is-compact .hemowatch-wordmark-image{width:204px}
}
@media (max-width:800px){
  .hemowatch-header .hemowatch-wordmark-lockup.is-compact .hemowatch-wordmark-image{width:176px}
}
@media (max-width:640px){
  .hemowatch-header .hemowatch-wordmark-lockup.is-compact .hemowatch-wordmark-image{width:159.5px}
}
html.hv-mobile-layout .hemowatch-header .hemowatch-wordmark-lockup.is-compact .hemowatch-wordmark-image{width:148.5px}

/* v0.88.6 Outfit wordmark hotfix: live, locally bundled branding typography. */
@font-face{font-family:"Outfit";src:url("/fonts/Outfit-Light.woff2") format("woff2");font-style:normal;font-weight:300;font-display:swap}
@font-face{font-family:"Outfit";src:url("/fonts/Outfit-Regular.woff2") format("woff2");font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:"Outfit";src:url("/fonts/Outfit-Bold.woff2") format("woff2");font-style:normal;font-weight:700;font-display:swap}
.hemowatch-wordmark-lockup{display:inline-flex;flex-direction:column;align-items:flex-start;justify-content:center;min-width:0;font-family:"Outfit",Arial,sans-serif;line-height:1}
.hemowatch-wordmark-name{display:flex;align-items:baseline;white-space:nowrap;line-height:.82;letter-spacing:-.045em}
.hemowatch-wordmark-hemo{font-weight:700}
.hemowatch-wordmark-watch{font-weight:300}
.hemowatch-wordmark-descriptor{display:block;white-space:nowrap;font-weight:400;text-transform:none;letter-spacing:-.022em;line-height:1;margin-top:3px}
.hemowatch-wordmark-lockup.is-on-dark .hemowatch-wordmark-hemo,.hemowatch-wordmark-lockup.is-on-dark .hemowatch-wordmark-watch,.hemowatch-wordmark-lockup.is-on-dark .hemowatch-wordmark-descriptor{color:#fff}
.hemowatch-wordmark-lockup.is-on-light .hemowatch-wordmark-hemo{color:#9b1832}
.hemowatch-wordmark-lockup.is-on-light .hemowatch-wordmark-watch{color:#111318}
.hemowatch-wordmark-lockup.is-on-light .hemowatch-wordmark-descriptor{color:#34363b}
.hemowatch-wordmark-lockup.is-compact .hemowatch-wordmark-name{font-size:31px}
.hemowatch-wordmark-lockup.is-compact .hemowatch-wordmark-descriptor{font-size:11px;margin-top:4px}
.hemowatch-wordmark-lockup.is-hero .hemowatch-wordmark-name{font-size:62px}
.hemowatch-wordmark-lockup.is-hero .hemowatch-wordmark-descriptor{font-size:20px;margin-top:8px}
@media(max-width:1100px){.hemowatch-wordmark-lockup.is-compact .hemowatch-wordmark-name{font-size:28px}.hemowatch-wordmark-lockup.is-compact .hemowatch-wordmark-descriptor{font-size:10px}}
@media(max-width:900px){.hemowatch-wordmark-lockup.is-compact .hemowatch-wordmark-name{font-size:24px}.hemowatch-wordmark-lockup.is-compact .hemowatch-wordmark-descriptor{font-size:8.5px}.hemowatch-wordmark-lockup.is-hero .hemowatch-wordmark-name{font-size:52px}.hemowatch-wordmark-lockup.is-hero .hemowatch-wordmark-descriptor{font-size:17px}}
@media(max-width:700px){.hemowatch-wordmark-lockup.is-compact .hemowatch-wordmark-name{font-size:21px}.hemowatch-wordmark-lockup.is-compact .hemowatch-wordmark-descriptor{display:none}.hemowatch-wordmark-lockup.is-hero .hemowatch-wordmark-name{font-size:42px}.hemowatch-wordmark-lockup.is-hero .hemowatch-wordmark-descriptor{font-size:14px;white-space:normal;text-align:center}}
html.hv-mobile-layout .hemowatch-wordmark-lockup.is-compact .hemowatch-wordmark-name{font-size:20px}
html.hv-mobile-layout .hemowatch-wordmark-lockup.is-compact .hemowatch-wordmark-descriptor{display:none}
html.hv-mobile-layout .hemowatch-wordmark-lockup.is-hero{align-items:center}
html.hv-mobile-layout .hemowatch-wordmark-lockup.is-hero .hemowatch-wordmark-name{font-size:40px}
html.hv-mobile-layout .hemowatch-wordmark-lockup.is-hero .hemowatch-wordmark-descriptor{font-size:13px;white-space:normal;text-align:center}


/* v0.88.7 Administration user-directory Excel export */
.admin-user-export-button{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;flex:0 0 auto}
.admin-user-export-button .app-icon{width:16px;height:16px;flex-basis:16px}
.user-directory-filters{display:grid;grid-template-columns:repeat(3,minmax(180px,1fr)) auto;gap:12px;align-items:end;margin:0 0 16px}
.user-directory-filters .field{margin:0}
.user-filter-clear{margin-bottom:1px;white-space:nowrap}
.user-filter-summary{grid-column:1/-1;margin:0}
select:has(option[value=""]:checked){color:#b4bbc5}
select option:not([value=""]){color:var(--ink,#172033)}
select:disabled{color:#9aa0a8;background-color:#f1f2f4;cursor:not-allowed}
@media(max-width:720px){
  .admin-tab-panel[data-panel="users"] .panel-heading{flex-wrap:wrap}
  .admin-user-export-button{width:100%;justify-content:center}
  .user-directory-filters{grid-template-columns:1fr}
}


/* v0.88.8 Administration organization Level 2 filter */
.organization-filter-panel{padding-top:14px;padding-bottom:14px}
.organization-filter-row{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;flex-wrap:wrap}
.organization-level2-filter{margin:0;min-width:min(360px,100%);max-width:460px}
.organization-filter-summary{margin:0 0 8px;text-align:right}
@media(max-width:720px){
  .organization-filter-row{align-items:stretch}
  .organization-level2-filter{max-width:none;width:100%}
  .organization-filter-summary{width:100%;text-align:left;margin:0}
}


/* v0.88.8 exact icon reconciliation (user-supplied SVG geometry). */
button:hover .app-icon-user .icon-motion-head,
button:focus-visible .app-icon-user .icon-motion-head,
a:hover .app-icon-user .icon-motion-head,
a:focus-visible .app-icon-user .icon-motion-head,
.header-account-inline:hover .app-icon-user .icon-motion-head{transform:translateY(-.8px)}
button:hover .app-icon-user .icon-motion-shoulders,
button:focus-visible .app-icon-user .icon-motion-shoulders,
a:hover .app-icon-user .icon-motion-shoulders,
a:focus-visible .app-icon-user .icon-motion-shoulders,
.header-account-inline:hover .app-icon-user .icon-motion-shoulders{transform:scaleX(1.035)}
.registry-state-icon .app-icon-messages-unread,
.message-alert-button .app-icon-messages-unread{transform-origin:center}


/* v0.88.8 corrective UI reconciliation */
@font-face{
  font-family:"JetBrains Mono";
  src:url("https://cdn.jsdelivr.net/gh/JetBrains/JetBrainsMono@master/fonts/webfonts/JetBrainsMono-Medium.woff2") format("woff2");
  font-style:normal;
  font-weight:500;
  font-display:swap;
}

/* Message bodies must remain readable on the light communication-history card. */
.notification-history-item blockquote{color:var(--ink,#172033)}
.notification-history-item blockquote *{color:inherit}

/* Administration action buttons: same compact bordered geometry, semantic danger color. */
.button.danger-outline{
  background:#fff;
  color:#a20f2f;
  border:1px solid #d7a9b4;
}
.button.danger-outline:hover,.button.danger-outline:focus-visible{
  background:#fff5f7;
  border-color:#b91538;
  color:#8f1027;
}
.data-table td .edit-user.icon-action,
.data-table td .delete-user.icon-action,
.data-table td .edit-regional.icon-action,
.data-table td .delete-regional.icon-action,
.data-table td .edit-facility.icon-action,
.data-table td .delete-facility.icon-action{
  min-height:34px;
  padding:5px 10px;
  gap:6px;
  vertical-align:middle;
}
.data-table td .edit-user.icon-action + .delete-user.icon-action,
.data-table td .edit-regional.icon-action + .delete-regional.icon-action,
.data-table td .edit-facility.icon-action + .delete-facility.icon-action{margin-left:7px}

/* Edit-user modal: consistent label/control rhythm and non-crowded footer. */
#edit-fields{display:grid;gap:14px}
#edit-fields>.field{gap:7px;margin:0}
#edit-fields>.field>span{line-height:1.25}
#edit-fields>.check-item{margin-top:1px}
#edit-form .dialog-actions{margin-top:4px}
#edit-fields input:disabled,#edit-fields select:disabled{
  background:#f4f6f8;
  color:#5f6b7a;
  opacity:1;
  cursor:not-allowed;
}

/* Internal IDs: code-oriented face, but same optical size as adjacent table content. */
.data-table td code{
  font-family:"JetBrains Mono","Cascadia Mono","SFMono-Regular",Consolas,"Liberation Mono",monospace;
  font-size:inherit;
  font-weight:500;
  line-height:inherit;
  letter-spacing:0;
}

/* Patient age is a single logical field with separate numeric value and unit. */
.age-composite-field{min-width:0}
.age-input-group{display:grid;grid-template-columns:minmax(0,1fr) minmax(112px,.55fr);gap:8px}
.age-input-group>input,.age-input-group>select{min-width:0}
@media(max-width:520px){.age-input-group{grid-template-columns:minmax(0,1fr) 120px}}

/* Registry sorting keeps table headers compact and changes only visual state. */
.registry-sort-button{
  appearance:none;
  border:0;
  background:transparent;
  color:inherit;
  font:inherit;
  font-weight:inherit;
  letter-spacing:inherit;
  text-transform:inherit;
  padding:0;
  margin:0;
  display:inline-flex;
  align-items:center;
  justify-content:flex-start;
  gap:4px;
  min-width:0;
  cursor:pointer;
}
.registry-sort-button:hover,.registry-sort-button:focus-visible{color:#8f1027}
.registry-sort-button:focus-visible{outline:2px solid rgba(143,16,39,.24);outline-offset:3px;border-radius:3px}
.registry-sort-indicator{display:inline-block;width:10px;text-align:center;font-size:.9em;line-height:1}
.registry-sort-button.is-active .registry-sort-indicator{color:#8f1027}

/* Process Report remains anchored to its button on phones; no full-width floating Submit bar. */
@media(max-width:800px){
  .process-report-menu{position:relative}
  .process-report-popover{
    position:absolute!important;
    top:calc(100% + 6px)!important;
    right:0!important;
    bottom:auto!important;
    left:auto!important;
    width:min(280px,calc(100vw - 24px))!important;
    min-width:210px!important;
    max-height:min(60vh,420px);
    overflow:auto;
  }
}

/* Top navigation: active/inactive states must never alter layout metrics. */
.header-icon-navigation>.header-nav-icon{
  box-sizing:border-box!important;
  flex:0 0 78px;
  width:78px!important;
  height:72px!important;
  padding:7px 5px 6px!important;
  border:0!important;
}
.header-icon-navigation>.header-nav-icon.active{
  width:78px!important;
  height:72px!important;
  padding:7px 5px 6px!important;
  border:0!important;
}
.header-icon-navigation>.header-nav-icon .header-nav-symbol{
  flex:0 0 30px;
  width:30px!important;
  height:30px!important;
}
.header-icon-navigation>.header-nav-icon .header-nav-symbol .app-icon{
  width:27px!important;
  height:27px!important;
  flex:0 0 27px!important;
}
.header-icon-navigation>.header-nav-icon .header-nav-label{
  min-height:11px;
  line-height:1.1;
}
@media(max-width:1000px) and (min-width:801px){
  .header-icon-navigation>.header-nav-icon,
  .header-icon-navigation>.header-nav-icon.active{
    flex-basis:62px;
    width:62px!important;
  }
}
@media(max-width:800px){
  .header-icon-navigation>.header-nav-icon,
  .header-icon-navigation>.header-nav-icon.active{
    flex:0 0 43px;
    width:43px!important;
    height:64px!important;
    padding:5px 2px!important;
  }
  .header-icon-navigation>.header-nav-icon .header-nav-symbol{
    flex-basis:24px;
    width:24px!important;
    height:24px!important;
  }
  .header-icon-navigation>.header-nav-icon .header-nav-symbol .app-icon{
    width:22px!important;
    height:22px!important;
    flex-basis:22px!important;
  }
}
html.hv-mobile-layout .header-icon-navigation>.header-nav-icon,
html.hv-mobile-layout .header-icon-navigation>.header-nav-icon.active{
  flex:1 1 0!important;
  width:auto!important;
  min-width:0!important;
  max-width:124px!important;
  height:58px!important;
  padding:5px 4px!important;
}
html.hv-mobile-layout .header-icon-navigation>.header-nav-icon .header-nav-symbol{
  flex:0 0 24px;
  width:24px!important;
  height:24px!important;
}

/* v0.88.8 neutral UI consistency refinement: unified labels, outlines, and padding */
:root{
  --ui-outline:#cbd6e2;
  --ui-outline-strong:#aebccc;
  --ui-group-bg:#fafcff;
  --ui-control-y:11px;
  --ui-control-x:13px;
  --ui-group-pad:16px;
}
.field{gap:6px}
.field>span,
.choice-question legend,
.paired-panel h3,
.component-section-card h3,
.report-subsection>h3{
  display:block;
  margin:0;
  padding:0 1px 2px;
  font-size:14px;
  line-height:1.25;
  font-weight:700;
  color:#46556b;
}
.field input,
.field select,
.field textarea,
.age-input-group>input,
.age-input-group>select{
  border:1px solid var(--ui-outline);
  border-radius:8px;
  background:#fff;
  padding:var(--ui-control-y) var(--ui-control-x);
  min-height:44px;
}
.field textarea{min-height:120px}
.field input:focus,
.field select:focus,
.field textarea:focus,
.age-input-group>input:focus,
.age-input-group>select:focus{
  outline:2px solid rgba(124,16,37,.12);
  border-color:#8f1027;
}
.paired-panel>div,
.paired-panel>label,
.choice-question,
.component-section-card,
.report-subsection{
  background:var(--ui-group-bg);
  border:1px solid var(--line);
  border-radius:10px;
  padding:var(--ui-group-pad);
}
.section-heading{padding:12px 16px}
.form-section{padding:22px}

/* Organization filter: one shared hierarchy with a Created by / Delegated to mode toggle. */
.registry-organization-filter-group{display:grid;gap:12px}
.organization-filter-mode{
  display:inline-grid;
  grid-template-columns:1fr 1fr;
  width:min(320px,100%);
  padding:3px;
  border:1px solid var(--ui-outline);
  border-radius:9px;
  background:#f4f6f8;
}
.organization-mode-option{
  min-height:34px;
  border:0;
  border-radius:6px;
  padding:6px 12px;
  background:transparent;
  color:#526177;
  font-weight:700;
}
.organization-mode-option.active{
  background:#fff;
  color:#8f1027;
  box-shadow:0 1px 3px rgba(23,36,58,.12);
}
.organization-mode-option:focus-visible{outline:2px solid rgba(143,16,39,.22);outline-offset:2px}
.organization-filter-dropdowns{margin-top:0}

/* Inactive registry state icons stay visible but clearly disabled. */
.registry-state-icon{color:#c8ced6}
.registry-follow-up-icon.is-active{color:#2563a8}
.registry-message-icon.has-unread-message{color:#b4232f}

/* Navigation buttons use the supplied filled arrow glyphs without changing button metrics. */
.pagination-bar .button-icon .app-icon-previous,
.pagination-bar .button-icon .app-icon-next,
.compact-back-link .button-icon .app-icon-back{width:15px;height:15px;flex-basis:15px}
.compact-back-link.icon-action{justify-content:flex-start;gap:5px}

@media(max-width:720px){
  .form-section{padding:16px}
  .section-heading{margin:-16px -16px 16px}
  .organization-filter-mode{width:100%}
}


/* v0.88.9 workflow refinement: exact destination labels and equal top action heights */
:root{--report-top-action-height:40px}
.report-header-bar .workflow-buttons>.button,
.report-header-bar .workflow-buttons>.process-report-menu>.process-report-button,
.new-report-workflow-bar .workflow-buttons>.button,
.new-report-workflow-bar .workflow-buttons>.process-report-menu>.process-report-button{
  height:var(--report-top-action-height);
  min-height:var(--report-top-action-height);
  box-sizing:border-box;
  align-items:center;
}
.report-header-bar .workflow-buttons>.icon-only-action,
.report-header-bar .workflow-buttons>.workflow-action{
  width:var(--report-top-action-height);
  min-width:var(--report-top-action-height);
  height:var(--report-top-action-height);
}
.process-report-main-icon{width:20px;height:20px;flex:0 0 20px}
.process-report-main-icon .app-icon{width:20px;height:20px;flex-basis:20px}
.process-report-popover{min-width:280px;max-width:min(420px,calc(100vw - 24px))}
.process-report-option{height:auto;min-height:40px;align-items:center}
.process-report-option>span:last-child{white-space:normal;line-height:1.25;text-align:left}
@media(max-width:800px){
  :root{--report-top-action-height:40px}
  .process-report-popover{min-width:min(300px,calc(100vw - 24px))}
}


/* v0.88.9 report-header, save, communication-state and hover polish */
:root{
  --message-mustard:#b78a18;
  --message-mustard-dark:#775600;
  --message-soft:#fff8df;
  --message-soft-hover:#fff0bd;
  --message-unread:#efd47b;
  --message-unread-deep:#dfbd4b;
}

/* Header identity: align the back action, report ID/status and last-update text to one optical row. */
@media(min-width:1001px){
  .report-header-bar{align-items:center}
  .report-header-left{align-items:flex-start}
  .report-header-left>.compact-back-link{height:27px;min-height:27px;align-self:flex-start;display:inline-flex;align-items:center;margin-top:0}
  .report-header-identity{display:flex;align-items:flex-start;min-height:40px}
  .report-header-primary{display:grid;grid-template-columns:max-content max-content max-content;align-items:start;column-gap:14px;row-gap:0;flex-wrap:nowrap}
  .report-header-id-block{justify-items:start;min-width:max-content}
  .report-header-id-line{height:27px;display:flex;align-items:center}
  .report-header-facility{text-align:left;margin-top:2px}
  .report-status-stack{align-self:start;height:27px;justify-content:center}
  .report-status-stack>.workflow-pill{margin:0}
  .report-header-primary>.report-last-update{align-self:start;margin-top:6px;line-height:1.2}
}

/* Save uses the supplied disk glyph and the same action-bar geometry. */
.report-save-button{display:inline-flex!important;align-items:center!important;justify-content:center;gap:7px}
.report-save-button .app-icon-save{width:18px;height:18px;flex-basis:18px}

/* Button-level interaction in addition to icon animation. */
.button:not(:disabled){
  transition:background-color 150ms ease,border-color 150ms ease,color 150ms ease,box-shadow 150ms ease,transform 150ms ease;
}
.button:not(:disabled):hover,.button:not(:disabled):focus-visible{
  transform:translateY(-1px);
  box-shadow:0 3px 8px rgba(31,38,50,.10);
}
.button:not(:disabled):active{transform:translateY(0);box-shadow:0 1px 3px rgba(31,38,50,.08)}
.button.secondary:not(:disabled):hover,.button.secondary:not(:disabled):focus-visible{
  background:#fff7f9;
  border-color:#b98693;
}
.button.warning:not(:disabled):hover,.button.warning:not(:disabled):focus-visible{background:#ffe9b4;border-color:#d8b24f}
.button.danger:not(:disabled):hover,.button.danger:not(:disabled):focus-visible{background:#941c15;border-color:#941c15}
.button:disabled .app-icon-animated,.button:disabled .app-icon-animated *{transform:none!important;animation:none!important}

/* Messages: mustard icon, yellow-hued control, deeper unread state. */
.message-alert-button{
  background:var(--message-soft)!important;
  color:var(--message-mustard)!important;
  border-color:#e8d594!important;
}
.message-alert-button:not(:disabled):hover,.message-alert-button:not(:disabled):focus-visible{
  background:var(--message-soft-hover)!important;
  color:#9d7310!important;
  border-color:#d8b957!important;
}
.message-alert-button.has-unread-message{
  background:var(--message-unread)!important;
  color:var(--message-mustard-dark)!important;
  border-color:#cfa533!important;
  animation:message-mustard-breathe 2.2s ease-in-out infinite;
}
.message-alert-button.has-unread-message:not(:disabled):hover,.message-alert-button.has-unread-message:not(:disabled):focus-visible{
  background:var(--message-unread-deep)!important;
  color:#654800!important;
  border-color:#b78a18!important;
}
.registry-message-icon.has-unread-message{
  background:#f1d77f!important;
  color:#775600!important;
  border-color:#d0aa3e!important;
  animation:message-mustard-breathe 2.2s ease-in-out infinite;
}
@keyframes message-mustard-breathe{
  0%,100%{background-color:#f3dfa0;color:#86630a;border-color:#d3b45d}
  50%{background-color:#dfbd4b;color:#654800;border-color:#b78a18}
}
@media(prefers-reduced-motion:reduce){
  .registry-message-icon.has-unread-message,.message-alert-button.has-unread-message{animation:none}
}


/* v0.89.0 workflow action-state system and colored-button interaction model */
:root{
  --hw-crimson:#8f1027;
  --hw-crimson-hover:#fff5f7;
  --hw-crimson-pressed:#f0dbe1;
  --hw-return:#a8780f;
  --hw-return-hover:#fff9e8;
  --hw-return-pressed:#f6e5ae;
  --hw-complete:#247344;
  --hw-complete-hover:#eff8f2;
  --hw-complete-pressed:#d7ecde;
  --hw-close:#a61b31;
  --hw-close-hover:#fff1f3;
  --hw-close-pressed:#f2d4d9;
  --hw-export:#486d8a;
  --hw-export-hover:#f3f7fa;
  --hw-export-pressed:#dce8f1;
  --hw-delete:#721126;
  --hw-delete-hover:#fff1f5;
  --hw-delete-pressed:#ecd2da;
  --hw-reopen:#665383;
  --hw-reopen-hover:#f7f3fb;
  --hw-reopen-pressed:#e5dced;
  --hw-restore:#356b5f;
  --hw-restore-hover:#f0f8f5;
  --hw-restore-pressed:#d8ebe5;
}

/* Save and Process Report: colored outline at rest, light hue on hover, stronger hue while pressed. */
.report-save-button:not(:disabled),
.process-report-button:not(:disabled){
  background:#fff!important;
  color:var(--hw-crimson)!important;
  border-color:var(--hw-crimson)!important;
  box-shadow:none;
}
.report-save-button:not(:disabled):hover,.report-save-button:not(:disabled):focus-visible,
.process-report-button:not(:disabled):hover,.process-report-button:not(:disabled):focus-visible{
  background:var(--hw-crimson-hover)!important;
  color:var(--hw-crimson)!important;
  border-color:var(--hw-crimson)!important;
}
.report-save-button:not(:disabled):active,
.process-report-button:not(:disabled):active,
.process-report-button[aria-expanded="true"]{
  background:var(--hw-crimson-pressed)!important;
  color:var(--hw-crimson)!important;
  border-color:var(--hw-crimson)!important;
}
.report-save-button:disabled{
  opacity:1;
  background:#f5f6f7!important;
  color:#a9b0b8!important;
  border-color:#d6dbe0!important;
}

/* Process menu grouping. Export and Delete each start after an explicit separator. */
.process-report-separator{
  height:1px;
  margin:7px 4px;
  background:#e2e6eb;
}
.process-report-option{
  --process-color:#596a7b;
  --process-hover:#f5f7f9;
  --process-pressed:#e6ebef;
  border:1px solid var(--process-color);
  color:var(--process-color);
  background:#fff;
  transition:background-color 145ms ease,border-color 145ms ease,color 145ms ease,transform 145ms ease,box-shadow 145ms ease;
}
.process-report-option .process-report-option-icon{color:inherit}
.process-report-option:not(:disabled):hover,.process-report-option:not(:disabled):focus-visible{
  background:var(--process-hover);
  border-color:var(--process-color);
  color:var(--process-color);
  transform:translateY(-1px);
  box-shadow:0 2px 6px rgba(31,38,50,.08);
  outline:none;
}
.process-report-option:not(:disabled):active{
  background:var(--process-pressed);
  border-color:var(--process-color);
  color:var(--process-color);
  transform:translateY(0);
  box-shadow:none;
}
.process-tone-submit{--process-color:var(--hw-crimson);--process-hover:var(--hw-crimson-hover);--process-pressed:var(--hw-crimson-pressed)}
.process-tone-return{--process-color:var(--hw-return);--process-hover:var(--hw-return-hover);--process-pressed:var(--hw-return-pressed)}
.process-tone-complete{--process-color:var(--hw-complete);--process-hover:var(--hw-complete-hover);--process-pressed:var(--hw-complete-pressed)}
.process-tone-close{--process-color:var(--hw-close);--process-hover:var(--hw-close-hover);--process-pressed:var(--hw-close-pressed)}
.process-tone-export{--process-color:var(--hw-export);--process-hover:var(--hw-export-hover);--process-pressed:var(--hw-export-pressed)}
.process-tone-delete{--process-color:var(--hw-delete);--process-hover:var(--hw-delete-hover);--process-pressed:var(--hw-delete-pressed)}
.process-tone-reopen{--process-color:var(--hw-reopen);--process-hover:var(--hw-reopen-hover);--process-pressed:var(--hw-reopen-pressed)}
.process-tone-restore{--process-color:var(--hw-restore);--process-hover:var(--hw-restore-hover);--process-pressed:var(--hw-restore-pressed)}

/* Already-executed workflow states stay visible but disabled with a faint semantic hue. */
.process-report-option-state:disabled{
  opacity:1;
  cursor:default;
  transform:none!important;
  box-shadow:none!important;
}
.process-tone-submitted:disabled{
  color:#94556a;
  border-color:#ddbdc6;
  background:#fbf0f3;
}
.process-tone-returned:disabled{
  color:#836719;
  border-color:#e2d09b;
  background:#fff8e6;
}
.process-tone-completed:disabled{
  color:#4f775e;
  border-color:#bfd8c7;
  background:#eef7f1;
}
.process-tone-closed:disabled{
  color:#92505d;
  border-color:#dfbdc5;
  background:#faecef;
}
.process-report-option:disabled .app-icon-animated,
.process-report-option:disabled .app-icon-animated *{
  animation:none!important;
  transform:none!important;
}

/* Messages: outlined mustard at rest; hue only on interaction; unread is the persistent inverted ON state. */
.message-alert-button{
  background:#fff!important;
  color:var(--message-mustard)!important;
  border-color:var(--message-mustard)!important;
}
.message-alert-button:not(:disabled):hover,.message-alert-button:not(:disabled):focus-visible{
  background:#fffaf0!important;
  color:var(--message-mustard)!important;
  border-color:var(--message-mustard)!important;
}
.message-alert-button:not(:disabled):active{
  background:var(--message-soft-hover)!important;
  color:var(--message-mustard-dark)!important;
  border-color:var(--message-mustard)!important;
}
.message-alert-button.has-unread-message{
  background:#98700d!important;
  color:#fff!important;
  border-color:#98700d!important;
  animation:message-unread-inverse-breathe 2.2s ease-in-out infinite;
}
.message-alert-button.has-unread-message:not(:disabled):hover,.message-alert-button.has-unread-message:not(:disabled):focus-visible{
  background:#896308!important;
  color:#fff!important;
  border-color:#896308!important;
}
.message-alert-button.has-unread-message:not(:disabled):active{
  background:#755405!important;
  color:#fff!important;
  border-color:#755405!important;
}
@keyframes message-unread-inverse-breathe{
  0%,100%{background-color:#9b7310;border-color:#9b7310;color:#fff}
  50%{background-color:#815d08;border-color:#815d08;color:#fff}
}
@media(prefers-reduced-motion:reduce){
  .message-alert-button.has-unread-message{animation:none}
}


/* v0.89.0 compact Process Report action rows */
.process-report-popover{padding:5px}
.process-report-option{
  min-height:34px;
  padding:5px 9px;
  gap:8px;
  border-radius:6px;
  line-height:1.15;
}
.process-report-option+.process-report-option{margin-top:2px}
.process-report-option-icon{width:18px;min-width:18px}
.process-report-option-icon .app-icon{width:17px;height:17px;flex-basis:17px}
.process-report-option>span:last-child{line-height:1.18}
.process-report-separator{margin:5px 4px}


/* v0.89.0 corrective UI compactness and report-header alignment */
:root{--report-top-action-height:38px}

/* Registry status icons never receive a button-like backdrop. */
.registry-message-icon.has-unread-message{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  color:#775600!important;
  animation:registry-message-color-breathe 2.2s ease-in-out infinite!important;
}
@keyframes registry-message-color-breathe{
  0%,100%{color:#8d690c}
  50%{color:#654800}
}
@media(prefers-reduced-motion:reduce){.registry-message-icon.has-unread-message{animation:none!important}}

/* Report identity is one compact optical row: ID + creating organization + status + last update. */
@media(min-width:1001px){
  .report-header-bar{align-items:center}
  .report-header-left{align-items:center;gap:14px}
  .report-header-left>.compact-back-link{height:auto;min-height:0;align-self:center;margin-top:0}
  .report-header-identity{display:flex;align-items:center;min-height:0}
  .report-header-primary{display:flex;align-items:center;gap:14px;flex-wrap:nowrap}
  .report-header-id-block{display:inline-flex;align-items:center;justify-items:unset;gap:5px;line-height:1.15;min-width:0}
  .report-header-id-line{height:auto;display:flex;align-items:center}
  .report-header-facility{margin:0;text-align:left;white-space:nowrap;line-height:1.15}
  .report-status-stack{height:auto;align-self:center;display:flex;align-items:center}
  .report-status-stack>.workflow-pill{margin:0}
  .report-header-primary>.report-last-update{align-self:center;margin:0;line-height:1.2}
}

/* Historical workflow state is text, not a disabled action button. */
.process-report-state{
  display:flex;
  align-items:center;
  gap:7px;
  min-height:24px;
  padding:2px 5px;
  border:0;
  background:transparent;
  font-size:.86rem;
  font-weight:700;
  line-height:1.18;
  cursor:default;
}
.process-report-state .process-report-option-icon{color:inherit}
.process-report-state.process-tone-submitted{color:#94556a}
.process-report-state.process-tone-returned{color:#836719}
.process-report-state.process-tone-completed{color:#4f775e}
.process-report-state.process-tone-closed{color:#92505d}
.process-report-state+.process-report-option{margin-top:6px}

/* 5% smaller top actions and Process Report menu while preserving alignment. */
.report-header-bar .workflow-buttons>.button,
.report-header-bar .workflow-buttons>.process-report-menu>.process-report-button,
.new-report-workflow-bar .workflow-buttons>.button,
.new-report-workflow-bar .workflow-buttons>.process-report-menu>.process-report-button{
  height:38px;
  min-height:38px;
  padding-left:9.5px;
  padding-right:9.5px;
  font-size:95%;
}
.report-header-bar .workflow-buttons>.icon-only-action,
.report-header-bar .workflow-buttons>.workflow-action{
  width:38px;
  min-width:38px;
  height:38px;
}
.workflow-buttons{gap:6px}
.process-report-main-icon{width:19px;height:19px;flex:0 0 19px}
.process-report-main-icon .app-icon{width:19px;height:19px;flex-basis:19px}
.report-save-button .app-icon-save{width:17px;height:17px;flex-basis:17px}
.process-report-popover{
  min-width:266px;
  max-width:min(399px,calc(100vw - 24px));
  padding:5px;
}
.process-report-option{
  min-height:32px;
  padding:4px 8px;
  gap:7px;
  border-radius:6px;
  font-size:95%;
}
.process-report-option+.process-report-option{margin-top:6px}
.process-report-option-icon{width:17px;min-width:17px}
.process-report-option-icon .app-icon{width:16px;height:16px;flex-basis:16px}
.process-report-separator{margin:6px 4px}
@media(max-width:800px){
  :root{--report-top-action-height:38px}
  .process-report-popover{min-width:min(285px,calc(100vw - 24px))}
}
@media(max-width:1000px){
  .report-header-id-block{display:flex;align-items:center;gap:5px;flex-wrap:wrap}
  .report-header-facility{margin:0;text-align:left}
}


/* v0.89.0 header/account refinement */
/* Additional 5% compacting of the current top action and Process Report controls. */
:root{--report-top-action-height:36px}
.report-header-bar .workflow-buttons>.button,
.report-header-bar .workflow-buttons>.process-report-menu>.process-report-button,
.new-report-workflow-bar .workflow-buttons>.button,
.new-report-workflow-bar .workflow-buttons>.process-report-menu>.process-report-button{
  height:36px;
  min-height:36px;
  padding-left:9px;
  padding-right:9px;
  font-size:90.25%;
}
.report-header-bar .workflow-buttons>.icon-only-action,
.report-header-bar .workflow-buttons>.workflow-action{
  width:36px;
  min-width:36px;
  height:36px;
}
.process-report-main-icon{width:18px;height:18px;flex:0 0 18px}
.process-report-main-icon .app-icon{width:18px;height:18px;flex-basis:18px}
.report-save-button .app-icon-save{width:16px;height:16px;flex-basis:16px}
.process-report-popover{
  min-width:253px;
  max-width:min(379px,calc(100vw - 24px));
  padding:4px;
}
.process-report-option{
  min-height:30px;
  padding:4px 7px;
  gap:7px;
  font-size:90.25%;
}
.process-report-option+.process-report-option{margin-top:6px}
.process-report-option-icon{width:16px;min-width:16px}
.process-report-option-icon .app-icon{width:15px;height:15px;flex-basis:15px}
.process-report-state{font-size:.82rem;min-height:23px;padding:2px 4px}
.process-report-separator{margin:5px 4px}

/* Two-line identity: creating organization stays directly under the Report ID. */
@media(min-width:1001px){
  .report-header-bar{align-items:center}
  .report-header-left{align-items:flex-start;gap:13px}
  .report-header-left>.compact-back-link{align-self:flex-start;margin-top:3px}
  .report-header-identity{display:flex;align-items:flex-start;min-height:0}
  .report-header-primary{display:flex;align-items:flex-start;gap:13px;flex-wrap:nowrap}
  .report-header-id-block{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    justify-content:flex-start;
    gap:1px;
    line-height:1.12;
    min-width:0;
  }
  .report-header-id-line{height:auto;display:flex;align-items:center}
  .report-header-facility{margin:0;text-align:left;white-space:nowrap;line-height:1.12}
  .report-status-stack{align-self:flex-start;display:flex;align-items:center;margin-top:0}
  .report-status-stack>.workflow-pill{margin:0}
  .report-header-primary>.report-last-update{align-self:flex-start;margin-top:5px;line-height:1.2}
}

/* Account is a fourth navigation item; details and Logout live in its popover. */
.header-account-menu{position:relative;display:flex;align-self:stretch;min-width:0}
.header-account-menu>.account-nav-item{
  appearance:none;
  font:inherit;
  cursor:pointer;
}
.header-account-menu>.account-nav-item .header-nav-label{
  max-width:88px;
  overflow:hidden;
  text-overflow:ellipsis;
}
.header-account-menu>.account-nav-item[aria-expanded="true"]{
  background:rgba(255,255,255,.18);
  border-color:rgba(255,255,255,.45);
  opacity:1;
}
.header-account-menu>.account-nav-item .header-nav-symbol,
.header-account-menu>.account-nav-item .header-nav-symbol .app-icon{
  width:27px;
  height:27px;
}
.account-menu-popover{
  position:absolute;
  top:calc(100% + 8px);
  right:0;
  z-index:1200;
  width:min(290px,calc(100vw - 24px));
  background:#fff;
  border:1px solid #d7dee8;
  border-radius:10px;
  box-shadow:0 14px 36px rgba(13,30,48,.20);
  padding:14px;
  display:grid;
  gap:12px;
  color:var(--ink);
}
.account-popover-identity{display:grid;gap:4px;min-width:0}
.account-popover-identity strong{font-size:15px;line-height:1.2;color:var(--ink)}
.account-popover-identity span{font-size:12px;line-height:1.35;color:var(--muted);overflow-wrap:anywhere}
.account-popover-logout{width:100%;justify-content:center}
@media(max-width:1000px){
  .header-account-menu>.account-nav-item .header-nav-label{max-width:62px}
}
@media(max-width:800px){
  :root{--report-top-action-height:36px}
  .process-report-popover{min-width:min(271px,calc(100vw - 24px))}
  .header-account-menu>.account-nav-item .header-nav-symbol,
  .header-account-menu>.account-nav-item .header-nav-symbol .app-icon{width:22px;height:22px}
  .header-account-menu>.account-nav-item .header-nav-label{max-width:42px}
  .account-menu-popover{top:calc(100% + 6px);right:0;width:min(270px,calc(100vw - 16px))}
}


/* v0.89.0 mobile popover correction: every active popover is viewport-positioned in JS. */
html.hv-mobile-layout .header-icon-navigation>.header-account-menu{
  flex:1 1 0!important;
  width:auto!important;
  min-width:0!important;
  max-width:124px!important;
  height:58px!important;
  align-self:stretch!important;
}
html.hv-mobile-layout .header-account-menu>.account-nav-item{
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  height:58px!important;
  padding:5px 4px!important;
}
.account-menu-popover[data-floating-positioned="true"],
.process-report-popover[data-floating-positioned="true"],
.paper-form-popover[data-floating-positioned="true"],
.registry-filter-popover[data-floating-positioned="true"]{
  z-index:1400!important;
  box-sizing:border-box!important;
}
html.hv-mobile-layout .account-menu-popover[data-floating-positioned="true"],
html.hv-mobile-layout .process-report-popover[data-floating-positioned="true"],
html.hv-mobile-layout .paper-form-popover[data-floating-positioned="true"],
html.hv-mobile-layout .registry-filter-popover[data-floating-positioned="true"]{
  max-width:calc(100vw - 16px)!important;
}

/* v0.89.0 report header identity/status pill refinement */
@media(min-width:801px){
  .report-header-bar{
    align-items:center;
  }
  .report-header-left{
    display:flex;
    align-items:center;
    gap:20px;
    min-width:0;
  }
  .report-header-left>.compact-back-link{
    align-self:center;
    margin:0;
    height:auto;
    min-height:0;
    white-space:nowrap;
  }
  .report-header-identity{
    display:flex;
    align-items:center;
    min-width:0;
    min-height:0;
  }
  .report-header-primary{
    display:flex;
    align-items:center;
    gap:20px;
    flex-wrap:nowrap;
    min-width:0;
  }
  .report-identity-pill{
    display:inline-flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:1px;
    min-width:max-content;
    padding:6px 15px 5px;
    border:1px solid transparent;
    border-radius:17px;
    line-height:1.05;
  }
  .report-identity-pill .report-header-id{
    color:#10243b;
    font-size:18.9px;
    line-height:1.08;
    white-space:nowrap;
  }
  .report-identity-pill .report-header-facility{
    margin:0;
    max-width:320px;
    color:#66758a;
    font-size:11.5px;
    font-weight:650;
    line-height:1.12;
    text-align:center;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }
  .report-header-primary>.report-last-update{
    align-self:center;
    margin:0;
    line-height:1.2;
    white-space:nowrap;
  }
}

@media(max-width:800px){
  .report-header-left{
    align-items:center;
  }
  .report-header-identity{
    min-width:0;
  }
  .report-header-primary{
    align-items:center;
    gap:9px 12px;
  }
  .report-identity-pill{
    display:inline-flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:1px;
    max-width:min(72vw,360px);
    padding:5px 12px 4px;
    border:1px solid transparent;
    border-radius:16px;
    line-height:1.05;
  }
  .report-identity-pill .report-header-id{
    color:#10243b;
    line-height:1.08;
    white-space:nowrap;
  }
  .report-identity-pill .report-header-facility{
    margin:0;
    max-width:100%;
    color:#66758a;
    font-size:11px;
    line-height:1.12;
    text-align:center;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }
  .report-header-primary>.report-last-update{
    margin:0;
    align-self:center;
  }
}


/* v0.89.1 Process Report history/action refinement */
.process-report-state{
  justify-content:center;
  text-align:center;
  width:100%;
  padding:3px 8px;
  min-height:24px;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  pointer-events:none;
}
.process-report-state>span{display:block;width:100%;text-align:center}
.process-report-state .process-report-option-icon{display:none!important}
.process-report-history-separator{margin-top:6px;margin-bottom:7px}
.process-report-option{
  padding-top:4.4px;
  padding-bottom:4.4px;
  min-height:31px;
}


/* v0.89.1 focused popover backdrop — active popovers are portaled to body so they stay above the scrim */
.popover-focus-scrim{
  position:fixed;
  inset:0;
  z-index:1390;
  background:rgba(15,23,42,.12);
  -webkit-backdrop-filter:blur(1px);
  backdrop-filter:blur(1px);
  opacity:0;
  transition:opacity 140ms ease;
}
.popover-focus-scrim.is-visible{opacity:1}
.popover-focus-owner{z-index:1400!important}
.account-menu-popover.popover-focus-owner,
.process-report-popover.popover-focus-owner,
.paper-form-popover.popover-focus-owner,
.registry-filter-popover.popover-focus-owner{z-index:1400!important}
@media(max-width:800px){
  .popover-focus-scrim{background:rgba(15,23,42,.14);-webkit-backdrop-filter:blur(1.5px);backdrop-filter:blur(1.5px)}
}
@media(prefers-reduced-motion:reduce){.popover-focus-scrim{transition:none}}


/* v0.90.0 unified overlay focus treatment — refined focus scrim.
   Popovers and dialogs use 15% darkening with gentle blur and desaturation. */
.popover-focus-scrim{
  background:rgba(8,30,52,.15);
  -webkit-backdrop-filter:blur(3px) saturate(35%);
  backdrop-filter:blur(3px) saturate(35%);
}
dialog::backdrop,
.update-notice-dialog::backdrop,
.message-dialog::backdrop,
.account-menu-dialog::backdrop,
.session-timeout-dialog::backdrop{
  background:rgba(8,30,52,.15);
  -webkit-backdrop-filter:blur(3px) saturate(35%);
  backdrop-filter:blur(3px) saturate(35%);
}

/* v0.90.0 Process Report section separator spacing refinement.
   Double the vertical breathing room around separators without changing line weight. */
.process-report-separator{
  margin-top:10px;
  margin-bottom:10px;
}
.process-report-history-separator{
  margin-top:12px;
  margin-bottom:14px;
}

/* v0.90.0 popover spacing + terminal-state refinement.
   Give all popover menus 10% more outer breathing room on every side. */
.process-report-popover{padding:4.4px}
.account-menu-popover{padding:15.4px}
.paper-form-popover{padding:6.6px}
.registry-filter-popover{padding:15.4px 17.6px}
.process-report-state.process-tone-deleted{color:#721126}


/* v0.90.0 report status legibility + Process Report terminal-state centering refinement */
.process-report-state{
  display:grid;
  place-items:center;
  min-height:32px;
  padding:5px 8px;
}
.process-report-state>span{
  display:block;
  width:100%;
  text-align:center;
  line-height:1.2;
}
/* Use the canonical workflow/status text tones for terminal informational states. */
.process-report-state.process-tone-completed{color:#17603b}
.process-report-state.process-tone-closed{color:#8a281f}
.process-report-state.process-tone-deleted{color:#6f1d1b}

/* The large report identity pill is itself the in-report status indicator.
   Its ID and organization text therefore inherit the canonical status-pill text color. */
.report-identity-pill .report-header-id,
.report-identity-pill .report-header-facility{
  color:inherit!important;
}
.report-identity-pill .report-header-facility{opacity:.86}


/* v0.90.0 login branding layout refinement: live HemoWatch wordmark on the left; IPhVC logo + three-line footer lockup beneath the login card. */
.hemowatch-login-lockup.login-wordmark-only{
  width:auto;
  margin:0;
  justify-content:center;
}
.hemowatch-login-lockup.login-wordmark-only .hemowatch-wordmark-name{
  font-size:72px;
}
.login-panel{
  gap:24px;
}
.login-panel .login-footer.iphvc-footer.login-iphvc-lockup{
  display:flex;
  flex-direction:row;
  align-items:center;
  justify-content:center;
  gap:14px;
  padding:0 10px;
  border-top:0;
  background:transparent;
  text-align:left;
  line-height:1.35;
}
.login-panel .login-footer.iphvc-footer.login-iphvc-lockup>img{
  width:52px;
  max-width:52px;
  height:auto;
  flex:0 0 auto;
}
.login-panel .login-footer.iphvc-footer.login-iphvc-lockup>div{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:2px;
}
@media (max-width:800px){
  .login-panel{gap:22px}
  .login-panel .login-footer.iphvc-footer.login-iphvc-lockup{
    flex-direction:row;
    text-align:left;
  }
  .hemowatch-login-lockup.login-wordmark-only .hemowatch-wordmark-name{font-size:58px}
}
@media (max-width:640px){
  .login-panel .login-footer.iphvc-footer.login-iphvc-lockup{gap:11px;padding-inline:6px}
  .login-panel .login-footer.iphvc-footer.login-iphvc-lockup>img{width:44px;max-width:44px}
  .hemowatch-login-lockup.login-wordmark-only .hemowatch-wordmark-name{font-size:46px}
}
html.hv-mobile-layout .login-panel .login-footer.iphvc-footer.login-iphvc-lockup{
  flex-direction:row;
  text-align:left;
}
html.hv-mobile-layout .hemowatch-login-lockup.login-wordmark-only .hemowatch-wordmark-name{
  font-size:44px;
}

/* v0.90.1 gradual overlay-focus transition.
   The final scrim remains 15% darkening + 3px blur + 35% saturation. */
.popover-focus-scrim{
  opacity:0;
  transition:opacity 200ms ease;
  will-change:opacity;
}
.popover-focus-scrim.is-visible{opacity:1}
.popover-focus-scrim.is-closing{pointer-events:none}

@keyframes hemowatch-scrim-in{
  from{
    background:rgba(8,30,52,0);
    -webkit-backdrop-filter:blur(0) saturate(100%);
    backdrop-filter:blur(0) saturate(100%);
  }
  to{
    background:rgba(8,30,52,.15);
    -webkit-backdrop-filter:blur(3px) saturate(35%);
    backdrop-filter:blur(3px) saturate(35%);
  }
}

dialog::backdrop,
.update-notice-dialog::backdrop,
.message-dialog::backdrop,
.account-menu-dialog::backdrop,
.session-timeout-dialog::backdrop{
  animation:hemowatch-scrim-in 200ms ease both;
}

@media(prefers-reduced-motion:reduce){
  .popover-focus-scrim{transition:none!important}
  dialog::backdrop,
  .update-notice-dialog::backdrop,
  .message-dialog::backdrop,
  .account-menu-dialog::backdrop,
  .session-timeout-dialog::backdrop{animation:none!important}
}

/* v0.90.2 registry filter reliability + explicit close affordance. */
.registry-filter-popover .registry-filter-groups{padding-top:22px}
.registry-filter-close{
  position:absolute;
  top:7px;
  right:10px;
  z-index:2;
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  line-height:1;
  cursor:pointer;
  color:#526177;
}
.registry-filter-close:hover{color:#8f1027}
.registry-filter-close:focus-visible{outline:2px solid rgba(143,16,39,.22);outline-offset:2px;border-radius:6px}


/* v0.90.3 canonical Registry export chooser popover. */
.export-selected-menu{position:relative;display:inline-flex}
.export-selected-popover{
  min-width:285px;
  max-width:min(390px,calc(100vw - 24px));
  padding:8px;
}
.export-selected-heading{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  min-height:38px;
  margin:0 0 5px;
  padding:5px 36px 9px 8px;
  border-bottom:1px solid #e6eaf0;
}
.export-selected-heading>strong{font-size:14px;line-height:1.25;color:var(--ink)}
.export-selected-heading>small{font-size:11px;line-height:1.25;color:var(--muted);white-space:nowrap}
.export-selected-close{
  position:absolute;
  top:5px;
  right:7px;
  z-index:2;
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  line-height:1;
  cursor:pointer;
  color:#526177;
}
.export-selected-close:hover{color:#8f1027}
.export-selected-close:focus-visible{outline:2px solid rgba(143,16,39,.22);outline-offset:2px;border-radius:6px}
.export-selected-option{align-items:flex-start}
.export-selected-option-copy{display:grid;gap:2px;min-width:0}
.export-selected-option-copy>strong{font-size:inherit;line-height:1.25}
.export-selected-option-copy>small{color:var(--muted);font-size:11px;font-weight:500;line-height:1.3}
.export-selected-popover.popover-focus-owner{z-index:1400!important}
@media(max-width:800px){
  .export-selected-popover{min-width:min(285px,calc(100vw - 24px));max-width:calc(100vw - 16px)}
}

/* v0.90.8 export-mode refinement + canonical Report/Paper Form popovers. */
.canonical-popover-heading,
.export-selected-heading{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  min-height:38px;
  margin:0 0 7px;
  padding:5px 36px 9px 8px;
  border-bottom:1px solid #e6eaf0;
}
.canonical-popover-heading>strong,
.export-selected-heading>strong{font-size:14px;line-height:1.25;color:var(--ink)}
.canonical-popover-heading>small,
.export-selected-heading>small{font-size:11px;line-height:1.25;color:var(--muted);white-space:nowrap}

.export-selected-popover{min-width:300px;max-width:min(410px,calc(100vw - 24px));padding:8px}
.export-option-excel{
  --process-color:#3f7553;
  --process-hover:#eaf6ee;
  --process-pressed:#d8ecdf;
  background:#f3faf5;
  border-color:#b9d9c3;
  color:#356947;
}
.export-option-excel:not(:disabled):hover,.export-option-excel:not(:disabled):focus-visible{background:#eaf6ee;border-color:#78ae89;color:#2f6542}
.export-option-excel:not(:disabled):active{background:#d8ecdf;border-color:#6da27e;color:#2b5c3c}
.export-option-pdf{
  --process-color:#98364a;
  --process-hover:#fff0f3;
  --process-pressed:#f5dce2;
  background:#fff6f7;
  border-color:#e7c4cb;
  color:#8e3143;
}
.export-option-pdf:not(:disabled):hover,.export-option-pdf:not(:disabled):focus-visible{background:#fff0f3;border-color:#c98390;color:#842c3d}
.export-option-pdf:not(:disabled):active{background:#f5dce2;border-color:#bd7483;color:#782738}
.export-option-pdf:disabled{
  opacity:1;
  cursor:not-allowed;
  background:#fbf7f8;
  border-color:#e8dfe1;
  color:#a99a9e;
  box-shadow:none!important;
  transform:none!important;
}
.export-option-pdf:disabled .export-selected-option-copy>small{color:#b1a6a9}
.export-mode-separator{height:1px;margin:10px 4px;background:#e1e5ea}
.export-limit-warning{
  margin:7px 7px 2px;
  color:#b42318;
  font-size:11px;
  font-weight:650;
  line-height:1.35;
}

.report-export-menu{position:relative;display:inline-flex;flex:0 0 auto}
.report-export-popover{min-width:285px;max-width:min(390px,calc(100vw - 24px));padding:8px}
.report-export-popover .export-option-pdf+.export-option-pdf{margin-top:6px}
.report-export-close,
.paper-form-close{
  position:absolute;
  top:5px;
  right:7px;
  z-index:2;
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  line-height:1;
  cursor:pointer;
  color:#526177;
}
.report-export-close:hover,.paper-form-close:hover{color:#8f1027}
.report-export-close:focus-visible,.paper-form-close:focus-visible{outline:2px solid rgba(143,16,39,.22);outline-offset:2px;border-radius:6px}
.report-export-popover.popover-focus-owner{z-index:1400!important}

/* Paper form now uses the same focused popover window language as Export and Filters. */
.paper-form-popover{
  min-width:300px;
  max-width:min(410px,calc(100vw - 24px));
  padding:8px;
  background:#fff;
  border:1px solid #d8dee7;
  border-radius:9px;
  box-shadow:0 14px 36px rgba(30,20,25,.18);
}
.paper-form-popover .paper-form-option{
  --process-color:#796331;
  --process-hover:#fff8e9;
  --process-pressed:#f6e9c8;
  display:grid;
  grid-template-columns:28px minmax(0,1fr) 22px;
  align-items:center;
  gap:10px;
  min-height:46px;
  padding:8px 10px;
  border:1px solid #d9cda8;
  border-radius:6px;
  background:#fffaf0;
  color:#655226;
  text-decoration:none;
  font-weight:650;
}
.paper-form-popover .paper-form-option+.paper-form-option{margin-top:6px;border-top:1px solid #d9cda8}
.paper-form-popover .paper-form-option:hover,.paper-form-popover .paper-form-option:focus-visible{background:#fff5df;border-color:#bda565;color:#5b481e;outline:none}
.paper-form-popover .paper-form-option:active{background:#f6e9c8;border-color:#ad9657;color:#544119}
.paper-form-option-copy{display:grid;gap:2px;min-width:0}
.paper-form-popover .paper-form-option-copy>strong{display:block;font-size:inherit;line-height:1.25;color:inherit}
.paper-form-popover .paper-form-option-copy>small{display:block;margin:0;color:#7f7258;font-size:11px;font-weight:500;line-height:1.3}
.paper-form-popover .popover-file-icon{color:#796331;display:grid;place-items:center}
.paper-form-popover .popover-download{color:#8f1027;display:grid;place-items:center}
.paper-form-popover.popover-focus-owner{z-index:1400!important}

@media(max-width:800px){
  .export-selected-popover,.report-export-popover,.paper-form-popover{min-width:min(285px,calc(100vw - 24px));max-width:calc(100vw - 16px)}
}
