:root{--paper:#f3efe4;--paper-deep:#e8dfcf;--paper-light:#fbf8f0;--ink:#1c1a17;--ink-soft:#5e574d;--line:#1c1a172e;--vermilion:#a43624;--vermilion-dark:#76261b;--moss:#4e5747;--serif:"Yu Mincho", "Hiragino Mincho ProN", "Noto Serif JP", "MS PMincho", serif;--sans:"Yu Gothic", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:var(--paper);font-family:var(--sans);margin:0;line-height:1.75}button,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,textarea:focus-visible{outline-offset:3px;outline:3px solid #a436245c}main{min-height:100vh;position:relative;overflow:hidden}.paper-noise{z-index:-2;pointer-events:none;opacity:.43;background-image:radial-gradient(circle at 13% 17%,#4b3f2e14 0 .7px,#0000 .9px),radial-gradient(circle at 78% 42%,#ffffffb8 0 .9px,#0000 1.1px);background-size:11px 11px,17px 17px;position:fixed;inset:0}.paper-noise:after{content:"";background-color:#0000;background-image:linear-gradient(90deg,#0000 49.8%,#45372306 50%,#0000 50.2%),linear-gradient(#0000 49.8%,#45372305 50%,#0000 50.2%);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:52px 52px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;position:absolute;inset:0}.sutra-rail{z-index:5;color:#61372859;height:84vh;font-family:var(--serif);letter-spacing:.28em;writing-mode:vertical-rl;border-left:1px solid #a4362447;padding-left:14px;font-size:13px;position:fixed;top:8vh;right:24px}.site-header,.hero,.consultation,.result-shell,.review-shell,.principles,.site-footer{width:min(1100px,100% - 96px);margin-inline:auto}.site-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:108px;display:flex}.brand{color:inherit;align-items:center;gap:14px;text-decoration:none;display:inline-flex}.brand-seal{color:#f7eadc;background:var(--vermilion);width:48px;height:48px;font-family:var(--serif);border:2px solid #76261b6b;border-radius:5px 8px 4px 7px;flex:none;place-items:center;font-size:25px;line-height:1;display:inline-grid;transform:rotate(-2deg);box-shadow:inset 0 0 0 3px #f7eadc26}.brand-copy{line-height:1.15;display:grid}.brand-copy b{font-family:var(--serif);letter-spacing:.12em;font-size:20px}.brand-copy small{color:var(--ink-soft);letter-spacing:.2em;margin-top:7px;font-size:10px}.privacy-mark{color:var(--ink-soft);align-items:center;gap:9px;margin:0;font-size:12px;display:flex}.privacy-mark i{background:var(--moss);border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #4e57471f}.sutra-ruby ruby{ruby-position:over;ruby-align:center}.sutra-ruby rt{color:var(--vermilion-dark);font-family:var(--sans);letter-spacing:.04em;font-size:.44em;font-weight:700;line-height:1}.brand-copy .sutra-ruby rt,.footer-brand .sutra-ruby rt{font-size:9px}.sutra-rail .sutra-ruby rt{color:#61372894;letter-spacing:0;font-size:.6em}.hero{padding:96px 0 72px;position:relative}.hero:before{content:"般若";z-index:-1;color:#4e46390b;font-family:var(--serif);letter-spacing:-.18em;white-space:nowrap;font-size:clamp(130px,20vw,260px);line-height:1;position:absolute;top:40px;right:8%}.hero-kicker{width:min(690px,100%);color:var(--vermilion-dark);font-family:var(--serif);letter-spacing:.18em;align-items:center;gap:20px;font-size:13px;font-weight:700;display:flex}.kicker-line{background:#a436246b;flex:1;height:1px}.hero h1{max-width:900px;font-family:var(--serif);letter-spacing:-.04em;margin:26px 0 28px;font-size:clamp(44px,7.2vw,86px);font-weight:500;line-height:1.28}.hero h1 em{color:var(--vermilion-dark);font-style:normal}.hero-copy{max-width:700px;color:var(--ink-soft);font-family:var(--serif);margin:0;font-size:17px;line-height:2.15}.hero-sutra{border:1px solid var(--line);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#fbf8f085;width:245px;margin:0;padding:28px 28px 26px;position:absolute;bottom:120px;right:15px}.hero-sutra:before,.hero-sutra:after{content:"";border-color:var(--vermilion);width:13px;height:13px;position:absolute}.hero-sutra:before{border-top:1px solid;border-left:1px solid;top:9px;left:9px}.hero-sutra:after{border-bottom:1px solid;border-right:1px solid;bottom:9px;right:9px}.hero-sutra span,.hero-sutra b,.hero-sutra small{display:block}.hero-sutra span{color:var(--ink-soft);font-family:var(--serif);letter-spacing:.26em;font-size:12px}.hero-sutra b{font-family:var(--serif);letter-spacing:.13em;margin:13px 0 16px;font-size:22px;font-weight:600}.hero-sutra small{color:var(--ink-soft);font-size:11px;line-height:1.8}.journey{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(5,1fr);max-width:800px;margin-top:72px;display:grid}.journey span{border-right:1px solid var(--line);color:var(--ink-soft);font-family:var(--serif);letter-spacing:.12em;justify-content:center;align-items:center;gap:9px;padding:14px 8px;font-size:13px;display:flex}.journey span:last-child{border-right:0}.journey i{color:var(--vermilion-dark);font-size:10px;font-style:normal}.consultation{padding:40px 0 92px}.mode-switch{background:#e7dfd0b8;border:1px solid #1c1a171f;border-radius:4px;grid-template-columns:1fr 1fr;width:min(620px,100%);margin:0 auto 24px;padding:5px;display:grid}.mode-switch button{min-height:50px;color:var(--ink-soft);cursor:pointer;letter-spacing:.07em;background:0 0;border:0;border-radius:2px;justify-content:center;align-items:center;gap:10px;font-size:13px;font-weight:700;transition:background .18s,color .18s,box-shadow .18s;display:flex}.mode-switch button span{color:var(--vermilion-dark);font-family:var(--serif)}.mode-switch button.active{color:var(--ink);background:var(--paper-light);box-shadow:0 4px 14px #2d241814}.input-card{background:#fbf8f0e6;border:1px solid #1c1a1738;padding:40px 44px 42px;position:relative;overflow:hidden;box-shadow:0 24px 80px #3c301f14}.input-card:before{content:"";background:var(--vermilion);height:3px;position:absolute;top:0;left:0;right:0}.section-number{color:#1c1a170a;font-family:var(--serif);font-size:150px;line-height:1;position:absolute;top:-34px;right:28px}.input-heading,.result-header,.section-heading{z-index:1;justify-content:space-between;align-items:flex-end;gap:24px;display:flex;position:relative}.step-label{color:var(--vermilion-dark);font-family:var(--serif);letter-spacing:.2em;text-transform:uppercase;margin-bottom:8px;font-size:11px;font-weight:700;display:block}.step-label.light{color:#d8a38f}.input-heading h2,.result-header h2,.section-heading h2,.teaching-card h2,.crossing-card h2,.principles h2{font-family:var(--serif);letter-spacing:.01em;margin:0;font-weight:600;line-height:1.45}.input-heading h2,.result-header h2,.section-heading h2{font-size:clamp(23px,3vw,34px)}.mode-name,.source-badge{border:1px solid var(--line);color:var(--ink-soft);letter-spacing:.12em;white-space:nowrap;background:#f3efe4b3;border-radius:999px;padding:6px 11px;font-size:10px;font-weight:700}.source-badge.ai{color:var(--moss);border-color:#4e574752}textarea{resize:vertical;width:100%;min-height:170px;color:var(--ink);font-family:var(--serif);background:#f3efe4b8;border:1px solid #1c1a172b;border-radius:2px;margin-top:28px;padding:24px 26px;font-size:16px;line-height:2;transition:border-color .18s,background .18s}textarea:focus{background:var(--paper-light);border-color:#a4362485}.input-footer{justify-content:space-between;align-items:center;gap:24px;margin-top:22px;display:flex}.input-footer p{color:var(--ink-soft);margin:0;font-size:12px}.input-footer button,.crossing-card button{border:1px solid var(--ink);min-height:54px;color:var(--paper-light);background:var(--ink);cursor:pointer;letter-spacing:.08em;justify-content:center;align-items:center;gap:36px;padding:0 22px;font-size:13px;font-weight:700;transition:transform .18s,background .18s;display:inline-flex}.input-footer button:hover:not(:disabled),.crossing-card button:hover:not(:disabled){background:var(--vermilion-dark);transform:translateY(-2px)}.input-footer button:disabled,.crossing-card button:disabled{cursor:default;opacity:.56}.result-shell,.review-shell{margin-bottom:110px;scroll-margin-top:24px}.result-header{border-bottom:1px solid var(--line);padding:0 0 28px}.welcome-sermon{border-bottom:1px solid var(--line);grid-template-columns:74px 1fr;gap:30px;padding:50px 34px;display:grid}.drop-cap{height:74px;color:var(--vermilion-dark);font-family:var(--serif);border:1px solid #a4362461;place-items:center;font-size:38px;display:grid}.welcome-sermon p{max-width:800px;font-family:var(--serif);align-self:center;margin:0;font-size:19px;line-height:2}.sutra-passage-card{text-align:center;background:var(--ink);color:var(--paper);margin:12px 0 76px;padding:54px 24px 46px;position:relative;overflow:hidden}.sutra-passage-card:before,.sutra-passage-card:after{content:"";border:1px solid #f3efe414;border-radius:50%;width:190px;height:190px;position:absolute}.sutra-passage-card:before{top:-115px;left:-40px}.sutra-passage-card:after{bottom:-130px;right:-30px}.sutra-passage-card>span{color:#d8a38f;letter-spacing:.28em;font-size:10px;font-weight:700;display:block}.sutra-passage-card blockquote{font-family:var(--serif);letter-spacing:.12em;margin:18px auto;font-size:clamp(24px,4.2vw,43px);line-height:1.65}.sutra-passage-card p{color:#f3efe494;margin:0;font-size:12px}.sutra-passage-card .sutra-ruby rt,.review-sutra .sutra-ruby rt,.teaching-card .sutra-ruby rt{color:#d8a38f}.reading-note{color:#f3efe475;letter-spacing:.06em;margin-top:16px;font-size:9px;display:block}.five-skandhas{margin-bottom:70px}.section-heading>p{max-width:300px;color:var(--ink-soft);margin:0;font-size:12px}.layer-list{border-top:1px solid var(--line);margin:30px 0 0;padding:0;list-style:none}.layer-list li{border-bottom:1px solid var(--line);grid-template-columns:45px 96px 1fr 46px;align-items:center;gap:22px;min-height:132px;padding:20px 18px 20px 8px;transition:opacity .42s,transform .42s,background .42s;display:grid;position:relative}.layer-index{color:#1c1a175e;font-family:var(--serif);font-size:10px}.layer-kanji{align-items:baseline;gap:9px;display:flex}.layer-kanji b{font-family:var(--serif);font-size:48px;font-weight:500;line-height:1}.layer-kanji small{color:var(--vermilion-dark);font-family:var(--serif);font-size:10px}.layer-body>span{color:var(--vermilion-dark);letter-spacing:.08em;font-size:11px;font-weight:700}.layer-body p{max-width:720px;color:var(--ink-soft);font-family:var(--serif);margin:7px 0 0;font-size:15px;line-height:1.85}.layer-mark{color:#1c1a177a;width:36px;height:36px;font-family:var(--serif);border:1px solid #1c1a1738;place-items:center;font-size:13px;font-style:normal;display:grid;transform:rotate(2deg)}.is-dissolved .layer-list li.removable{opacity:.36;background:#fbf8f066;transform:translate(12px)}.is-dissolved .layer-list li.removable .layer-body p{-webkit-text-decoration:line-through #a436246b;text-decoration:line-through #a436246b}.is-dissolved .layer-list li.removable .layer-mark{color:var(--paper-light);background:var(--vermilion);border-color:var(--vermilion)}.dissolve-button{border:1px solid var(--line);width:min(440px,100%);min-height:78px;color:var(--ink);cursor:pointer;text-align:left;background:#fbf8f0a3;align-items:center;gap:18px;margin:30px auto 0;padding:10px 18px;transition:transform .18s,border-color .18s,background .18s;display:flex}.dissolve-button:hover{background:var(--paper-light);border-color:#a436246b;transform:translateY(-2px)}.button-seal{width:48px;height:48px;color:var(--paper-light);background:var(--vermilion);font-family:var(--serif);border-radius:50%;flex:none;place-items:center;font-size:24px;display:grid}.dissolve-button>span:last-child{display:grid}.dissolve-button b{font-family:var(--serif);font-size:15px}.dissolve-button small{color:var(--ink-soft);margin-top:2px;font-size:10px}.teaching-card{min-height:440px;color:var(--paper);background:#24211c;margin:0;padding:68px 150px 62px 72px;position:relative;overflow:hidden;box-shadow:0 28px 70px #1f19122e}.teaching-card:before{content:"空";color:#f3efe40a;font-family:var(--serif);font-size:320px;line-height:1;position:absolute;bottom:-68px;right:105px}.teaching-card header,.teaching-card>p,.release-line{z-index:1;position:relative}.teaching-card h2{font-size:clamp(33px,5vw,56px);font-weight:500}.teaching-card>p{color:#f3efe4e6;max-width:710px;font-family:var(--serif);margin:34px 0 42px;font-size:clamp(17px,2vw,21px);line-height:2.15}.teaching-rail{color:#d8a38fad;font-family:var(--serif);letter-spacing:.3em;writing-mode:vertical-rl;border-left:1px solid #d8a38f6b;padding-left:14px;font-size:12px;position:absolute;top:46px;right:38px}.release-line{border-top:1px solid #f3efe429;grid-template-columns:170px 1fr;align-items:center;gap:24px;max-width:700px;padding-top:26px;display:grid}.release-line span{color:#d8a38f;letter-spacing:.16em;font-size:10px;font-weight:700}.release-line b{font-family:var(--serif);font-size:15px;font-weight:500}.crossing-card{background:var(--paper-light);border:1px solid var(--line);border-top:0;grid-template-columns:1fr auto;align-items:center;gap:50px;padding:52px 55px;display:grid}.crossing-card h2{font-size:clamp(24px,3vw,34px)}.crossing-card p{max-width:690px;color:var(--ink-soft);font-family:var(--serif);margin:16px 0 0;font-size:16px;line-height:1.9}.crossing-card button{min-width:230px}.mantra{text-align:center;color:#1c1a1794;border-bottom:1px solid var(--line);padding:34px 24px;transition:color .26s}.mantra.complete{color:var(--vermilion-dark)}.mantra p{font-family:var(--serif);letter-spacing:.2em;margin:0 0 8px;font-size:clamp(13px,2vw,17px)}.mantra span{font-size:11px}.review-sutra{color:var(--paper-light);background:var(--ink);font-family:var(--serif);letter-spacing:.16em;text-align:center;margin:12px 0 40px;padding:38px 24px;font-size:clamp(26px,4vw,42px)}.review-grid{background:var(--line);border:1px solid var(--line);grid-template-columns:1.25fr 1fr;gap:1px;display:grid}.review-grid article{background:var(--paper-light);min-height:260px;padding:36px}.review-grid .review-lead{grid-column:1/-1;align-content:center;min-height:280px;display:grid}.review-grid article>span,.review-verdict small{color:var(--vermilion-dark);letter-spacing:.16em;font-size:10px;font-weight:700}.review-grid h3{max-width:820px;font-family:var(--serif);margin:15px 0;font-size:clamp(25px,3.6vw,42px);font-weight:500;line-height:1.55}.review-grid p,.review-grid li{color:var(--ink-soft);font-family:var(--serif);font-size:14px;line-height:1.85}.review-grid ul,.review-grid ol{margin:20px 0 0;padding-left:20px}.review-grid .attachment-card{color:var(--paper);background:#302c25}.review-grid .attachment-card>span{color:#d8a38f}.review-grid .attachment-card p{color:#f3efe4c7}.review-grid .later-card{background:#ece5d8}.review-verdict{border:1px solid var(--line);background:#fbf8f0ad;align-items:center;gap:24px;margin-top:24px;padding:32px 36px;display:flex}.review-verdict p{font-family:var(--serif);margin:5px 0 0;font-size:18px}.principles{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:.9fr 1.1fr;gap:80px;padding:84px 0;display:grid}.principles h2{max-width:460px;font-size:clamp(28px,4vw,46px)}.principles>p{color:var(--ink-soft);font-family:var(--serif);align-self:center;margin:0;font-size:16px;line-height:2.1}.site-footer{justify-content:space-between;align-items:center;gap:60px;min-height:190px;display:flex}.footer-brand{flex:none;align-items:center;gap:16px;display:flex}.footer-brand div{display:grid}.footer-brand b{font-family:var(--serif);letter-spacing:.08em}.footer-brand small{color:var(--ink-soft);letter-spacing:.14em;margin-top:4px;font-size:9px}.site-footer>p{max-width:590px;color:var(--ink-soft);text-align:right;margin:0;font-size:10px;line-height:1.9}@media (width<=980px){.hero-sutra{width:min(500px,100%);margin-top:44px;position:relative;bottom:auto;right:auto}.journey{margin-top:38px}.teaching-card{padding-right:100px}.crossing-card{grid-template-columns:1fr}.crossing-card button{justify-self:start}}@media (width<=720px){.sutra-rail{display:none}.site-header,.hero,.consultation,.result-shell,.review-shell,.principles,.site-footer{width:min(100% - 36px,1100px)}.site-header{min-height:88px}.privacy-mark{display:none}.brand-seal{width:42px;height:42px;font-size:22px}.hero{padding:66px 0 48px}.hero h1{margin-top:22px;font-size:clamp(39px,13vw,62px)}.hero-copy{font-size:15px;line-height:2}.hero:before{top:100px;right:-30px}.journey{grid-template-columns:repeat(5,minmax(0,1fr))}.journey span{text-align:center;gap:2px;padding:11px 3px;font-size:11px;display:grid}.consultation{padding-bottom:72px}.mode-switch button{gap:1px;min-height:58px;padding:7px;line-height:1.35;display:grid}.input-card{padding:31px 22px 26px}.input-heading,.result-header,.section-heading{flex-direction:column;align-items:flex-start;gap:12px}textarea{padding:19px;font-size:15px}.input-footer{flex-direction:column;align-items:stretch}.input-footer button{width:100%}.welcome-sermon{grid-template-columns:50px 1fr;gap:17px;padding:38px 8px}.drop-cap{height:50px;font-size:27px}.welcome-sermon p{font-size:16px}.sutra-passage-card{margin-bottom:58px;padding:46px 18px 40px}.sutra-passage-card blockquote{letter-spacing:.07em;font-size:23px}.layer-list li{grid-template-columns:30px 72px 1fr;align-items:start;gap:12px;min-height:0;padding:22px 3px}.layer-kanji b{font-size:39px}.layer-kanji{flex-direction:column;align-items:center;gap:1px}.layer-mark{width:27px;height:27px;font-size:10px;position:absolute;top:18px;right:3px}.layer-body{padding-right:32px}.layer-body p{font-size:13px}.teaching-card{min-height:0;padding:48px 52px 46px 26px}.teaching-card>p{font-size:17px;line-height:2}.teaching-rail{top:36px;right:17px}.release-line{grid-template-columns:1fr;gap:9px}.crossing-card{gap:30px;padding:38px 25px}.crossing-card button{width:100%;min-width:0}.mantra p{line-height:2.2}.review-grid{grid-template-columns:1fr}.review-grid .review-lead{grid-column:auto}.review-grid article{min-height:0;padding:30px 24px}.review-verdict{align-items:flex-start;padding:26px 22px}.principles{grid-template-columns:1fr;gap:30px;padding:62px 0}.site-footer{flex-direction:column;justify-content:center;align-items:flex-start;gap:28px;min-height:250px}.site-footer>p{text-align:left}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
