/* Shared JPMC language: HR Training sidebar/account, Infection Control organisation, DDI directories. */
:root{--sidebar:278px;--ink:#20272c;--muted:#616d77;--paper:#fff;--canvas:#f5f6f8;--accent:#8c263c;--warm:#f5e9d4;--line:#e8eaed;--surface-soft:#f7f8fa;--bs-body-font-family:"Segoe UI Variable","Segoe UI",system-ui,sans-serif;--bs-link-color:var(--accent);--bs-link-hover-color:#742034}
body{font-family:var(--bs-body-font-family);background:linear-gradient(135deg,rgba(248,248,246,.48),rgba(235,238,237,.62)),url('img/menu_bg.png') center/cover fixed no-repeat;color:var(--ink)}
.icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;flex-shrink:0}.icon svg{width:100%;height:100%;stroke-width:1.65}
.sidebar{width:278px;padding:18px 12px;display:flex;flex-direction:column;overflow:hidden;background:rgba(255,255,255,.94);box-shadow:10px 0 28px rgba(30,39,43,.035);border:0}
.sidebar .brand{display:flex;align-items:center;gap:12px;padding:9px;margin:0 0 20px;color:var(--ink)}.brand-logo{display:grid;place-items:center;width:45px;height:45px;flex-shrink:0;border-radius:13px;background:#fff;box-shadow:0 8px 20px rgba(30,39,43,.05)}.brand-logo img{width:35px;height:35px;object-fit:contain}
.sidebar .brand strong{font-size:16px;letter-spacing:-.3px}.sidebar .brand small{font-size:10px;letter-spacing:0;margin-top:5px;color:var(--muted)}
.sidebar-nav{flex:1;min-height:0;overflow:auto;scrollbar-width:thin;padding:0 3px}.sidebar .nav-label{font-size:10px;letter-spacing:.1em;margin:21px 12px 9px;color:var(--muted);font-weight:650}.sidebar .nav-label:first-child{margin-top:6px}
.sidebar .nav-link{display:flex;align-items:center;gap:12px;margin:4px 0;padding:11px 13px;min-height:43px;font-size:13px;border-radius:11px;color:#57616b;font-weight:500;line-height:1.35}.sidebar .nav-link .icon{width:19px;height:19px;color:inherit}.sidebar .nav-link:hover{background:var(--surface-soft);color:var(--ink)}.sidebar .nav-link.active{background:var(--warm);color:#792c24;font-weight:650;box-shadow:none}
.sidebar-bottom{margin:12px 3px 0;padding:13px 7px 0;border-top:1px solid var(--line);flex-shrink:0}.scope-summary{font-size:11px;color:var(--muted);margin:0 0 9px}.user-link{padding:0;gap:11px;display:flex;align-items:center;color:var(--ink)}.user-link>span:last-child{min-width:0}.user-link strong{font-size:13px;display:block;overflow-wrap:anywhere}.user-link small{font-size:11px;color:var(--muted)}.avatar-image{width:39px;height:39px;border-radius:12px;background:#fff;overflow:hidden;display:flex;align-items:center;justify-content:center;flex-shrink:0}.avatar-image img{width:100%;height:100%;object-fit:contain;padding:4px}.logout-button{font-size:12px;color:var(--muted);padding:9px 0;margin:3px 0 0;background:none;border:0;display:flex;gap:12px;align-items:center}
.sidebar-theme{display:flex;align-items:center;gap:11px;font-size:11px;color:var(--muted);padding:13px 0 3px;cursor:pointer}.sidebar-theme input{appearance:none;cursor:pointer;width:35px;height:20px;border-radius:99px;background:#dce0e4;border:0;position:relative;margin:0}.sidebar-theme input::after{content:"";position:absolute;width:14px;height:14px;left:3px;top:3px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0002}.sidebar-theme input:checked{background:#8c263c}.sidebar-theme input:checked::after{left:18px}
.role-switch{margin:0 6px 15px}.role-switch>label{font-size:10px;color:var(--muted);display:block;margin-bottom:6px}.role-select-row{display:flex;gap:6px}.role-select-row .form-select{min-width:0;flex:1;font-size:12px;padding:9px 25px 9px 10px}.role-select-row .btn{font-size:10px;padding:6px 9px}
.role-view{padding:13px 14px;border:1px solid var(--line);border-radius:12px}.role-view span{font-size:10px;color:var(--muted);display:block;margin-bottom:5px}.role-view strong{font-size:12px;font-weight:600}
.main-shell{margin-left:278px;min-height:100dvh;display:flex;flex-direction:column}.content{width:100%;max-width:1660px;margin:0 auto;padding:32px 34px 42px;flex:1}.topbar{height:86px;background:rgba(255,255,255,.79);backdrop-filter:blur(12px);border:0;padding:0 34px;flex-shrink:0}.breadcrumb-copy{display:flex;flex-direction:column;gap:6px;color:var(--ink)}.breadcrumb-copy small{font-size:9px;letter-spacing:.12em;color:var(--muted)}.breadcrumb-copy strong{font-size:18px;font-weight:600;letter-spacing:-.35px}.today-date{font-size:11px;color:var(--muted)}.secure-dot{font-size:11px;color:var(--muted)}
.workspace h1{font-size:28px;font-weight:650;letter-spacing:-.8px}.page-intro p{font-size:13px;max-width:760px;color:var(--muted)}.page-intro{margin-bottom:25px}.eyebrow,.section-kicker{font-size:10px;letter-spacing:.11em;color:var(--muted)}
.panel{background:var(--paper);border:0;border-radius:15px;box-shadow:0 8px 30px rgba(30,39,43,.035);padding:25px;margin-bottom:24px}.panel-table{padding:0;overflow:hidden}.panel>h2{font-size:18px;margin-bottom:18px}.panel p{font-size:13px}.btn{font-size:13px;border-radius:10px;font-weight:600;min-height:39px;display:inline-flex;align-items:center;justify-content:center;gap:9px;white-space:normal}.btn-dark{--bs-btn-bg:#28323a;--bs-btn-border-color:#28323a;--bs-btn-hover-bg:#151f26;--bs-btn-hover-border-color:#151f26}.btn-sm{min-height:33px;font-size:12px;padding:6px 11px}.btn-outline-secondary{color:var(--ink);border-color:#d6dbe0;background:var(--paper)}
.workspace .field label,.auth-page .field label{font-size:13px;color:var(--ink);font-weight:600}.workspace .field label .optional{color:var(--muted);font-size:11px}.workspace .form-control,.workspace .form-select,.auth-page .form-control,.auth-page .form-select{font-size:14px;min-height:44px;color:var(--ink);background-color:var(--surface-soft);border:1px solid var(--line);border-radius:10px;padding:10px 12px}.workspace .form-select,.auth-page .form-select{padding-right:30px}.workspace .form-help,.auth-page .form-help{color:var(--muted);font-size:12px;line-height:1.7;margin:12px 0 18px}.form-control:focus,.form-select:focus{border-color:var(--accent);box-shadow:0 0 0 3px #8c263c16}
.filter-bar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:14px;background:rgba(255,255,255,.8);border:0;border-radius:14px;padding:18px;margin-bottom:22px}.filter-bar .field{flex:1 1 150px;min-width:110px;margin:0}.filter-bar .field:first-of-type{flex:1.8 1 220px}.filter-bar .size-field{flex:0 0 80px;min-width:70px}.filter-bar .btn{min-height:44px}.directory-toolbar{display:flex;justify-content:flex-end;gap:12px;margin-bottom:18px}.directory-tabs{display:flex;gap:20px;overflow:auto;border-bottom:1px solid var(--line);margin:0 0 22px}.directory-tabs a{font-size:13px;padding:0 3px 13px;white-space:nowrap;color:var(--muted);border-bottom:2px solid transparent}.directory-tabs a.active{color:var(--accent);border-color:var(--accent);font-weight:650}
.workspace .clinical-table{margin:0}.workspace .clinical-table thead th{font-size:11px;color:var(--muted);font-weight:650;text-transform:none;letter-spacing:.02em;background:var(--surface-soft);padding:15px 18px;border:0}.workspace .clinical-table th a{color:inherit}.workspace .clinical-table tbody td{font-size:13px;padding:16px 18px;background:var(--paper);color:var(--ink);border-color:var(--line);vertical-align:middle}.workspace .clinical-table td small{display:block;font-size:11px;color:var(--muted);margin-top:4px}.clinical-table strong{font-weight:600}.clinical-table td .btn{white-space:nowrap}.pagination-bar{display:flex;flex-wrap:wrap;gap:15px;align-items:center;justify-content:space-between;color:var(--muted);font-size:12px;margin:20px 0}.directory-pages{display:flex;gap:4px;align-items:center;flex-wrap:wrap}.directory-pages a,.directory-pages span{min-width:32px;min-height:34px;display:grid;place-items:center;padding:5px 9px;border-radius:8px;color:var(--muted)}.directory-pages a:hover{background:var(--surface-soft)}.directory-pages a.active{background:var(--accent);color:#fff}
.management-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:26px}.management-card{background:var(--paper);box-shadow:0 8px 30px rgba(30,39,43,.035);border-radius:15px;display:flex;align-items:flex-start;gap:18px;padding:24px;color:var(--ink)}.management-card:hover{box-shadow:0 10px 32px rgba(30,39,43,.09);color:var(--ink)}.management-icon{display:grid;place-items:center;width:42px;height:42px;background:var(--surface-soft);border-radius:12px;color:var(--accent);flex-shrink:0}.management-card>div{flex:1;min-width:0}.management-card h2{font-size:17px;margin:0 0 8px}.management-card strong{font-size:12px;color:var(--accent);font-weight:600}.management-card p{font-size:12px;color:var(--muted);margin:8px 0 0;line-height:1.7}.management-card>.icon{color:var(--muted);width:17px}.management-note p{max-width:900px;margin-bottom:0}
.admin-welcome{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:32px;padding:35px 38px;background:var(--paper);border-radius:24px;margin-bottom:26px}.welcome-role{display:inline-flex;align-items:center;gap:8px;padding:7px 11px;font-size:11px;border-radius:20px;background:#f8eef1;color:var(--accent);margin-bottom:18px}.welcome-role .icon{width:15px;height:15px}.workspace .admin-welcome h1{font-size:clamp(25px,2.4vw,36px);margin:0 0 15px;line-height:1.2}.admin-welcome>div>p{font-size:13px;color:var(--muted);margin-bottom:25px}.admin-welcome .btn{border-radius:24px;background:#8c263c;border-color:#8c263c;color:#fff;padding:12px 21px}.welcome-summary{align-self:center;background:#f8eef1;border-radius:20px;padding:27px}.welcome-summary>span{font-size:10px;font-weight:650;letter-spacing:.1em;color:#8c263c}.welcome-summary>strong{display:block;font-size:35px;font-weight:650;margin:8px 0}.welcome-summary>p{font-size:12px;color:#616d77;margin:0;line-height:1.7}[data-theme=dark] .welcome-role,[data-theme=dark] .welcome-summary{background:#35232e}[data-theme=dark] .welcome-summary>span{color:var(--accent)}[data-theme=dark] .welcome-summary>p{color:var(--muted)}.sidebar .nav-link.active{position:relative}.sidebar .nav-link.active::before{content:"";position:absolute;left:0;top:10px;bottom:10px;width:3px;border-radius:3px;background:#8c263c}
.choice-list{border:1px solid var(--line);border-radius:12px;padding:16px;margin:20px 0;max-height:300px;overflow:auto}.choice-list legend{font-size:13px;font-weight:650;float:none;width:auto;margin:0 0 13px}.choice-list label{display:flex;align-items:flex-start;gap:10px;font-size:13px;padding:7px 0;line-height:1.5}.choice-list input{flex-shrink:0;margin:3px 0 0}.form-check-input:checked{background-color:var(--accent);border-color:var(--accent)}.check-line{display:flex;align-items:flex-start;gap:11px;font-size:13px;line-height:1.7;margin:18px 0}.check-line input{flex-shrink:0;margin-top:5px}.narrow-panel{max-width:750px}.modal-content{border:0;border-radius:16px;background:var(--paper)}.modal-header,.modal-body{padding:22px}.modal-header{border-color:var(--line)}.modal-body .field{margin-bottom:18px}.credential-panel{border-left:4px solid var(--accent)}.credential-panel details label{display:block;margin-top:15px;font-size:12px}.credential-panel input{font-family:Consolas,monospace}.paste-example{font-size:12px;white-space:pre;overflow:auto;padding:12px;background:var(--surface-soft);border-radius:8px}.request-review{min-width:190px}.request-review summary{color:var(--accent)}.request-review form{padding:16px 0;min-width:220px}.request-review .field{margin-bottom:13px}.request-review textarea{min-width:220px}.account-grid{display:grid;grid-template-columns:280px minmax(0,1fr);gap:25px}.profile-summary{align-self:start;text-align:center}.profile-photo{width:110px;height:110px;object-fit:contain;padding:8px;background:#fff;border-radius:22px;margin-bottom:22px}.profile-summary h2{margin-bottom:7px}.profile-summary p{color:var(--muted)}.profile-role-list{display:flex;flex-wrap:wrap;justify-content:center;gap:7px;margin-bottom:24px}.profile-summary dl{border-top:1px solid var(--line);padding-top:20px;text-align:left}.profile-summary dt{font-size:11px;color:var(--muted);font-weight:500;margin-top:15px}.profile-summary dd{font-size:12px;margin:5px 0 0}.account-grid>div{min-width:0}.workspace-footer{font-size:10px;color:var(--muted);padding:0 34px 20px}.auth-theme{position:absolute;top:20px;right:20px;font-size:12px}.auth-page .auth-card{background:var(--paper);box-shadow:0 20px 70px rgba(30,39,43,.08);border-radius:20px}.auth-hero h1{font-weight:600;color:var(--ink)}.auth-hero p{color:var(--muted)}.auth-brand{gap:12px;color:var(--ink)}.auth-art{display:none}.auth-page .auth-footnote{font-size:12px;color:var(--muted)}.auth-card .form-grid{gap:18px}.auth-wrap{padding-top:70px;padding-bottom:45px}
[data-theme=dark]{--ink:#edf1f3;--muted:#acb8c1;--paper:#1b252b;--canvas:#12191e;--accent:#f0a1b3;--warm:#392d2c;--line:#34424b;--surface-soft:#212d34;--bs-body-color:var(--ink);--bs-body-bg:var(--paper);--bs-link-color:var(--accent);--bs-link-hover-color:#f7bac8;color-scheme:dark}
[data-theme=dark] body{--muted:#acb8c1;background:linear-gradient(135deg,rgba(19,28,33,.83),rgba(27,36,41,.9)),url('img/menu_bg.png') center/cover fixed no-repeat;color:var(--ink)}
[data-theme=dark] .sidebar{background:rgba(20,29,39,.96)}[data-theme=dark] .topbar{background:rgba(20,29,39,.87)}[data-theme=dark] .sidebar .nav-link{color:#b8c2ca}[data-theme=dark] .sidebar .nav-link.active{color:#f3c4ab}[data-theme=dark] .filter-bar{background:rgba(27,37,43,.9)}[data-theme=dark] .btn-dark{--bs-btn-bg:#e8edf0;--bs-btn-border-color:#e8edf0;--bs-btn-color:#20272c;--bs-btn-hover-bg:#d3dee5;--bs-btn-hover-color:#20272c;--bs-btn-hover-border-color:#d3dee5}[data-theme=dark] .btn-outline-secondary{border-color:#53616b;color:var(--ink)}[data-theme=dark] .directory-pages a.active{color:#261d24}
[data-theme=dark] .workspace :is(.kpi>span,.kpi>small,.chart-footnote,.patient-strip small,.patient-strip span,.wound-summary small,.wound-summary span:not(.badge-status),.wound-card p,.wound-card-bottom,.wound-card-score>span,.score-status,.score-components dt,.timeline-item small,.detail-grid small,.evidence-wound>summary>span,.report-method,.scope-caption,.nav-label,.workspace-footer){color:var(--muted)}
[data-theme=dark] :is(.kpi,.patient-strip,.wound-card,.wound-summary,.live-score,.timeline-item,.audit-element,.confirmation-check,.policy-summary,.notice-banner,.reference-table,.evidence-wound,.clinical-note){background:var(--paper);border-color:var(--line);color:var(--ink)}[data-theme=dark] :is(.score-footnote,.print-note,.section-heading,.clinical-tabs,.audit-element-body,.patient-strip,.policy-summary>div){border-color:var(--line)}[data-theme=dark] .notice-banner{background:#352f25}[data-theme=dark] .notice-banner p{color:#d5c5ad}[data-theme=dark] .badge-neutral{background:#34414c;color:#e1e7ec}[data-theme=dark] .badge-success{background:#203c32;color:#a8dfc6}[data-theme=dark] .badge-warning{background:#443720;color:#f2d09a}[data-theme=dark] .badge-danger{background:#482b34;color:#ffc2cd}[data-theme=dark] .empty-state{background:var(--paper)}[data-theme=dark] .empty-state p{color:var(--muted)}[data-theme=dark] .empty-state h2{color:var(--ink)}[data-theme=dark] .change-json{color:var(--ink);background:var(--surface-soft)}
@media(max-width:1200px){.content{padding:28px 25px}.account-grid{grid-template-columns:230px minmax(0,1fr)}.account-grid .form-grid{grid-template-columns:1fr}}
@media(max-width:980px){:root{--sidebar:0px}.main-shell{margin-left:0}.sidebar{width:278px}.topbar{height:76px;padding:0 24px}.content{padding:27px 24px}.menu-toggle{flex-shrink:0;color:var(--ink);background:var(--surface-soft)}.nav-close{top:5px;right:5px;background:var(--surface-soft);color:var(--ink)}.sidebar .brand{padding-top:15px}.management-grid{gap:15px}}
@media(max-width:720px){.content{padding:23px 16px}.topbar{padding:0 16px;gap:12px}.breadcrumb-copy small{font-size:8px}.breadcrumb-copy strong{font-size:15px}.secure-dot{display:none}.workspace h1{font-size:25px}.management-grid{grid-template-columns:1fr}.management-card{padding:20px}.panel{padding:21px 18px}.panel-table{padding:0}.account-grid{grid-template-columns:1fr;gap:0}.profile-summary{text-align:left}.profile-summary .profile-photo{width:75px;height:75px;margin-bottom:14px}.profile-role-list{justify-content:flex-start}.profile-summary dl{display:none}.filter-bar{gap:12px;padding:16px}.filter-bar .field{flex-basis:40%;min-width:100px}.filter-bar .field:first-of-type{flex-basis:100%}.filter-bar .size-field{flex:0 0 80px}.workspace .clinical-table thead th{padding:13px;font-size:11px}.workspace .clinical-table tbody td{font-size:12px;padding:14px 13px}.directory-toolbar{justify-content:flex-start}.auth-theme{top:12px;right:14px}.auth-wrap,.auth-wrap:has(.setup-card){padding-top:70px}.setup-card .form-grid{grid-template-columns:1fr}.workspace-footer{padding-inline:16px}.directory-pages a{padding:5px 8px;min-width:30px}.choice-list{max-height:240px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}
@media(max-width:1050px){.admin-welcome{grid-template-columns:minmax(0,1fr) 180px;padding:27px;gap:22px}.welcome-summary{padding:22px}}
@media(max-width:720px){.admin-welcome{grid-template-columns:1fr;padding:25px 21px;gap:22px}.welcome-summary{padding:19px 22px}.welcome-summary>strong{font-size:29px;margin:5px 0}.admin-welcome>div>p{margin-bottom:20px}}
@media print{html[data-theme=dark],html[data-theme=dark] body{--ink:#222;--muted:#555;--paper:#fff;--line:#ddd;color:#222;background:#fff}.main-shell{margin-left:0}.content{padding:0;max-width:none}.sidebar,.topbar,.auth-theme,.workspace-footer{display:none!important}.panel{box-shadow:none}.workspace .clinical-table tbody td{color:#222;background:#fff}.workspace .clinical-table thead th{color:#555;background:#f7f7f7}.print-record{color:#222;background:#fff}}

[data-theme=dark] .workspace .readonly-field{color:var(--ink)}[data-theme=dark] .workspace .score-footnote{background:#302b27;color:#dfccbb}
