.page-module__4CcDgW__root{--paper:#f8f6f3;--paper-warm:#f2ede4;--card:#fffdf9;--ink:#1c1714;--ink-soft:#6a6058;--ink-faint:#9a8f85;--flame-deep:#b06e0a;--ember:#e8843c;--ember-glow:#d15a1a24;--line:#1c171417;--teal:#2e8b8b;--green:#4a7a2e;--blue:#5b7cfa;--amber:#b06e0a;--pulse-c:#d15a1a80;scroll-snap-type:y mandatory;-webkit-overflow-scrolling:touch;background:var(--paper);height:100dvh;overflow-y:scroll}.page-module__4CcDgW__root:before{content:"";pointer-events:none;z-index:1;opacity:.5;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3CfeColorMatrix values='0 0 0 0 0.55 0 0 0 0 0.42 0 0 0 0 0.28 0 0 0 0.05 0'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}.page-module__4CcDgW__header{z-index:100;border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--bg) 80%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);justify-content:space-between;align-items:center;padding:11px 26px;display:flex;position:fixed;top:0;left:0;right:0}.page-module__4CcDgW__header.page-module__4CcDgW__mob{padding:11px 14px}.page-module__4CcDgW__headerLeft,.page-module__4CcDgW__headerRight{align-items:center;gap:12px;display:flex}.page-module__4CcDgW__headerRight{gap:8px}.page-module__4CcDgW__themeBtn{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;border-radius:6px;padding:8px;display:flex}.page-module__4CcDgW__section{scroll-snap-align:start;z-index:2;flex-direction:column;justify-content:center;align-items:center;min-height:100dvh;padding:40px 32px;display:flex;position:relative}.page-module__4CcDgW__section.page-module__4CcDgW__mob{padding:40px 18px 32px}.page-module__4CcDgW__sectionCenter{text-align:center}.page-module__4CcDgW__sectionEmbers{z-index:0;pointer-events:none;position:absolute;inset:0}.page-module__4CcDgW__emberSection>:not(.page-module__4CcDgW__sectionEmbers){z-index:2;position:relative}.page-module__4CcDgW__stepBadge{font-family:var(--font-sans), "Noto Sans JP", "Helvetica Neue", sans-serif;font-size:var(--fs-xs);color:var(--text-muted);letter-spacing:1px;margin-bottom:16px;font-weight:500}.page-module__4CcDgW__label{font-family:var(--font-sans), "Noto Sans JP", "Helvetica Neue", sans-serif;font-size:var(--fs-xs);color:var(--purple);letter-spacing:2.5px;text-transform:uppercase;margin-bottom:10px;font-weight:700}.page-module__4CcDgW__heading{font-family:var(--font-serif), "Noto Serif JP", Georgia, serif;color:var(--text);text-align:center;margin-bottom:12px;font-size:clamp(36px,3.6vw,48px);font-weight:700;line-height:1.2}.page-module__4CcDgW__heading.page-module__4CcDgW__mob{font-size:24px}.page-module__4CcDgW__desc{font-family:var(--font-sans), "Noto Sans JP", "Helvetica Neue", sans-serif;font-size:var(--fs-md);color:var(--text-secondary);text-align:center;max-width:480px;margin:0 auto 28px;line-height:1.7}.page-module__4CcDgW__desc.page-module__4CcDgW__mob{font-size:var(--fs-sm)}.page-module__4CcDgW__nextBtn{font-family:var(--font-sans), "Noto Sans JP", "Helvetica Neue", sans-serif;font-size:var(--fs-sm);color:var(--accent);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:7px;align-items:center;gap:6px;margin-top:28px;padding:9px 24px;font-weight:600;transition:border-color .2s;display:flex}.page-module__4CcDgW__nextBtn:hover{border-color:color-mix(in srgb, var(--accent) 40%, transparent)}.page-module__4CcDgW__cardGrid{grid-template-columns:1fr 1fr;gap:12px;width:100%;max-width:520px;display:grid}.page-module__4CcDgW__cardGrid.page-module__4CcDgW__mob{grid-template-columns:1fr;max-width:340px}.page-module__4CcDgW__elementCard{background:var(--surface);border:1px solid var(--border);border-left:4px solid var(--c);opacity:0;transition:opacity .5s ease var(--delay), transform .5s ease var(--delay);border-radius:9px;align-items:center;gap:12px;padding:14px 18px;display:flex;transform:translateY(16px)}.page-module__4CcDgW__elementCard.page-module__4CcDgW__mob{padding:12px 14px}.page-module__4CcDgW__elementCard.page-module__4CcDgW__mounted{opacity:1;transform:translateY(0)}.page-module__4CcDgW__elementBullet{background:color-mix(in srgb, var(--c) 8%, transparent);border:1.5px solid var(--c);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.page-module__4CcDgW__elementBulletDot{background:var(--c);border-radius:50%;width:10px;height:10px}.page-module__4CcDgW__elementBody{min-width:0}.page-module__4CcDgW__elementType{font-family:var(--font-sans), "Noto Sans JP", "Helvetica Neue", sans-serif;font-size:var(--fs-xs);color:var(--c);text-transform:uppercase;letter-spacing:1.2px;margin-bottom:2px;font-weight:700}.page-module__4CcDgW__elementName{font-family:var(--font-serif), "Noto Serif JP", Georgia, serif;font-size:var(--fs-sm);color:var(--text);margin-bottom:2px;font-weight:700}.page-module__4CcDgW__elementDesc{font-family:var(--font-sans), "Noto Sans JP", "Helvetica Neue", sans-serif;font-size:var(--fs-xs);color:var(--text-secondary);line-height:1.4}.page-module__4CcDgW__graphContainer{background:var(--bg-secondary);border:1px solid var(--border);width:100%;max-width:500px;box-shadow:var(--shadow);border-radius:11px;overflow:hidden}.page-module__4CcDgW__graphContainer.page-module__4CcDgW__mob{max-width:340px}.page-module__4CcDgW__graphHeader{border-bottom:1px solid var(--border);background:var(--surface);align-items:center;gap:6px;padding:7px 12px;display:flex}.page-module__4CcDgW__graphHeaderLabel{font-family:var(--font-sans), "Noto Sans JP", "Helvetica Neue", sans-serif;color:var(--text-tertiary);font-size:11px;font-weight:600}.page-module__4CcDgW__graphSvg{display:block}.page-module__4CcDgW__gridDot{fill:var(--text-muted);opacity:.15}.page-module__4CcDgW__arrowHead{fill:var(--accent);opacity:.55}.page-module__4CcDgW__edgePath{fill:none;stroke:var(--accent);stroke-width:1.5px;opacity:.55}.page-module__4CcDgW__edgeLabelBox{fill:var(--surface);stroke:var(--border);stroke-width:.5px}.page-module__4CcDgW__edgeLabelText{font-family:var(--font-sans), "Noto Sans JP", "Helvetica Neue", sans-serif;fill:var(--text-secondary);font-size:8.5px;font-weight:600}.page-module__4CcDgW__nodeText{font-family:var(--font-sans), "Noto Sans JP", "Helvetica Neue", sans-serif;paint-order:stroke;stroke:var(--bg-secondary);stroke-width:3px;stroke-linejoin:round;font-size:9.5px;font-weight:700}.page-module__4CcDgW__nodeDimLabel{font-family:var(--font-sans), "Noto Sans JP", "Helvetica Neue", sans-serif;fill:var(--text-muted);font-size:7px;font-style:italic;font-weight:500}.page-module__4CcDgW__nextBtnIcon{color:var(--accent);display:flex}.page-module__4CcDgW__graphHeaderIcon{color:var(--text-tertiary);display:flex}.page-module__4CcDgW__chapterToggle{border:1px solid var(--border);border-radius:8px;margin-top:18px;display:flex;overflow:hidden}.page-module__4CcDgW__chapterBtn{font-family:var(--font-sans), "Noto Sans JP", "Helvetica Neue", sans-serif;font-size:var(--fs-xs);cursor:pointer;color:var(--text-secondary);background:var(--surface);border:none;padding:8px 20px;font-weight:600;transition:all .25s}.page-module__4CcDgW__chapterBtnActive{color:#fff;background:linear-gradient(135deg, var(--flame), var(--accent))}.page-module__4CcDgW__ctaWrap{opacity:0;flex-direction:column;align-items:center;transition:opacity .7s,transform .7s;display:flex;transform:translateY(20px)}.page-module__4CcDgW__ctaWrap.page-module__4CcDgW__visible{opacity:1;transform:translateY(0)}.page-module__4CcDgW__ctaHeading{margin-top:20px}.page-module__4CcDgW__ctaButtons{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.page-module__4CcDgW__ctaPrimary{font-family:var(--font-sans), "Noto Sans JP", "Helvetica Neue", sans-serif;font-size:var(--fs-sm);color:#fff;background:linear-gradient(135deg, var(--flame), var(--accent));box-shadow:0 2px 12px color-mix(in srgb, var(--flame) 25%, transparent);border-radius:7px;align-items:center;gap:6px;padding:12px 28px;font-weight:600;text-decoration:none;display:flex}.page-module__4CcDgW__ctaPrimaryArrow{font-size:var(--fs-base)}.page-module__4CcDgW__ctaSecondary{font-family:var(--font-sans), "Noto Sans JP", "Helvetica Neue", sans-serif;font-size:var(--fs-sm);color:var(--text);background:var(--surface);border:1px solid var(--border);cursor:pointer;border-radius:7px;padding:12px 28px;font-weight:600}.page-module__4CcDgW__ctaBackHome{font-family:var(--font-sans), "Noto Sans JP", "Helvetica Neue", sans-serif;font-size:var(--fs-xs);color:var(--text-tertiary);margin-top:24px;text-decoration:none}.page-module__4CcDgW__svgEdge{opacity:0;transition:opacity .5s ease var(--delay)}.page-module__4CcDgW__svgEdge.page-module__4CcDgW__mounted{opacity:.85}.page-module__4CcDgW__svgEdge.page-module__4CcDgW__mounted.page-module__4CcDgW__inactive{opacity:.12}.page-module__4CcDgW__svgNode{opacity:0;transform-origin:var(--ox) var(--oy);transition:opacity .45s ease var(--delay), transform .45s ease var(--delay);transform:scale(.6)}.page-module__4CcDgW__svgNode.page-module__4CcDgW__mounted{opacity:1;transform:scale(1)}.page-module__4CcDgW__svgNode.page-module__4CcDgW__mounted.page-module__4CcDgW__dimmed{opacity:.25}.page-module__4CcDgW__svgPulse{opacity:0;transition:opacity .5s 1.8s}.page-module__4CcDgW__svgPulse.page-module__4CcDgW__mounted{opacity:.4;animation:3s ease-in-out 2.5s infinite page-module__4CcDgW__learnPulse}[data-theme=dark] .page-module__4CcDgW__root{--paper:#0b0806;--paper-warm:#120d08;--card:#17110a;--card-2:#1d150c;--ink:#f6efe2;--ink-soft:#b8aa95;--ink-faint:#7e7160;--flame-deep:#e8480c;--gold:#ffb62e;--ember:#ff8f3d;--ember-glow:#ff6b1a21;--line:#f6efe217;--teal:#4fd1c5;--green:#8fd35e;--blue:#7aa5ff;--amber:#ffb62e;--pulse-c:#ff6b1a8c;background:radial-gradient(1100px 620px at 82% -8%, #ff6b1a1a, transparent 60%), radial-gradient(900px 600px at -10% 32%, #e8480c0f, transparent 60%), var(--paper)}[data-theme=dark] .page-module__4CcDgW__root:before{opacity:.4;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 0.85 0 0 0 0 0.6 0 0 0 0.04 0'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)'/%3E%3C/svg%3E")}
