header.site-hdr{position:fixed;top:0;left:0;right:0;z-index:40;display:flex;align-items:center;justify-content:space-between;padding:.95rem clamp(1.4rem,6vw,2.2rem);background:color-mix(in srgb,var(--paper) 78%,transparent);backdrop-filter:blur(10px) saturate(1.1);-webkit-backdrop-filter:blur(10px) saturate(1.1);border-bottom:1px solid transparent;transition:border-color .4s var(--ease)}header.site-hdr.scrolled{border-bottom-color:var(--line)}.seal{display:flex;align-items:center;gap:.6rem}.seal .mark{width:1.85rem;height:1.85rem;flex:none;border:1.4px solid var(--accent);border-radius:50%;display:grid;place-items:center;font-family:var(--mincho);font-size:.92rem;color:var(--accent-deep);transition:transform .5s var(--ease),background .4s var(--ease),color .4s var(--ease)}.seal:hover .mark{background:var(--accent);color:var(--paper);transform:rotate(-8deg)}.seal .word{font-weight:500;letter-spacing:.16em;font-size:.92rem}.back{font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-soft);display:flex;align-items:center;gap:.5rem}.back:hover{color:var(--accent-deep)}.back .ar{font-family:var(--mincho)}.wrap{position:relative;z-index:1;width:100%;max-width:42rem;margin-inline:auto;padding-inline:clamp(1.4rem,6vw,2.2rem)}.index-page{padding-top:7rem;padding-bottom:4rem}.index-head{display:flex;align-items:flex-start;gap:.9rem;margin-bottom:2.6rem}.index-head .bar{width:1px;height:2.6rem;background:var(--accent);margin-top:.35rem;flex:none}.index-head .kanji{font-family:var(--mincho);font-size:1.15rem;color:var(--ink-faint);letter-spacing:.12em}.index-head h1{font-family:var(--mincho);font-weight:400;font-size:clamp(2.2rem,9vw,3rem);line-height:1}.works{display:flex;flex-direction:column}.work{border-top:1px solid var(--line)}.work:last-child{border-bottom:1px solid var(--line)}.work-head{width:100%;background:none;border:none;cursor:pointer;text-align:left;font-family:var(--sans);display:grid;grid-template-columns:1.6rem 1fr auto;align-items:baseline;gap:.9rem;padding:1.45rem 0;color:var(--ink);transition:padding-left .45s var(--ease)}.work-head:hover{padding-left:.55rem}.work-head .wn{font-family:var(--mincho);font-size:.78rem;color:var(--accent-deep)}.work-head .wt{font-size:1.28rem;font-weight:500;display:flex;flex-direction:column;gap:.2rem}.work-head .wt small{font-size:.78rem;font-weight:400;letter-spacing:.04em;color:var(--ink-faint)}.work-head .wy{font-size:.8rem;color:var(--ink-faint)}.work-panel-inner{padding:0 0 1.8rem 2.5rem}.work-tags{display:flex;flex-wrap:wrap;gap:.45rem}.tag{font-size:.7rem;letter-spacing:.06em;color:var(--ink-soft);border:1px solid var(--line);border-radius:100px;padding:.28rem .7rem;background:var(--paper)}.posts{display:flex;flex-direction:column}.post{display:grid;grid-template-columns:auto 1fr auto;gap:1rem;align-items:baseline;padding:1.25rem 0;border-bottom:1px solid var(--line-soft);transition:padding-left .4s var(--ease)}.post:first-child{border-top:1px solid var(--line)}.post:hover{padding-left:.5rem}.post .date{font-family:var(--mincho);font-size:.78rem;color:var(--ink-faint);white-space:nowrap}.post .ttl{font-size:1.04rem;font-weight:400;line-height:1.4;transition:color .3s}.post:hover .ttl{color:var(--accent-deep)}.post .arrow{font-size:.9rem;color:var(--ink-faint);transition:transform .4s var(--ease),color .3s}.post:hover .arrow{transform:translate(3px,-3px);color:var(--accent)}.p-hero{padding-top:7rem;padding-bottom:1rem}.p-meta{display:flex;align-items:center;gap:.8rem;margin-bottom:1.3rem;font-size:.75rem;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-faint);flex-wrap:wrap}.p-meta .kanji{font-family:var(--mincho);font-size:1rem;letter-spacing:.1em;color:var(--accent-deep);text-transform:none}.p-meta .mdot{width:3px;height:3px;border-radius:50%;background:var(--ink-faint)}.p-title{font-family:var(--mincho);font-weight:400;font-size:clamp(2.6rem,13vw,3.6rem);line-height:1;letter-spacing:-.01em;margin-bottom:.6rem}.p-sub{font-size:1.02rem;color:var(--ink-soft);margin-bottom:1.6rem}.p-lede{font-family:var(--mincho);font-size:clamp(1.12rem,4.6vw,1.3rem);line-height:1.6;color:var(--ink);max-width:32ch}.facts{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:2px;overflow:hidden;margin:2.2rem 0 .5rem}.facts div{background:var(--paper);padding:1rem 1.1rem;display:flex;flex-direction:column;gap:.3rem}.facts .k{font-size:.75rem;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-faint)}.facts .v{font-size:.95rem;color:var(--ink)}.next{margin:2.4rem 0 4rem;border:1px solid var(--line);border-radius:2px;padding:1.4rem 1.3rem;display:flex;justify-content:space-between;align-items:center;gap:1rem;transition:border-color .4s var(--ease)}.next:hover{border-color:var(--accent)}.next .lab{font-size:.75rem;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-faint);display:block;margin-bottom:.35rem}.next .ar,.next .nm{font-family:var(--mincho);font-size:1.4rem}.next .ar{color:var(--accent-deep)}.article-wrap{padding-top:7rem;padding-bottom:3rem}.a-meta{display:flex;align-items:center;gap:.8rem;margin-bottom:1.4rem;font-size:.75rem;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-faint);flex-wrap:wrap}.a-meta .kanji{font-family:var(--mincho);font-size:1rem;letter-spacing:.1em;color:var(--accent-deep);text-transform:none}.a-meta .mdot{width:3px;height:3px;border-radius:50%;background:var(--ink-faint)}.a-title{font-family:var(--mincho);font-weight:400;font-size:clamp(2.1rem,9vw,2.9rem);line-height:1.12;letter-spacing:-.01em;margin-bottom:1.4rem;text-wrap:balance}.a-lede{font-family:var(--mincho);font-size:clamp(1.12rem,4.6vw,1.3rem);line-height:1.6;max-width:34ch}.a-by,.a-lede{color:var(--ink-soft);margin-bottom:2.4rem}.a-by{display:flex;align-items:center;gap:.6rem;font-size:.82rem;padding-bottom:2rem;border-bottom:1px solid var(--line)}.a-by .mk{width:1.5rem;height:1.5rem;border:1.2px solid var(--accent);border-radius:50%;display:grid;place-items:center;font-family:var(--mincho);font-size:.78rem;color:var(--accent-deep)}.a-body{font-size:1.04rem;color:var(--ink);line-height:1.7}.a-body>:first-child{margin-top:0}.a-body p{margin-bottom:1.45rem;text-wrap:pretty}.a-body h1,.a-body h2{font-size:1.35rem;letter-spacing:.005em;margin:2.6rem 0 1rem}.a-body h1,.a-body h2,.a-body h3{font-family:var(--sans);font-weight:500}.a-body h3{font-size:1.12rem;margin:2rem 0 .8rem}.a-body ol,.a-body ul{margin:0 0 1.45rem 1.2rem}.a-body li{margin-bottom:.5rem;color:var(--ink-soft)}.a-body a{color:var(--accent-deep);border-bottom:1px solid var(--accent)}.a-body blockquote{font-family:var(--mincho);font-size:1.32rem;line-height:1.5;color:var(--ink);border-left:1px solid var(--accent);padding-left:1.3rem;margin:2.2rem 0;max-width:28ch}.a-body code{font-family:var(--mono);font-size:.86em;background:var(--paper-2);padding:.12em .4em;border-radius:3px;border:1px solid var(--line-soft)}.a-body pre{background:var(--ink);color:var(--paper);padding:1.1rem 1.2rem;border-radius:4px;overflow-x:auto;margin:0 0 1.45rem}.a-body pre code{background:none;border:none;padding:0;color:inherit;font-size:.82rem}.a-body strong{font-weight:500}.a-body img{border:1px solid var(--line);border-radius:2px;margin:1.6rem 0}.more{padding:2.5rem 0 4rem}.more .head{display:flex;align-items:baseline;gap:.8rem;margin-bottom:1.4rem}.more .head .kanji{font-family:var(--mincho);color:var(--ink-faint)}.more .head h3{font-weight:500;font-size:1.15rem}footer.site-foot{border-top:1px solid var(--line);margin-top:3rem;padding:2.2rem 0 3rem;position:relative;z-index:1}.foot-top{justify-content:space-between;margin-bottom:1.4rem}.foot-seal,.foot-top{display:flex;align-items:center}.foot-seal{gap:.6rem}.foot-seal .mark{width:1.7rem;height:1.7rem;border:1.3px solid var(--accent);border-radius:50%;display:grid;place-items:center;font-family:var(--mincho);font-size:.85rem;color:var(--accent-deep)}.foot-seal .word{font-weight:500;letter-spacing:.14em;font-size:.88rem}.totop{font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-soft);display:flex;align-items:center;gap:.5rem}.totop .up{font-family:var(--mincho);font-size:.9rem;color:var(--accent-deep)}.foot-copy{margin-top:1rem;font-size:.7rem;letter-spacing:.12em;color:var(--ink-faint)}