/* r16: shared typography and layout, local Trebuchet only (no redistributed font). */
:root{font-family:'Trebuchet MS',Arial,sans-serif;font-size:16px;line-height:1.45}
h1{font-size:24px}h2,h3,summary,.module-heading{font-size:20px;font-weight:700}
input,select,textarea,button{font:inherit;min-width:0;max-width:100%}
button{font-size:16px;font-weight:700;white-space:normal;overflow-wrap:anywhere;line-height:1.35;height:auto;min-height:48px}
label,dd{font-weight:700}small,.file-status,.badge,.monitor-photo figcaption{font-size:14px}
.registry-table,.registry-table button,.report-document table{font-size:16px}
.registry-table button{white-space:normal;min-height:44px;max-width:100%}
input[type=checkbox],input[type=radio]{width:20px;height:20px;min-height:20px;flex:0 0 20px;vertical-align:middle;accent-color:#0c5865}
label:has(>input[type=checkbox]),label:has(>input[type=radio]){display:flex;align-items:center;gap:10px}
nav{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:8px}
nav button{min-width:0;white-space:normal}
.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.grid>*{min-width:0}
.admin-grid{display:block}.admin-group{width:100%;min-width:0}.admin-group>.card{width:100%}
.card{min-width:0}.card.is-collapsed{padding:0 16px}.module-heading{margin:0 0 12px;min-height:54px;overflow-wrap:anywhere}
.card.is-collapsed>.module-heading{margin:0}.card>details>summary{min-height:54px;padding:12px 0}
details.card:not([open]){padding:0 16px}details.card>summary{min-height:54px;padding:12px 0}
.actions{display:flex;flex-wrap:wrap}.actions button{flex:1 1 200px;min-width:0}
fieldset{min-width:0}#campaign-admin>.grid{grid-template-columns:1fr}
#notice:not(:empty){position:sticky;top:62px;z-index:6;padding:12px;border:1px solid #9aabb1;border-radius:10px;background:#fff;box-shadow:0 3px 12px #0002;max-height:30vh;overflow:auto}
.action-feedback:not(:empty){padding:10px;border-left:4px solid #0c5865;background:#eef4f5;overflow-wrap:anywhere}
.action-feedback.error{border-color:#a11818;background:#fff0ee}
.admin-groups{margin:0 0 16px}.admin-groups button[aria-pressed=true]{background:#0c5865;color:#fff}
.scan-card input{font-size:20px}#permission-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:8px}
@media(max-width:700px){:root{font-size:16px}.grid{grid-template-columns:1fr}nav{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-groups{grid-template-columns:1fr}.actions button{flex-basis:auto;width:100%}.report-document table{font-size:16px}.registry-table{min-width:950px}.monitor-photo figcaption{font-size:14px}dl{overflow-wrap:anywhere}}
@media print{#notice,.action-feedback,.admin-groups{display:none!important}.report-document table{font-size:9pt}}
