/* Printable calendar (always dark ink on white paper). */
.cal-paper{margin-top:18px}
.cal-sheet{container-type:inline-size;background:#fff;color:#1d2327;border-radius:6px;box-shadow:0 1px 3px rgba(0,0,0,.14);padding:22px 20px;font:14px/1.35 -apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  -webkit-print-color-adjust:exact;print-color-adjust:exact}
.cal-t .short{display:none}
@container (max-width:780px){.cal-t .full{display:none}.cal-t .short{display:inline}}
.cal-month{break-after:page;page-break-after:always}
.cal-month:last-child{break-after:auto;page-break-after:auto}
.cal-month+.cal-month{margin-top:34px}
.cal-title{display:flex;justify-content:space-between;align-items:baseline;margin:0 0 10px;font:600 30px/1.1 Georgia,"Times New Roman",serif}
.cal-title small{font:500 15px/1 -apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:#5f7178}
.cal-t{width:100%;border-collapse:collapse;table-layout:fixed}
.cal-t th{font-size:12.5px;text-transform:uppercase;letter-spacing:.06em;color:#34454c;padding:6px 4px;border-bottom:2px solid #1d2327;text-align:left;overflow:hidden;white-space:nowrap}
.cal-t td{border:1px solid #cfc8bb;vertical-align:top;height:86px;padding:4px 6px;overflow:hidden}
.cal-t td.out{background:#f6f4ef}
.cal-t td.we .cal-d{color:#8a4b2a}
.cal-t td.today{box-shadow:inset 0 0 0 3px #2f7a74}
.cal-d{display:block;font-weight:700;font-size:19px;line-height:1.1}
.cal-h{display:block;font-size:11.5px;color:#2f6f69;font-weight:600;line-height:1.2;margin-top:3px}
.cal-n{display:block;font-size:11.5px;color:#1d2327;background:#fff2c2;border-radius:4px;padding:1px 4px;margin-top:3px;line-height:1.25}
.cal-lines{display:block;margin-top:6px;height:34px;background:repeating-linear-gradient(to bottom,transparent 0 16px,#d9d2c5 16px 17px)}
.cal-sheet.big .cal-d{font-size:30px}
.cal-sheet.big .cal-t th{font-size:15px}
.cal-sheet.big .cal-h,.cal-sheet.big .cal-n{font-size:13.5px}
.cal-sheet.big .cal-title{font-size:38px}
.cal-sheet.big .cal-t td{height:100px}
/* whole year on one page */
.cal-year-title{font:600 34px/1.1 Georgia,"Times New Roman",serif;margin:0 0 14px;text-align:center}
.cal-year{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 18px}
.cal-mini h3{margin:0 0 4px;font:600 16px/1.2 Georgia,"Times New Roman",serif}
.cal-mini table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:12px}
.cal-mini th{font-size:10px;color:#5f7178;font-weight:700;padding:2px 0}
.cal-mini td{text-align:center;padding:3px 0;line-height:1.15}
.cal-mini td.hol{color:#fff;background:#2f7a74;border-radius:50%;font-weight:700}
.cal-mini td.note{box-shadow:inset 0 0 0 2px #e0a92c;border-radius:50%}
.cal-sheet.big .cal-mini table{font-size:14.5px}
.cal-sheet.big .cal-mini h3{font-size:19px}
.cal-key{margin-top:16px;columns:2;column-gap:24px;font-size:12px;color:#34454c}
.cal-key p{margin:0 0 3px;break-inside:avoid}
.cal-list{list-style:none;padding:0;margin:10px 0 0;display:grid;gap:8px}
.cal-list li{display:flex;align-items:center;gap:10px;justify-content:space-between;background:var(--bg);border:1px solid var(--line);border-radius:12px;padding:4px 4px 4px 14px}
.cal-add{margin-top:16px;border:1px solid var(--line);border-radius:16px;padding:10px 16px}
.cal-add summary{cursor:pointer;font-weight:600;min-height:44px;display:flex;align-items:center}
@media (max-width:640px){
  .cal-sheet{padding:12px 8px}
  .cal-t th{font-size:10.5px;letter-spacing:0;padding:4px 2px}
  .cal-t td{height:64px;padding:2px 3px}
  .cal-d{font-size:15px}.cal-sheet.big .cal-d{font-size:20px}
  .cal-h,.cal-n,.cal-sheet.big .cal-h,.cal-sheet.big .cal-n{font-size:9.5px}
  .cal-title{font-size:24px}.cal-sheet.big .cal-title{font-size:27px}
  .cal-year{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cal-key{columns:1}
}
@media print{
  #tool-print-root .cal-sheet{box-shadow:none;border-radius:0;padding:0}
  #tool-print-root .cal-month+.cal-month{margin-top:0}
  #tool-print-root .cal-t td.today{box-shadow:none}
  #tool-print-root .cal-t td{height:26mm}
  #tool-print-root .cal-t.w6 td{height:21.5mm}
  #tool-print-root .cal-sheet.big .cal-t td{height:27mm}
  #tool-print-root .cal-sheet.big .cal-t.w6 td{height:22mm}
  #tool-print-root .cal-year{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 16px}
  #tool-print-root .cal-year-title{font-size:26pt;margin-bottom:8px}
  #tool-print-root .cal-mini h3{font-size:12pt;margin-bottom:2px}
  #tool-print-root .cal-mini table{font-size:9.5pt}
  #tool-print-root .cal-sheet.big .cal-mini table{font-size:11pt}
  #tool-print-root .cal-mini td{padding:1.5px 0}
  #tool-print-root .cal-key{columns:3;column-gap:14px;font-size:7.5pt;margin-top:10px}
  #tool-print-root .cal-key p{margin:0 0 1px}
}
