/* Printable character sheet: three US Letter pages, black-on-white. Modeled on the original Google Sheets character sheet. */
.sheet{--ink:#111;--soft:#555;--band:#ececec;--rule:#9a9a9a;--bar:#111;color:var(--ink);font:400 8.6pt/1.25 "Alegreya Sans","Segoe UI",sans-serif}
.sheet .pg{width:8.5in;height:11in;box-sizing:border-box;padding:.38in .4in;background:#fff;margin:0 auto 24px;box-shadow:0 6px 24px rgba(0,0,0,.45);overflow:hidden;display:flex;flex-direction:column;gap:7pt}
.sheet *{box-sizing:border-box}
.sheet a{color:inherit}
.sheet table{width:100%;border-collapse:collapse;font-size:8.4pt;line-height:1.2;table-layout:fixed}
.sheet th,.sheet td{border:.6pt solid var(--rule);padding:1.6pt 3pt;text-align:left;vertical-align:middle;background:#fff;color:var(--ink);text-transform:none;letter-spacing:0;font:inherit}
.sheet thead th{background:var(--bar);color:#fff;font:700 7.2pt/1.2 "Alegreya Sans",sans-serif;letter-spacing:.6pt;text-transform:uppercase;border-color:var(--bar)}
.sheet tbody tr:nth-child(even) td,.sheet tbody tr:nth-child(even) th{background:var(--band)}
.sheet tbody th{font-weight:700}
.sheet td.c,.sheet th.c{text-align:center}
.sheet .fill{font-weight:700}
.sheet .t td{height:15pt}
.sheet .tall td{height:14.5pt}
.sh-blk{border:1pt solid var(--ink);display:flex;flex-direction:column}
.sh-blk > h3{margin:0;background:var(--bar);color:#fff;font:700 8.4pt/1 Cinzel,"Times New Roman",serif;letter-spacing:1.6pt;text-transform:uppercase;padding:3.5pt 6pt;text-align:center}
.sh-blk > .in{padding:4pt 5pt;display:flex;flex-direction:column;gap:4pt;flex:1}
.sh-blk > table{border:0}
.sh-blk > table th:first-child,.sh-blk > table td:first-child{border-left:0}
.sh-blk > table th:last-child,.sh-blk > table td:last-child{border-right:0}
.sh-blk > table tr:last-child td,.sh-blk > table tr:last-child th{border-bottom:0}
/* labelled fields: value on a line, label underneath (like the original) */
.sh-fields{display:grid;gap:3pt 8pt}
.sh-f{display:flex;flex-direction:column;min-width:0}
.sh-f .v{min-height:15pt;border-bottom:.8pt solid var(--ink);font-weight:700;font-size:10pt;padding:1pt 2pt 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sh-f .l{font-size:6.6pt;letter-spacing:.5pt;text-transform:uppercase;color:var(--soft);padding-top:1pt}
.sh-f.big .v{font-size:15pt;min-height:22pt;text-align:center}
.sh-f.bx .v{border:1pt solid var(--ink);text-align:center;min-height:20pt;font-size:12pt;display:flex;align-items:center;justify-content:center;padding:0}
.sh-f.bx.xl .v{min-height:20pt;font-size:14pt}
.sh-f.bx .l{text-align:center}
/* page 1 */
.sh-top{display:flex;gap:10pt;align-items:stretch}
.sh-brand{background:var(--bar);color:#fff;padding:6pt 8pt;display:flex;flex-direction:column;justify-content:center;min-width:1.55in;font:700 12pt/1.1 Cinzel,serif;letter-spacing:1.2pt;text-align:center}
.sh-brand small{display:block;font:400 6.6pt/1.3 "Alegreya Sans",sans-serif;letter-spacing:2pt;text-transform:uppercase;margin-top:3pt;color:#ddd}
.sh-id{flex:1;grid-template-columns:2.2fr 1.3fr .55fr .8fr}
.sh-cols{display:flex;gap:8pt;flex:1;min-height:0}
.sh-left,.sh-right{gap:6pt!important}
.sh-left{flex:1.75;display:flex;flex-direction:column;gap:7pt;min-width:0}
.sh-right{flex:1;display:flex;flex-direction:column;gap:7pt;min-width:0}
.sh-pair{display:flex;gap:7pt}
.sh-pair > *{flex:1;min-width:0}
.sh-ab td,.sh-ab th{height:15.5pt;font-size:9.2pt}
.sh-ab td.c{font-size:11pt;font-weight:700}
.sh-def{grid-template-columns:repeat(3,1fr)}
.sh-hp{grid-template-columns:1fr 1.6fr 1fr 1fr 1fr}
.sh-check{display:inline-block;width:8pt;height:8pt;border:.8pt solid var(--ink);vertical-align:-1pt;margin-right:3pt;background:#fff}
.sh-check.on{background:var(--ink)}
.sh-dots{display:flex;flex-wrap:wrap;gap:3pt;align-items:center}
.sh-dot{width:11pt;height:11pt;border:1pt solid var(--ink);border-radius:50%;display:inline-block;background:#fff}
.sh-note{font-size:7pt;color:var(--soft);line-height:1.25;margin:0}
.sh-lines{display:flex;flex-direction:column}
.sh-lines span{border-bottom:.6pt solid var(--rule);min-height:14pt;font-size:8.4pt;padding:2pt 2pt 0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.sh-sk td,.sh-sk th{height:12.6pt;padding-top:1pt;padding-bottom:1pt}
.sh-sk .ranks{letter-spacing:1pt}
.sh-txt{font-size:8pt;line-height:1.25;padding:3pt 4pt;min-height:30pt}
/* page 2/3 */
.sh-tal td{height:15.2pt;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.sh-tal td.wrap{white-space:normal;font-size:7.3pt;line-height:1.15}
.sh-tal .clip{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;max-height:17pt}
.sh-tal td{height:19pt}
.sh-foot{margin-top:auto;display:flex;justify-content:space-between;font-size:6.6pt;color:var(--soft);letter-spacing:.4pt}
.sh-pg-title{display:flex;justify-content:space-between;align-items:flex-end;border-bottom:1.6pt solid var(--ink);padding-bottom:3pt}
.sh-pg-title b{font:700 13pt/1 Cinzel,serif;letter-spacing:1pt}
.sh-pg-title span{font-size:8pt;color:var(--soft)}
.sh-grid2{display:grid;grid-template-columns:1fr 1fr;gap:7pt}
.sh-grow{flex:1}
@media screen{.sheet{padding:10px 0;overflow-x:auto}.sheet .pg{min-width:8.5in}}
@media print{
  @page{size:letter;margin:0}
  html,body{background:#fff!important}
  .sheet{padding:0}
  .sheet .pg{margin:0;box-shadow:none;page-break-after:always;break-after:page}
  .sheet .pg:last-child{page-break-after:auto;break-after:auto}
  .sheet thead th{background:#111!important;color:#fff!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .sheet tbody th,.sheet td{color:#111!important}
  .sh-blk > h3,.sh-brand,.sh-check.on,.sheet tbody tr:nth-child(even) td,.sheet tbody tr:nth-child(even) th{-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .site-head,.site-foot,.cb-noprint,.cb-rail,.cb-side,.cb-nav,h1.title,.kicker{display:none!important}
  #main,.wrap,.layout,.content,.cb,.cb-layout,.cb-main{display:block!important;padding:0!important;margin:0!important;max-width:none!important}
}
.sheet tr.sh-sub th{background:#111!important;color:#fff!important;font:700 6.8pt/1.2 "Alegreya Sans",sans-serif;letter-spacing:.5pt;text-transform:uppercase;-webkit-print-color-adjust:exact;print-color-adjust:exact}
.sh-arm td,.sh-arm th{height:13pt}
.sh-gear td{height:15.4pt;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
/* filling the sheet in on screen */
.sheet .sh-dot.on{background:var(--ink)}
.sheet .sh-check,.sheet .sh-dot{cursor:pointer}
.sheet [data-sk]{font-weight:700;outline:none}
.sheet td[data-sk],.sheet th[data-sk]{white-space:nowrap;overflow:hidden}
@media screen{
  .sheet [data-sk]{cursor:text}
  .sheet [data-sk]:hover{background:#fbf3d4!important}
  .sheet [data-sk]:focus{background:#fbefc2!important;box-shadow:inset 0 0 0 1.5px #b07a1f}
  .sheet [data-sc]:focus-visible{outline:2px solid #b07a1f;outline-offset:1px}
}
@media print{.sh-dot.on{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
