@font-face{font-family:"Overpass";font-weight:800;font-style:normal;src:url("/fonts/overpass-800.woff2") format("woff2")}@font-face{font-family:"Atkinson Hyperlegible Next";font-weight:400;font-style:normal;src:url("/fonts/atkinson-next-400.woff2") format("woff2")}@font-face{font-family:"Atkinson Hyperlegible Next";font-weight:700;font-style:normal;src:url("/fonts/atkinson-next-700.woff2") format("woff2")}@font-face{font-family:"Atkinson Hyperlegible Mono";font-weight:400;font-style:normal;src:url("/fonts/atkinson-mono-400.woff2") format("woff2")}
.swms-doc, .swms-doc * { box-sizing: border-box; }
.swms-doc { font-family: "Atkinson Hyperlegible Next", Arial, sans-serif; font-size: 9pt; line-height: 1.3; color: #04302F; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
.swms-doc { margin: 0; }
.swms-doc.preview { padding: 0 3mm 6mm; border-top: 2.5mm solid #0BB5B0; background: #FFFFFF; }
.swms-doc p, .swms-doc li, .swms-doc td, .swms-doc th, .swms-doc dd, .swms-doc dt, .swms-doc span, .swms-doc b { overflow-wrap: anywhere; }
.swms-doc .mono, .swms-doc code { font-family: "Atkinson Hyperlegible Mono", "Courier New", monospace; }
.swms-doc .pg { break-inside: avoid; }
.swms-doc .pg-keep { break-after: avoid; }
.swms-doc .draft-banner { margin: 2mm 0 0; padding: 1mm 2mm; background: #04302F; color: #FFFFFF; font-weight: 700; text-align: center; }
.swms-doc .doc-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 4mm; padding: 2mm 0 2mm; border-bottom: 0.4mm solid #04302F; }
.swms-doc .doc-head .brand { display: flex; gap: 3mm; align-items: center; }
.swms-doc .doc-head img { max-height: 14mm; max-width: 40mm; }
.swms-doc .doc-head .co { font-size: 11pt; font-weight: 700; }
.swms-doc .doc-head .meta { text-align: right; }
.swms-doc .doc-head .kind { font-family: Overpass, Arial, sans-serif; font-weight: 800; font-size: 10pt; }
.swms-doc .stamp { display: inline-block; margin-left: 1.5mm; padding: 0 1.5mm; border: 1.5px solid #04302F; border-radius: 0.8mm; font-weight: 700; }
.swms-doc .stamp.preview { border-style: dashed; }
.swms-doc h1 { margin: 2.5mm 0 0; font-family: "Atkinson Hyperlegible Next", Arial, sans-serif; font-weight: 700; font-size: 14pt; line-height: 1.2; }
.swms-doc .block > h2 { margin: 2.5mm 0 0; padding: 1mm 2.5mm; background: #0BB5B0; color: #04302F; font-family: Overpass, Arial, sans-serif; font-weight: 800; font-size: 9pt; border-radius: 1mm 1mm 0 0; }
.swms-doc h2 .n { display: inline-block; min-width: 4.5mm; }
.swms-doc .block > .body { padding: 1.6mm 2.2mm; border: 0.3mm solid #9FB3B2; border-top: 0; border-radius: 0 0 1mm 1mm; }
.swms-doc .block > .body > p { margin: 0 0 1mm; }
.swms-doc .block > .body > ul { margin: 0 0 1mm; padding-left: 4mm; }
.swms-doc .block > .body > :last-child { margin-bottom: 0; }
.swms-doc .grid { display: grid; grid-template-columns: repeat(3, 1fr); margin: 0; }
.swms-doc .grid div { padding: 0.9mm 1.3mm; border-top: 0.25mm solid #DCE6E5; }
.swms-doc .grid div:nth-child(-n + 3) { border-top: 0; }
.swms-doc .grid dt { color: #3D5C5B; }
.swms-doc .grid dd { margin: 0.2mm 0 0; min-height: 3.5mm; }
.swms-doc .grid.sign dd { min-height: 6mm; }
.swms-doc .cite { margin: 0 0 1mm; color: #3D5C5B; }
.swms-doc .grey { margin: 0.4mm 0 0; color: #3D5C5B; }
.swms-doc img.sg { flex: none; width: 5mm; height: 5mm; }
.swms-doc .glance { display: grid; grid-template-columns: 24mm 1fr; gap: 0; margin: 0; }
.swms-doc .glance dt { padding: 0.7mm 1.3mm 0.7mm 0; font-weight: 700; color: #3D5C5B; border-top: 0.25mm solid #DCE6E5; }
.swms-doc .glance dt .cite { display: block; margin: 0.4mm 0 0; font-weight: 400; }
.swms-doc .glance dd { margin: 0; padding: 0.7mm 0; border-top: 0.25mm solid #DCE6E5; }
.swms-doc .glance dt:first-of-type, .swms-doc .glance dd:first-of-type { border-top: 0; }
.swms-doc .glance p { margin: 0; }
.swms-doc .glance p.grey { margin-top: 0.4mm; }
.swms-doc .glance p.hr-note { margin-top: 0.6mm; font-weight: 700; }
.swms-doc .glance ul, .swms-doc .glance ol { list-style: none; margin: 0; padding: 0; }
.swms-doc .gtasks li { display: flex; gap: 3mm; align-items: baseline; }
.swms-doc .gtasks .t { flex: 1; font-weight: 700; }
.swms-doc .gon { display: flex; flex-wrap: wrap; gap: 0.8mm 4mm; }
.swms-doc .gon li { display: flex; gap: 1.5mm; align-items: center; }
.swms-doc .wear { display: flex; flex-wrap: wrap; gap: 1mm 4mm; }
.swms-doc .wear li { display: flex; gap: 1.5mm; align-items: center; }
.swms-doc .wear img.sg { width: 7mm; height: 7mm; }
.swms-doc .wear .std { display: block; color: #3D5C5B; }
.swms-doc .glance ul.words { list-style: disc; padding-left: 4mm; }
.swms-doc .nowrap { white-space: nowrap; }
.swms-doc .risk { display: inline-block; padding: 0 1mm; border-radius: 0.6mm; font-weight: 700; white-space: nowrap; }
.swms-doc .steps .risk { white-space: normal; overflow-wrap: normal; }
.swms-doc .r-l { background: #2E7D32; color: #FFFFFF; }
.swms-doc .r-m { background: #F2C200; color: #04302F; }
.swms-doc .r-h { background: #EF7D00; color: #04302F; }
.swms-doc .r-e { background: #C62828; color: #FFFFFF; }
.swms-doc table { width: 100%; border-collapse: collapse; }
.swms-doc th, .swms-doc td { padding: 0.9mm 1.2mm; text-align: left; vertical-align: top; border-top: 0.25mm solid #DCE6E5; }
.swms-doc th { background: #0BB5B0; color: #04302F; font-family: Overpass, Arial, sans-serif; font-weight: 800; font-size: 9pt; }
.swms-doc .matrix { table-layout: fixed; border-collapse: separate; border-spacing: 0.5mm; }
.swms-doc .matrix col.lk { width: 16%; }
.swms-doc .matrix th { background: none; color: #04302F; font-family: "Atkinson Hyperlegible Next", Arial, sans-serif; font-weight: 700; text-align: center; padding: 0.4mm; border: 0; overflow-wrap: normal; white-space: nowrap; }
.swms-doc .matrix th.corner { text-align: left; color: #3D5C5B; }
.swms-doc .matrix td { text-align: center; padding: 0.3mm; border: 0; border-radius: 0.6mm; font-weight: 700; white-space: nowrap; }
.swms-doc .matrix td.lk { text-align: left; background: #F3F7F7; color: #04302F; }
.swms-doc .key { margin: 0.8mm 0 0; color: #3D5C5B; }
.swms-doc .steps { table-layout: fixed; }
.swms-doc .steps col.c-step { width: 15%; }
.swms-doc .steps col.c-hz { width: 17%; }
.swms-doc .steps col.c-risk { width: 9%; }
.swms-doc .steps col.c-ctl { width: 37%; }
.swms-doc .steps col.c-who { width: 13%; }
.swms-doc .steps col.c-step.v { width: 17%; }
.swms-doc .steps col.c-hz.v { width: 25%; }
.swms-doc .steps col.c-ctl.v { width: 42%; }
.swms-doc .steps col.c-who.v { width: 16%; }
.swms-doc .steps td.rk { padding-left: 0.8mm; padding-right: 0.8mm; }
.swms-doc .steps tbody.task td { border-top: 0.4mm solid #04302F; background: #FFFFFF; }
.swms-doc .steps tbody.task img.sg { width: 4.5mm; height: 4.5mm; vertical-align: -1mm; margin-right: 1.2mm; }
.swms-doc .follows { display: block; color: #3D5C5B; font-weight: 400; }
.swms-doc .steps tbody.hz.first > tr:first-child > td { border-top: 0.4mm solid #04302F; }
.swms-doc .steps tbody.hz:not(.first) > tr:first-child > td { border-top: 0.25mm solid #9FB3B2; }
.swms-doc .steps tbody.hz:not(.first) > tr:first-child > td.stepcell { border-top: 0; }
.swms-doc .steps td.stepcell { background: #E7F8F7; }
.swms-doc .harm { display: block; color: #3D5C5B; }
.swms-doc .lvl { display: inline-block; padding: 0 0.8mm; border: 0.25mm solid #04302F; border-radius: 0.6mm; font-weight: 700; }
.swms-doc td.who { font-weight: 700; }
.swms-doc .lrow { display: grid; grid-template-columns: 1fr 1fr; gap: 0 3mm; margin-bottom: 1.5mm; }
.swms-doc .lrow:last-child { margin-bottom: 0; }
.swms-doc .lbox { border-collapse: separate; border-spacing: 0; align-self: start; }
.swms-doc .lbox th { padding: 0.4mm 1.4mm; border: 0; border-bottom: 0.25mm solid #04302F; border-radius: 0.6mm 0.6mm 0 0; font-family: Overpass, Arial, sans-serif; font-weight: 800; font-size: 9pt; line-height: 4mm; color: #04302F; }
.swms-doc .lbox th img.sg { width: 4mm; height: 4mm; vertical-align: top; margin-right: 1.2mm; }
.swms-doc .box-equipment th { background: #9EDCD8; }
.swms-doc .box-competencies th { background: #E7F8F7; }
.swms-doc .box-substances th { background: #FEF7DC; }
.swms-doc .box-permits th { background: #9FB3B2; }
.swms-doc .lbox td { padding: 0.55mm 0 0.25mm; border: 0; }
.swms-doc .lbox .card { padding: 0.6mm 0 0.6mm 1.6mm; border-left: 0.5mm solid #9FB3B2; }
.swms-doc .lbox .card p { margin: 0; }
.swms-doc .lbox .lb { color: #3D5C5B; }
.swms-doc .lbox td > p { margin: 0; color: #3D5C5B; }
.swms-doc .emergency > h2 { background: #00843D; color: #FFFFFF; }
.swms-doc .emergency > .body { border: 0.6mm solid #00843D; border-top: 0; }
.swms-doc .emergency > .body > p { margin: 0 0 1.5mm; }
.swms-doc .emerg { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 1.2mm 3mm; }
.swms-doc .block > .body > ul.emerg { padding: 0; }
.swms-doc .emerg li { display: flex; gap: 1.5mm; align-items: center; }
.swms-doc .emerg img.sg { width: 7.5mm; height: 7.5mm; }
.swms-doc .signon td { height: 6mm; }
.swms-doc .end { margin-top: 2mm; color: #3D5C5B; }
.swms-doc .end p { margin: 0 0 1mm; }
.swms-doc .end p:last-child { margin-bottom: 0; }
.swms-doc .end code { word-break: break-all; }
.swms-doc /* The preview's watermark covers every screen and printed page (position: fixed repeats on each printed page), .swms-doc over the
   content so no coloured band hides it, .swms-doc faint enough to read through, .swms-doc and never catching a click or a selection. */
.watermark { position: fixed; inset: 0; z-index: 10; pointer-events: none; user-select: none; background: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%20480%20300'%3E%3Ctext%20x%3D'240'%20y%3D'150'%20text-anchor%3D'middle'%20dominant-baseline%3D'middle'%20transform%3D'rotate(-30%20240%20150)'%20font-family%3D'Arial%2C%20sans-serif'%20font-size%3D'26'%20font-weight%3D'700'%20fill%3D'%2304302F'%20fill-opacity%3D'0.16'%3EPREVIEW%20%C2%B7%20NOT%20FOR%20USE%20ON%20SITE%3C%2Ftext%3E%3C%2Fsvg%3E") 0 0 / 24rem 15rem repeat; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
.swms-doc /* A guest's preview printed from the browser: only the sign-up line, .swms-doc never the SWMS (Plan 1h Task 6). */
.print-guard { display: none; }
.swms-doc.guest > :not(.print-guard) { display: none !important; }
.swms-doc.guest > .print-guard { display: block; margin: 20mm 0 0; font-size: 16pt; font-weight: 700; text-align: center; }