:root{--bg:#101821;--pane:#172632;--ink:#f1eadb;--muted:#9cadb0;--line:#344752;--paper:#f8f0df;--paperink:#233541;--accent:#ed7159;--gold:#e5ba54;--shade:#0008}html[data-theme=light]{--bg:#d9d3c6;--pane:#eee7d9;--ink:#172a36;--muted:#687980;--line:#b6b0a4;--paper:#fffaf0;--paperink:#233541;--accent:#b94f3d;--gold:#9b700d;--shade:#27323a33}*{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0}body{background:var(--bg);color:var(--ink);font-family:Noto Sans JP,sans-serif;overflow:hidden}#app{background:radial-gradient(circle at 85% 0,#31515d77,transparent 38%),var(--bg);grid-template-rows:64px 1fr;height:100svh;display:grid}header{border-bottom:1px solid var(--line);z-index:2;justify-content:space-between;align-items:center;padding:0 20px;display:flex}.brand{align-items:baseline;gap:13px;display:flex}.brand small,.chapter,.cardhead small{letter-spacing:.14em;color:var(--gold);font:500 10px DM Mono}.brand b{letter-spacing:.06em;font:600 17px Noto Serif JP}.tools,.modes{align-items:center;display:flex}.tools{gap:10px}.modes{border:1px solid var(--line);border-radius:7px;gap:2px;padding:3px}.modes button,.theme,.hamburger{color:var(--muted);cursor:pointer;background:0 0;border:0}.modes button{border-radius:4px;padding:6px 10px;font:12px Noto Sans JP}.modes .on{background:var(--paperink);color:var(--paper)}.theme{font-size:20px}.hamburger{font-size:20px;display:none}.body{grid-template-columns:278px 1fr;min-height:0;display:grid}.library{background:color-mix(in srgb,var(--pane) 94%,transparent);border-right:1px solid var(--line);flex-direction:column;min-height:0;padding:24px 15px 14px;display:flex}.archive-title{letter-spacing:.13em;color:var(--gold);padding:0 8px 15px;font:500 10px DM Mono}.archive-title button{display:none}.search{border:1px solid var(--line);color:var(--gold);background:var(--bg);border-radius:5px;align-items:center;padding:0 10px;display:flex}.search input{color:var(--ink);background:0 0;border:0;outline:0;width:100%;padding:11px 8px;font:14px Noto Sans JP}.intro{color:var(--muted);border-bottom:1px solid var(--line);margin:0;padding:17px 8px 13px;font:12px/1.9 Noto Serif JP}nav{min-height:0;padding:9px 0;overflow:auto}nav button{width:100%;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:4px;align-items:center;gap:10px;padding:10px 9px;font:500 12px Noto Sans JP;display:flex;position:relative}nav button:hover,nav button.current{background:#ffffff12}nav button.current:before{content:"";background:var(--accent);width:3px;height:23px;position:absolute;left:-15px}nav button span{color:var(--muted);font:10px DM Mono}nav button i{border-radius:50%;width:6px;height:6px;margin-left:auto}.existing,.dot.existing{background:#55a7bb}.near,.dot.near{background:var(--gold)}.original,.dot.original{background:var(--accent)}footer{border-top:1px solid var(--line);color:var(--muted);padding:13px 8px 0;font:10px DM Mono}.stage{overflow:hidden}.book{grid-template-rows:auto 1fr auto;gap:13px;max-width:1300px;height:100%;margin:auto;padding:20px clamp(16px,5vw,73px) 17px;display:grid}.topline{color:var(--muted);justify-content:space-between;font:10px DM Mono;display:flex}.dot{border-radius:50%;width:6px;height:6px;margin-right:5px;display:inline-block}.book article{min-height:0;filter:drop-shadow(0 18px 14px var(--shade));border-radius:4px;grid-template-columns:1fr 1fr;display:grid;overflow:hidden}.page{background:var(--paper);color:var(--paperink);padding:clamp(27px,4vw,62px);position:relative;overflow:auto}.left{background:linear-gradient(90deg,#e9dfcd,var(--paper) 10%);border-radius:5px 0 0 5px}.right{background:linear-gradient(90deg,#eee5d6,var(--paper) 10%);border-left:1px solid #d6cdbc;border-radius:0 5px 5px 0}.left:after{content:"";pointer-events:none;background:linear-gradient(90deg,#17253228,#0000);width:16px;height:100%;position:absolute;top:0;right:-8px}.chapter{margin:0 0 19px}.page h1{letter-spacing:-.08em;margin:0 0 clamp(27px,5vw,61px);font:700 clamp(29px,4.4vw,55px)/1.25 Noto Serif JP}.eq{align-items:center;gap:8px;display:flex}.eq span{text-align:center;background:#dce8e6;border-radius:2px;flex:1;padding:10px 7px;font:500 clamp(12px,1.4vw,16px) Noto Sans JP}.eq b{color:var(--accent);font:500 25px DM Mono}.lead{margin:clamp(24px,4vw,46px) 0 0;font:500 clamp(15px,1.5vw,19px)/2 Noto Serif JP}.page blockquote{border-left:3px solid var(--gold);margin:clamp(22px,4vw,45px) 0 0;padding:3px 0 3px 15px;font:600 clamp(14px,1.3vw,17px)/1.9 Noto Serif JP}dl{margin:0}dl div{border-top:1px solid #d8cfbe;padding:clamp(15px,2vw,25px) 0}dt{color:var(--accent);margin-bottom:7px;font:700 12px Noto Sans JP}dd{margin:0;font:400 clamp(13px,1.3vw,16px)/1.9 Noto Serif JP}.question{background:var(--paperink);color:var(--paper);border-radius:3px;margin-top:clamp(16px,3vw,35px);padding:17px 20px}.question small{color:var(--gold);margin-bottom:5px;font:10px DM Mono;display:block}.question b{font:600 clamp(16px,1.8vw,22px)/1.5 Noto Serif JP}.pager{justify-content:space-between;align-items:center;display:flex}.pager>button{color:var(--ink);cursor:pointer;background:0 0;border:0;padding:7px;font:12px Noto Sans JP}.pager>button:hover{color:var(--gold)}.pager div{flex-wrap:wrap;justify-content:center;gap:4px;max-width:280px;display:flex}.pager div button{background:var(--line);cursor:pointer;border:0;border-radius:50%;width:7px;height:7px;padding:0}.pager div button.now{background:var(--accent);transform:scale(1.35)}.cardview{grid-template-rows:auto 1fr auto;gap:18px;height:100%;padding:clamp(27px,5vw,73px) 0 16px;display:grid}.cardhead{justify-content:space-between;align-items:end;padding:0 clamp(18px,5vw,74px);display:flex}.cardhead h1{letter-spacing:-.07em;margin:9px 0 0;font:600 clamp(25px,3.3vw,43px)/1.35 Noto Serif JP}.cardhead>span{color:var(--muted);font:12px DM Mono}.rail{scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:var(--line) transparent;gap:17px;padding:14px max(18px,50vw - 560px) 25px;display:flex;overflow-x:auto}.card{scroll-snap-align:center;border:1px solid var(--line);background:var(--pane);height:min(490px,61svh);color:var(--ink);text-align:left;cursor:pointer;border-radius:8px;flex-direction:column;flex:0 0 min(410px,78vw);padding:27px;transition:transform .2s,border-color .2s;display:flex}.card:hover{border-color:var(--gold);transform:translateY(-7px)}.card small{color:var(--muted);font:10px Noto Sans JP}.card h2{letter-spacing:-.06em;margin:25px 0;font:600 clamp(25px,3vw,36px)/1.3 Noto Serif JP}.card .eq span{border:1px solid var(--line);color:var(--ink);background:#ffffff12;font-size:12px}.card p{color:var(--muted);margin:25px 0;font:14px/1.9 Noto Serif JP}.card>i{color:var(--gold);margin-top:auto;font:500 11px DM Mono}.tip{text-align:center;color:var(--muted);margin:0;font-size:11px}@media (width<=760px){#app{grid-template-rows:58px 1fr}header{padding:0 13px}.hamburger{display:block}.brand{text-align:center;display:block}.brand small{font-size:8px;display:block}.brand b{font-size:14px}.tools{gap:5px}.modes button{padding:5px 7px;font-size:10px}.body{display:block;position:relative}.library{z-index:3;width:min(87%,330px);transition:transform .25s;position:absolute;inset:0 auto 0 0;transform:translate(-105%);box-shadow:15px 0 30px #000a}.library.open{transform:translate(0)}.archive-title button{float:right;color:var(--ink);background:0 0;border:0;font-size:24px;display:block}.book{gap:9px;padding:12px 12px 14px}.topline{font-size:8px}.topline span:last-child{display:none}.book article{display:block;overflow:auto}.page{padding:28px 25px;overflow:visible}.left{border-radius:4px 4px 0 0}.right{border-top:1px solid #d6cdbc;border-left:0;border-radius:0 0 4px 4px}.left:after{display:none}.page h1{margin-bottom:34px;font-size:34px}.lead{font-size:16px}.pager>button{font-size:11px}.pager div{max-width:160px}.pager div button{width:6px;height:6px}.cardview{gap:12px;padding-top:25px}.cardhead{padding:0 20px}.cardhead h1{font-size:27px}.cardhead>span{font-size:10px}.rail{gap:12px;padding:12px 11vw 18px}.card{flex-basis:78vw;height:min(470px,62svh);padding:23px}.card h2{font-size:29px}.card p{font-size:13px}}#app{padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);grid-template-rows:64px minmax(0,1fr);overflow:hidden}.body,.stage{min-width:0;min-height:0;overflow:hidden}.stage{height:100%}.book,.cardview{grid-template-rows:auto minmax(0,1fr) auto;min-height:0}.book article,.page,.rail,.library nav{overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.rail{min-height:0}.card{height:100%;min-height:0;overflow-y:auto}@media (width<=760px){#app{grid-template-rows:58px minmax(0,1fr)}.book article{touch-action:auto;overflow:hidden auto}.page{overflow:visible}.pager{min-height:40px}}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#080808;--pane:#111;--ink:#f5f5f5;--muted:#aaa;--line:#333;--paper:#181818;--paperink:#f2f2f2;--accent:#ff454f;--gold:#ff454f;--shade:#0005;--surface-alt:#202020;--selected:#321719;--question-bg:#101010}html[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#ededed;--pane:#fafafa;--ink:#181818;--muted:#626262;--line:#d4d4d4;--paper:#fff;--paperink:#171717;--accent:#c7192b;--gold:#c7192b;--shade:#0001;--surface-alt:#f2f2f2;--selected:#ffe7e9;--question-bg:#f7f7f7}body,button,input,.brand b,.brand small,.chapter,.cardhead small,.archive-title,.intro,nav button,nav button span,footer,.topline,.page h1,.eq span,.eq b,.lead,.page blockquote,dt,dd,.question small,.question b,.pager>button,.cardhead h1,.cardhead>span,.card small,.card h2,.card p,.card>i,.modes button,.search input{font-family:Poppins,Noto Sans JP,sans-serif}#app{background:linear-gradient(135deg,#000 0%,#111 58%,#222 100%)}html[data-theme=light] #app{background:linear-gradient(135deg,#fff,#e7e7e7)}header{background:var(--bg);border-color:var(--line)}.brand b{letter-spacing:.02em;font-weight:700}.brand small{letter-spacing:.15em;font-weight:600}.library{background:var(--pane)}.stage.book{max-width:none;margin:0;padding:0;display:block}.page,.library nav,.book article,.rail{scrollbar-width:thin;scrollbar-color:#555 transparent}.modes{border-radius:4px}.modes button{border-radius:2px}.modes .on{color:#fff;background:#d92335}.theme,.hamburger{color:var(--ink)}.search{border-radius:3px}.search:focus-within{border-color:var(--accent)}nav button{border-radius:2px}nav button:hover{background:var(--surface-alt)}nav button.current{background:var(--selected)}.dot.existing,nav button i.existing{background:var(--accent)}.dot.near,nav button i.near{background:#aaa}.dot.original,nav button i.original{background:#eee}html[data-theme=light] .dot.original,html[data-theme=light] nav button i.original{background:#444}.book article{border:1px solid var(--line);border-top:3px solid var(--accent);filter:none;border-radius:3px}.left,.right{background:var(--paper);border-radius:0}.right{border-color:var(--line)}.left:after{display:none}.chapter{color:var(--accent);font-weight:600}.page h1{letter-spacing:-.035em;font-weight:700;line-height:1.4}.eq span{background:var(--surface-alt);color:var(--ink);border:1px solid var(--line);border-radius:2px}.eq b{font-weight:500}.lead{font-weight:400;line-height:2}.page blockquote{color:var(--muted);border-color:var(--accent);font-weight:400}dl div{border-color:var(--line)}dt{color:var(--accent)}.question{background:var(--question-bg);color:var(--ink);border-left:3px solid var(--accent);border-radius:0}.question b{font-weight:700}.pager>button{border:1px solid var(--line);border-radius:3px;padding:8px 12px}.pager>button:hover{background:var(--selected)}.card{background:var(--paper);border-top:3px solid var(--accent);border-radius:4px}.card:hover{border-color:var(--accent)}.card h2{letter-spacing:-.03em;font-weight:700}.card .eq span{background:var(--surface-alt)}button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}@media (width<=760px){.page h1{font-size:30px}.right{border-color:var(--line)}.card h2{font-size:27px}}.entry-section{border-bottom:1px solid var(--line);margin:0 0 28px;padding:0 0 24px}.entry-section h2{color:var(--accent);margin:0 0 12px;font-size:15px;font-weight:700;line-height:1.6}.entry-section p{overflow-wrap:anywhere;margin:0;font-size:16px;line-height:2}.full-title{color:var(--muted);overflow-wrap:anywhere;margin:-12px 0 24px;font-size:12px;line-height:1.8}.source-note{background:var(--surface-alt);border-left:3px solid var(--accent);padding:20px}.source-note .entry-section{border:0;margin-bottom:16px;padding:0}.source-note>p{color:var(--muted);margin:0;font-size:12px;line-height:1.9}.card-reading{min-height:0;margin-top:18px;padding-right:4px;overflow:auto}.card-reading h3{color:var(--accent);letter-spacing:.08em;margin:0 0 5px;font-size:11px}.card-reading p{color:var(--muted);margin:0 0 16px!important;font-size:13px!important;line-height:1.8!important}.cardview{gap:8px;padding-top:18px}.card{flex-basis:min(460px,84vw);height:min(650px,76svh);padding:25px}.card h2{margin:18px 0}@media (width<=760px){.cardview{gap:7px;padding-top:12px}.card{flex-basis:84vw;height:min(620px,78svh);padding:22px}.rail{padding-top:7px;padding-bottom:12px}}.library footer{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.library footer button{font:inherit;color:var(--ink);border:1px solid var(--line);cursor:pointer;background:0 0;padding:8px}.about-dialog{background:var(--paper);color:var(--ink);border:1px solid var(--line);border-top:3px solid var(--accent);overscroll-behavior:contain;width:min(640px,100vw - 32px);max-height:85svh;padding:28px;overflow-y:auto}.about-dialog::backdrop{background:#000b}.about-dialog p{font-size:15px;line-height:2}.about-dialog h2{clear:both;font-size:24px}.about-dialog h3{color:var(--accent);font-size:18px}.close-about{float:right;color:inherit;border:1px solid var(--line);cursor:pointer;background:0 0;padding:10px}@media (width<=760px){.entry-section p{font-size:15px}.page{padding:24px}.source-note{padding:16px}}
