/* core/date/004_gilded_month — comments: docs/inv06_css_notes.md (moved out for the before-tap budget, A1489) */
.dt004 {
  --dt004-wd-h: 14px; --dt004-gap: 10px; --dt004-n-h: 40px; --dt004-n-fs: 1.45rem; --dt004-spray: min(34vw, 132px);
  position: relative; isolation: isolate; overflow-x: clip; padding: 84px 14px 30px; text-align: center; touch-action: pan-y;
  background: var(--k-light-ground); color: var(--k-ink);
}
.dt004__thread, .dt004__face { position: absolute; z-index: 0; inset: 0; width: 100%; height: 100%; max-width: none; overflow: visible; pointer-events: none; }
.dt004__thread-x { position: absolute; top: 0; left: var(--k-thread-x); width: 0; height: 0; visibility: hidden; }
.dt004__card { position: relative; max-width: 420px; margin: 0 auto; padding: 84px 22px 46px; }
.dt004__frame { position: absolute; z-index: 1; inset: 0; width: 100%; height: 100%; max-width: none; overflow: visible; pointer-events: none; filter: drop-shadow(4px 7px 9px rgb(47 42 36 / .12)); }
.dt004__paper { fill: var(--k-card); }
.dt004__rim { fill: none; stroke: var(--k-foil); stroke-width: 1.3px; vector-effect: non-scaling-stroke; }
.dt004__face { z-index: 3; }
.dt004__inner { position: relative; z-index: 4; }
.dt004__eyelet { position: absolute; z-index: 2; display: none; width: 9px; height: 9px; margin: -4.5px 0 0 -4.5px; border-radius: 50%; border: 1.5px solid var(--k-foil); background: var(--k-paper-deep); box-shadow: inset 1px 1px 1.5px rgb(47 42 36 / .35), .5px .5px 0 rgb(255 255 255 / .6); pointer-events: none; }
.dt004.has-eyelets .dt004__eyelet { display: block; }
.dt004__kicker { color: var(--k-ink-soft); }
.dt004__month { margin: 6px 0 36px; font: 400 2.7rem/1.15 var(--k-font-script); color: var(--c-primary); }
.dt004__days { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); }
.dt004__day { display: flex; flex-direction: column; align-items: center; gap: var(--dt004-gap); }
.dt004__wd { display: block; height: var(--dt004-wd-h); padding-left: .14em; font: 600 .62rem/var(--dt004-wd-h) var(--k-font-body); letter-spacing: .14em; text-transform: uppercase; color: var(--k-ink-soft); white-space: nowrap; }
.dt004__n { position: relative; display: block; height: var(--dt004-n-h); font: 500 var(--dt004-n-fs)/var(--dt004-n-h) var(--k-font-display); color: var(--k-ink); white-space: nowrap; font-variant-numeric: lining-nums; }
.dt004__day--main .dt004__wd { color: var(--k-ink); }
.dt004__day--main .dt004__n { font-weight: 600; color: var(--c-primary); }
.dt004__day--out .dt004__wd, .dt004__day--out .dt004__n { opacity: .5; }
.dt004__day--ev .dt004__n::after { content: ""; position: absolute; left: 50%; bottom: -7px; width: 5px; height: 5px; margin-left: -2.5px; border-radius: 50%; background: var(--k-foil); }
.dt004__long, .dt004__time { font: 600 .74rem/1.6 var(--k-font-body); font-variant-numeric: lining-nums; letter-spacing: .2em; text-transform: uppercase; text-wrap: balance; }
.dt004__long { margin-top: 42px; color: var(--k-ink); }
.dt004__time { margin-top: 4px; font-weight: 500; color: var(--k-ink-soft); }
.dt004__cal { margin-top: 26px; }
.dt004 .kjy-cal { display: inline-block; max-width: 100%; }
.dt004 .kjy-cal__toggle { list-style: none; min-height: 44px; padding: 0 24px; background: var(--k-card); }
.dt004 .kjy-cal__toggle::-webkit-details-marker { display: none; }
.dt004 .kjy-cal__menu { display: grid; margin-top: 8px; background: var(--k-card); box-shadow: 0 0 0 1px rgb(var(--c-primary-rgb) / .3), 4px 10px 24px rgb(47 42 36 / .12); }
.dt004 .kjy-cal__opt { padding: 12px 16px; font: 600 1rem/1.3 var(--k-font-body); color: var(--c-primary); text-decoration: none; }
.dt004 .kjy-cal__opt + .kjy-cal__opt { border-top: 1px solid rgb(var(--c-primary-rgb) / .18); }
.dt004__spray { z-index: 6; width: var(--dt004-spray); right: -10px; top: -66px; }
.dt004__spray .k-spray__base { -webkit-touch-callout: none; -webkit-user-select: none; user-select: none; }
.dt004.is-near .dt004__spray--tr .k-spray__tint--petal, .js.motion-reduce .dt004 .dt004__spray--tr .k-spray__tint--petal { -webkit-mask-image: url("assets/bud-a-day-petal.webp"), url("assets/bud-a-day.webp"); -webkit-mask-composite: source-in; mask-image: url("assets/bud-a-day-petal.webp"), url("assets/bud-a-day.webp"); mask-composite: intersect; }
.dt004.is-near .dt004__spray--tr :is(.k-spray__tint--boost, .k-spray__tint--deep), .js.motion-reduce .dt004 .dt004__spray--tr :is(.k-spray__tint--boost, .k-spray__tint--deep) { -webkit-mask-image: url("assets/bud-a-day-petal.webp"), url("assets/bud-a-day.webp"); -webkit-mask-composite: source-in; mask-image: url("assets/bud-a-day-petal.webp"), url("assets/bud-a-day.webp"); mask-composite: intersect; }
.dt004.is-near .dt004__spray--tr .k-spray__tint--leaf, .js.motion-reduce .dt004 .dt004__spray--tr .k-spray__tint--leaf { -webkit-mask-image: url("assets/bud-a-day-leaf.webp"), url("assets/bud-a-day.webp"); -webkit-mask-composite: source-in; mask-image: url("assets/bud-a-day-leaf.webp"), url("assets/bud-a-day.webp"); mask-composite: intersect; }
.dt004.is-near .dt004__spray--tr .k-spray__tint--gold, .js.motion-reduce .dt004 .dt004__spray--tr .k-spray__tint--gold { -webkit-mask-image: url("assets/bud-a-day-gold.webp"), url("assets/bud-a-day.webp"); -webkit-mask-composite: source-in; mask-image: url("assets/bud-a-day-gold.webp"), url("assets/bud-a-day.webp"); mask-composite: intersect; }
.dt004__stage { position: absolute; z-index: 5; inset: 0; pointer-events: none; }
@media (min-width: 768px) {
  .dt004 { --dt004-wd-h: 16px; --dt004-gap: 12px; --dt004-n-h: 52px; --dt004-n-fs: 2rem; --dt004-spray: 200px; padding: var(--k-section-pad) var(--k-gutter); }
  .dt004 { padding-top: var(--k-section-pad); padding-bottom: 56px; }
  .dt004__card { max-width: 520px; padding: 92px 34px 56px; }
  .dt004__spray { right: -112px; top: -74px; }
  .dt004__month { font-size: 3.2rem; margin-bottom: 42px; }
  .dt004__wd { font-size: .68rem; }
  .dt004__long { margin-top: 44px; }
  .dt004__eyelet { width: 11px; height: 11px; margin: -5.5px 0 0 -5.5px; }
}
@media (min-width: 1200px) {
  .dt004 { --dt004-wd-h: 20px; --dt004-gap: 14px; --dt004-n-h: 76px; --dt004-n-fs: 3rem; --dt004-spray: 368px; padding-top: 150px; padding-bottom: 64px; }
  .dt004__card { max-width: 680px; padding: 124px 60px 80px; }
  .dt004__spray { right: -240px; top: -150px; }
  .dt004__kicker { font-size: .9rem; }
  .dt004__month { font-size: 4.6rem; margin-bottom: 50px; }
  .dt004__wd { font-size: .84rem; }
  .dt004__long, .dt004__time { font-size: .9rem; }
  .dt004__long { margin-top: 52px; }
  .dt004__cal { margin-top: 32px; }
  .dt004 .kjy-cal__toggle { min-height: 52px; padding: 0 34px; font-size: .84rem; }
  .dt004__eyelet { width: 12px; height: 12px; margin: -6px 0 0 -6px; }
}
@media (max-width: 374px) {
  .dt004 { --dt004-n-fs: 1.3rem; --dt004-spray: 118px; padding-left: 12px; padding-right: 12px; }
  .dt004__card { padding-left: 16px; padding-right: 16px; }
  .dt004__month { font-size: 2.4rem; }
}
