.tcal{--tcal-cell:42px;--tcal-font:16px;font:var(--tcal-font)/1.6 "Noto Sans JP",Meiryo,sans-serif;color:#283b3d;max-width:100%;box-sizing:border-box;background:#fff;padding:16px;border:1px solid #d9e2e0;border-radius:4px}.tcal *{box-sizing:border-box}.tcal--compact{--tcal-cell:28px;--tcal-font:14px;padding:10px}.tcal--large{--tcal-cell:62px;--tcal-font:18px}.tcal .tcal-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}.tcal .tcal-heading h3{font-size:1.15em;line-height:1.5;margin:0}.tcal button{background:#fff;color:#267a76;border:1px solid #a8c2bf;border-radius:3px;min-width:36px;min-height:36px;font:26px/1 sans-serif;cursor:pointer;padding:2px}.tcal button:disabled{opacity:.35;cursor:default}.tcal button:focus-visible{outline:3px solid #956320;outline-offset:2px}.tcal table.tcal-table{width:100%;table-layout:fixed;border-collapse:collapse;margin:0;background:#fff}.tcal .tcal-table th,.tcal .tcal-table td{padding:3px 0;text-align:center;border:1px solid #e1e6e5;background:#fff;font-size:1em;font-weight:400;vertical-align:middle;color:#283b3d}.tcal .tcal-table td{height:var(--tcal-cell)}.tcal .tcal-table th{font-size:.9em;font-weight:600}.tcal .tcal-table .tcal-saturday{color:#185bbb}.tcal .tcal-table .tcal-week-closed{color:#b91f30}.tcal .tcal-table .tcal-closed{background:#c3293b;color:#fff}.tcal .tcal-table .tcal-today span{display:inline-flex;align-items:center;justify-content:center;min-width:1.8em;outline:2px solid currentColor;outline-offset:1px;border-radius:50%}.tcal .tcal-legend{display:flex;gap:6px;align-items:center;flex-wrap:wrap;font-size:12px;margin:12px 0 0}.tcal-key{width:12px;height:12px;background:#c3293b;display:inline-block}.tcal-today-key{width:12px;height:12px;border:1px solid #283b3d;border-radius:50%;margin-left:10px}.tcal .tcal-notes{font-size:14px;margin:12px 0 0;padding-left:1.3em;overflow-wrap:anywhere}.tcal .tcal-notes li{margin:5px 0}.tcal .tcal-message{font-size:12px;margin:6px 0 0;overflow-wrap:anywhere}.tcal .tcal-message:empty{display:none}.tcal-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* 1.1.0: administrator colors and common notice paragraphs. */
.tcal .tcal-table td:not(.tcal-empty){background:var(--tcal-open-bg,#fff);color:var(--tcal-open-fg,#283b3d)}
.tcal .tcal-table td.tcal-saturday{color:var(--tcal-saturday-fg,#185bbb)}
.tcal .tcal-table td.tcal-closed{background:var(--tcal-closed-bg,#c3293b);color:var(--tcal-closed-fg,#fff)}
.tcal .tcal-key{background:var(--tcal-closed-bg,#c3293b);border:1px solid #777}
.tcal .tcal-notice{margin-top:14px;border-top:1px solid #d9e2e0;padding-top:12px;overflow-wrap:anywhere;font-size:14px;line-height:1.8}
.tcal .tcal-notice p{margin:0 0 12px}
.tcal .tcal-notice p:last-child{margin-bottom:0}

/* Temporary closure date and label; reason retains normal text color. */
.tcal .tcal-notes .tcal-note-closed{color:#b91f30}
