@font-face{font-family:Shippori Mincho B1;src:url(/fonts/shippori-mincho-b1-700.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Zen Maru Gothic;src:url(/fonts/zen-maru-gothic-400.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Zen Maru Gothic;src:url(/fonts/zen-maru-gothic-700.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}:root{--paper:#efece2;--paper-raised:#fbf9f3;--ink:#24221d;--ink-soft:#6c665b;--rule:#24221d24;--rule-soft:#24221d12;--sunday:#c0392b;--saturday:#2e6a8e;--accent:#24221d;--display:"Shippori Mincho B1", "Yu Mincho", "Songti SC", serif;--body:"Zen Maru Gothic", "Noto Sans SC", "Hiragino Maru Gothic ProN", system-ui, sans-serif;--measure:68rem;--radius:14px}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}body{background:var(--paper);color:var(--ink);font-family:var(--body);background-image:radial-gradient(#24221d09 1px,#0000 1px);background-size:4px 4px;margin:0;font-size:16px;line-height:1.75}h1,h2,h3{font-family:var(--display);letter-spacing:.01em;margin:0;font-weight:700;line-height:1.3}a{color:inherit;text-decoration-color:var(--rule);text-underline-offset:3px}a:hover{text-decoration-color:var(--accent)}:focus-visible{outline:2.5px solid var(--accent);outline-offset:3px;border-radius:4px}.wrap{max-width:var(--measure);margin:0 auto;padding:0 1.25rem}.masthead{border-bottom:1px solid var(--rule);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:1.1rem 0;display:flex}.masthead__name{font-family:var(--display);letter-spacing:.04em;font-size:1.3rem;font-weight:700;text-decoration:none}.masthead__name span{color:var(--accent)}.langs{align-items:center;gap:.15rem;font-size:.82rem;display:flex}.langs a{color:var(--ink-soft);border-radius:999px;padding:.25rem .6rem;text-decoration:none}.langs a[aria-current=true]{background:var(--accent);color:var(--paper-raised)}.mainnav{gap:1.1rem;margin-left:auto;margin-right:.4rem;font-size:.88rem;display:flex}.mainnav a{color:var(--ink-soft);border-bottom:1.5px solid #0000;padding-bottom:2px;text-decoration:none}.mainnav a:hover{color:var(--ink);border-bottom-color:var(--accent)}.reframe{border-left:3px solid var(--accent);color:var(--ink);margin:1.25rem 0 0;padding:.15rem 0 .15rem 1rem}.himekuri{background:var(--paper-raised);border-radius:3px 3px var(--radius) var(--radius);text-align:center;max-width:27rem;margin:3.5rem auto 0;padding:2.75rem 1.75rem 1.9rem;animation:.75s cubic-bezier(.22,1,.36,1) both tear;position:relative;box-shadow:0 1px #24221d29,0 14px 30px -14px #24221d6b}.himekuri:before{content:"";border-top:2px dotted var(--rule);height:0;position:absolute;inset:.85rem 1.1rem auto}.himekuri__holes{gap:5.5rem;display:flex;position:absolute;top:.5rem;left:50%;transform:translate(-50%)}.himekuri__holes i{background:var(--paper);border-radius:50%;width:13px;height:13px;display:block;box-shadow:inset 0 1.5px 2.5px #24221d4d}@keyframes tear{0%{opacity:0;transform:translateY(-16px)rotate(-1.2deg)}to{opacity:1;transform:none}}.himekuri__date{letter-spacing:.16em;color:var(--ink-soft);font-size:.86rem}.himekuri__num{font-family:var(--display);color:var(--accent);margin:.2rem 0 .1rem;font-size:clamp(4.5rem,20vw,7rem);line-height:.95}.himekuri__weekday{letter-spacing:.3em;color:var(--ink-soft);margin-bottom:1.1rem;font-size:.92rem}.himekuri__mascot{color:var(--accent);justify-content:center;margin:-.4rem 0 -.5rem;display:flex}.himekuri__name{font-family:var(--display);color:var(--accent);letter-spacing:.1em;font-size:2.5rem}.himekuri__reading{letter-spacing:.12em;color:var(--ink-soft);margin-bottom:.9rem;font-size:.8rem}.himekuri__gloss{border-top:1px solid var(--rule-soft);margin:0;padding-top:.9rem;font-size:.97rem}.himekuri__lunar{color:var(--ink-soft);letter-spacing:.08em;margin-top:.9rem;font-size:.76rem}.meter{justify-content:center;gap:5px;margin:1rem 0 .2rem;display:flex}.meter i{background:var(--rule);border-radius:999px;width:26px;height:5px;display:block}.meter i.on{background:var(--accent)}.section{padding:3.5rem 0 0}.section__head{border-bottom:1px solid var(--rule);align-items:baseline;gap:.9rem;margin-bottom:1.5rem;padding-bottom:.55rem;display:flex}.section__head h2{letter-spacing:.06em;font-size:1.25rem}.section__head .kicker{letter-spacing:.2em;color:var(--ink-soft);text-transform:uppercase;margin-left:auto;font-size:.74rem}.cal{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.cal__dow{text-align:center;letter-spacing:.1em;color:var(--ink-soft);padding-bottom:.35rem;font-size:.74rem}.cal__dow:first-child{color:var(--sunday)}.cal__dow:last-child{color:var(--saturday)}.cal__cell{aspect-ratio:1/.72;border:1px solid var(--rule-soft);background:var(--paper-raised);border-radius:8px;flex-direction:column;justify-content:space-between;gap:.15rem;min-width:0;padding:.32rem .4rem;text-decoration:none;transition:transform .14s,box-shadow .14s;display:flex}.cal__cell:hover,.cal__cell:focus-visible{transform:translateY(-2px);box-shadow:0 6px 14px -8px #24221d80}.cal__cell.is-empty{background:0 0;border-color:#0000}.cal__cell.is-today{border-color:var(--day);border-width:2px;box-shadow:inset 0 0 0 2px #fff9}.cal__num{font-family:var(--display);font-size:.98rem;line-height:1}.cal__cell[data-dow="0"] .cal__num{color:var(--sunday)}.cal__cell[data-dow="6"] .cal__num{color:var(--saturday)}.cal__rk{letter-spacing:-.01em;color:var(--day);text-overflow:ellipsis;white-space:nowrap;font-size:.66rem;font-weight:700;line-height:1.15;overflow:hidden}.cal__cell.is-newmoon{border-left:3px solid var(--day)}.cal__nav{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;font-size:.9rem;display:flex}.cal__nav strong{font-family:var(--display);font-size:1.15rem}.cal__nav a{color:var(--ink-soft);border:1px solid var(--rule);border-radius:999px;padding:.3rem .7rem;text-decoration:none}.cal__nav a:hover{border-color:var(--accent);color:var(--ink)}.cal__nav-end{min-width:1px;display:block}.cal__cell:not([href]),.weekstrip__day:not([href]){opacity:.45;cursor:default}.cal__cell:not([href]):hover,.weekstrip__day:not([href]):hover{box-shadow:none;transform:none}.legend{color:var(--ink-soft);flex-wrap:wrap;gap:.4rem 1rem;margin-top:1rem;font-size:.76rem;display:flex}.legend span{align-items:center;gap:.35rem;display:flex}.legend i{border-radius:3px;width:9px;height:9px;display:block}.finder{background:var(--paper-raised);border:1px solid var(--rule-soft);border-radius:var(--radius);grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:.85rem 1rem;margin:1.4rem 0 1.75rem;padding:1.15rem;display:grid}.finder__field{flex-direction:column;gap:.3rem;min-width:0;display:flex}.finder__field label{letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft);font-size:.72rem;font-weight:700}.finder__field select,.finder__field input{font-family:var(--body);border:1px solid var(--rule);background:var(--paper);color:var(--ink);border-radius:9px;width:100%;min-width:0;padding:.55rem .7rem;font-size:.98rem}.finder__head{border-bottom:1px solid var(--rule);min-height:1.6rem;margin-bottom:1rem;padding-bottom:.5rem}.finder__empty{color:var(--ink-soft);font-size:.9rem}.finder__more{font-family:var(--body);border:1px solid var(--rule);background:var(--paper-raised);color:var(--ink);cursor:pointer;border-radius:999px;padding:.55rem 1.4rem;font-size:.9rem}.finder__more:hover{border-color:var(--accent)}#f-out a small{color:var(--ink-soft);margin-left:.15rem;font-size:.78rem}#f-out a b{margin-right:.35rem;font-weight:700}.lookup{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.lookup input{font-family:var(--body);border:1px solid var(--rule);background:var(--paper-raised);color:var(--ink);border-radius:10px;flex:12rem;min-width:0;padding:.65rem .9rem;font-size:1rem}.lookup button{font-family:var(--body);background:var(--accent);color:var(--paper-raised);cursor:pointer;border:0;border-radius:10px;padding:.65rem 1.5rem;font-size:1rem;font-weight:700}.lookup button:hover{filter:brightness(1.1)}.result{background:var(--paper-raised);border:1px solid var(--rule-soft);border-radius:var(--radius);flex-wrap:wrap;align-items:center;gap:1.25rem;margin-top:1.1rem;padding:1.25rem 1.4rem;animation:.32s both resultIn;display:flex}@keyframes resultIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.result__mascot{flex:none}.result__body{flex:14rem;min-width:0}.result__date{letter-spacing:.1em;color:var(--ink-soft);margin:0;font-size:.82rem}.result__name{font-family:var(--display);letter-spacing:.06em;margin:.1rem 0 0;font-size:2rem}.result__reading{color:var(--ink-soft);letter-spacing:.08em;margin:0;font-size:.78rem}.result .meter{justify-content:flex-start;margin:.6rem 0 .7rem}.result__gloss{margin:0;font-size:.95rem}.result__hours{color:var(--ink-soft);margin:.35rem 0 0;font-size:.85rem}.result__link{font-size:.88rem}.lookup__range{color:var(--ink-soft);letter-spacing:.02em;margin:.6rem 0 0;font-size:.8rem}.lookup__msg{color:var(--sunday);min-height:1.2em;margin-top:.5rem;font-size:.85rem}.six{grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));gap:.85rem;display:grid}.six__card{--day:var(--accent);background:var(--paper-raised);border:1px solid var(--rule-soft);border-top:4px solid var(--day);border-radius:4px 4px var(--radius) var(--radius);flex-direction:column;gap:.15rem;padding:1.15rem 1.15rem 1.3rem;text-decoration:none;transition:transform .16s,box-shadow .16s;display:flex}.six__card:hover,.six__card:focus-visible{transform:translateY(-3px);box-shadow:0 10px 22px -12px #24221d80}.six__card .m{color:var(--day);margin-bottom:.2rem}.six__card h3{color:var(--day);letter-spacing:.06em;font-size:1.45rem}.six__card .reading{color:var(--ink-soft);letter-spacing:.08em;font-size:.74rem}.six__card .verdict{margin-top:.5rem;font-size:.83rem;font-weight:700}.six__card .gloss{color:var(--ink-soft);font-size:.87rem}.detail__hero{flex-wrap:wrap;align-items:center;gap:1.75rem;padding:2.5rem 0 1.5rem;display:flex}.detail__hero .m{color:var(--accent);flex:none}.detail__title{color:var(--accent);letter-spacing:.08em;font-size:clamp(2.4rem,9vw,3.6rem)}.tags{flex-wrap:wrap;gap:.4rem;margin-top:.5rem;display:flex}.tags li{border:1px solid var(--rule);border-radius:999px;padding:.22rem .7rem;font-size:.82rem;list-style:none}.cols{grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:1.25rem 2rem;margin-top:1.25rem;display:grid}.cols h3{letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft);font-size:.76rem;font-family:var(--body);margin-bottom:.4rem;font-weight:700}.prose{max-width:42rem}.prose p{margin:0 0 1rem}.upcoming{flex-wrap:wrap;gap:.5rem;margin-top:.6rem;display:flex}.upcoming a{border:1px solid var(--rule);background:var(--paper-raised);border-radius:999px;padding:.4rem .85rem;font-size:.86rem;text-decoration:none}.upcoming a:hover{border-color:var(--accent)}.weekstrip{grid-template-columns:repeat(7,1fr);gap:5px;display:grid}.weekstrip__day{background:var(--paper-raised);border:1px solid var(--rule-soft);border-radius:9px;flex-direction:column;align-items:center;gap:.15rem;min-width:0;padding:.55rem .2rem .6rem;text-decoration:none;transition:transform .14s;display:flex}.weekstrip__day:hover{transform:translateY(-2px)}.weekstrip__day.is-current{border-color:var(--day);border-width:2px}.weekstrip__dow{color:var(--ink-soft);letter-spacing:.06em;font-size:.66rem}.weekstrip__num{font-family:var(--display);font-size:1.1rem;line-height:1}.weekstrip__rk{color:var(--day);white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:.62rem;font-weight:700;overflow:hidden}@media (width<=30rem){.weekstrip{gap:3px}.weekstrip__day{border-radius:7px;padding:.45rem .1rem .5rem}.weekstrip__rk{font-size:.55rem}}.foot{border-top:1px solid var(--rule);color:var(--ink-soft);flex-wrap:wrap;justify-content:space-between;gap:1rem;margin-top:4.5rem;padding:1.6rem 0 3rem;font-size:.8rem;display:flex}.foot__links{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.foot__links span{color:var(--rule)}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=30rem){.cal{gap:3px}.cal__cell{border-radius:6px;padding:.25rem .2rem}.cal__rk{font-size:.58rem}.himekuri{padding:2.5rem 1.1rem 1.6rem}.himekuri__holes{gap:4rem}}
