/* MPM document stylesheet — single source for every MPM document. Reconciled from INS-LT-15R-01, TN-NSH-B17-01, TN-CMT-P25-01, BOM-OMT-HW-01 (Oct–Nov 2026). Do not copy this into project build scripts; mpmdoc injects it. */ :root{ --ink:#232022; --gold:#DCBB4F; --kick:#998643; --mute:#849698; --cream:#F5F1EC; --line:#E6E0D8; --keybg:#FBF6E6; --red:#A42D20; --redbg:#F7E9E7; --grn:#3F6B3A; --grnbg:#EAF1E6; } *{box-sizing:border-box} body{margin:0;font-family:'Open Sans',Montserrat,sans-serif;font-size:9.6pt;line-height:1.45;color:var(--ink);-webkit-print-color-adjust:exact} h1,h2,h3,h4{font-family:Montserrat,sans-serif;margin:0} b,strong{font-weight:700} p{margin:0 0 8px} /* ---- masthead ------------------------------------------------------- */ .kicker{font-family:Montserrat;font-weight:700;font-size:7.6pt;letter-spacing:.14em;text-transform:uppercase;color:var(--kick)} h1{font-size:23pt;font-weight:800;line-height:1.1;margin:5px 0 6px} .lede{color:var(--mute);font-size:10.4pt;margin:0 0 14px} .meta{display:flex;gap:9px;margin-bottom:14px} .meta div{flex:1;background:var(--cream);border-radius:7px;padding:10px 13px} .meta b{display:block;font-family:Montserrat;font-weight:700;font-size:6.6pt;letter-spacing:.12em;text-transform:uppercase;opacity:.75;margin-bottom:6px} .meta span{font-family:Montserrat;font-weight:600;font-size:8.6pt} .meta .draft span{color:var(--red)} /* ---- headline numbers (KPI tiles) ----------------------------------- */ .kpis{display:flex;gap:8px;margin-bottom:12px} .kpis div{flex:1;border:1px solid var(--line);border-radius:8px;padding:10px 12px 9px} .kpis b{display:block;font-family:Montserrat;font-weight:700;font-size:6.4pt;letter-spacing:.12em;text-transform:uppercase;color:var(--mute);margin-bottom:4px} .kpis span{font-family:'JetBrains Mono',Montserrat,monospace;font-weight:700;font-size:15pt;line-height:1.1} .kpis small{display:block;font-family:Montserrat;font-weight:600;font-size:7pt;color:var(--mute);margin-top:3px} .kpis .key{border-color:var(--gold);background:var(--keybg)} .kpis .strong{border-color:var(--ink)} .kpis .ok{border-color:var(--grn);background:var(--grnbg)}.kpis .ok span{color:var(--grn)} .kpis .bad{border-color:var(--red);background:var(--redbg)}.kpis .bad span{color:var(--red)} /* ---- dark summary box (Result / Before you start / Summary) ----------- */ .dark{background:var(--ink);color:#fff;border-radius:8px;border-left:5px solid var(--gold);padding:10px 18px 9px;margin-bottom:14px;break-inside:avoid} .dark .kicker{color:var(--gold);margin-bottom:6px} .dark ul{margin:0;padding-left:14px}.dark li{margin:3px 0} /* ---- sections ---------------------------------------------------------- */ h2.sec{font-size:10.5pt;font-weight:800;letter-spacing:.08em;text-transform:uppercase;border-bottom:2px solid var(--gold);padding-bottom:5px;margin:4px 0 10px;break-after:avoid} h3.sub{font-family:Montserrat;font-weight:800;font-size:8.6pt;letter-spacing:.06em;text-transform:uppercase;margin:6px 0 5px} .brk{break-before:page} .two{display:flex;gap:18px}.two>div{flex:1;min-width:0} .keep{break-inside:avoid} /* ---- tables -------------------------------------------------------------- */ table{width:100%;border-collapse:collapse;font-size:8.8pt;margin-bottom:6px} th{text-align:left;font-family:Montserrat;font-weight:700;font-size:6.8pt;letter-spacing:.1em;text-transform:uppercase;padding:6px 8px;border-bottom:2px solid var(--gold);vertical-align:bottom} td{padding:4px 8px;border-bottom:1px solid var(--line);vertical-align:top} tr{break-inside:avoid}thead{display:table-header-group} th.r,td.r{text-align:right} th.c,td.c{text-align:center} td.m{font-family:'JetBrains Mono',Montserrat,monospace;font-size:8.6pt;white-space:nowrap} td.d{font-family:'JetBrains Mono',Montserrat,monospace;font-weight:700;font-size:8.6pt;white-space:nowrap} td.q{font-family:'JetBrains Mono',Montserrat,monospace;font-weight:700;text-align:right;width:44px} tr.key td{background:var(--keybg)} tr.tot td{border-bottom:none;border-top:2px solid var(--gold);font-family:Montserrat;font-weight:700;font-size:8pt;padding-top:8px} table.tight td{padding:3px 8px} .up{color:var(--grn)}.dn{color:var(--red)}.k{color:var(--kick)} .tbc{color:var(--red);font-weight:700} .mono{font-family:'JetBrains Mono',Montserrat,monospace;font-size:8.6pt} /* ---- captions (TABLE n / FIG n) ----------------------------------------- */ .tcap{font-family:Montserrat;font-weight:600;font-size:7.2pt;color:var(--mute);margin:0 0 12px} .cap{font-family:Montserrat;font-weight:600;font-size:7.2pt;color:var(--mute);text-align:center;margin:5px 0 12px} .tcap b,.cap b{color:var(--kick);letter-spacing:.08em;margin-right:4px} .figbox{border:1px solid var(--line);border-radius:8px;padding:8px;background:#fff} .fig{break-inside:avoid} /* ---- calculation block --------------------------------------------------- */ .calc{background:var(--cream);border-radius:8px;padding:8px 16px;font-family:'JetBrains Mono',Montserrat,monospace;font-size:8.4pt;line-height:1.65;margin-bottom:12px;break-inside:avoid;white-space:pre} .calc .c{color:var(--mute)} .pill{display:inline-block;color:#fff;font-family:Montserrat;font-weight:800;font-size:6.8pt;letter-spacing:.12em;border-radius:3px;padding:0 6px;margin-left:6px;line-height:15px;vertical-align:1px} .pill.pass{background:var(--grn)}.pill.fail{background:var(--red)}.pill.check{background:var(--kick)} /* ---- notes / callouts ---------------------------------------------------- */ .note{background:var(--cream);border-left:4px solid var(--gold);border-radius:0 7px 7px 0;padding:8px 13px;margin:8px 0 12px;font-size:8.9pt;break-inside:avoid} .note .kicker{font-size:6.8pt;margin-bottom:2px} .note ul{margin:2px 0 0;padding-left:15px}.note li{margin:2px 0} .note.warn{background:var(--redbg);border-color:var(--red)}.note.warn .kicker{color:var(--red)} .note.ok{background:var(--grnbg);border-color:var(--grn)}.note.ok .kicker{color:var(--grn)} .note.verify{background:#fff;border:1.5px dashed var(--kick);border-left:4px solid var(--kick)} /* ---- lists --------------------------------------------------------------- */ ol{margin:0 0 8px;padding-left:18px}ol li{margin:3px 0} ul.plain{margin:0 0 8px;padding-left:16px}ul.plain li{margin:4px 0} .chk{list-style:none;padding:0;margin:0 0 8px} .chk li{padding-left:22px;position:relative;margin:4px 0} .chk li:before{content:"";position:absolute;left:0;top:3px;width:11px;height:11px;border:1.5px solid var(--kick);border-radius:3px} .list-head{font-family:Montserrat;font-weight:700;font-size:7.6pt;letter-spacing:.14em;text-transform:uppercase;color:var(--kick);margin-bottom:4px} /* ---- procedures (INS / SOP) ---------------------------------------------- */ .glance{display:flex;gap:6px;margin-bottom:16px} .glance div{flex:1;border:1px solid var(--line);border-radius:7px;padding:9px 4px 7px;text-align:center;font-family:Montserrat;font-weight:700;font-size:7.4pt;line-height:1.25} .glance i{display:block;margin:0 auto 5px;width:19px;height:19px;border-radius:50%;background:var(--gold);font-style:normal;font-weight:800;font-size:8pt;line-height:19px} .glance small{display:block;font-weight:600;font-size:6.2pt;letter-spacing:.12em;color:var(--mute);margin-top:3px;text-transform:uppercase} .glance .other{border-style:dashed;background:#FBFAF8;color:var(--mute)} .glance .other i{background:var(--line);color:var(--mute)} .step{display:flex;gap:18px;padding:10px 0 11px;border-bottom:1px solid var(--line);break-inside:avoid} .step .body{flex:1} .step .side{width:35%;flex:none} .step.wide{display:block;break-inside:auto}.step.wide .side{width:100%;margin-top:8px;break-inside:avoid} .step.wide .body{break-inside:avoid} .sh{display:flex;align-items:center;gap:11px;margin-bottom:7px} .num{min-width:30px;padding:0 5px;height:30px;border-radius:5px;background:var(--gold);color:#fff;font-family:Montserrat;font-weight:800;font-size:14pt;line-height:30px;text-align:center;flex:none} .sh .kicker{font-size:6.8pt} .sh h3{font-size:13.5pt;font-weight:800;line-height:1.15} .chain{display:flex;align-items:center;gap:6px;margin:0 0 8px;font-family:Montserrat;font-weight:700;font-size:7.4pt} .chain span{background:var(--cream);border-radius:5px;padding:4px 9px} .chain b{color:var(--kick)} /* ---- BOM / checklists ---------------------------------------------------- */ td.n{font-family:'JetBrains Mono',Montserrat,monospace;font-weight:700;color:var(--kick);width:30px} td.item b{font-family:Montserrat;font-weight:700;font-size:9pt} td.u{font-family:Montserrat;font-weight:600;font-size:7.4pt;color:var(--mute);text-transform:uppercase;letter-spacing:.08em;width:40px} td.pn{font-family:'JetBrains Mono',Montserrat,monospace;font-size:8pt;color:var(--mute);width:78px} .box{display:inline-block;width:11px;height:11px;border:1.5px solid var(--kick);border-radius:3px;vertical-align:middle} .sign{display:flex;gap:14px;margin-top:6px;break-inside:avoid} .sign div{flex:1;border-top:1.5px solid var(--ink);padding-top:5px;font-family:Montserrat;font-weight:700;font-size:6.6pt;letter-spacing:.12em;text-transform:uppercase;color:var(--mute);height:26px} /* ---- revision history: own block, last page -------------------------- */ .revs{position:relative;background:var(--cream);border-radius:8px;border-top:3px solid var(--gold);padding:7px 13px 3px;margin-top:8px;break-inside:avoid} .revs .kicker{font-size:6.8pt;margin-bottom:1px;padding-bottom:3px;border-bottom:1.5px solid var(--gold)} .revs table{font-size:7.8pt;margin:0}.revs table.tight td{padding:2px 8px}.revs th{padding:4px 8px} .revs th{border-bottom-width:1.5px} .revs td{border-bottom-color:#E2DCD3}.revs tr:last-child td{border-bottom:none} .revs td.m{width:52px}.revs td.dt{width:88px;font-family:'JetBrains Mono',Montserrat,monospace;font-size:8pt;white-space:nowrap} .sent{position:absolute;left:4px;font-size:2px;line-height:2px;color:#fff} #s-top{top:0}#s-end{bottom:0} /* ---- procedure extras ----------------------------------------------------- */ .ui{display:inline-block;font-family:Montserrat;font-weight:700;font-size:7.8pt;line-height:1.25;padding:0 5px;border:1.2px solid var(--gold);border-radius:4px;background:var(--keybg);white-space:nowrap} .shots{display:flex;gap:8px;justify-content:center;align-items:flex-start} .shot{text-align:center;break-inside:avoid} .shot img{width:100%;border:1px solid var(--line);border-radius:7px;display:block} .scap{font-family:Montserrat;font-weight:600;font-size:7pt;color:var(--mute);margin-top:4px;line-height:1.3} .special{border:1.5px solid var(--gold);background:#FFFCF2;border-radius:9px;padding:11px 16px 6px;margin:12px 0;break-inside:avoid} .special .sp-fig{margin:6px auto 4px;max-width:62%} .num.bad{background:var(--red)} table.bomt{table-layout:fixed} table.bomt td.m.bom{white-space:normal;line-height:1.5;font-size:8pt} table.bomt th:nth-child(1){width:30px}table.bomt th:nth-child(2){width:27%} table.bomt th:nth-child(4){width:44px}table.bomt th:nth-child(5){width:44px}table.bomt th:nth-child(6){width:70px} table.bomt th:nth-child(n+7){width:54px} /* ---- surveys / plans ------------------------------------------------------ */ table.kv{margin:0 0 14px} table.kv th{width:24%;border-bottom:1px solid var(--line);vertical-align:top;padding:5px 8px;font-size:6.6pt} table.kv td{padding:5px 8px} .part{background:var(--ink);color:#fff;border-radius:8px;border-left:5px solid var(--gold);padding:12px 18px;margin:0 0 14px;break-after:avoid} .part .kicker{color:var(--gold)} .part h2{font-size:17pt;font-weight:800;margin:3px 0 0} .part .part-note{margin:6px 0 0;color:#D8D2CA;font-size:9pt} .part.internal{border-left-color:var(--red)} .int-tag{display:inline-block;margin-left:8px;background:var(--red);color:#fff;border-radius:3px;padding:0 6px;letter-spacing:.12em} .vtag{display:inline-block;font-family:Montserrat;font-weight:800;font-size:6.4pt;letter-spacing:.12em;text-transform:uppercase;color:var(--red);border:1.2px solid var(--red);border-radius:3px;padding:0 4px;line-height:12px;vertical-align:1px;white-space:nowrap} .photos{display:flex;gap:12px;align-items:flex-start;margin:4px 0 6px;break-inside:avoid} .photos .photo{flex:1;min-width:0} .photo{break-inside:avoid} .photo img{width:100%;max-height:2.7in;object-fit:contain;border:1px solid var(--line);border-radius:7px;display:block;background:#fff} .photos .cap{text-align:left} .transcript{background:#FFFDF6;border:1px solid var(--line);border-left:4px solid var(--kick);border-radius:0 8px 8px 0;padding:10px 16px;margin:6px 0 12px;font-size:9pt;break-inside:avoid} .transcript .t-head{font-family:Montserrat;font-weight:800;font-size:9.5pt;margin-bottom:6px} .transcript p{margin:0 0 4px}.transcript ul{margin:0 0 4px;padding-left:16px}.transcript li{margin:2px 0} .approval{margin-top:16px;border-top:1.5px solid var(--ink);padding-top:6px;width:55%} .approval .ap-name{font-family:Montserrat;font-weight:800;font-size:11pt;margin-top:4px} .approval .ap-role{color:var(--mute)} .approval .ap-date{font-family:'JetBrains Mono',Montserrat,monospace;font-size:8pt;margin-top:2px} /* ---- commercial and field components (PRO / SOW / WO / TSB) ----------- */ table.prt{margin:4px 0 12px} table.prt td.r,table.prt th.r{text-align:right} table.prt tr.sub td{font-family:Montserrat;font-weight:700;font-size:7.6pt;border-top:1px solid var(--ink);background:var(--cream)} table.prt tr.grand td{font-family:Montserrat;font-weight:800;font-size:8.6pt;border-top:2px solid var(--gold);border-bottom:none;padding-top:7px} .parties{display:flex;gap:10px;margin:0 0 14px} .party{flex:1;border:1px solid var(--line);border-radius:8px;overflow:hidden;break-inside:avoid} .party .ph{background:var(--cream);color:var(--kick);font-family:Montserrat;font-weight:700;font-size:6.8pt;letter-spacing:.14em;text-transform:uppercase;padding:6px 12px;border-bottom:2px solid var(--gold)} .party .pb{padding:8px 12px} .party .pname{font-family:Montserrat;font-weight:700;font-size:9.4pt} .party .pline{color:var(--ink);margin-top:1px} .party .pline.mono{font-family:'JetBrains Mono',Montserrat,monospace;font-size:8.4pt} .spill{display:inline-block;font-family:Montserrat;font-weight:700;font-size:7pt;letter-spacing:.12em;text-transform:uppercase;padding:3px 10px;border-radius:20px;color:#fff;background:var(--ink)} .spill.red{background:var(--red)}.spill.green{background:var(--grn)}.spill.amber,.spill.gold{background:var(--gold);color:var(--ink)} .spill.grey,.spill.gray{background:var(--mute)}.spill.navy{background:var(--ink)}.spill.teal{background:var(--kick)} .sigs{display:flex;gap:26px;margin-top:22px} .sig{flex:1} .sig .line{border-top:1.5px solid var(--ink);margin-top:30px;padding-top:5px} .sig .role{font-family:Montserrat;font-weight:700;font-size:6.8pt;letter-spacing:.12em;text-transform:uppercase;color:var(--mute)} .sig .who{margin-top:1px} .fields{display:grid;gap:4px 22px;margin:2px 0 12px} .fields.c1{grid-template-columns:1fr}.fields.c2{grid-template-columns:1fr 1fr}.fields.c3{grid-template-columns:1fr 1fr 1fr} .fld{break-inside:avoid} .fld b{display:block;font-family:Montserrat;font-weight:700;font-size:6.6pt;letter-spacing:.12em;text-transform:uppercase;color:var(--mute);margin-top:6px} .fld .ln{display:block;height:20px;border-bottom:1px solid var(--ink)} .fld small{display:block;color:var(--mute);font-size:7.4pt;margin-top:2px} h3.sub{break-after:avoid} table.fill td{height:24px} .govern{font-size:8pt;color:var(--mute);margin:-4px 0 12px;border-left:2px solid var(--gold);padding-left:8px}