:root{--black: #08080a;--panel: #131316;--ink: #e8e7e2;--ink-soft: #c4c3bc;--gray: #8f8e86;--hairline: #26262a;--hairline-hi: #4a4a50}*{margin:0;padding:0;box-sizing:border-box}html{background:var(--black)}body{background:var(--black);color:var(--ink);font-family:EB Garamond,"Noto Serif JP","Noto Serif KR",Georgia,Yu Mincho,Hiragino Mincho ProN,serif;font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}.label{font-family:Inter,"Noto Serif JP","Noto Serif KR",sans-serif;font-size:10px;letter-spacing:.22em;text-transform:uppercase;font-weight:500}.gate{position:relative;min-height:100vh;min-height:100svh;background:var(--black);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:2rem}.gate .scroll-cue{position:absolute;bottom:2.4rem;left:50%;width:1px;height:3.2rem;background:linear-gradient(var(--hairline-hi),transparent);animation:cue 2.8s ease-in-out infinite}@keyframes cue{0%,to{opacity:.25}50%{opacity:.9}}html{scroll-behavior:smooth}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.gate .scroll-cue{animation:none;opacity:.5}}.library{scroll-margin-top:0}.gate .wordmark{font-family:Inter,"Noto Serif KR",sans-serif;font-size:12px;letter-spacing:.55em;text-transform:uppercase;color:var(--gray);margin-bottom:4.5rem}.gate .philosophy{font-size:clamp(1.5rem,3.4vw,2.4rem);font-weight:400;max-width:26em;line-height:1.5;color:#efeee9}.gate .sub{margin-top:1.6rem;font-size:1rem;color:var(--gray);font-style:italic}.gate a.enter{margin-top:5rem;display:inline-block;color:var(--ink-soft);text-decoration:none;border:1px solid var(--hairline-hi);padding:.85em 2.6em;transition:border-color .4s,color .4s}.gate a.enter:hover{border-color:var(--ink);color:#fff}.library{max-width:1400px;margin:0 auto;padding:0 2.4rem 7rem}header.site{display:flex;justify-content:space-between;align-items:baseline;padding:2.2rem 0 1.6rem;border-bottom:1px solid var(--hairline)}header.site .name{font-family:Inter,"Noto Serif KR",sans-serif;font-size:12px;letter-spacing:.45em;text-transform:uppercase}header.site .name a{color:var(--ink);text-decoration:none}header.site nav{display:flex;gap:2.4rem}header.site nav a{color:var(--gray);text-decoration:none}header.site nav a:hover{color:var(--ink)}.filter-bar{display:flex;align-items:center;justify-content:space-between;gap:1.4rem 2rem;flex-wrap:wrap;padding:1.1rem 0 2.6rem}.filters{display:flex;flex-wrap:wrap;gap:.4rem 2.2rem}.search{display:flex;align-items:baseline;gap:.9rem}.search input{background:none;border:none;border-bottom:1px solid var(--hairline);color:var(--ink);font-family:EB Garamond,"Noto Serif JP","Noto Serif KR",Georgia,serif;font-size:1rem;padding:.45em .1em;width:17ch;transition:border-color .35s,width .35s ease;-webkit-appearance:none;appearance:none}.search input::placeholder{color:var(--gray);font-style:italic}.search input:focus{outline:none;border-bottom-color:var(--ink);width:24ch}.search input::-webkit-search-cancel-button{-webkit-appearance:none}.search-count{color:var(--gray);white-space:nowrap}.no-results{color:var(--gray);padding:0 0 3rem;font-family:EB Garamond,"Noto Serif JP","Noto Serif KR",Georgia,serif;font-size:1rem;letter-spacing:0;text-transform:none;font-style:italic}.filters button{background:none;border:none;cursor:pointer;color:var(--gray);padding:.5em .2em;font-family:Inter,"Noto Serif KR",sans-serif;font-size:10px;letter-spacing:.22em;text-transform:uppercase;font-weight:500}.filters button.active{color:var(--ink);border-bottom:1px solid var(--ink)}.filters button:hover{color:var(--ink)}.filters.series{gap:.4rem 1.8rem;margin:-1.4rem 0 2.4rem 1.6rem;padding-left:1.2rem;border-left:1px solid var(--hairline)}.filters.series[hidden]{display:none}.filters.series .fc{color:var(--gray);margin-left:.5em;letter-spacing:.1em}.filters.series button.active .fc{color:var(--ink-soft)}.grid{display:grid;grid-template-columns:repeat(5,1fr);gap:3.4rem 2.2rem}.piece{display:flex;flex-direction:column}.piece.hidden{display:none}.piece .cover{position:relative;width:100%;aspect-ratio:971 / 1500;background:var(--panel);overflow:hidden;margin-bottom:1rem;display:block}.piece .cover img{width:100%;height:100%;object-fit:cover;display:block;transition:opacity .4s ease}.piece .cover:hover img{opacity:.72}.piece .cover.note-cover{position:relative;overflow:hidden;isolation:isolate;border:1px solid var(--hairline);padding:1.6rem 1.3rem;display:flex;flex-direction:column;justify-content:space-between;text-decoration:none;transition:border-color .4s}.piece .cover.note-cover:hover{border-color:var(--hairline-hi)}.piece .cover.note-cover .nc-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.17;z-index:-1;transition:opacity .4s}.piece .cover.note-cover:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#08080a8c,#08080a33 45%,#08080abf)}.piece .cover.note-cover:hover .nc-bg{opacity:.26}@media(prefers-reduced-motion:reduce){.piece .cover.note-cover .nc-bg{transition:none}}.piece .cover.note-cover .nc-kicker{color:var(--gray)}.piece .cover.note-cover .nc-title{flex:1;display:flex;align-items:center;font-size:1.16rem;line-height:1.34;color:var(--ink);padding:1.1rem 0}.piece .cover.note-cover .nc-foot{color:var(--gray)}.piece .note-summary{color:var(--ink-soft);font-size:.96rem;line-height:1.4;font-style:italic}.piece .meta{flex:1;display:flex;flex-direction:column}.piece h3{font-size:1.16rem;font-weight:500;line-height:1.25;letter-spacing:.01em;margin-bottom:.25rem}.piece h3 a{color:var(--ink);text-decoration:none}.piece h3 a:hover{color:#fff}.piece .subtitle{color:var(--ink-soft);font-size:.96rem;line-height:1.35;font-style:italic;margin-bottom:.9rem}.actions{display:flex;flex-direction:column;gap:.45rem;margin-top:auto}.actions a{font-family:Inter,"Noto Serif KR",sans-serif;font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;font-weight:500;color:var(--ink-soft);text-decoration:none;border:1px solid var(--hairline);padding:.72em .9em;text-align:center;transition:border-color .3s,color .3s,background .3s}.actions a:hover{border-color:var(--hairline-hi);color:#fff}.actions a.primary{border-color:var(--hairline-hi)}.actions a.primary:hover{background:var(--ink);color:var(--black);border-color:var(--ink)}.book-page{max-width:1000px;margin:0 auto;padding:0 2.4rem 7rem}.book-layout{display:grid;grid-template-columns:300px 1fr;gap:3.4rem;padding-top:4rem}.book-layout .cover-col img{width:100%;height:auto;display:block}.book-layout .kicker{color:var(--gray);margin-bottom:1.1rem}.book-layout h1{font-size:clamp(1.9rem,4.4vw,2.7rem);font-weight:500;line-height:1.16}.book-layout .subtitle{font-size:1.24rem;font-style:italic;color:var(--ink-soft);margin-top:.5rem;padding-bottom:1.6rem;border-bottom:1px solid var(--hairline)}.book-layout .body{margin-top:1.6rem;color:var(--ink-soft)}.book-layout .body p{margin-bottom:1.15em}.book-layout .buy{margin-top:2.2rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(0,1fr));grid-auto-flow:column;gap:.8rem}.book-layout .buy a{text-align:center;white-space:nowrap;font-family:Inter,"Noto Serif KR",sans-serif;font-size:10px;letter-spacing:.2em;text-transform:uppercase;font-weight:500;text-decoration:none;padding:.95em 1em;border:1px solid var(--hairline-hi);color:var(--ink);transition:background .3s,color .3s}.book-layout .buy a.primary{background:var(--ink);color:var(--black);border-color:var(--ink)}.book-layout .buy a:hover{background:#fff;color:var(--black);border-color:#fff}.related{margin-top:3.6rem;border-top:1px solid var(--hairline);padding-top:1.6rem}.related h2{font-size:1.15rem;font-weight:500;margin-bottom:.9rem}.related ul{list-style:none}.related li{margin-bottom:.5rem}.related a{color:var(--ink-soft)}.related a:hover{color:#fff}.related .empty{color:var(--gray);font-style:italic}.note-page{max-width:44em;margin:0 auto;padding:0 2.4rem 7rem}.note-page .note-head{padding:4.5rem 0 2.5rem;border-bottom:1px solid var(--hairline);margin-bottom:2.5rem}.note-page .note-head .type{color:var(--gray);margin-bottom:1rem}.note-page h1{font-size:clamp(1.55rem,5.6vw,2.1rem);font-weight:500;line-height:1.25}.note-page .meta{margin-top:1rem;color:var(--gray);font-style:italic}.note-body{font-size:1.08rem;color:var(--ink-soft)}.note-body p{margin-bottom:1.3em}.note-body h2,.note-body h3,.note-body h4{font-weight:500;margin:2.2em 0 .8em;line-height:1.3;color:var(--ink)}.note-body h2{font-size:1.5rem}.note-body h3{font-size:1.3rem}.note-body h4{font-size:1.12rem}.note-body blockquote{border-left:1px solid var(--hairline-hi);padding-left:1.4em;color:var(--gray);font-style:italic;margin:1.5em 0}.note-body ul,.note-body ol{margin:0 0 1.3em 1.4em}.note-body a{color:var(--ink)}.note-body img{max-width:100%}.note-body strong{font-weight:600;color:var(--ink)}.note-body hr{border:none;border-top:1px solid var(--hairline);margin:2.4em 0}.note-body table{width:100%;border-collapse:collapse;margin:1.8em 0;font-size:.97rem}.note-body thead th{font-family:Inter,"Noto Serif KR",sans-serif;font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;font-weight:500;color:var(--gray);text-align:left;padding:0 .9em .7em 0;border-bottom:1px solid var(--hairline-hi)}.note-body tbody td{padding:.7em .9em .7em 0;border-bottom:1px solid var(--hairline);vertical-align:top}.note-body tbody tr:last-child td{border-bottom:none}.note-body tbody td:first-child{color:var(--ink);width:34%}.book-cta{margin-top:4rem;border-top:1px solid var(--hairline);padding-top:1.6rem}.book-cta .cta-kicker{color:var(--gray);margin-bottom:1.8rem}.cta-card{display:grid;grid-template-columns:150px 1fr;gap:2rem;margin-bottom:2.6rem}.cta-card:last-child{margin-bottom:0}.cta-cover{display:block}.cta-cover img{width:100%;height:auto;display:block;transition:opacity .4s}.cta-cover:hover img{opacity:.78}.cta-series{color:var(--gray);margin-bottom:.6rem}.cta-card h3{font-size:1.32rem;font-weight:500;line-height:1.2}.cta-sub{font-style:italic;color:var(--ink-soft);margin-top:.2rem}.cta-pitch{margin-top:.9rem;color:var(--ink-soft);font-size:1rem;line-height:1.5}.cta-actions{display:flex;gap:.7rem;margin-top:1.3rem;flex-wrap:wrap}.cta-actions a{font-family:Inter,"Noto Serif KR",sans-serif;font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;font-weight:500;text-decoration:none;padding:.85em 1.7em;border:1px solid var(--hairline-hi);color:var(--ink);transition:background .3s,color .3s,border-color .3s}.cta-actions a.primary{background:var(--ink);color:var(--black);border-color:var(--ink)}.cta-actions a:hover{background:#fff;color:var(--black);border-color:#fff}.site-footer{border-top:1px solid var(--hairline);max-width:1400px;margin:0 auto;padding:2rem 2.4rem 3rem;display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;color:var(--gray);font-size:.9rem}.site-footer a{color:var(--gray);text-decoration:none}.site-footer a:hover{color:var(--ink)}@media(max-width:1180px){.grid{grid-template-columns:repeat(4,1fr)}}@media(max-width:920px){.grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:760px){.book-layout{grid-template-columns:1fr;gap:2rem;padding-top:2.6rem}.book-layout .cover-col{max-width:230px}}@media(max-width:560px){.cta-card{grid-template-columns:1fr;gap:1.3rem}.cta-cover{max-width:160px}}@media(max-width:720px){.filter-bar{align-items:flex-start;gap:.8rem}.search,.search input{width:100%}.search input:focus{width:100%}}@media(max-width:640px){.grid{grid-template-columns:repeat(2,1fr);gap:2.4rem 1.3rem}.library,.note-page,.book-page,.site-footer{padding-left:1.3rem;padding-right:1.3rem}.note-page .note-head{padding-top:3rem}header.site nav{gap:1.6rem}.piece h3{font-size:1.02rem}.piece .subtitle{font-size:.88rem}}.tag-row{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:2.6rem}.tag{color:var(--ink-soft);text-decoration:none;border:1px solid var(--hairline);padding:.55em 1em;transition:border-color .3s,color .3s}.tag:hover{border-color:var(--hairline-hi);color:#fff}.book-layout .tag-row{margin-top:2rem}.tag-lead{color:var(--gray);align-self:center;margin-right:.4rem}.tag .tc{color:var(--gray);margin-left:.7em}.tag:hover .tc{color:var(--ink-soft)}.jp-mark{color:var(--gray);font-weight:400;margin-left:.3em}.yokai-blurb{font-size:1.18rem;line-height:1.6;color:var(--ink)}.subject-block{margin-top:3.2rem;border-top:1px solid var(--hairline);padding-top:1.4rem}.subject-block h2{color:var(--gray);margin-bottom:1.4rem;font-weight:500}.subject-list{list-style:none}.subject-list li{margin-bottom:1.3rem}.subject-list a{color:var(--ink);font-size:1.12rem;text-decoration:none;border-bottom:1px solid var(--hairline)}.subject-list a:hover{border-color:var(--ink)}.sl-desc{display:block;margin-top:.3rem;color:var(--ink-soft);font-style:italic;font-size:.97rem}.note-nav{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-top:3.6rem;border-top:1px solid var(--hairline);padding-top:1.6rem}.note-nav a{text-decoration:none;color:var(--ink);display:block}.note-nav a:hover .nn-title{color:#fff}.note-nav .nn-dir{color:var(--gray);margin-bottom:.5rem}.note-nav .nn-title{font-size:1.08rem;line-height:1.35}.note-nav .next{text-align:right;grid-column:2}@media(max-width:560px){.note-nav{grid-template-columns:1fr}.note-nav .next{text-align:left;grid-column:1}}.formats{margin-top:1.1rem;display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem 1.3rem}.formats .label{color:var(--gray)}.formats a{color:var(--ink-soft);font-size:.98rem;text-decoration:none;border-bottom:1px solid var(--hairline)}.formats a:hover{color:#fff;border-color:var(--ink)}.sample-jp{color:var(--gray);margin-top:.5rem;font-size:1.1rem}.sample-body img{display:block;width:100%;height:auto;margin:2.2em 0}.sample-body .orn{text-align:center;color:var(--gray);letter-spacing:.4em;margin:2em 0}@media(max-width:760px){.book-layout .buy{grid-auto-flow:row;grid-template-columns:1fr}}a:focus-visible,button:focus-visible,input:focus-visible{outline:1px solid var(--ink);outline-offset:3px}.correction{margin-top:3rem;color:var(--gray);font-style:italic;font-size:.95rem}.correction a{color:var(--ink-soft)}.index-group{margin-top:3rem}.index-group h2{color:var(--gray);font-weight:500;margin-bottom:1.2rem;padding-bottom:.7rem;border-bottom:1px solid var(--hairline)}.index-list{list-style:none}.index-list li{padding:1.1rem 0;border-bottom:1px solid var(--hairline)}.index-list li:last-child{border-bottom:none}.ix-name{color:var(--ink);font-size:1.28rem;text-decoration:none}.ix-name:hover{color:#fff}.ix-name .jp-mark{font-size:1.05rem}.ix-def{color:var(--ink-soft);margin-top:.3rem;font-size:1rem}.ix-count{color:var(--gray);margin-top:.5rem}.subject-back{margin-top:3rem}.subject-back a{color:var(--gray);text-decoration:none}.subject-back a:hover{color:var(--ink)}.archive-notice{margin:0 0 2.5rem;padding:1rem 1.2rem;border-left:1px solid var(--hairline);color:var(--gray);font-style:italic;font-size:.95rem}.formats .ku{white-space:nowrap;color:var(--gray);font-style:italic;font-size:.98rem}.cta-ku{margin-top:.8rem;color:var(--gray);font-style:italic;font-size:.95rem}.site-footer .footer-links{display:flex;flex-direction:column;gap:.5rem;align-items:flex-end;text-align:right}@media(max-width:760px){.site-footer .footer-links{align-items:flex-start;text-align:left}}.book-page .contents{margin-top:3rem}.book-page .contents h2{font-size:1.05rem;font-weight:500;color:var(--ink-soft);margin-bottom:1rem}.book-page .contents ol{margin:0;padding-left:1.4rem;columns:2;column-gap:2.4rem}.book-page .contents li{color:var(--ink-soft);margin-bottom:.45rem;line-height:1.45;break-inside:avoid}.book-page .contents-note{margin-top:1rem;color:var(--gray);font-style:italic;font-size:.95rem}.book-page .contents-note a{color:var(--ink-soft)}@media(max-width:760px){.book-page .contents ol{columns:1}}.sample-endnote{margin-top:2.6rem;padding-top:1.4rem;border-top:1px solid var(--hairline);color:var(--ink-soft);font-style:italic}.sample-endnote a{color:var(--ink);text-decoration:none;border-bottom:1px solid var(--hairline-hi)}.sample-endnote a:hover{border-color:var(--ink)}.note-siblings{margin:4em 0 0;padding-top:1.6em;border-top:1px solid var(--hairline)}.note-siblings .ns-head{color:var(--gray);margin-bottom:.9em}.note-siblings ul{list-style:none;margin:0;padding:0}.note-siblings li+li{margin-top:.55em}.note-siblings a{display:flex;gap:.9em;align-items:baseline;text-decoration:none;color:var(--ink-soft)}.note-siblings a:hover{color:var(--ink)}.note-siblings .ns-num{color:var(--gray);flex:none}.note-siblings .ns-title{line-height:1.35}.note-body img[src*=-plate]{display:block;width:340px;max-width:100%;margin:2.4em 0}.note-body img[src*=-portrait]{display:block;width:170px;margin:2.4em 0;filter:brightness(.92)}
