/* ==========================================================================
   IlmOS · report.css
   The output language. Anything that can be printed is drawn on a sheet that
   already looks like the paper it will become.
   ========================================================================== */

.print-bar {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 11px 12px;
  margin-bottom: 14px;
  border: 1px solid var(--brass-line);
  border-radius: var(--r);
  background: var(--brass-wash);
}

.print-bar__text {
  display: flex;
  flex-direction: column;
}

.print-bar__text strong {
  font-size: 13px;
  color: var(--brass-ink);
  letter-spacing: 0.02em;
}

.print-bar__text span {
  font-size: 12px;
  color: var(--brass);
}

.print-bar__actions {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}

@media (min-width: 720px) {
  .print-bar {
    flex-direction: row;
    align-items: center;
  }

  .print-bar__actions {
    margin-left: auto;
  }
}

/* ------------------------------------------------------------------ paper */
.paper {
  /* Never wider than the space it is given: a phone must not get a sheet that
     sticks out past the right edge of the screen. */
  max-width: min(940px, 100%);
  margin: 0 auto;
  padding: 18px 16px 14px;
  border: 1px solid var(--rule-2);
  border-radius: 2px;
  background: #fff;
  box-shadow: var(--lift-1);
  color: #111;
  font-size: 13px;
}

.paper + .paper {
  margin-top: 16px;
}

.paper--wide {
  max-width: 100%;
}

