:root[data-theme=dark]{--bg:#0d0b09;--card:#16130f;--card2:#1b1712;--line:#262119;--line2:#332c22;--ink:#ece7dd;--sub:#9c9488;--hint:#6f695e;--btn-bg:#ece7dd;--btn-fg:#14110d;--headbg:#0d0b09d1;--map-node:#efe8dc;--map-node-fg:#17130f;--map-memo:#16130f;--map-stroke:#3a3228;--map-memo-fg:#cfc8ba;--dig:#9b8cf0;--con:#5fd3ac;--ref:#f0a58c;--act:#b2d97e;--exp:#8cc0f0;--dig-t:#9b8cf024;--con-t:#5fd3ac24;--ref-t:#f0a58c24;--act-t:#b2d97e24;--exp-t:#8cc0f024;--sym-shadow:none}:root[data-theme=light]{--bg:#f4f1e9;--card:#fffdf8;--card2:#f9f6ee;--line:#e4dfd2;--line2:#d5cfbe;--ink:#221e17;--sub:#6c665b;--hint:#948d80;--btn-bg:#221e17;--btn-fg:#f6f3ec;--headbg:#f4f1e9d9;--map-node:#221e17;--map-node-fg:#f6f3ec;--map-memo:#fffdf8;--map-stroke:#cdc6b5;--map-memo-fg:#4c463c;--dig:#6f5fd8;--con:#20976f;--ref:#c95c33;--act:#5f8e28;--exp:#3d84c9;--dig-t:#6f5fd81a;--con-t:#20976f1a;--ref-t:#c95c331a;--act-t:#5f8e281a;--exp-t:#3d84c91a;--sym-shadow:drop-shadow(0 2px 10px #00000014)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;font-family:-apple-system,Hiragino Sans,Noto Sans JP,system-ui,sans-serif;line-height:1.8;transition:background .35s,color .35s}.wrap{max-width:960px;margin:0 auto;padding:0 24px}section{border-bottom:1px solid var(--line);padding:88px 0}.eyebrow{letter-spacing:.16em;color:var(--hint);margin-bottom:16px;font-size:12px;font-weight:600}h2{margin-bottom:18px;font-size:29px;font-weight:600;line-height:1.5}p.lead{color:var(--sub);max-width:640px;font-size:16px}.accentline{background:var(--line2);width:36px;height:2px;margin-bottom:24px}.big{font-size:33px;font-weight:600;line-height:1.55}.quiet{color:var(--sub);max-width:660px;margin-top:18px;font-size:16px}header{z-index:20;background:var(--headbg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);position:sticky;top:0}.navin{align-items:center;gap:10px;max-width:960px;margin:0 auto;padding:12px 24px;display:flex}.navin img{width:28px;height:28px;filter:var(--sym-shadow)}.navbrand{color:inherit;align-items:center;gap:10px;text-decoration:none;display:inline-flex}.wm{width:auto;height:13px;color:var(--ink);flex:none;display:block}.navsym{flex:none;width:24px;height:24px}:root[data-theme=light] .navsym{content:url(/assets/symbol-mono-dark-512.png)}.navin .sp{flex:1}.themebtn{border:1px solid var(--line2);color:var(--sub);font:inherit;cursor:pointer;background:0 0;border-radius:20px;margin-right:8px;padding:7px 12px;font-size:12px}.themebtn:hover{border-color:var(--hint)}.navcta{background:var(--btn-bg);color:var(--btn-fg);border-radius:20px;padding:8px 15px;font-size:13px;font-weight:600;text-decoration:none}.hero{text-align:center;border-bottom:1px solid var(--line);justify-content:center;align-items:center;min-height:86vh;display:flex;position:relative;overflow:hidden}#ripple{width:100%;height:100%;position:absolute;inset:0}.heroin{z-index:2;padding:96px 24px;position:relative}.heroin img.sym{width:92px;height:92px;filter:var(--sym-shadow);margin-bottom:28px}.h1{font-size:43px;font-weight:600;line-height:1.42}.hsub{color:var(--sub);margin-top:20px;font-size:16.5px;line-height:1.9}.hsub small{color:var(--hint);margin-top:6px;font-size:14px;display:block}.ctarow{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:34px;display:flex}.store{background:var(--btn-bg);color:var(--btn-fg);border-radius:12px;align-items:center;padding:13px 22px;font-weight:600;text-decoration:none;display:inline-flex}.store.ghost{color:var(--ink);border:1px solid var(--line2);background:0 0}.store .k{opacity:.65;font-size:11px;font-weight:500;line-height:1.2;display:block}.store .v{font-size:15px;font-weight:600;line-height:1.25}.notify{color:var(--hint);margin-top:16px;font-size:13px}.notify a{color:var(--sub)}.sym3,.three{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:15px;margin-top:30px;display:grid}.symc,.tc{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:22px}.symc .n,.tc .n{color:var(--hint);letter-spacing:.08em;margin-bottom:10px;font-size:11.5px;font-weight:700}.symc p{font-size:15px;line-height:1.8}.tc h3{margin-bottom:8px;font-size:17px;font-weight:600}.tc p{color:var(--sub);font-size:14px;line-height:1.8}.types{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:11px;margin-top:32px;display:grid}.type{background:var(--card);border:1px solid var(--line);border-radius:13px;padding:16px}.dot{border-radius:50%;width:11px;height:11px;margin-right:8px;display:inline-block}.type .t{font-size:14.5px;font-weight:600}.type .d{color:var(--sub);margin-top:6px;font-size:13px;line-height:1.7}.symnote{background:var(--card);border:1px solid var(--line);border-radius:14px;align-items:center;gap:14px;margin-top:26px;padding:16px 18px;display:flex}.symnote img{width:52px;height:52px;filter:var(--sym-shadow);flex:none}.symnote p{color:var(--sub);font-size:14px;line-height:1.75}.feat{grid-template-columns:1fr 1fr;align-items:center;gap:40px;display:grid}.feat.rev .fv{order:-1}.fv{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:20px}.badge{color:var(--hint);letter-spacing:.08em;margin-bottom:12px;font-size:11.5px;font-weight:700;display:inline-block}@media (max-width:760px){.feat{grid-template-columns:1fr;gap:22px}.feat.rev .fv{order:0}}.thread{background:var(--card);border:1px solid var(--line);border-radius:18px;margin-top:32px;padding:20px}.tmemo{background:var(--card2);border:1px solid var(--line2);border-radius:12px;padding:12px 14px;font-size:14.5px}.trail{border-left:2px solid var(--line2);margin-top:10px;margin-left:7px;padding-left:15px}.ti{margin-bottom:11px}.tag{border-radius:12px;margin-bottom:5px;padding:2px 9px;font-size:10.5px;font-weight:700;display:inline-block}.tag.n{color:var(--sub);background:var(--card2)}.tag.dig{color:var(--dig);background:var(--dig-t)}.tag.con{color:var(--con);background:var(--con-t)}.tag.ref{color:var(--ref);background:var(--ref-t)}.tag.act{color:var(--act);background:var(--act-t)}.ti .body{font-size:14px;line-height:1.75}.anno{color:var(--hint);margin-top:6px;padding-left:2px;font-size:12px}.anno:before{content:"↑ ";opacity:.7}.loop{color:var(--hint);text-align:center;margin-top:14px;font-size:13px}.afterthread{margin-top:34px}.afterthread h3{margin-bottom:8px;font-size:19px;font-weight:600}.afterthread p.lead{font-size:15px}.mapbox{text-align:center}.mapbox svg{width:100%;max-width:440px;height:auto}.mapcap{color:var(--hint);margin-top:10px;font-size:12.5px}.mapstandalone{background:var(--card);border:1px solid var(--line);border-radius:18px;margin-top:32px;padding:26px 20px}.mitorizu{background:var(--card);border:1px solid var(--line);text-align:center;border-radius:20px;margin-top:34px;padding:20px}.mitorizu img{aspect-ratio:1;object-fit:contain;border:1px solid var(--line2);border-radius:14px;width:100%;max-width:660px;height:auto;margin:0 auto;display:block}.mitorizu .ph{aspect-ratio:1;border:2px dashed var(--line2);width:100%;max-width:660px;color:var(--hint);text-align:center;border-radius:14px;justify-content:center;align-items:center;margin:0 auto;padding:20px;font-size:14px;line-height:1.8;display:flex}.mitorizu .cap{color:var(--hint);margin-top:14px;font-size:12.5px}.mzrow{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin-top:26px;display:grid}.mzc{background:var(--card2);border:1px solid var(--line2);text-align:left;border-radius:13px;padding:15px}.mzc .t{margin-bottom:5px;font-size:14px;font-weight:600}.mzc .d{color:var(--sub);font-size:12.5px;line-height:1.7}.steps{grid-template-columns:repeat(3,1fr);align-items:start;gap:20px;margin-top:26px;display:grid}.steps-art .step{text-align:center;background:0 0;border:none;border-radius:0;margin:0;padding:0}.steps-art .steplabel{letter-spacing:.1em;color:var(--hint);margin-bottom:10px;font-size:11.5px;font-weight:700}.steps-art .stepfig{width:100%;max-width:280px;margin:0 auto 12px;position:relative}.steps-art .stepfig img{aspect-ratio:1;object-fit:cover;border:1px solid var(--line2);border-radius:14px;width:100%;height:auto;display:block}.steps-art figcaption{color:var(--sub);word-break:keep-all;line-break:strict;overflow-wrap:normal;width:100%;max-width:280px;margin:0 auto;font-size:13.5px;line-height:1.75}.step .num{color:var(--hint);margin-bottom:10px;font-size:12px;font-weight:700}.step h4{margin-bottom:6px;font-size:16px;font-weight:600}.step p{color:var(--sub);font-size:13.5px;line-height:1.7}.steps:not(.steps-art) .step{text-align:center;background:var(--card);border:1px solid var(--line);border-radius:16px;padding:22px}details{border-bottom:1px solid var(--line);padding:17px 0}summary{cursor:pointer;font-size:15.5px;font-weight:600;list-style:none}summary::-webkit-details-marker{display:none}summary:after{content:"＋";float:right;color:var(--hint);font-weight:400}details[open] summary:after{content:"−"}details p{color:var(--sub);margin-top:11px;font-size:14px;line-height:1.85}.final{text-align:center;border-bottom:none;padding:105px 0}.final img{width:108px;height:108px;filter:var(--sym-shadow);margin-bottom:24px}.final .h1{font-size:36px}footer{text-align:center;color:var(--hint);padding:34px 0 60px;font-size:13px}footer a{color:var(--sub)}.footlinks{font-size:12.5px;line-height:1.8}.legalpage{border-bottom:1px solid var(--line);min-height:60vh;padding:48px 0 72px}.legalnav{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:8px 14px;margin-bottom:28px;padding-bottom:16px;display:flex}.legalnav a{color:var(--hint);font-size:13px;text-decoration:none}.legalnav a:hover{color:var(--sub)}.legalnav a.on{color:var(--ink);font-weight:600}.legalback{margin-top:40px;font-size:14px}.legalback a{color:var(--sub)}.legalprose{max-width:720px;color:var(--ink);font-size:15px;line-height:1.9}.legalprose h1{margin:0 0 18px;font-size:28px;font-weight:600;line-height:1.45}.legalprose h2{margin:40px 0 14px;font-size:20px;font-weight:600;line-height:1.5}.legalprose h3{margin:28px 0 10px;font-size:16.5px;font-weight:600}.legalprose p{color:var(--ink);margin:0 0 14px}.legalprose strong{font-weight:600}.legalprose a{color:var(--sub)}.legalprose ul,.legalprose ol{color:var(--sub);margin:0 0 16px;padding-left:1.35em}.legalprose li{margin:4px 0}.legalprose li::marker{color:var(--hint)}.legalprose hr{border:none;border-top:1px solid var(--line);margin:28px 0}.legalprose blockquote{border-left:3px solid var(--line2);background:var(--card);color:var(--sub);border-radius:0 10px 10px 0;margin:16px 0;padding:12px 16px}.legalprose pre{background:var(--card);border:1px solid var(--line);color:var(--sub);border-radius:12px;margin:16px 0;padding:14px 16px;font-size:12.5px;line-height:1.65;overflow:auto}.legalprose code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.92em}.legalprose :not(pre)>code{background:var(--card2);border:1px solid var(--line);border-radius:5px;padding:1px 6px}.legalprose table{border-collapse:collapse;width:100%;margin:16px 0 22px;font-size:13.5px;display:block;overflow-x:auto}.legalprose thead{background:var(--card)}.legalprose th,.legalprose td{border:1px solid var(--line);text-align:left;vertical-align:top;min-width:7em;padding:10px 12px}.legalprose th{color:var(--ink);white-space:nowrap;font-weight:600}.legalprose td{color:var(--sub)}.supportpage .supportprose h2:first-of-type{margin-top:32px}.supportmail{color:var(--ink);border-bottom:1px solid var(--line2);padding-bottom:2px;font-size:16px;font-weight:600;text-decoration:none;display:inline-block}.supportmail:hover{color:var(--sub)}.supporthint{color:var(--hint);font-size:13.5px}.supportlinks{color:var(--sub);margin:0;padding-left:1.35em}.supportlinks li{margin:6px 0}.supportlinks a{color:var(--sub)}@media (max-width:640px){section{padding:66px 0}.h1{font-size:30px}.final .h1{font-size:26px}h2{font-size:23px}.big{font-size:26px}.heroin img.sym{width:74px;height:74px}.steps{grid-template-columns:1fr;gap:28px}.steps-art .stepfig{max-width:100%}.steps-art figcaption{width:100%;max-width:none;font-size:14px}}@media (prefers-reduced-motion:reduce){#ripple{display:none}html{scroll-behavior:auto}}.designviewer{border-bottom:1px solid var(--line);min-height:70vh;padding:48px 0 80px}.dvbadge{letter-spacing:.12em;color:var(--hint);border:1px solid var(--line2);border-radius:20px;margin-bottom:18px;padding:6px 12px;font-size:11px;font-weight:700;display:inline-block}.dvtitle{margin-bottom:12px;font-size:30px;font-weight:600;line-height:1.4}.dvlead{color:var(--sub);max-width:640px;margin-bottom:28px;font-size:15px;line-height:1.85}.dvtabs{flex-wrap:wrap;gap:8px;margin-bottom:20px;display:flex}.dvtabs button{font:inherit;border:1px solid var(--line2);color:var(--sub);cursor:pointer;background:0 0;border-radius:20px;padding:8px 14px;font-size:12.5px}.dvtabs button:hover{border-color:var(--hint);color:var(--ink)}.dvtabs button.on{background:var(--btn-bg);color:var(--btn-fg);border-color:var(--btn-bg);font-weight:600}.dvframe{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:28px 22px}.dvframe .dvpreview section,.dvpreview{border:none;padding:0}.dvcap{color:var(--hint);margin-top:12px;font-size:12.5px}.dvmeta{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-top:28px;display:grid}.dvmeta .k{letter-spacing:.08em;color:var(--hint);margin-bottom:6px;font-size:11px;font-weight:700}.dvmeta p{color:var(--sub);font-size:13.5px;line-height:1.75}.dvnote{background:var(--card2);border:1px solid var(--line2);color:var(--sub);border-radius:14px;margin-top:24px;padding:16px 18px;font-size:13.5px;line-height:1.8}.dvnote strong{color:var(--ink);font-weight:600}.dvback{margin-top:32px;font-size:14px}.dvback a{color:var(--sub)}.dvnums{grid-template-columns:repeat(3,1fr);gap:16px;margin-top:26px;display:grid}.dvnum .big{color:var(--hint);letter-spacing:-.04em;margin-bottom:10px;font-size:40px;font-weight:700;line-height:1}.dvnum .bar{background:var(--line2);width:36px;height:2px;margin-bottom:12px}.dvnum .bar.on{background:var(--dig)}.dvnum h4{margin-bottom:6px;font-size:16px;font-weight:600}.dvnum p{color:var(--sub);font-size:13.5px;line-height:1.7}.dvjourney{margin-top:26px;position:relative}.dvjourney .track{background:var(--line2);height:1px;position:absolute;top:18px;left:8%;right:8%}.dvjourneyin{grid-template-columns:repeat(3,1fr);gap:12px;display:grid;position:relative}.dvjourneyitem{text-align:center;padding-top:4px}.dvjourneyitem .dot{border:2px solid var(--ink);background:var(--bg);border-radius:50%;width:14px;height:14px;margin:0 auto 12px}.dvjourneyitem .dot.on{border-color:var(--dig)}.dvjourneyitem .n{color:var(--hint);margin-bottom:8px;font-size:11px;font-weight:700}.dvjourneyitem h4{margin-bottom:6px;font-size:15px;font-weight:600}.dvjourneyitem p{color:var(--sub);font-size:12.5px;line-height:1.7}.dvedit{margin-top:26px}.dveditrow{align-items:flex-start;gap:18px;padding:18px 0;display:flex}.dveditrow .n{color:var(--hint);min-width:28px;padding-top:4px;font-size:12px;font-weight:700}.dveditrow h4{letter-spacing:-.02em;margin-bottom:6px;font-size:22px;font-weight:600}.dveditrow p{color:var(--sub);font-size:13.5px;line-height:1.7}.dveditline{background:var(--line);height:1px}.dvdrop{grid-template-columns:repeat(3,1fr);align-items:start;gap:20px;margin-top:26px;display:grid}.dvdrop-art{position:relative}.dvdropitem{text-align:center;margin:0}.dvdrop .steplabel{letter-spacing:.1em;color:var(--hint);margin-bottom:10px;font-size:11.5px;font-weight:700}.dvdrop.label-above-caption .steplabel{margin-top:2px;margin-bottom:8px}.dvdropfig{max-width:280px;margin:0 auto 12px;position:relative}.dvdrop.label-above-caption .dvdropfig{margin-bottom:10px}.dvdropfig img{aspect-ratio:1;object-fit:cover;border:1px solid var(--line2);border-radius:14px;width:100%;height:auto;display:block}.dvdropitem figcaption{color:var(--sub);word-break:keep-all;line-break:strict;overflow-wrap:normal;width:100%;max-width:280px;margin:0 auto;font-size:13.5px;line-height:1.75}.dvheadlines{margin-bottom:18px}.dvheadlines .k{letter-spacing:.08em;color:var(--hint);margin-bottom:8px;font-size:11px;font-weight:700}.dvheadlines .dvcap{margin-top:8px;margin-bottom:0}@media (max-width:640px){.dvnums,.dvjourneyin,.dvdrop{grid-template-columns:1fr;gap:28px}.dvdropfig{max-width:100%}.dvdropitem figcaption{width:100%;max-width:none;font-size:14px}.dvjourney .track{display:none}.dvjourneyin{border-left:1px solid var(--line2);margin-left:6px;padding-left:18px}.dvjourneyitem{text-align:left;grid-template-columns:14px 1fr;align-items:start;gap:0 12px;display:grid}.dvjourneyitem .dot{grid-row:span 3;margin:4px 0 0}.dvjourneyitem .n,.dvjourneyitem h4,.dvjourneyitem p{grid-column:2}.dvtitle{font-size:24px}}
