Trace every CR to a test case or delivered document, drop the draft FR/NFR remark column, record lessons learned, replace the three change reports with a change-control register, add high-level diagrams and wireframes to the design, plan verification rounds with dates and hours, and base the validation result on the Customer Requirements.
152 lines
5.0 KiB
CSS
152 lines
5.0 KiB
CSS
/* Page box and palette measured from the audited reference package:
|
|
text block 30mm from the left and 20mm from the right, header band ending
|
|
at 25mm, footer rule at 272.8mm. */
|
|
@page {
|
|
size: A4;
|
|
margin: 32mm 20mm 24mm 30mm;
|
|
}
|
|
|
|
:root {
|
|
--brn-blue: #0797d5; /* corporate blue, sampled from the CI header asset */
|
|
--brn-grey: #8e8e8e; /* header ribbon grey, measured from the reference */
|
|
--brn-red: #e01f26; /* corporate red of the logo mark */
|
|
--brn-ink: #111111;
|
|
--brn-muted: #333333;
|
|
--brn-line: #595959; /* table rule */
|
|
--brn-tint: #fff3f6; /* header-row tint used across the reference tables */
|
|
}
|
|
|
|
* { box-sizing: border-box; }
|
|
|
|
html, body {
|
|
color: var(--brn-ink);
|
|
font-family: "BRN Thai", Arial, sans-serif;
|
|
font-size: 10.5pt;
|
|
line-height: 1.45;
|
|
}
|
|
|
|
body { margin: 0; }
|
|
|
|
.delivery-document { width: 100%; }
|
|
|
|
.document-control {
|
|
border-collapse: collapse;
|
|
margin: 0 0 7mm;
|
|
page-break-inside: avoid;
|
|
width: 100%;
|
|
}
|
|
|
|
.document-control th,
|
|
.document-control td {
|
|
border: .5pt solid var(--brn-line);
|
|
padding: 2mm 3mm;
|
|
text-align: left;
|
|
vertical-align: top;
|
|
}
|
|
|
|
.document-control th {
|
|
background: var(--brn-tint);
|
|
font-weight: 700;
|
|
white-space: nowrap;
|
|
width: 1%;
|
|
}
|
|
|
|
/* Section headings in the reference are plain black text, not coloured bars. */
|
|
h1, h2, h3 { break-after: avoid; color: var(--brn-ink); font-weight: 400; }
|
|
h1 { display: none; } /* the document name is carried by the page header */
|
|
h2 { font-size: 11.5pt; margin: 6mm 0 2mm; }
|
|
h3 { font-size: 10.5pt; margin: 4mm 0 2mm; }
|
|
|
|
p { margin: 0 0 3mm; }
|
|
|
|
ul, ol { margin: 0 0 3.5mm; padding-left: 7mm; }
|
|
li { margin: 0 0 1mm; }
|
|
|
|
code {
|
|
font-family: "DejaVu Sans Mono", "Courier New", monospace;
|
|
font-size: .9em;
|
|
letter-spacing: 0;
|
|
/* Inline paths must break too, or they set the cell's minimum width. */
|
|
overflow-wrap: anywhere;
|
|
}
|
|
|
|
table:not(.document-control) {
|
|
border-collapse: collapse;
|
|
border: .5pt solid var(--brn-line);
|
|
break-inside: auto;
|
|
font-size: 9pt;
|
|
margin: 0 0 5mm;
|
|
table-layout: auto;
|
|
width: 100%;
|
|
}
|
|
|
|
table:not(.document-control) th,
|
|
table:not(.document-control) td {
|
|
border: .5pt solid var(--brn-line);
|
|
break-inside: avoid;
|
|
/* Thai runs have no spaces, so cells must be allowed to break anywhere;
|
|
"anywhere" (not "break-word") also lets the table shrink to the page. */
|
|
overflow-wrap: anywhere;
|
|
padding: 1.6mm 2mm;
|
|
text-align: left;
|
|
vertical-align: top;
|
|
}
|
|
|
|
table:not(.document-control) th { background: var(--brn-tint); font-weight: 400; }
|
|
|
|
/* Column alignment carried over from the Markdown separator row. */
|
|
table:not(.document-control) th.a-right,
|
|
table:not(.document-control) td.a-right { text-align: right; }
|
|
table:not(.document-control) th.a-center,
|
|
table:not(.document-control) td.a-center { text-align: center; }
|
|
|
|
/* Short columns (IDs, dates, counts) shrink to their content instead of
|
|
taking an equal share of the table width. */
|
|
table:not(.document-control) th.tight,
|
|
table:not(.document-control) td.tight { white-space: nowrap; width: 1%; }
|
|
|
|
thead { display: table-header-group; }
|
|
tr { break-inside: avoid; }
|
|
|
|
.approval-block__person { break-inside: avoid; margin: 0 0 6mm; }
|
|
.approval-block__person h3 { margin: 0 0 2mm; }
|
|
|
|
.approval-block__line {
|
|
border-bottom: .5pt solid var(--brn-ink);
|
|
display: inline-block;
|
|
min-width: 68mm;
|
|
vertical-align: baseline;
|
|
}
|
|
|
|
.approval-fields {
|
|
line-height: 1.55;
|
|
margin: 0;
|
|
padding: 0;
|
|
}
|
|
|
|
/* Signature blocks: heading and its table stay together, in the reference layout. */
|
|
.signature-block { break-inside: avoid; margin: 0 0 5mm; }
|
|
.signature-block h2.signature-heading { border-left: none; font-size: 11pt; margin: 5mm 0 2mm; padding-left: 0; }
|
|
/* Fixed columns so the signature grid always fits the text block width. */
|
|
table.signature-table { table-layout: fixed; }
|
|
table.signature-table td { height: 13mm; }
|
|
table.signature-table th.tight,
|
|
table.signature-table td.tight { white-space: normal; width: auto; }
|
|
table.signature-table th:nth-child(1), table.signature-table td:nth-child(1) { width: 32%; }
|
|
table.signature-table th:nth-child(2), table.signature-table td:nth-child(2) { width: 26%; }
|
|
table.signature-table th:nth-child(3), table.signature-table td:nth-child(3) { width: 22%; }
|
|
table.signature-table th:nth-child(4), table.signature-table td:nth-child(4) { width: 20%; }
|
|
|
|
/* The document-control block repeats its label column, so labels must not stretch. */
|
|
.document-control th { width: 1%; }
|
|
|
|
/* Wide grids (schedule, register, test cases) stay portrait like the
|
|
reference package, so they take a smaller face to fit the text block. */
|
|
table.dense { font-size: 7.2pt; }
|
|
table.dense th, table.dense td { padding: 1mm 1.2mm; }
|
|
|
|
/* Figures in the Software Design: full column width, caption under the image. */
|
|
.delivery-document figure.figure { margin: 8pt 0 12pt; text-align: center; break-inside: avoid; page-break-inside: avoid; }
|
|
.delivery-document figure.figure img { max-width: 100%; max-height: 225mm; border: .5pt solid #bfbfbf; }
|
|
.delivery-document figure.figure figcaption { margin-top: 4pt; font-size: 9.5pt; font-weight: 700; }
|