:root{--pitch:50px;--sheet:468px}.jian-desk{margin:0 0 4rem;padding-top:2.6rem}.jian-desk .rule{margin-bottom:1.6rem}.jian-heap{position:relative;height:var(--heap-h,430px)}.jian{position:relative}.jian-paper{position:relative;width:100%;min-height:600px;background:var(--tint,#f7f8fa);background-image:repeating-linear-gradient(0,transparent 0 calc(var(--pitch) - 1px),rgba(27,36,48,.028) calc(var(--pitch) - 1px) var(--pitch));border:1px solid var(--edge,#e2e6eb);box-shadow:0 30px 52px -30px rgba(27,36,48,.36),inset 0 1px rgba(255,255,255,.9);transition:box-shadow var(--slow)var(--soft)}.jian-tag{position:absolute;left:-7px;top:58px;z-index:2;writing-mode:vertical-rl;padding:18px 7px;font-family:var(--serif);font-size:.94rem;letter-spacing:.16em;color:var(--ink);background:var(--bg);border:1px solid var(--edge,#e2e6eb);box-shadow:2px 3px 8px -4px rgba(27,36,48,.34)}.jian-frame{position:relative;margin:32px 30px 30px;padding:3px;border:2px solid rgba(27,36,48,.2)}.jian-inner{position:relative;overflow:hidden;padding:26px 22px 30px;border:1px solid rgba(27,36,48,.14)}.jian-motif{position:absolute;right:-16px;bottom:-20px;width:190px;height:190px;color:var(--accent);opacity:.36;pointer-events:none}.jian-head{position:relative;display:flex;justify-content:center;align-items:baseline;gap:.8rem;padding-bottom:1.6rem}.jh-title{font-family:var(--serif);font-size:1rem;letter-spacing:.16em;color:var(--ink)}.jh-by{font-size:.56rem;letter-spacing:.14em}.jian-text{position:relative;display:flex;flex-direction:column;gap:1.5rem}.jian-que{display:flex;flex-direction:column;align-items:center}.que-mark{margin-bottom:.4rem;font-size:.5rem;letter-spacing:.16em;color:var(--muted)}.jline{margin:0;font-family:var(--serif);font-size:1.58rem;line-height:var(--pitch);letter-spacing:.08em;color:var(--ink);text-align:center;text-wrap:nowrap}:root.jian-live .jian.is-read .jline{opacity:0;transform:translateY(10px);transition:opacity 420ms var(--soft),transform 420ms var(--soft);transition-delay:calc(var(--k,0) * 32ms + var(--g,0) * 90ms)}:root.jian-live .jian.is-read.ink .jline{opacity:1;transform:none}.jian-seal{position:absolute;left:32px;bottom:16px;display:flex;align-items:flex-end;gap:.6rem;color:var(--accent)}.jian-seal svg{width:22px;height:22px;opacity:.6}.jian-seal .mono{font-size:.56rem;letter-spacing:.14em}.jian-tab{position:absolute;left:100%;margin-left:-1px;top:42%;z-index:6;appearance:none;display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:16px 8px 18px;writing-mode:vertical-rl;font-family:var(--serif);font-size:.78rem;letter-spacing:.16em;color:var(--muted);cursor:pointer;background:var(--bg);border:1px solid var(--edge,#e2e6eb);border-left:0;border-radius:0 3px 3px 0;transition:color var(--mid)var(--soft),transform var(--mid)var(--spring)}.jian-tab:hover{color:var(--ink);transform:translateX(3px)}.jian-tab:active{transform:translateX(1px)}.jian-tab i{display:block;width:9px;height:9px;border-right:1px solid;border-bottom:1px solid;transform:rotate(-45deg);transform-origin:55% 55%;transition:transform var(--slow)var(--soft)}.jian.is-open .jian-tab{color:var(--accent)}.jian.is-open .jian-tab i{transform:rotate(135deg)}.jian-sub{position:absolute;top:0;left:100%;width:calc(3.5rem + 360px + 24px);pointer-events:none;z-index:2}.sub-clip{overflow:hidden;padding-bottom:30px}.sub-sheet{width:360px;margin-left:3.5rem;padding:1.4rem 1.6rem 1.6rem;background:color-mix(in srgb,var(--surface) 55%,var(--bg));border:1px solid var(--line);box-shadow:0 22px 40px -26px rgba(27,36,48,.34);pointer-events:auto;transform:translateX(calc(-100% - 3.5rem));transition:transform 460ms var(--soft)}.jian.is-open .sub-sheet{transform:none;transition:transform 660ms var(--out)}.sub-rule{display:flex;align-items:baseline;justify-content:space-between;gap:.9rem;padding-bottom:.8rem;border-bottom:1px solid var(--line)}.sub-rule .mono:first-child{color:var(--accent);letter-spacing:.18em;font-size:.56rem}.sub-rule .mono:last-child{font-size:.56rem;letter-spacing:.1em}.sub-sheet p{margin:.9rem 0 0;font-family:var(--serif);font-size:.86rem;line-height:2.15;color:var(--muted);text-align:justify;text-justify:inter-character;text-wrap:pretty}.jian.is-filed{position:absolute;left:var(--x,0);top:var(--y,0);width:208px;height:290px;transform:rotate(var(--r,0deg));transform-origin:50% 60%;z-index:var(--z,1);transition:transform var(--mid)var(--soft)}@keyframes jianSettle{from{opacity:0;transform:translateY(-26px)rotate(0)}}:root.jian-live .jian-heap.settling .jian.is-filed{animation:jianSettle 560ms var(--spring)backwards;animation-delay:calc(var(--i,0) * 60ms)}.jian.is-filed:hover,.jian.is-filed:focus-within{transform:rotate(calc(var(--r,0deg) * .25))translateY(-12px);z-index:30;transition:transform 320ms var(--spring)}.jian.is-filed:active{transform:rotate(calc(var(--r,0deg) * .25))translateY(-5px);transition:transform 90ms var(--soft)}.jian.is-filed .jian-paper{height:100%;min-height:0;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;gap:.7rem;padding:26px 18px 16px 26px;background-image:repeating-linear-gradient(0,transparent 0 33px,rgba(27,36,48,.035) 33px 34px);box-shadow:-6px 16px 28px -18px rgba(27,36,48,.42);transition:box-shadow var(--slow)var(--soft)}.jian.is-filed:hover .jian-paper,.jian.is-filed:focus-within .jian-paper{box-shadow:-10px 30px 46px -22px rgba(27,36,48,.46)}.jian.is-filed .jian-tag{left:-5px;top:22px;padding:11px 5px;font-size:.7rem;letter-spacing:.14em;box-shadow:2px 2px 6px -3px rgba(27,36,48,.34)}.jian.is-filed .jian-frame,.jian.is-filed .jian-seal,.jian.is-filed .jian-tab,.jian.is-filed .jian-sub{display:none}.jian-ex,.jian-by{display:none}.jian.is-filed .jian-ex{display:block;position:relative;margin-top:.4rem;font-family:var(--serif);font-size:.94rem;line-height:1.95;letter-spacing:.05em;color:var(--ink);text-wrap:pretty;transition:color var(--mid)var(--soft)}.jian.is-filed .jian-by{display:block;position:relative;font-size:.54rem;letter-spacing:.14em;transition:color var(--mid)var(--soft)}.jian.is-filed:hover .jian-ex,.jian.is-filed:focus-within .jian-ex{color:var(--accent-deep)}.jian.is-filed:hover .jian-by,.jian.is-filed:focus-within .jian-by{color:var(--accent)}.jian-grab{display:none}.jian.is-filed .jian-grab{display:block;position:absolute;inset:0;z-index:3;cursor:pointer}.jian-lb{position:fixed;inset:0;z-index:90;display:none;overflow-y:auto;overscroll-behavior:contain;padding:4rem 2rem 6rem}.jian-lb.on{display:flex;align-items:flex-start;justify-content:center}.jian-veil{position:fixed;inset:0;z-index:-1;background:color-mix(in srgb,var(--bg) 97%,transparent);view-transition-name:jian-veil}.jian-close{position:fixed;top:1.6rem;right:1.8rem;z-index:4;appearance:none;width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;background:var(--bg);color:var(--muted);font-size:.78rem;cursor:pointer;view-transition-name:jian-x;transition:color var(--fast)var(--soft),border-color var(--fast)var(--soft),transform var(--fast)var(--spring)}.jian-close:hover{color:var(--accent);border-color:var(--accent);transform:rotate(90deg)}.jread-group{position:relative;width:var(--sheet);flex:none;transition:transform 460ms var(--soft)}.jian-lb:has(.jian.is-open) .jread-group{transform:translateX(-208px);transition:transform 660ms var(--out)}@media(prefers-reduced-motion:no-preference){:root.jian-swap::view-transition-group(*){animation-duration:520ms;animation-timing-function:var(--out)}:root.jian-swap.jian-back::view-transition-group(*){animation-duration:400ms;animation-timing-function:var(--soft)}:root.jian-swap::view-transition-old(*),:root.jian-swap::view-transition-new(*){mix-blend-mode:normal}:root.jian-swap::view-transition-old(jian-open){animation:fadeOut 200ms var(--soft)both}:root.jian-swap::view-transition-new(jian-open){animation:fadeIn 360ms var(--soft)170ms both}:root.jian-swap.jian-back::view-transition-old(jian-open){animation:fadeOut 180ms var(--soft)both}:root.jian-swap.jian-back::view-transition-new(jian-open){animation:fadeIn 260ms var(--soft)130ms both}:root.jian-swap::view-transition-old(jian-veil),:root.jian-swap::view-transition-new(jian-veil),:root.jian-swap::view-transition-old(jian-x),:root.jian-swap::view-transition-new(jian-x){animation-duration:300ms}:root.jian-swap::view-transition-old(root),:root.jian-swap::view-transition-new(root){animation:none;opacity:1;transform:none}}@media(max-width:900px){:root{--pitch:42px;--sheet:100%}.jian-heap{height:auto;display:flex;flex-wrap:wrap;gap:1.6rem 1rem;padding:.6rem .4rem 0}.jian.is-filed{position:static;flex:none;width:calc(50% - .5rem);height:240px;transform:rotate(calc(var(--r,0deg) * .4))}.jian.is-filed:hover,.jian.is-filed:focus-within{transform:rotate(0)translateY(-6px)}.jian.is-filed .jian-paper{padding:22px 14px 14px 22px}.jian.is-filed .jian-ex{font-size:.88rem;line-height:1.85}.jian-lb{padding:3.2rem 1rem 4rem}.jian-close{top:1rem;right:1rem}.jread-group{width:100%;max-width:468px}.jian-lb:has(.jian.is-open) .jread-group{transform:none}.jian-paper{min-height:0}.jian-frame{margin:22px 18px 20px}.jian-inner{padding:20px 14px 22px}.jian-tag{top:38px;font-size:.82rem;padding:13px 6px}.jian-seal{left:20px;bottom:12px}.jian-motif{width:140px;height:140px}.jline{font-size:1.3rem}.jian-head{padding-bottom:1.2rem}.jian-tab{left:20px;margin-left:0;top:auto;bottom:-1px;flex-direction:row;writing-mode:horizontal-tb;padding:7px 16px 8px;border:1px solid var(--edge,#e2e6eb);border-bottom:0;border-radius:3px 3px 0 0}.jian-tab:hover{transform:translateY(3px)}.jian-tab:active{transform:translateY(1px)}.jian-tab i{transform:rotate(45deg)}.jian.is-open .jian-tab i{transform:rotate(225deg)}.jian-sub{position:static;width:auto;pointer-events:auto;display:grid;grid-template-rows:0fr;transition:grid-template-rows 440ms var(--soft)}.jian.is-open .jian-sub{grid-template-rows:1fr;transition:grid-template-rows 640ms var(--out)}.sub-clip{padding-bottom:0}.sub-sheet{width:auto;margin-left:14px;padding:1.1rem 1.2rem 1.3rem;transform:none;transition:none}}@media(max-width:560px){.jian.is-filed{width:100%;height:210px;transform:rotate(calc(var(--r,0deg) * .3))}}@media(prefers-reduced-motion:reduce){.jian.is-filed,.jian-paper,.jian-tab,.jian-tab i,.jian-sub,.sub-sheet,.jread-group,.jian-close,.jian-ex,.jian-by{transition:none}:root.jian-live .jian-heap.settling .jian.is-filed{animation:none}:root.jian-live .jian.is-read .jline{opacity:1;transform:none;transition:none}}