#jvybon{padding:4.5rem 1.5rem}#jvybon .cal-side{position:sticky;top:1.5rem}#jvybon .cal-fact{display:flex;gap:1rem;align-items:center;margin-bottom:1rem}#jvybon .cal-fact b{font-family:var(--font-display);font-size:3rem;color:var(--red);line-height:1;min-width:3.5rem;font-weight:500}#jvybon .cal-fact small{display:block;color:var(--muted)}#jvybon .key{display:inline-block;width:.9rem;height:.9rem;vertical-align:-1px;margin-right:.2rem}#jvybon .key.k-S{background:var(--red)}#jvybon .key.k-B{border:1px dashed var(--muted);background:var(--paper)}#jvybon .key.k-T{background:var(--gold)}#jvybon .buttons{flex-direction:column;align-items:stretch;margin-top:1.5rem}#jvybon .buttons .button{margin-right:0}#jvybon ol.cal-list{list-style:none;margin:0}#jvybon .cal-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:.25rem .75rem;margin:0;padding:1.5rem 0 .75rem;border-bottom:2px solid var(--ink)}#jvybon .cal-head:first-child{padding-top:0}#jvybon .t-en{font-family:var(--font-display);font-size:1.6rem;font-weight:600}#jvybon .t-zh{font-family:var(--font-zh-display);color:var(--red);font-weight:700}#jvybon .t-note{color:var(--muted);font-size:.9rem;margin-left:auto}#jvybon .cal-row{display:grid;grid-template-columns:8.5rem 2.75rem 1fr auto;gap:.75rem;align-items:center;padding:.6rem .5rem;border-bottom:1px solid var(--line);margin:0;border-left:4px solid var(--red)}#jvybon .c-date{font-size:.95rem}#jvybon .c-date b{font-family:var(--font-display);font-size:1.15rem;font-weight:600}#jvybon .c-num{color:var(--muted);font-size:.8rem}#jvybon .c-what small{display:inline;color:var(--muted);margin-left:.5rem}#jvybon .cal-row.k-B{border-left:4px dashed var(--muted);background:var(--paper)}#jvybon .cal-row.k-B .c-what{color:var(--muted);font-style:italic}#jvybon .cal-row.k-T{border-left-color:var(--gold);background:#fbf0da}#jvybon .cal-row.is-past{opacity:.45}#jvybon .cal-row.is-next{background:var(--red-tint);box-shadow:inset 0 0 0 1px var(--red)}#jvybon .c-tag{background:var(--red);color:#fff;font-size:.72rem;font-weight:700;padding:.15rem .5rem;letter-spacing:.04em;white-space:nowrap}@media(max-width: 768px){#jvybon .cal-side{position:static}#jvybon .cal-row{grid-template-columns:6.5rem 1fr;row-gap:.1rem}#jvybon .c-num{display:none}#jvybon .c-tag{grid-column:2;justify-self:start}#jvybon .c-what small{display:block;margin:0}}
