/* The sidebar uses one icon size and one rhythm on every page. */
.sidebar .nav-item{min-height:44px;line-height:1.45;gap:12px;padding:11px 13px}
.sidebar .nav-item>.icon{width:18px;height:18px;stroke-width:1.6;color:inherit}
.sidebar .nav-item[aria-current="page"]{background:#e5ddcf;color:#654d3d;font-weight:600}
.garden-nav>.button{text-decoration:none;font-weight:500}

/* A paper month calendar, with the same watercolour flowers as the collection. */
.memory-month-bar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:30px 0 22px}
.memory-month-bar .eyebrow{font-size:.58rem;letter-spacing:2px;color:#9e9077}
.memory-month-bar h2{font:1.75rem "STKaiti","KaiTi",serif;color:#657252;margin:7px 0 0;display:flex;align-items:baseline;gap:18px}
.memory-month-bar h2>span{font:.73rem "Microsoft YaHei",sans-serif;color:#9b8e79}
.memory-month-controls{display:flex;align-items:center;gap:14px;font-size:.73rem;color:#8b7d67}
.memory-month-controls>[data-month-today]{padding:9px 7px;white-space:nowrap;border-bottom:1px dashed #b7ac94}
.month-flip{display:flex;align-items:center;border:1px solid #dfd7c7;border-radius:9px;background:#fcf9f1}
.month-flip>button{display:grid;place-items:center;min-width:36px;height:38px;padding:0;border-radius:8px}
.month-flip>button:hover{background:#ede8dc}.month-flip svg{width:14px;height:14px}
.month-flip select{border:0;background:transparent;font-size:.75rem;padding:7px 2px;max-width:140px;box-shadow:none}
.memory-calendar{background:#fffdf7;border:1px solid #ded7c6;border-radius:10px;box-shadow:0 5px 0 #e9e1d0,0 12px 25px #78634208;overflow:hidden}
.calendar-binding{display:flex;justify-content:space-between;align-items:center;padding:15px 24px 12px;border-bottom:1px solid #e7dfce;background:#f5f0e4}
.calendar-binding span{width:32px;height:7px;border-radius:5px;background:#d2c6b2;box-shadow:inset 0 1px 3px #6b533521}
.calendar-binding i{font: .83rem "KaiTi",serif;color:#998b72;letter-spacing:3px}
.calendar-weekdays,.calendar-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}
.calendar-weekdays{padding-block:13px;border-bottom:1px solid #dfd7c5;color:#8c846d;background:#faf7ef;font-size:.7rem;text-align:center;letter-spacing:2px}
.calendar-weekdays .weekend{color:#af8588}
.calendar-week>[role="gridcell"]{min-width:0;border-right:1px solid #eae3d5;border-bottom:1px solid #eae3d5}
.calendar-week>[role="gridcell"]:last-child{border-right:0}
.calendar-week:last-child>[role="gridcell"]{border-bottom:0}
.calendar-day{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;position:relative;width:100%;height:150px;padding:12px 12px 10px;text-align:left;overflow:hidden;background:transparent;isolation:isolate}
button.calendar-day:hover{background:#f3f0e5}
.calendar-day.selected{background:#edf0e3;box-shadow:inset 0 0 0 2px #9baa84}
.calendar-day.selected:hover{background:#e9eddd}
.calendar-day:focus-visible{outline:2px solid #71845e;outline-offset:-3px}
.calendar-day.outside{color:#c9c1b3;background:repeating-linear-gradient(-45deg,#f7f4ec,#f7f4ec 4px,#f5f2ea 4px,#f5f2ea 5px)}
.calendar-day-heading{display:flex;align-items:center;gap:6px;height:23px;flex-shrink:0;position:relative;z-index:2}
.date-number{font:1.05rem Georgia,serif;color:inherit;line-height:23px;min-width:23px;text-align:center}.outside>.date-number{align-self:flex-start}
.calendar-day.today .date-number{background:#a8545e;color:white;border-radius:50%}
.calendar-day-heading>small{font-size:.54rem;color:#a56972}
.day-count{margin-left:auto;font:.6rem Georgia,serif;background:#e3e8d7;color:#6b7b54;border:1px solid #d0d9bf;min-width:18px;line-height:17px;text-align:center;border-radius:50%}
.calendar-stickers{height:85px;flex-shrink:0;position:relative;display:block;margin-top:1px;pointer-events:none}
.calendar-sticker{position:absolute;width:82px;max-width:92%;left:50%;top:0;margin-left:-41px;transform:rotate(-5deg);filter:drop-shadow(1px 3px 1px #705b4212)}
.count-2 .sticker-0,.count-3 .sticker-0{left:34%;transform:rotate(-12deg);z-index:1}
.count-2 .sticker-1,.count-3 .sticker-1{left:66%;top:5px;transform:rotate(10deg);z-index:2}
.count-3 .sticker-2{left:49%;top:14px;transform:rotate(-3deg);z-index:3}
.count-2 .calendar-sticker,.count-3 .calendar-sticker{width:69px;margin-left:-34.5px}
.calendar-entry-title{font-size:.6rem;display:block;text-align:center;color:#887e68;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-top:3px}
.calendar-blank{position:absolute;inset:38% 0 auto;text-align:center;font-size:20px;color:#e6dfcf;pointer-events:none}
.calendar-caption{border-top:1px solid #dfd7c5;display:flex;justify-content:space-between;gap:12px;padding:11px 17px;font-size:.63rem;color:#a19379;background:#faf7ef}
.memory-day-panel{margin-top:31px;border:1px solid #e4dccb;border-radius:9px;padding:25px;display:grid;grid-template-columns:210px minmax(0,1fr);gap:25px;background:#f6f1e6}
.memory-day-heading{padding:8px 0}.memory-day-heading .eyebrow{font-size:.57rem;letter-spacing:2px;color:#a18c71}
.memory-day-heading h3{font:1.45rem "KaiTi",serif;color:#6d795a;margin:7px 0;display:flex;align-items:baseline;gap:12px}
.memory-day-heading h3>span{font:.67rem "Microsoft YaHei",sans-serif;color:#9f937c;white-space:nowrap}
.memory-day-heading>p:last-child{font-size:.7rem;color:#9f917a;margin:12px 0 0}
.memory-day-entries{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,245px),1fr));gap:12px;min-width:0}
.memory-day-entry{display:flex;align-items:center;gap:15px;border:1px solid #e5ddce;background:#fffcf5;border-radius:7px;padding:14px;text-decoration:none;min-width:0;color:#6e6e55}
.memory-day-entry:hover{border-color:#aebb96;background:#fcfff5}
.memory-day-entry>.flower-sprite{width:77px;flex:0 0 77px}
.memory-day-entry>span:last-child{min-width:0;flex:1}
.memory-day-entry small{display:block;font-size:.59rem;color:#a0947e}
.memory-day-entry strong{display:block;font:1.03rem "KaiTi",serif;margin:8px 0 13px;overflow-wrap:anywhere}
.memory-day-entry>span>span{display:block;font-size:.62rem;color:#9a9a7b}
.memory-day-entry b{font-weight:400;margin-left:6px}
.memory-day-empty{padding:7px 12px}.memory-day-empty p{font-size:.76rem;color:#a0947e;margin:0 0 13px;line-height:1.8}
.memory-day-empty .button{min-height:35px;font-size:.74rem;font-weight:500;padding:6px 12px}
@media(max-width:1250px){.calendar-day{height:133px;padding:9px 7px}.calendar-stickers{height:76px}.calendar-sticker{width:73px;margin-left:-36.5px}.count-2 .calendar-sticker,.count-3 .calendar-sticker{width:61px;margin-left:-30.5px}.memory-day-panel{grid-template-columns:175px minmax(0,1fr);gap:17px;padding:20px}.memory-month-controls{gap:8px}}
@media(max-width:760px){
  .memory-month-bar{align-items:flex-start;gap:13px;flex-wrap:wrap;margin:25px 0 18px}.memory-month-bar h2{font-size:1.45rem;gap:11px}.memory-month-bar h2>span{font-size:.63rem}.memory-month-bar .eyebrow{font-size:.5rem;letter-spacing:1.5px}
  .memory-month-controls{width:100%;justify-content:space-between;font-size:.67rem}.month-flip>button{min-width:36px;height:36px}.month-flip select{font-size:.68rem}.memory-month-controls>[data-month-today]{padding:6px 2px}
  .calendar-binding{padding:13px 15px}.calendar-binding i{font-size:.68rem;letter-spacing:1px}.calendar-binding span{width:21px;height:5px}.calendar-weekdays{font-size:.6rem;padding-block:10px;letter-spacing:0}
  .calendar-day{height:91px;padding:5px 2px 4px}.calendar-day-heading{height:19px;gap:0;justify-content:space-between}.date-number{font-size:.81rem;min-width:19px;line-height:19px}.calendar-day-heading>small{display:none}.day-count{font-size:.5rem;min-width:13px;line-height:12px;margin-right:2px;border:0}
  .calendar-stickers{height:53px;margin:3px 0 0}.calendar-sticker{width:49px;max-width:100%;margin-left:0;left:0;top:0;transform:rotate(-3deg)}
  .count-2 .calendar-sticker,.count-3 .calendar-sticker{width:39px;max-width:92%;margin-left:0}.count-2 .sticker-0,.count-3 .sticker-0{left:-7%;top:0}.count-2 .sticker-1,.count-3 .sticker-1{left:20%;top:8px}.count-3 .sticker-2{left:6%;top:15px}
  .calendar-entry-title{font-size:0;line-height:0;padding:0}.has-memory .calendar-entry-title:after{content:'';display:block;width:3px;height:3px;border-radius:50%;margin:0 auto;background:#a4b78d}.calendar-caption{font-size:.53rem;padding:10px 9px;gap:5px}
  .memory-day-panel{display:block;padding:16px;margin-top:23px}.memory-day-heading{padding:0 0 15px}.memory-day-heading h3{font-size:1.3rem}.memory-day-heading>p:last-child{margin-top:5px;font-size:.64rem}.memory-day-entry{padding:12px;gap:12px}.memory-day-entry>.flower-sprite{width:65px;flex-basis:65px}.memory-day-empty{padding:0}.garden-note{line-height:1.9}
}
@media(max-width:380px){.calendar-day{height:83px}.calendar-stickers{height:45px}.calendar-sticker{width:41px}.count-2 .calendar-sticker,.count-3 .calendar-sticker{width:33px}}
