/* Tờ sớ: giấy đỏ hoặc vàng, chữ Nho viết dọc phải → trái, chú thích chữ Việt cạnh bên (>= 14px). Theo design/so-mau.html. */
.so { --nen: #c0392b; --vien: #f1c40f; --giay: #fadbd8; --vien-giay: #e74c3c; --chu: #7b1e14;
  background: var(--nen); border: 5px solid var(--vien); padding: 8px; border-radius: 4px; }
.so.vang { --nen: #b9770e; --vien: #c0392b; --giay: #fcf3cf; --vien-giay: #d4ac0d; --chu: #6e2c00; }
.so .giay { background: var(--giay); border: 3px solid var(--vien-giay); padding: 12px 8px; }
.so .han { font-family: "Hiragino Sans GB", "STHeiti", "Noto Serif CJK SC", "Noto Serif SC", serif; color: var(--chu); }
.so .viet { font-family: "Times New Roman", Georgia, serif; color: #5a2a22; }
.so .tieu-de { text-align: center; font-size: 28px; font-weight: bold; letter-spacing: 6px; line-height: 1.2; }
.so .tieu-de-pa { text-align: center; font-size: 15px; font-style: italic; padding-bottom: 8px; border-bottom: 2px solid var(--vien-giay); }
.so .hang { margin-top: 10px; display: flex; flex-direction: row-reverse; flex-wrap: wrap; justify-content: flex-start; gap: 10px 6px; align-items: flex-start; }
.so .nhom { display: flex; flex-direction: row-reverse; align-items: flex-start; gap: 3px; }
.so .cot-han { writing-mode: vertical-rl; font-size: 26px; letter-spacing: 6px; line-height: 1; font-weight: bold; min-height: 120px; }
.so .cot-han .ten-viet { font-family: "Times New Roman", Georgia, serif; font-size: 20px; letter-spacing: 1px; margin-top: 6px; }
.so .cot-pa { writing-mode: vertical-rl; font-size: 14px; line-height: 1.1; letter-spacing: 0; font-style: italic; min-height: 120px; max-height: 190px; }
.so .chan-so { margin-top: 8px; font-size: 14px; display: flex; justify-content: space-between; gap: 6px; flex-wrap: wrap; }
.so .dong-khoa { margin-top: 8px; padding: 6px; border: 1px dashed var(--vien-giay); font-size: 14px; text-align: center; }
.loc-viet { outline: 3px solid #fff200; box-shadow: 0 0 10px 2px #ffe600; }