@media screen {
  /* A sheet can be genuinely wider than a phone: the attendance grid, a fee
     register, a multi-column result table. Let the sheet scroll inside itself
     so the extra columns stay reachable, instead of pushing the whole page
     sideways (which cut text off with no way to scroll to it). Print output is
     untouched — this rule is screen-only. */
  .paper {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}

.paper__head {
  padding-bottom: 10px;
  border-bottom: 2px solid var(--pine, #1a1c1a);
  margin-bottom: 12px;
}

.paper__brand {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  gap: 7px;
}

.paper__school {
  text-align: center;
}

.paper__crest {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 46px;
  flex: 0 0 46px;
  margin: 0 auto;
  border: 1.5px solid var(--pine, #1a1c1a);
  border-radius: 50%;
  overflow: hidden;
  font-family: var(--font-serif);
  font-size: 13px;
  font-weight: 700;
  text-align: center;
  line-height: 1.05;
  padding: 2px;
}

/* The uploaded crest prints inside the same ring as the initials did. */
.paper__crest--logo {
  padding: 0;
  background: #fff;
}

.paper__crest--logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}

.paper__school h1 {
  font-family: var(--font-serif);
  font-size: 20px;
  letter-spacing: 0.01em;
  color: var(--name-color, #1a1c1a);
}

.paper__school p {
  font-size: 11.5px;
  color: var(--ink-2, #4e5450);
  margin-top: 2px;
}

.paper__title {
  margin-top: 9px;
  text-align: center;
  padding: 6px 0;
  border-top: 1px solid var(--pine, #1a1c1a);
  border-bottom: 1px solid var(--pine, #1a1c1a);
}

.paper__title h2 {
  font-family: var(--font-serif);
  font-size: 15px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.paper__title p {
  font-size: 12px;
  color: #4e5450;
  margin-top: 2px;
}

.paper__meta {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 2px 18px;
  margin-top: 10px;
  font-size: 12.5px;
}

.paper__meta dl,
.paper__meta .meta {
  display: contents;
}

.paper__meta .meta__row {
  justify-content: flex-start;
  gap: 6px;
}

.paper__meta .meta__row dt {
  font-size: 11px;
  color: #4e5450;
}

.paper__meta .meta__row dd {
  text-align: left;
  font-weight: 600;
}

/* print tables ----------------------------------------------------------- */
.sheet-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 12.5px;
}

.sheet-table th,
.sheet-table td {
  border: 1px solid #9a958a;
  padding: 5px 6px;
  text-align: left;
}

.sheet-table thead th {
  background: #f0ede5;
  font-size: 10.5px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  font-weight: 700;
}

.sheet-table tbody tr:nth-child(even) td {
  background: #fbfaf7;
}

.sheet-table .t-right {
  text-align: right;
}

.sheet-table .t-center {
  text-align: center;
}

.sheet-table--att {
  font-size: 11px;
}

.sheet-table--att th,
.sheet-table--att td {
  padding: 3px 2px;
  text-align: center;
}

.sheet-table--att th:first-child,
.sheet-table--att td:first-child,
.sheet-table--att th:nth-child(2),
.sheet-table--att td:nth-child(2) {
  text-align: left;
  white-space: nowrap;
}

/* attendance cell codes -------------------------------------------------- */
.att-cell {
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 700;
  /* P / A sit under a narrow numbered column: centred, or the column reads
     like the marks drifted sideways from their header. */
  text-align: center;
}

.att-cell--P {
  color: #14532d;
}

.att-cell--A {
  color: #9a2d1c;
}

.att-cell--L {
  color: #8a5b12;
}

.att-cell--H {
  color: #6b675e;
}

/* ------------------------------------------------------------- signature */
.sign-row {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  gap: 26px;
  margin-top: 34px;
}

.sign-row__cell {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
}

.sign-row__line {
  display: block;
  width: 100%;
  border-top: 1px solid #1a1c1a;
}

.sign-row__label {
  font-size: 11px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #4e5450;
}

.paper__foot {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 16px;
  padding-top: 7px;
  border-top: 1px solid #cbc4b4;
  font-size: 10.5px;
  color: #6b675e;
}

/* summary strip inside a paper ------------------------------------------ */
.paper-summary {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 20px;
  margin: 12px 0;
  padding: 8px 10px;
  border: 1px dashed #9a958a;
  background: #fbfaf7;
  font-size: 12px;
}

.paper-summary b {
  font-variant-numeric: tabular-nums;
}

/* ==========================================================================
   Document blocks
   The challan, payslip, result card and question paper markup used BEM names
   that report.css never defined, so identity blocks and tables had no rules.
   ========================================================================== */

.receipt {
  display: grid;
  gap: 14px;
  max-width: 620px;
}

.receipt__head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
  padding-bottom: 12px;
  border-bottom: 2px dashed var(--rule-2);
}

.receipt__head strong {
  font-family: var(--font-display);
  font-size: 17px;
}

.receipt__no {
  text-align: right;
}

.receipt__no .code {
  display: inline-block;
  padding: 3px 9px;
  border-radius: 8px;
  background: var(--pine-wash);
  color: var(--pine-ink);
  font-weight: 700;
}

.receipt__block {
  display: grid;
  gap: 2px;
}

.receipt__totals {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 24px;
  padding: 12px 14px;
  border-radius: var(--r);
  background: var(--surface-2);
  border: 1px solid var(--rule);
}

.receipt__totals strong {
  margin-left: 4px;
}

.challan {
  max-width: 720px;
}

.payslip {
  max-width: 720px;
}

.result-card {
  max-width: 800px;
}

.paper--page {
  break-inside: avoid;
}

@media print {
  .paper--page {
    break-after: page;
  }

  .paper--page:last-child {
    break-after: auto;
  }
}

/* printed tables ---------------------------------------------------------- */
.paper-table {
  width: 100%;
  border-collapse: collapse;
  margin: 12px 0;
  font-size: 12.5px;
}

.paper-table th,
.paper-table td {
  border: 1px solid #9a958a;
  padding: 5px 6px;
  text-align: left;
  vertical-align: top;
}

.paper-table thead th {
  background: #f0ede5;
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.paper-table tbody tr:nth-child(even) td {
  background: #fbfaf7;
}

/* a new day in a datesheet ------------------------------------------------ */
.paper-table tbody tr.row--day td {
  border-top: 1px solid #9a958a;
  background: #f0ede5;
  font-weight: 600;
}

/* a subject the student failed ------------------------------------------- */
.paper-table tbody tr.row--fail td {
  background: #fdf0ec;
  color: #9a2d1c;
}

/* Numbers live in the column their header names: right against right,
   centre against centre — never a header on one side and values on the other.
   Both the heading and the figure carry it, because the summary sheet writes
   `class="num"` on its cells and an unstyled `num` only sets tabular figures. */
.paper-table th.num,
.paper-table td.num {
  text-align: right;
  font-variant-numeric: tabular-nums;
}

.paper-table .t-right {
  text-align: right;
}

.paper-table .t-center {
  text-align: center;
}

/* challan head ------------------------------------------------------------ */
.challan__top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  flex-wrap: wrap;
  padding-bottom: 10px;
  border-bottom: 2px solid #1a1c1a;
}

.challan__school {
  font-family: var(--font-serif);
  font-size: 19px;
  letter-spacing: 0.01em;
}

.challan__no {
  display: flex;
  flex-direction: column;
  gap: 2px;
  font-size: 12px;
  text-align: right;
}

.challan__label {
  display: block;
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #4e5450;
}

.challan__who {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px 18px;
  margin: 12px 0;
  font-size: 12.5px;
}

.challan__who > div {
  display: flex;
  flex-direction: column;
  gap: 1px;
  min-width: 0;
}

.challan__who b {
  overflow-wrap: anywhere;
}

.challan__table {
  margin-top: 4px;
}

.challan__total td {
  background: #f0ede5;
  font-weight: 700;
  border-top: 2px solid #1a1c1a;
}

.challan__words {
  margin: 8px 0 0;
  font-size: 12px;
  font-style: italic;
  color: #4e5450;
}

/* identity grid shared by challan, payslip and result card ---------------- */
.receipt__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 10px 18px;
  margin: 12px 0;
  padding: 10px 12px;
  border: 1px solid #cbc4b4;
  border-radius: 3px;
  background: #fbfaf7;
}

.receipt__grid > div {
  display: flex;
  flex-direction: column;
  gap: 1px;
  min-width: 0;
}

.receipt__grid b {
  font-size: 13px;
  overflow-wrap: anywhere;
}

/* bank deposit block ------------------------------------------------------ */
.paper__bank {
  display: flex;
  flex-direction: column;
  gap: 5px;
  margin-top: 12px;
  padding: 9px 11px;
  border: 1px dashed #9a958a;
  background: #fbfaf7;
}

.paper__bank-title {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  color: #4e5450;
}

.paper__bank-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 3px 18px;
  font-size: 12px;
}

.paper__bank-grid b {
  overflow-wrap: anywhere;
}

.paper__note {
  margin-top: 10px;
  font-size: 11.5px;
  line-height: 1.5;
  color: #4e5450;
}

.paper__section {
  display: block;
  margin: 16px 0 6px;
  padding-bottom: 4px;
  border-bottom: 1px solid #cbc4b4;
}

.paper__section-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  padding-bottom: 4px;
  border-bottom: 1px solid #1a1c1a;
}

.paper__section-head h4 {
  font-family: var(--font-serif);
  font-size: 14px;
  letter-spacing: 0.02em;
}

/* question paper ---------------------------------------------------------- */
.paper__student {
  display: flex;
  flex-wrap: wrap;
  gap: 4px 22px;
  margin-top: 10px;
  font-size: 12px;
}

.paper__blank {
  display: inline-block;
  min-width: 150px;
  border-bottom: 1px dotted #6b675e;
}

.paper__blank--short {
  min-width: 78px;
}

.paper__marks-box {
  margin-left: auto;
}

.paper__instructions {
  margin-top: 10px;
  padding: 8px 10px;
  border: 1px dashed #9a958a;
  background: #fbfaf7;
  font-size: 12px;
  line-height: 1.5;
}

.paper__questions {
  margin: 8px 0 0;
  padding-left: 20px;
}

.paper__question {
  margin-bottom: 9px;
  break-inside: avoid;
}

.paper__question-text {
  display: inline;
}

.paper__question-marks {
  margin-left: 6px;
  font-weight: 700;
  color: #4e5450;
}

.paper__options {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  gap: 2px 16px;
  margin-top: 4px;
  font-size: 12px;
}

.paper__option b {
  font-family: var(--font-mono);
  font-size: 11.5px;
}

/* MCQ key mark (print-only teacher copy can highlight later). */
.paper__option--key {
  font-weight: 600;
}

.paper__section-note {
  margin: 4px 0 0;
  font-size: 11.5px;
  font-style: italic;
  color: #4e5450;
}

/* Fill-in: word-sized gaps printed after the sentence. */
.paper__gaps {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-left: 6px;
  vertical-align: baseline;
}

.paper__gap {
  display: inline-block;
  width: 52px;
  border-bottom: 1.2px solid #1a1c1a;
  min-height: 12px;
}

/* Matching: two columns, left ordered, right for the student to pair. */
.paper__match {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4px 24px;
  margin-top: 5px;
  font-size: 12.5px;
}

.paper__match-col {
  display: flex;
  flex-direction: column;
  gap: 3px;
}

.paper__match-col--left {
  text-align: left;
}

.paper__match-col--right {
  text-align: left;
}

.paper__match-item b {
  font-family: var(--font-mono);
  font-size: 11px;
}

/* Math table (times tables / figures). */
.paper__math {
  margin: 6px 0 2px;
  border-collapse: collapse;
  font-size: 12px;
}

.paper__math td {
  padding: 3px 10px;
  border: 1px solid #9a958a;
}

/* True / False */
.paper__tf {
  display: block;
  margin-top: 4px;
  font-size: 12.5px;
}

.paper__tf-box {
  display: inline-block;
  padding: 2px 8px;
  border: 1px dashed #9a958a;
}

/* Answer space: one ruled line per unit the builder asked for. */
.paper__lines {
  display: block;
  margin: 6px 0 2px;
}

.paper__line {
  display: block;
  height: 15px;
  border-bottom: 1px dotted #b7b2a6;
}

/* A portion paper prints its chapters / topics instead of questions. */
.paper__portion {
  margin-top: 10px;
  padding: 9px 11px;
  border: 1px solid #cbc4b4;
  background: #fbfaf7;
  font-size: 12.5px;
  line-height: 1.65;
  white-space: pre-wrap;
}

/* A manual paper's attached sheet, printed under the record. */
.paper__sheet {
  display: block;
  max-width: 100%;
  margin: 10px 0 0;
  border: 1px solid #cbc4b4;
}

.paper__sheet-link {
  margin-top: 8px;
  font-size: 12px;
  word-break: break-all;
}

.paper__portion-label {
  display: block;
  margin-bottom: 3px;
  font-family: var(--font-serif);
  font-size: 12px;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: #6b675e;
}

.paper__paper-foot {
  display: flex;
  flex-wrap: wrap;
  gap: 4px 22px;
  margin-top: 16px;
  padding-top: 7px;
  border-top: 1px solid #cbc4b4;
  font-size: 11px;
  color: #4e5450;
}

.paper__signature {
  margin-left: auto;
}

.paper__foot-time {
  font-variant-numeric: tabular-nums;
}

/* on-screen summary above a batch of documents --------------------------- */
.print-summary {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 18px;
  margin-bottom: 12px;
  padding: 9px 11px;
  border: 1px solid var(--rule-2);
  border-radius: var(--r-sm);
  background: var(--surface-2);
  font-size: 12.5px;
  color: var(--ink-2);
}

.print-summary b {
  font-variant-numeric: tabular-nums;
  color: var(--ink);
}

/* ------------------------------------------------------ roll number slips */
.slips {
  display: grid;
  gap: 18px;
}

.slip {
  max-width: 820px;
}

.slip__who {
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 16px;
  align-items: center;
  margin: 12px 0;
}

.slip__photo {
  display: grid;
  place-items: center;
  width: 84px;
  height: 100px;
  border: 1px dashed #9a958a;
  border-radius: 4px;
  color: #6b675e;
  font-size: 11px;
  overflow: hidden;
}

.slip__photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.slip__facts {
  display: grid;
  gap: 6px;
  margin: 0;
}

.slip__facts div {
  display: flex;
  gap: 8px;
  align-items: baseline;
}

.slip__facts dt {
  min-width: 64px;
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #6b675e;
}

.slip__facts dd {
  margin: 0;
  font-weight: 700;
}

.slip__roll {
  display: grid;
  justify-items: center;
  padding: 8px 16px;
  border: 2px solid #13152b;
  border-radius: 6px;
}

.slip__roll span {
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.slip__roll b {
  font-size: 28px;
  line-height: 1.1;
}

.slip__sign {
  min-width: 90px;
}

.slip__rules {
  margin-top: 8px;
}

@media print {
  /* Two slips per A4 sheet: each takes half a page and never splits. */
  .slips {
    gap: 0;
  }

  .slip {
    break-inside: avoid;
    max-width: none;
    margin: 0 0 6mm;
    padding: 4mm 6mm 3mm;
    border: 0;
    border-bottom: 1px dashed #9a958a;
    font-size: 11px;
  }

  /* A compact letterhead: half a page has to hold the whole slip. */
  .slip .paper__head {
    padding-bottom: 2mm;
  }

  .slip .paper__crest {
    display: none;
  }

  .slip .paper__school h1 {
    font-size: 15px;
  }

  .slip .paper__title h2 {
    font-size: 12px;
  }

  .slip__who {
    margin: 2mm 0;
  }

  .slip__photo {
    width: 64px;
    height: 76px;
  }

  .slip .paper-table {
    margin: 2mm 0;
    font-size: 10.5px;
  }

  .slip .paper-table th,
  .slip .paper-table td {
    padding: 2px 5px;
  }

  .slip .sign-row {
    margin-top: 5mm;
  }

  .slip:nth-child(2n) {
    break-after: page;
  }
}

/* A printed list: every column, small type, the row number first. */
.sheet-table--list th, .sheet-table--list td { font-size: 11px; padding: 4px 5px; vertical-align: top; }
.sheet-table--list td { overflow-wrap: break-word; }
.sheet-foot { margin-top: 8px; font-size: 12px; text-align: right; }

/* One record on paper (an admission form, a staff file). */
.record-sheet__photo { float: right; margin: 0 0 8px 12px; border: 1px solid #999; object-fit: cover; }
.record-sheet__section { margin-top: 12px; break-inside: avoid; }
.record-sheet__section h3 { font-size: 12px; text-transform: uppercase; letter-spacing: .04em; margin: 0 0 4px; }
.record-sheet__table th { width: 34%; text-align: left; font-weight: 600; }
.record-sheet__table th, .record-sheet__table td { font-size: 12px; padding: 5px 8px; }
.sheet-table--list { width: 100%; }
.sheet-table--list th { text-transform: none; letter-spacing: 0; font-size: 10.5px; }

@media print {
  .sheet-table--list th, .sheet-table--list td { font-size: 9.5px; padding: 3px 4px; }
}

/* The principal's signature sits on its line, above the name. */
.sign-row__cell { position: relative; }
.sign-row__sig { position: absolute; bottom: calc(100% - 8px); left: 50%; transform: translateX(-50%); max-height: 54px; max-width: 90%; object-fit: contain; pointer-events: none; }

/* Letter pad: typed straight on the paper. The hints show on screen only. */
.lp-edit { display: inline-block; min-width: 3ch; outline: none; }
.lp-edit:empty::before { content: attr(data-hint); color: #9aa19c; }
.lp-title { min-width: 8ch; }
.lp-meta { display: flex; flex-wrap: wrap; gap: 8px 24px; margin: 14px 0 10px; font-size: 13px; }
.lp-line { min-width: 22ch; border-bottom: 1px dotted #9aa19c; }
.lp-short { min-width: 10ch; border-bottom: 1px dotted #9aa19c; }
.lp-wide { min-width: 60%; }
.lp-table { width: 100%; }
.lp-table td, .lp-table th { font-size: 13px; padding: 7px 8px; }
.lp-table td { height: 30px; }
.lp-table .lp-sn { width: 64px; text-align: center; }
.lp-table .lp-price { width: 130px; text-align: right; }
.lp-cell { outline: none; }
.lp-cell:focus, .lp-edit:focus { background: #f3f8f5; }
.lp-note { margin-top: 12px; font-size: 13px; }

/* The school timetable, compact so the whole week fits one sheet: periods
   down and classes across, or classes down and periods across. Subject over
   teacher in each box; a break runs across every class. */
.paper--tight { padding: 10px 12px 8px; }
.paper--tight .paper__head { padding-bottom: 4px; margin-bottom: 6px; }
.tt-sheet { width: 100%; font-size: 10.5px; line-height: 1.15; }
.sheet-table.tt-sheet th, .sheet-table.tt-sheet td { text-align: center; vertical-align: middle; padding: 2px 3px; }
.sheet-table.tt-sheet thead th { text-transform: none; letter-spacing: 0; font-size: 10px; padding: 3px; }
.tt-sheet th small { display: block; font-weight: 400; font-size: 9px; color: #555; }
.tt-sheet td b { display: block; font-weight: 600; }
.tt-sheet td small { display: block; font-size: 9px; color: #555; }
.tt-sheet .tt-sheet__class { text-align: left; white-space: nowrap; }
.tt-sheet .tt-sheet__break { background: #fdf3d8; color: #7a5200; }
.tt-sheet .tt-sheet__changed { background: #e3eefb; }
.tt-sheet .tt-sheet__empty { color: #aaa; }
.tt-note { border: 1px solid #bbb; border-radius: 4px; padding: 4px 8px; margin-top: 6px; }
.tt-note h3 { font-size: 11px; margin: 0 0 2px; }
.tt-note p { margin: 0; font-size: 10.5px; white-space: pre-line; }
.tt-legend { font-size: 10px; color: #555; margin: 4px 0 0; }
/* The break and changed colours win over the table's striped rows. */
.sheet-table.tt-sheet tbody tr > .tt-sheet__break { background: #fdf3d8; }
.sheet-table.tt-sheet tbody tr > .tt-sheet__changed { background: #e3eefb; }
.tt-sheet--down .tt-sheet__period, .tt-sheet--down .tt-sheet__time { width: 1%; white-space: nowrap; }
.tt-sheet--down .tt-sheet__time { font-size: 9.5px; }
.tt-sheet--down .tt-sheet__break { font-weight: 700; font-size: 11px; letter-spacing: 0.3em; text-transform: uppercase; }
.sheet-table.tt-sheet--down tbody tr.tt-sheet__break-row > * { background: #fdf3d8; }
.tt-sheet--across .tt-sheet__break { width: 1%; white-space: nowrap; }
.tt-sheet--across .tt-sheet__break--tall span { font-weight: 700; font-size: 9.5px; text-transform: uppercase; }
