/* Shared type and contrast tokens. Sector identity remains an accent, not body text. */
:root{--ui-font:"Segoe UI",-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;--ui-text:#273444;--ui-secondary:#526174;--ui-placeholder:#667085;--ui-input-border:#8591a2;--ui-surface:#fff;--ui-canvas:#f5f6f8}
html body{font-family:var(--ui-font);font-size:14px;line-height:1.55;color:var(--ui-text);background:var(--ui-canvas);font-weight:400}
body input,body select,body select option,body select optgroup,body textarea,body button,body .form-control,body .btn{font-family:var(--ui-font)!important;font-size:14px!important;letter-spacing:normal}
body select option,body select optgroup{font-weight:400!important;line-height:1.5;color:var(--ui-text)!important;background:#fff}
body select option:checked{color:#fff!important;background:var(--sector-dark,#344054)}
body .form-control,body input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=submit]),body select,body textarea{color:var(--ui-text);background-color:var(--ui-surface);border-color:var(--ui-input-border);font-weight:400;box-shadow:none}
body input.form-control,body select.form-control{height:40px;min-height:40px;padding:8px 11px;line-height:1.4}
body textarea.form-control{min-height:96px;line-height:1.55;padding:10px 11px}
body input::placeholder,body textarea::placeholder{color:var(--ui-placeholder)!important;opacity:1}
body .form-control:disabled,body .form-control[readonly]{color:#526174;background:#f2f4f7;border-color:#a7b0bc;opacity:1}
body .form-control:focus{color:var(--ui-text);border-color:var(--sector-dark,#344054);box-shadow:0 0 0 3px var(--sector-wash,#e9edf2);outline:2px solid transparent}
body label,body .mapping-filter label,body .mapping-field label,body .p-form-grid label,body .access-filters label{font-family:var(--ui-font);font-size:13px!important;line-height:1.45;font-weight:600;color:var(--ui-secondary);margin-bottom:6px}
body .mapping-header h1,body .epm-page-title-group h1{font-family:var(--ui-font);font-size:26px;font-weight:600;line-height:1.3;color:var(--ui-text)}
body .mapping-panel h2{font-family:var(--ui-font);font-size:20px;line-height:1.4;font-weight:600;color:var(--ui-text)}
body .mapping-panel h3,body .coordination-card h3{font-family:var(--ui-font);font-size:16px;line-height:1.45;font-weight:600;color:var(--ui-text)}
body .mapping-panel p,body .mapping-panel li,body .mapping-detail,body .contact-person{font-family:var(--ui-font);font-size:14px;line-height:1.55;color:var(--ui-text)}
body .mapping-help,body .mapping-panel .mapping-help,body .contact-person details,body .contact-review-note,body .p-breadcrumb{font-family:var(--ui-font);font-size:12px;line-height:1.5;color:var(--ui-secondary)}
body .mapping-table td,body .p-table td{font-family:var(--ui-font);font-size:14px;line-height:1.5;color:var(--ui-text)}
body .mapping-table th,body .p-table th{font-family:var(--ui-font);font-size:12px;font-weight:600;line-height:1.5;color:var(--ui-secondary);letter-spacing:.025em}
body .btn{font-size:14px!important;font-weight:600;line-height:1.4;min-height:38px;padding:8px 12px}
body .btn-sm{font-size:13px!important;min-height:34px;padding:7px 10px}
body .btn-primary{background:var(--sector-dark,#344054);border-color:var(--sector-dark,#344054);color:#fff}
body .btn-outline-primary{color:var(--sector-dark,#344054);border-color:var(--sector-dark,#344054);background:#fff}
body .btn-outline-primary:hover,body .btn-outline-primary:focus{background:var(--sector-dark,#344054);color:#fff}
body .contact-name{font-size:14px;line-height:1.5;font-weight:600;color:var(--ui-text);margin-bottom:4px}
body .contact-person>a{font-size:14px;color:var(--sector-dark,#344054);overflow-wrap:anywhere}
body .contact-person .contact-review-note{margin:6px 0;font-size:12px;color:var(--ui-secondary)}
body .epm-language-switch .btn{font-size:12px!important;min-height:30px}
body .contact-review-list{margin:12px 0;padding-left:20px}body .contact-review-list li{margin-bottom:12px}
html body .main-content .form-control{color:var(--ui-text)!important;background-color:#fff!important;border-color:var(--ui-input-border)!important}html body .main-content .form-control:disabled,html body .main-content .form-control[readonly]{color:#526174!important;background-color:#f2f4f7!important;border-color:#a7b0bc!important}html body .main-content .form-control:focus{border-color:var(--sector-dark,#344054)!important}html body .main-content .form-control::placeholder{color:var(--ui-placeholder)!important;opacity:1}

/* Consistent action controls, including edit links rendered by older pages. */
html body .btn,html body a[href^="MappingEdit.php"]:not(.btn){display:inline-flex;align-items:center;justify-content:center;gap:6px;text-decoration:none!important;vertical-align:middle;box-sizing:border-box}
html body a[href^="MappingEdit.php"]:not(.btn){font-family:var(--ui-font);font-size:13px;font-weight:600;line-height:1.4;min-height:34px;padding:7px 10px;border:1px solid var(--sector-dark,#344054);border-radius:7px;color:var(--sector-dark,#344054);background:#fff}
html body a[href^="MappingEdit.php"]:not(.btn):hover{color:#fff;background:var(--sector-dark,#344054)}
html body .epm-directory-table td:last-child .btn{min-width:112px;min-height:36px;padding:8px 12px;white-space:nowrap}
html body .epm-directory-table td:last-child .btn+.btn{margin-top:8px}
html body .btn:focus-visible,html body a[href^="MappingEdit.php"]:focus-visible{outline:3px solid var(--sector-dark,#344054);outline-offset:3px}
html body .epm-directory-table td:last-child .btn{display:flex;width:112px}
html body .btn-sm,html body a[href^="MappingEdit.php"]:not(.btn){min-height:36px;padding:8px 12px;font-size:13px!important;line-height:1.4}
