.calendar-planning-teaser{margin:26px 0 38px;padding:28px;background:#e9e7da;border:1px solid #d4cbb2;color:var(--ink)}
.planning-teaser-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.planning-teaser-heading .eyebrow{margin:0 0 8px}.today-calendar .planning-teaser-heading h3{margin:0;font:400 26px/1.6 var(--serif);letter-spacing:.06em}
.next-lucky-days{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:22px 0}.next-lucky-days>a{display:flex;flex-direction:column;gap:9px;border-top:2px solid #a08b59;background:#f8f5ec;padding:20px;text-decoration:none}.next-lucky-days>a:hover{background:#fffdf5;outline:1px solid #a08b59}.next-lucky-days span{font-size:12px}.next-lucky-days strong{font:400 27px/1.6 var(--serif)}.next-lucky-days small{font:12px/1.7 var(--sans);margin-left:8px}
.date-purpose-links{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0 28px}.date-purpose-links>a{display:inline-flex;align-items:center;min-height:44px;padding:10px 17px;border:1px solid #b9b7a7;font-size:13px;text-decoration:none;color:var(--ink);background:#f7f4eb}.date-purpose-links>a[aria-current],.date-purpose-links>a:hover{color:#f8f4e9;background:var(--green);border-color:var(--green)}
.upcoming-shrine{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-top:22px;border-top:1px solid #cec7b3}.upcoming-shrine h4{margin:0 0 7px;font:400 19px/1.7 var(--serif)}.upcoming-shrine p{font-size:13px;line-height:1.9;margin:0}
.date-finder-form{padding:28px;background:#eeece1;border-top:2px solid #a08b59;margin:28px 0 38px}.date-finder-fields{display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px}.date-finder-fields label{display:flex;flex-direction:column;gap:10px;font-size:13px;min-width:0}.date-finder-fields input,.date-finder-fields select{width:100%;min-width:0;box-sizing:border-box;min-height:48px;border:1px solid #b9b7a7;border-radius:0;padding:10px 12px;background:#faf8f0;color:var(--ink);font:15px var(--sans)}
.date-finder-checks{display:flex;flex-wrap:wrap;gap:8px 24px;margin:16px 0}.date-finder-checks label{display:flex;align-items:center;gap:9px;min-height:44px;font-size:13px;line-height:1.8}.date-finder-checks input{width:18px;height:18px;flex-shrink:0;accent-color:var(--green)}.date-finder-form .button{margin-top:16px;cursor:pointer}.date-finder-form .calendar-note{margin-bottom:0}
.date-search-results>h2,.annual-variable>h2,.shrine-calendar>#annual-results-title{font:400 26px/1.7 var(--serif);margin:12px 0 20px}.date-search-results>p,.annual-introduction,.annual-variable>p{font-size:14px;line-height:2;max-width:850px}.date-results{list-style:none;padding:0;margin:28px 0}.date-result{display:grid;grid-template-columns:235px minmax(0,1fr);gap:30px;padding:28px 0;border-top:1px solid var(--line)}.date-result:last-child{border-bottom:1px solid var(--line)}.date-result-date time{display:block;font:400 23px/1.7 var(--serif)}.date-result-date time span{font-size:15px;margin-left:6px}.date-result-rokuyo{display:inline-block;margin-top:12px;padding:4px 12px;background:#e8e8dc;font-size:12px}.date-reasons{list-style:none;margin:0;padding:0;font-size:15px;line-height:2}.date-result .date-overlap{font-size:12px;line-height:1.95;color:#5e6256;margin:12px 0}.date-result .text-link{font-size:13px;min-height:44px;display:inline-flex;align-items:center}.date-empty{padding:25px;background:#eeece1;font-size:14px;line-height:2}
.date-method{margin:44px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:15px 0}.date-method summary{min-height:44px;display:flex;align-items:center;cursor:pointer;font-size:14px}.date-method summary::after{content:'＋';margin-left:auto}.date-method[open] summary::after{content:'−'}.date-method p,.date-method li{font-size:13px;line-height:2}.date-method li{margin:18px 0}.date-method a,.annual-sources a{text-underline-offset:4px}
.annual-month{display:grid;grid-template-columns:90px minmax(0,1fr);gap:30px;border-top:1px solid #b8af96;padding:25px 0 12px;margin-top:30px}.annual-month>h2{font:400 42px/1.4 var(--serif);margin:0;color:#796944}.annual-month>h2 span{font-size:15px;margin-left:6px}.annual-row{display:grid;grid-template-columns:80px minmax(0,1fr);gap:20px;padding-bottom:20px}.annual-row+.annual-row{border-top:1px solid var(--line);padding-top:26px}.annual-date{font-size:15px;line-height:2}.annual-kind{font-size:11px;line-height:1.9;color:#696953;margin:0 0 16px}.annual-card h3,.annual-variable h3{font:400 24px/1.9 var(--serif);margin:0 0 12px}.annual-card rt,.annual-variable rt{font:10px/1.4 var(--sans);letter-spacing:.03em}.annual-card>p:not(.annual-kind){font-size:14px;line-height:2;margin:12px 0}.annual-card-links{display:flex;flex-wrap:wrap;gap:10px 24px}.annual-card-links a{display:inline-flex;align-items:center;min-height:44px;font-size:13px}.annual-sources{font-size:12px;margin-top:10px}.annual-sources summary{cursor:pointer;min-height:44px;line-height:44px}.annual-sources p{line-height:2}.annual-variable{margin-top:45px;padding:26px;background:#eeece1}.annual-variable article{padding:20px 0;border-top:1px solid var(--line)}.annual-variable article>p{font-size:14px;line-height:2}.shrine-day-panel{margin:25px 0;padding:20px;background:#f8f5ec;border:1px solid #d4cbb2}.shrine-day-panel .annual-card{margin-top:22px}.shrine-day-panel .annual-card h3{font-size:21px}
.calendar-extra-links{display:flex;gap:12px 26px;flex-wrap:wrap;margin-top:15px}.calendar-extra-links a{display:inline-flex;align-items:center;min-height:44px}
.funeral-traditions{font-size:12px;line-height:2;margin:12px 0}.funeral-traditions summary{cursor:pointer;min-height:44px;line-height:1.8;padding:12px 0}.funeral-traditions p,.funeral-traditions li{font-size:12px;line-height:2}
@media(max-width:760px){.calendar-planning-teaser{padding:20px 16px}.planning-teaser-heading,.upcoming-shrine{align-items:flex-start;flex-direction:column;gap:12px}.today-calendar .planning-teaser-heading h3{font-size:24px}.next-lucky-days{gap:8px}.next-lucky-days>a{padding:13px 9px}.next-lucky-days strong{font-size:21px}.next-lucky-days small{display:block;margin:0}.next-lucky-days span{font-size:11px;line-height:1.8}.date-purpose-links{gap:8px}.date-purpose-links>a{font-size:12px;padding:9px 12px}.date-finder-fields{grid-template-columns:1fr;gap:18px}.date-finder-form{padding:22px 18px}.date-result{grid-template-columns:1fr;gap:15px;padding:25px 0}.date-result-date{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.date-result-date time{font-size:22px}.date-result-rokuyo{margin:0}.annual-month{grid-template-columns:1fr;gap:20px}.annual-month>h2{font-size:32px}.annual-row{grid-template-columns:1fr;gap:7px}.annual-date{margin:0}.annual-card h3{font-size:22px}.annual-variable{padding:22px 18px}.date-search-results>h2,.annual-variable>h2{font-size:23px}}
@media(max-width:760px){.next-lucky-days{grid-template-columns:1fr}.next-lucky-days>a{display:grid;grid-template-columns:72px minmax(0,1fr);align-items:center;gap:4px 10px;padding:12px}.next-lucky-days>a>span:last-child{grid-column:2}.next-lucky-days strong{font-size:22px;white-space:nowrap}.next-lucky-days small{display:inline;font-size:10px;margin-left:4px}}
