.grove-wrap{max-width:760px;margin:26px auto 0}.grove-stats{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:12px;gap:12px;margin-bottom:26px}.gstat{background:var(--soft);border:1px solid var(--line);border-radius:16px;padding:16px 14px;text-align:center;position:relative;overflow:hidden}.gstat:before{content:"";position:absolute;inset:0;opacity:.5;background:radial-gradient(120% 90% at 50% -20%,var(--brand-soft),transparent 60%);pointer-events:none}.gstat .n{font-family:var(--font-d);font-weight:800;font-size:clamp(26px,5vw,36px);line-height:1;color:var(--brand);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:-.02em;position:relative}.gstat .l{font-size:12px;color:var(--subtle);margin-top:6px;position:relative;letter-spacing:.01em}@media (max-width:560px){.gstat .l{font-size:11px}}.grove-filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px;justify-content:center}.gchip{display:inline-flex;align-items:center;gap:7px;padding:7px 13px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--muted);font-size:13.5px;font-weight:600;font-family:inherit;cursor:pointer;transition:transform var(--dur) var(--ease),background var(--dur),color var(--dur),border-color var(--dur)}.gchip:hover{background:var(--soft);transform:translateY(-1px)}.gchip .em{font-size:15px;line-height:1}.gchip .ct{font-size:11px;font-weight:700;padding:1px 7px;border-radius:999px;background:var(--sunken);color:var(--subtle);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.gchip.on{background:var(--brand);border-color:var(--brand);color:#fff}.gchip.on .ct{background:rgba(255,255,255,.22);color:#fff}.grove-count{text-align:center;font-size:12.5px;color:var(--subtle);margin:14px 0 22px;min-height:18px}.grove{position:relative;padding-left:46px}.grove-track{bottom:8px;background:var(--line)}.grove-fill,.grove-track{position:absolute;left:15px;top:8px;width:2px;border-radius:2px}.grove-fill{height:calc(var(--grow, 1) * (100% - 16px));background:linear-gradient(var(--e-300),var(--brand));box-shadow:0 0 10px var(--brand-line);transition:height .35s var(--ease)}.grove-fill:after{content:"";position:absolute;left:50%;bottom:-4px;width:12px;height:12px;border-radius:50%;transform:translateX(-50%);background:radial-gradient(circle,var(--brand),transparent 68%);animation:gtip 2.4s ease-in-out infinite}@keyframes gtip{0%,to{opacity:.5;transform:translateX(-50%) scale(.85)}50%{opacity:1;transform:translateX(-50%) scale(1.25)}}.gmonth{position:relative;margin:4px 0 20px -46px;padding-left:46px;font-family:var(--font-d);font-weight:700;font-size:13px;letter-spacing:.04em;text-transform:uppercase;color:var(--subtle)}.gmonth:first-child{margin-top:0}.leaf{position:relative;padding:0 0 30px}.leaf-node{position:absolute;left:-46px;top:0;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-size:16px;line-height:1;background:var(--surface);border:2px solid var(--brand-line);box-shadow:0 0 0 4px var(--surface);z-index:2;transform:scale(.2);opacity:0}.leaf-node:before{content:"";position:absolute;inset:-2px;border-radius:50%;border:2px solid var(--brand);opacity:0}.leaf-card{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:15px 18px 16px;box-shadow:0 1px 2px rgba(5,46,34,.03);transform:translateY(16px);opacity:0;transition:transform .5s var(--ease),opacity .5s var(--ease),box-shadow var(--dur),border-color var(--dur)}.leaf-card:hover{box-shadow:0 10px 34px rgba(5,46,34,.1);border-color:var(--brand-line);transform:translateY(-2px)}[data-theme=dark] .leaf-card:hover{box-shadow:0 12px 40px rgba(0,0,0,.45)}.leaf-meta{display:flex;gap:9px;margin-bottom:8px;flex-wrap:wrap}.gtag,.leaf-meta{align-items:center}.gtag{display:inline-flex;gap:6px;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:700;letter-spacing:.01em;background:var(--app-soft,var(--brand-soft));color:var(--app,var(--brand));border:1px solid color-mix(in srgb,var(--app,var(--brand)) 22%,transparent)}.gtag .em{font-size:13px}.leaf-date{font-size:12.5px;color:var(--subtle);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;margin-left:auto}.leaf-card h3{font-family:var(--font-d);font-size:17.5px;font-weight:700;line-height:1.25;margin:0 0 11px;letter-spacing:-.01em;text-wrap:balance}.leaf-card ul{list-style:none;display:flex;flex-direction:column;gap:8px;margin:0;padding:0}.leaf-card li{position:relative;padding-left:20px;font-size:14.5px;color:var(--muted);line-height:1.55}.leaf-card li:before{content:"";position:absolute;left:2px;top:8px;width:7px;height:7px;border-radius:0 60% 60% 60%;transform:rotate(45deg) scale(0);background:var(--app,var(--brand));transform-origin:center}.leaf.in .leaf-node{opacity:1;transform:scale(1);transition:transform .5s cubic-bezier(.34,1.56,.64,1),opacity .35s ease}.leaf.in .leaf-node:before{animation:bloom .9s var(--ease) .1s}.leaf.in .leaf-card{opacity:1;transform:none}.leaf.in .leaf-card li:before{animation:sprout .5s var(--ease) forwards}.leaf.in .leaf-card li:nth-child(2):before{animation-delay:.09s}.leaf.in .leaf-card li:nth-child(3):before{animation-delay:.18s}.leaf.in .leaf-card li:nth-child(4):before{animation-delay:.27s}.leaf.in .leaf-card li:nth-child(5):before{animation-delay:.36s}.leaf.in .leaf-card li:nth-child(n+6):before{animation-delay:.45s}@keyframes bloom{0%{opacity:.8;transform:scale(1)}to{opacity:0;transform:scale(2.1)}}@keyframes sprout{to{transform:rotate(45deg) scale(1)}}.leaf.gone{display:none}@media (scripting:none){.leaf-card,.leaf-node{opacity:1;transform:none}.leaf-card li:before{transform:rotate(45deg) scale(1)}}[data-motion=off] .leaf-card,[data-motion=off] .leaf-node{opacity:1!important;transform:none!important}[data-motion=off] .leaf-card li:before{transform:rotate(45deg) scale(1)!important}[data-motion=off] .grove-fill:after{animation:none}@media (prefers-reduced-motion:reduce){.leaf-card,.leaf-node{opacity:1;transform:none}.leaf-card li:before{transform:rotate(45deg) scale(1)}}.app-hub{--app:var(--e-600);--app-soft:var(--brand-soft)}.app-life{--app:#0d9488;--app-soft:color-mix(in srgb,#0d9488 12%,transparent)}.app-ranobe{--app:#4d7c0f;--app-soft:color-mix(in srgb,#4d7c0f 12%,transparent)}.app-booking{--app:#0e7490;--app-soft:color-mix(in srgb,#0e7490 12%,transparent)}.app-botstudio{--app:#7e22ce;--app-soft:color-mix(in srgb,#7e22ce 12%,transparent)}[data-theme=dark] .app-life{--app:#2dd4bf}[data-theme=dark] .app-ranobe{--app:#a3e635}[data-theme=dark] .app-booking{--app:#38bdf8}[data-theme=dark] .app-botstudio{--app:#c084fc}@media (max-width:560px){.grove-stats{gap:8px}.gstat{padding:13px 8px;border-radius:13px}.grove{padding-left:40px}.leaf-node{left:-40px;width:30px;height:30px;font-size:14px}.grove-fill,.grove-track{left:13px}.gmonth{margin-left:-40px;padding-left:40px}}.orbit-hero{place-items:center;padding:30px 0 10px}.orbit,.orbit-hero{position:relative;display:grid}.orbit{width:min(560px,88vw);aspect-ratio:1;place-items:center;--ring1:30%;--ring2:44%;--ring3:50%}.orbit-ring{position:absolute;border:1px solid var(--line);border-radius:50%;inset:0;margin:auto;width:calc(var(--r) * 2);height:calc(var(--r) * 2)}.orbit-ring.r1{--r:var(--ring1)}.orbit-ring.r2{--r:var(--ring2)}.orbit-ring.r3{--r:var(--ring3)}.orbit-core{position:relative;z-index:3;width:118px;height:118px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;text-align:center;color:#fff;font-weight:800;line-height:1.02;font-family:var(--font-d);font-size:17px;letter-spacing:-.01em;background:radial-gradient(circle at 32% 28%,var(--e-400),var(--e-600) 62%,var(--e-700));box-shadow:0 0 0 8px var(--brand-soft),0 20px 50px rgba(5,150,105,.35);animation:corepulse 4s var(--ease) infinite}.orbit-core small{display:inline-flex;align-items:center;gap:4px;font-weight:600;font-size:9.5px;opacity:.9;letter-spacing:.1em;text-transform:uppercase}.orbit-core small:before{content:"";width:5px;height:5px;border-radius:50%;background:#eafff5;box-shadow:0 0 6px #fff}@keyframes corepulse{0%,to{box-shadow:0 0 0 8px var(--brand-soft),0 20px 50px rgba(5,150,105,.3)}50%{box-shadow:0 0 0 14px transparent,0 24px 60px rgba(5,150,105,.45)}}.orbit-spin{position:absolute;inset:0;margin:auto;width:calc(var(--r) * 2);height:calc(var(--r) * 2);animation:spin var(--dur-o,30s) linear infinite}.orbit-spin.rev{animation-direction:reverse}.orbit-dot{position:absolute;top:-20px;left:50%;transform:translateX(-50%);width:40px;height:40px;border-radius:13px;display:grid;place-items:center;background:var(--surface);border:1px solid var(--line);box-shadow:0 6px 18px rgba(5,46,34,.1);color:var(--brand-strong);line-height:0;animation:spin var(--dur-o,30s) linear infinite reverse}.orbit-spin.rev .orbit-dot{animation-direction:normal}[data-theme=dark] .orbit-dot{box-shadow:0 6px 20px rgba(0,0,0,.4)}@keyframes spin{to{transform:rotate(1turn)}}.plat-blocks{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:16px;gap:16px}@media (max-width:820px){.plat-blocks{grid-template-columns:repeat(2,1fr)}.orbit-ring.r3,.orbit-spin.s3{display:none}}@media (max-width:520px){.plat-blocks{grid-template-columns:1fr}}.pblock{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:22px 20px;overflow:hidden;transition:transform var(--dur) var(--ease),box-shadow var(--dur),border-color var(--dur)}.pblock:hover{transform:translateY(-3px);border-color:var(--brand-line);box-shadow:0 16px 40px rgba(5,46,34,.1)}[data-theme=dark] .pblock:hover{box-shadow:0 16px 44px rgba(0,0,0,.45)}.pblock:after{content:"";position:absolute;inset:0 0 auto 0;height:3px;background:linear-gradient(90deg,var(--e-400),var(--e-600));transform:scaleX(0);transform-origin:left;transition:transform .5s var(--ease)}.pblock:hover:after{transform:scaleX(1)}.pblock .pic{width:46px;height:46px;border-radius:13px;display:grid;place-items:center;font-size:20px;font-weight:800;color:#fff;background:linear-gradient(135deg,var(--e-400),var(--e-600));margin-bottom:14px;box-shadow:0 8px 20px rgba(5,150,105,.28)}.pblock h3{font-family:var(--font-d);font-size:17px;font-weight:700;margin:0 0 7px;letter-spacing:-.01em}.pblock p{font-size:14.5px;color:var(--muted);margin:0;line-height:1.55}.apps-count{display:inline-flex;gap:16px;margin:18px auto 0;flex-wrap:wrap;justify-content:center}.apps-count b{font-family:var(--font-d);color:var(--brand);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.appgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(236px,1fr));grid-gap:15px;gap:15px}.appcard{position:relative;display:flex;flex-direction:column;text-align:left;width:100%;background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:18px;overflow:hidden;font-family:inherit;color:inherit;cursor:pointer;isolation:isolate;transform:perspective(800px) rotateX(var(--ry,0deg)) rotateY(var(--rx,0deg));transition:transform .18s var(--ease),box-shadow var(--dur),border-color var(--dur);animation:cardin .45s var(--ease) both}.appcard:hover{border-color:color-mix(in srgb,var(--acc,var(--brand)) 40%,var(--line));box-shadow:0 18px 44px rgba(5,46,34,.13)}[data-theme=dark] .appcard:hover{box-shadow:0 18px 48px rgba(0,0,0,.5)}.appcard:focus-visible{outline:3px solid var(--e-400);outline-offset:2px}@keyframes cardin{0%{opacity:0;transform:translateY(14px)}to{opacity:1}}.appcard .glowlayer{position:absolute;inset:0;opacity:0;z-index:-1;transition:opacity var(--dur);pointer-events:none;background:radial-gradient(240px circle at var(--mx,50%) var(--my,50%),color-mix(in srgb,var(--acc,var(--brand)) 16%,transparent),transparent 60%)}.appcard:hover .glowlayer{opacity:1}.appcard .wm{position:absolute;right:-14px;bottom:-20px;line-height:0;opacity:.07;z-index:-1;color:var(--acc,var(--brand));transition:transform var(--dur) var(--ease),opacity var(--dur);pointer-events:none}.appcard:hover .wm{transform:rotate(-8deg) scale(1.08);opacity:.12}.appcard .ic{width:50px;height:50px;border-radius:15px;display:grid;place-items:center;line-height:1;margin-bottom:13px;color:var(--acc,var(--brand));background:color-mix(in srgb,var(--acc,var(--brand)) 12%,var(--sunken));border:1px solid color-mix(in srgb,var(--acc,var(--brand)) 22%,transparent);box-shadow:inset 0 1px 0 rgba(255,255,255,.06);transition:transform var(--dur) var(--ease)}.appcard:hover .ic{transform:translateY(-2px) scale(1.04)}.appcard h3{font-family:var(--font-d);font-size:16px;font-weight:700;margin:0 0 5px;display:flex;align-items:center;gap:7px;flex-wrap:wrap}.appcard p{font-size:13.5px;color:var(--muted);margin:0 0 14px;line-height:1.5;flex:1 1}.appcard-foot{display:flex;align-items:center;gap:8px;margin-top:auto}.catlabel{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:600;color:var(--subtle);text-transform:capitalize;letter-spacing:.01em}.catlabel:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--acc,var(--brand))}.appcard-foot .arrow{margin-left:auto;color:var(--acc,var(--brand));font-weight:700;transform:translateX(-4px);opacity:0;transition:all var(--dur) var(--ease)}.appcard:hover .appcard-foot .arrow{transform:none;opacity:1}.dot-live{width:7px;height:7px;border-radius:50%;background:var(--e-500);animation:livepulse 2.2s ease-out infinite}@keyframes livepulse{0%{box-shadow:0 0 0 0 rgba(16,185,129,.5)}70%,to{box-shadow:0 0 0 7px rgba(16,185,129,0)}}.tag.soon-pill{background:var(--sunken);color:var(--subtle)}.tag.live-pill,.tag.soon-pill{font-size:10px;font-weight:700;padding:2px 8px;border-radius:999px;text-transform:uppercase;letter-spacing:.04em}.tag.live-pill{background:var(--brand-soft);color:var(--brand-strong);display:inline-flex;align-items:center;gap:5px}.cat-life{--acc:#0d9488}.cat-work{--acc:#0e7490}.cat-create{--acc:#7e22ce}.cat-learn{--acc:#b45309}.cat-care{--acc:#be185d}[data-theme=dark] .cat-life{--acc:#2dd4bf}[data-theme=dark] .cat-work{--acc:#38bdf8}[data-theme=dark] .cat-create{--acc:#c084fc}[data-theme=dark] .cat-learn{--acc:#fbbf24}[data-theme=dark] .cat-care{--acc:#f472b6}.appmodal-ov{position:fixed;inset:0;z-index:90;background:rgba(4,17,11,.55);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:grid;place-items:center;padding:20px;animation:ovin .2s var(--ease)}@keyframes ovin{0%{opacity:0}}.appmodal{position:relative;width:min(440px,100%);background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:26px 26px 24px;box-shadow:0 30px 80px rgba(0,0,0,.4);overflow:hidden;animation:modin .3s cubic-bezier(.34,1.56,.64,1)}@keyframes modin{0%{opacity:0;transform:translateY(16px) scale(.96)}}.appmodal:before{content:"";position:absolute;inset:0 0 auto 0;height:90px;background:linear-gradient(var(--app-soft,var(--brand-soft)),transparent);opacity:.8;pointer-events:none}.appmodal-close{position:absolute;top:14px;right:14px;width:34px;height:34px;border-radius:10px;border:1px solid var(--line);background:var(--surface);color:var(--muted);cursor:pointer;display:grid;place-items:center;font-size:16px;z-index:2}.appmodal-close:hover{background:var(--soft);color:var(--ink)}.appmodal .m-ic{position:relative;width:64px;height:64px;border-radius:18px;display:grid;place-items:center;margin-bottom:14px;color:var(--acc,var(--brand));background:color-mix(in srgb,var(--acc,var(--brand)) 14%,var(--sunken));border:1px solid color-mix(in srgb,var(--acc,var(--brand)) 26%,transparent)}.appmodal h2{font-family:var(--font-d);font-size:23px;font-weight:800;letter-spacing:-.02em;margin:0 0 8px;gap:9px;flex-wrap:wrap}.appmodal .m-meta,.appmodal h2{display:flex;align-items:center}.appmodal .m-meta{gap:8px;margin-bottom:14px}.appmodal .m-desc{font-size:15px;color:var(--muted);line-height:1.6;margin:0 0 20px}.appmodal .m-go{justify-content:center;width:100%}.trail{position:relative;display:grid;grid-template-columns:repeat(4,1fr);grid-gap:16px;gap:16px;margin-top:8px}@media (max-width:900px){.trail{grid-template-columns:repeat(2,1fr)}}@media (max-width:520px){.trail{grid-template-columns:1fr}}.trail:before{content:"";position:absolute;left:0;right:0;top:26px;height:2px;background:repeating-linear-gradient(90deg,var(--brand-line) 0 8px,transparent 8px 16px);z-index:0}@media (max-width:900px){.trail:before{display:none}}.station{position:relative;z-index:1}.station .stnode{width:54px;height:54px;border-radius:16px;display:grid;place-items:center;margin:0 0 14px;font-size:22px;background:var(--surface);border:2px solid var(--brand-line);box-shadow:0 0 0 6px var(--surface);transition:transform var(--dur) var(--ease)}.station:first-child .stnode{background:var(--brand-soft);border-color:var(--brand);box-shadow:0 0 0 6px var(--surface),0 8px 24px rgba(5,150,105,.28)}.station .stlabel{font-family:var(--font-d);font-weight:800;font-size:15px;letter-spacing:.02em;text-transform:uppercase;margin-bottom:4px}.station:first-child .stlabel{color:var(--brand)}.station .stsub{font-size:11.5px;color:var(--subtle);margin-bottom:12px}.station ul{list-style:none;display:flex;flex-direction:column;gap:8px;margin:0;padding:0}.station li{background:var(--soft);border:1px solid var(--line);border-radius:11px;padding:9px 13px;font-size:14px;color:var(--ink);font-weight:500;position:relative;transition:transform var(--dur) var(--ease),border-color var(--dur),background var(--dur)}.station li:hover{transform:translateX(3px);border-color:var(--brand-line);background:var(--surface)}.station:first-child li:before{content:"";position:absolute;left:-1px;top:20%;bottom:20%;width:3px;border-radius:3px;background:var(--brand)}.vrow-bar{position:absolute;inset:0;border-radius:inherit;background:var(--brand-soft);transform-origin:left;transform:scaleX(var(--w,0));transition:transform .6s var(--ease);z-index:0}.tiers{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:18px;gap:18px;align-items:stretch}@media (max-width:860px){.tiers{grid-template-columns:1fr;max-width:440px;margin:0 auto}}.tier{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:26px 24px;display:flex;flex-direction:column;overflow:hidden;transition:transform var(--dur) var(--ease),box-shadow var(--dur)}.tier:hover{transform:translateY(-4px);box-shadow:0 22px 54px rgba(5,46,34,.12)}[data-theme=dark] .tier:hover{box-shadow:0 22px 60px rgba(0,0,0,.5)}.tier.pop{border-color:var(--brand);box-shadow:0 0 0 1px var(--brand),0 20px 50px rgba(5,150,105,.18)}.tier.pop:before{content:"";position:absolute;inset:0 0 auto 0;height:5px;background:linear-gradient(90deg,var(--e-300),var(--e-500),var(--e-600))}.tier-badge{position:absolute;top:16px;right:16px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--brand-strong);background:var(--brand-soft);padding:3px 10px;border-radius:999px}.tier .grow{font-size:30px;line-height:1;margin-bottom:12px;filter:drop-shadow(0 4px 8px rgba(5,150,105,.25))}.tier .tn{font-size:20px;letter-spacing:-.01em}.tier .amt,.tier .tn{font-family:var(--font-d);font-weight:800}.tier .amt{font-size:42px;letter-spacing:-.03em;color:var(--ink);margin-top:8px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1;transition:opacity .2s}.tier .amt.morph{opacity:0}.tier .per{font-size:13px;color:var(--subtle);margin-top:4px}.tier .pd{font-size:14px;color:var(--muted);margin:12px 0 16px;min-height:40px}.tier ul{list-style:none;display:flex;flex-direction:column;gap:10px;margin:0 0 20px;padding:0;flex:1 1}.tier li{display:flex;align-items:flex-start;gap:9px;font-size:14px;color:var(--ink)}.tier li svg{color:var(--brand);flex:none;margin-top:3px}.tier .btn{justify-content:center;width:100%}.bill2{display:inline-flex;align-items:center;gap:6px;background:var(--soft);border:1px solid var(--line);border-radius:999px;padding:5px;margin:20px auto 0}.bill2 button{border:0;background:transparent;font-family:inherit;font-size:14px;font-weight:600;color:var(--muted);padding:8px 18px;border-radius:999px;cursor:pointer;transition:all var(--dur)}.bill2 button.on{background:var(--brand);color:#fff}.bill2 .save{font-size:12px;font-weight:700;color:var(--brand-strong);padding:0 8px}.price-note-soon{display:inline-block;margin-top:8px;font-size:12.5px;color:var(--subtle)}@media (prefers-reduced-motion:reduce){.dot-live,.orbit-core,.orbit-dot,.orbit-spin{animation:none!important}.appcard{animation:none;transform:none}}[data-motion=off] .dot-live,[data-motion=off] .orbit-core,[data-motion=off] .orbit-dot,[data-motion=off] .orbit-spin{animation:none!important}[data-motion=off] .appcard{animation:none!important;transform:none!important}:root[data-palette=mono]{--e-50:#fafafa;--e-100:#f4f4f5;--e-200:#e4e4e7;--e-300:#d4d4d8;--e-400:#a1a1aa;--e-500:#52525b;--e-600:#27272a;--e-700:#18181b;--e-800:#0f0f11;--e-900:#09090b;--brand:#18181b;--brand-strong:#000;--brand-soft:#f4f4f5;--brand-line:#d4d4d8;--surface:#fff;--soft:#fafafa;--sunken:#f4f4f5;--ink:#0a0a0a;--muted:#3f3f46;--subtle:#52525b;--line:#e4e4e7}:root[data-palette=mono][data-theme=dark]{--e-50:#18181b;--e-100:#27272a;--e-200:#3f3f46;--e-300:#52525b;--e-400:#a1a1aa;--e-500:#d4d4d8;--e-600:#e4e4e7;--e-700:#f4f4f5;--e-800:#fafafa;--e-900:#fff;--brand:#fafafa;--brand-strong:#fff;--brand-soft:rgba(255,255,255,.1);--brand-line:rgba(255,255,255,.2);--surface:#0a0a0a;--soft:#111113;--sunken:#18181b;--ink:#fafafa;--muted:#d4d4d8;--subtle:#a1a1aa;--line:rgba(255,255,255,.14)}:root[data-palette=navy]{--e-50:#eff6ff;--e-100:#dbeafe;--e-200:#bfdbfe;--e-300:#93c5fd;--e-400:#60a5fa;--e-500:#3b82f6;--e-600:#2563eb;--e-700:#1d4ed8;--e-800:#1e40af;--e-900:#172554;--brand:#2563eb;--brand-strong:#1d4ed8;--brand-soft:#eff6ff;--brand-line:#bfdbfe;--surface:#fff;--soft:#f5f8ff;--sunken:#eef3fb;--ink:#0a1834;--muted:#2a3f66;--subtle:#3a4f78;--line:#d9e3f5}:root[data-palette=navy][data-theme=dark]{--e-50:#0a1122;--e-100:#132039;--e-200:#1e40af;--e-300:#2563eb;--e-400:#3b82f6;--e-500:#60a5fa;--e-600:#93c5fd;--e-700:#bfdbfe;--e-800:#dbeafe;--e-900:#eff6ff;--brand:#60a5fa;--brand-strong:#93c5fd;--brand-soft:rgba(59,130,246,.15);--brand-line:rgba(147,197,253,.24);--surface:#060c1a;--soft:#0a1122;--sunken:#0f172e;--ink:#eef3ff;--muted:#c3d3f0;--subtle:#93a7cc;--line:rgba(147,197,253,.2)}:root[data-palette=violet]{--e-50:#f5f3ff;--e-100:#ede9fe;--e-200:#ddd6fe;--e-300:#c4b5fd;--e-400:#a78bfa;--e-500:#8b5cf6;--e-600:#7c3aed;--e-700:#6d28d9;--e-800:#5b21b6;--e-900:#2e1065;--brand:#7c3aed;--brand-strong:#6d28d9;--brand-soft:#f5f3ff;--brand-line:#ddd6fe;--surface:#fff;--soft:#faf8ff;--sunken:#f3eefb;--ink:#1e1035;--muted:#43305f;--subtle:#533f70;--line:#e6ddf5}:root[data-palette=violet][data-theme=dark]{--e-50:#150c26;--e-100:#241246;--e-200:#5b21b6;--e-300:#6d28d9;--e-400:#8b5cf6;--e-500:#a78bfa;--e-600:#c4b5fd;--e-700:#ddd6fe;--e-800:#ede9fe;--e-900:#f5f3ff;--brand:#a78bfa;--brand-strong:#c4b5fd;--brand-soft:rgba(139,92,246,.16);--brand-line:rgba(196,181,253,.24);--surface:#0d0818;--soft:#150c26;--sunken:#1c1030;--ink:#f3ecff;--muted:#d6c7f0;--subtle:#ab93cc;--line:rgba(196,181,253,.2)}:root[data-palette=sakura]{--e-50:#fdf2f8;--e-100:#fce7f3;--e-200:#fbcfe8;--e-300:#f9a8d4;--e-400:#f472b6;--e-500:#ec4899;--e-600:#db2777;--e-700:#be185d;--e-800:#9d174d;--e-900:#500724;--brand:#db2777;--brand-strong:#be185d;--brand-soft:#fdf2f8;--brand-line:#fbcfe8;--surface:#fffafc;--soft:#fdf4f9;--sunken:#fbeef5;--ink:#3d0a25;--muted:#6b2b48;--subtle:#7d3a58;--line:#f5dde9}:root[data-palette=sakura][data-theme=dark]{--e-50:#200a17;--e-100:#3a0f27;--e-200:#9d174d;--e-300:#be185d;--e-400:#ec4899;--e-500:#f472b6;--e-600:#f9a8d4;--e-700:#fbcfe8;--e-800:#fce7f3;--e-900:#fdf2f8;--brand:#f472b6;--brand-strong:#f9a8d4;--brand-soft:rgba(236,72,153,.16);--brand-line:rgba(249,168,212,.24);--surface:#170610;--soft:#200a17;--sunken:#2a0e1e;--ink:#ffeaf4;--muted:#f0c9dd;--subtle:#cc93ac;--line:rgba(249,168,212,.2)}.theme-pop{width:224px;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:16px;box-shadow:0 24px 60px rgba(0,0,0,.2);animation:pop .2s var(--ease)}.theme-pop .a11y-row{margin-bottom:14px}.theme-pop .grp{display:inline-flex;gap:6px}.theme-pop .grp button{font-family:inherit;font-size:13px;font-weight:600;padding:6px 13px;border-radius:9px;border:1px solid var(--line);background:var(--soft);color:var(--muted);cursor:pointer}.theme-pop .grp button.on{background:var(--brand);border-color:var(--brand);color:#fff}.tp-pal{display:grid;grid-template-columns:repeat(5,1fr);grid-gap:9px;gap:9px}.tp-pal .pal-sw{width:100%;height:34px}.pal-grp{display:flex;gap:8px;flex-wrap:wrap}.pal-sw{width:30px;height:30px;border-radius:9px;cursor:pointer;border:2px solid var(--line);padding:0;position:relative;transition:transform var(--dur) var(--ease)}.pal-sw:hover{transform:translateY(-2px)}.pal-sw.on{border-color:var(--ink);box-shadow:0 0 0 2px var(--surface),0 0 0 4px var(--ink)}.pal-sw[data-p=green]{background:linear-gradient(135deg,#34d399,#059669)}.pal-sw[data-p=mono]{background:linear-gradient(135deg,#fff 0 50%,#18181b 50% 100%)}.pal-sw[data-p=navy]{background:linear-gradient(135deg,#60a5fa,#1d4ed8)}.pal-sw[data-p=violet]{background:linear-gradient(135deg,#a78bfa,#6d28d9)}.pal-sw[data-p=sakura]{background:linear-gradient(135deg,#f9a8d4,#db2777)}.rn-shell{display:grid;grid-template-columns:248px 1fr;min-height:100dvh}.rn-side{position:-webkit-sticky;position:sticky;top:0;align-self:start;height:100dvh;display:flex;flex-direction:column;gap:6px;padding:18px 14px;background:var(--soft);border-right:1px solid var(--line);overflow-y:auto}.rn-side .rn-brand{display:flex;align-items:center;gap:10px;font-family:var(--font-d,var(--font-display));font-weight:800;font-size:18px;padding:6px 8px 14px}.rn-side .rn-brand svg{width:28px;height:28px;color:var(--brand)}.rn-side .rn-brand b{color:var(--brand)}.rn-nav{display:flex;flex-direction:column;align-items:stretch;gap:2px;height:auto}.rn-nav .rn-soft,.rn-nav a{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:11px;color:var(--muted);font-size:14.5px;font-weight:500;transition:background var(--dur),color var(--dur)}.rn-nav a:hover{background:var(--surface);color:var(--brand)}.rn-nav a.on{background:var(--brand-soft);color:var(--brand-strong);font-weight:600}.rn-nav .rn-soft{color:var(--subtle);cursor:default}.rn-nav .rn-ico{width:18px;text-align:center;flex-shrink:0}.rn-nav .rn-badge{margin-left:auto;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:2px 7px;border-radius:999px;background:var(--sunken);color:var(--subtle)}.rn-side .rn-spacer{flex:1 1}.rn-drawer-btn,.rn-drawer-scrim{display:none}.rn-side .rn-back{display:flex;align-items:center;gap:8px;padding:9px 12px;border-radius:11px;font-size:13.5px;color:var(--subtle)}.rn-side .rn-back:hover{color:var(--brand);background:var(--surface)}.rn-main{min-width:0;display:flex;flex-direction:column}.rn-topbar{display:flex;align-items:center;gap:12px;padding:14px 26px;border-bottom:1px solid var(--line);position:-webkit-sticky;position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--surface) 82%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.rn-topbar h1{font-family:var(--font-d,var(--font-display));font-size:19px;font-weight:700;letter-spacing:-.01em}.rn-topbar .sp{flex:1 1}.rn-content{padding:26px;max-width:1100px;width:100%}@media (max-width:860px){.rn-shell{grid-template-columns:1fr}.rn-side{position:static;height:auto;flex-direction:row;flex-wrap:wrap;align-items:center;border-right:none;border-bottom:1px solid var(--line)}.rn-side .rn-brand{padding:4px 6px}.rn-drawer-btn{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;margin-left:auto;border:1px solid var(--line);border-radius:11px;background:var(--surface);color:var(--ink);font-size:16px}.rn-nav{display:none;flex-direction:column;width:100%;max-height:min(70dvh,520px);overflow-y:auto;padding-top:8px;margin-top:6px;border-top:1px solid var(--line)}body.rn-drawer-open .rn-nav{display:flex}.rn-drawer-scrim{position:fixed;inset:0;z-index:5;background:rgba(0,0,0,.28)}.rn-side{position:relative;z-index:10}.rn-side .rn-spacer{display:none}.rn-content{padding:18px}.rn-meta,.rn-stat-row{flex-wrap:wrap;row-gap:4px}.rn-stat-row>*{min-width:0}}.rn-eyebrow{color:var(--brand);font-weight:600;letter-spacing:.12em;text-transform:uppercase;font-size:12px}.rn-h2{font-family:var(--font-d,var(--font-display));font-weight:800;font-size:26px;letter-spacing:-.02em;margin:4px 0 2px}.rn-sub{color:var(--muted);font-size:15px}.rn-grid{display:grid;grid-gap:16px;gap:16px;margin-top:20px}.rn-grid.cols-3{grid-template-columns:repeat(3,1fr)}.rn-grid.cols-4{grid-template-columns:repeat(4,1fr)}@media (max-width:900px){.rn-grid.cols-3,.rn-grid.cols-4{grid-template-columns:1fr 1fr}}@media (max-width:560px){.rn-grid.cols-3,.rn-grid.cols-4{grid-template-columns:1fr}}.rn-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:20px;transition:border-color var(--dur),box-shadow var(--dur),transform var(--dur)}.rn-card.link:hover{border-color:var(--brand-line);box-shadow:0 14px 34px rgba(5,150,105,.12);transform:translateY(-3px)}.rn-stat .n{font-family:var(--font-d,var(--font-display));font-weight:800;font-size:32px;color:var(--brand);letter-spacing:-.02em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.rn-stat .k{font-size:13.5px;color:var(--muted);margin-top:2px}.rn-proj-title{font-family:var(--font-d,var(--font-display));font-weight:700;font-size:17px;margin-bottom:4px}.rn-share-wrap{display:flex;align-items:flex-start;gap:10px}.rn-share-row{display:flex;align-items:center;gap:10px;flex:1 1;min-width:0;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--sunken)}.rn-share-input{width:100%;margin-top:4px;padding:6px 9px;border:1px solid var(--line);border-radius:8px;background:var(--soft);color:var(--subtle);font-family:var(--font-mono,ui-monospace,monospace);font-size:12.5px}.f-watermark{font-size:clamp(34px,13vw,150px)}.rn-cover{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:12px;display:block;background:var(--sunken);box-shadow:0 2px 10px rgba(0,0,0,.08)}.rn-report{margin-top:26px;border-top:1px solid var(--line);padding-top:14px}.rn-report>summary{cursor:pointer;font-size:13px;color:var(--muted);list-style:none}.rn-report>summary::-webkit-details-marker{display:none}.rn-report>summary:hover{color:var(--ink)}.rn-cover-hero{width:190px;max-width:46%;margin:0 auto 20px;box-shadow:0 10px 30px rgba(0,0,0,.18)}.rn-card-cov{display:flex;flex-direction:column}.rn-card-cov .rn-proj-title{margin-top:12px}.rn-bell{position:relative;display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:10px;color:var(--ink);border:1px solid var(--line);background:var(--surface)}.rn-bell:hover{background:var(--sunken)}.rn-bell-badge{position:absolute;top:-5px;right:-5px;min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:var(--brand);color:#fff;font-size:10.5px;font-weight:700;display:grid;place-items:center;line-height:1}.rn-comment-reply{margin-top:10px;margin-left:22px;border-left:2px solid var(--brand-line);background:var(--sunken)}.rn-reply-box{margin-top:8px}.rn-reply-box>summary{cursor:pointer;font-size:12.5px;color:var(--muted);list-style:none}.rn-reply-box>summary::-webkit-details-marker{display:none}.rn-reply-box>summary:hover{color:var(--brand)}.rn-notif{display:flex;align-items:flex-start;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.rn-notif.unread{border-color:var(--brand-line);background:var(--brand-soft)}.rn-notif-ico{flex:none;width:30px;height:30px;border-radius:999px;display:grid;place-items:center;background:var(--sunken);color:var(--brand-strong);font-size:14px}.rn-author-head{display:flex;align-items:flex-start;gap:18px;flex-wrap:wrap}.rn-avatar{flex:none;width:64px;height:64px;border-radius:999px;display:grid;place-items:center;font-family:var(--font-d,var(--font-display));font-weight:700;font-size:27px;color:var(--brand-strong);background:var(--brand-soft);border:1px solid var(--brand-line)}.rn-meta{font-size:13px;color:var(--subtle);display:flex;gap:8px;flex-wrap:wrap}.rn-meta,.rn-pill{align-items:center}.rn-pill{display:inline-flex;gap:6px;font-size:11.5px;font-weight:600;padding:3px 9px;border-radius:999px;background:var(--brand-soft);color:var(--brand-strong);border:1px solid var(--brand-line)}.rn-pill.neutral{background:var(--sunken);color:var(--subtle);border-color:var(--line)}.rn-quick{display:flex;gap:10px;flex-wrap:wrap;margin-top:6px}.rn-empty{text-align:center;padding:48px 24px;border:1px dashed var(--brand-line);border-radius:var(--radius);background:var(--soft)}.rn-empty h3{font-family:var(--font-d,var(--font-display));font-size:18px;font-weight:700;margin-bottom:6px}.rn-empty p{color:var(--muted);font-size:14.5px;margin-bottom:18px}.rn-progress{height:9px;border-radius:999px;background:var(--sunken);overflow:hidden}.rn-progress>span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--e-400),var(--e-600));transition:width var(--dur)}.rn-heatmap-wrap{overflow-x:auto;padding:10px 0 4px}.rn-heatmap{display:flex;gap:3px;width:max-content}.rn-hm-col{display:flex;flex-direction:column;gap:3px}.rn-hm-cell{width:13px;height:13px;border-radius:3px;background:var(--sunken)}.rn-hm-cell[data-l="1"]{background:var(--e-200)}.rn-hm-cell[data-l="2"]{background:var(--e-400)}.rn-hm-cell[data-l="3"]{background:var(--e-500)}.rn-hm-cell[data-l="4"]{background:var(--e-700)}[data-theme=dark] .rn-hm-cell{background:rgba(255,255,255,.06)}[data-theme=dark] .rn-hm-cell[data-l="1"]{background:rgba(52,211,153,.28)}[data-theme=dark] .rn-hm-cell[data-l="2"]{background:rgba(52,211,153,.5)}[data-theme=dark] .rn-hm-cell[data-l="3"]{background:rgba(16,185,129,.72)}[data-theme=dark] .rn-hm-cell[data-l="4"]{background:var(--e-400)}.rn-char-head{display:flex;gap:12px;align-items:center}.rn-char-avatar{width:42px;height:42px;border-radius:12px;flex-shrink:0;background:linear-gradient(135deg,var(--e-300),var(--e-600));color:#fff;display:grid;place-items:center;font-family:var(--font-d,var(--font-display));font-weight:700;font-size:18px}.rn-form{gap:14px;max-width:560px}.rn-field,.rn-form{display:flex;flex-direction:column}.rn-field{gap:6px}.rn-field label{font-size:13.5px;font-weight:500;color:var(--muted)}.rn-field input,.rn-field select,.rn-field textarea{padding:11px 13px;border-radius:12px;border:1px solid var(--line);background:var(--soft);color:var(--ink);font-family:inherit;font-size:15px;transition:border-color var(--dur),box-shadow var(--dur)}.rn-field textarea{min-height:96px;resize:vertical}.rn-field input:focus,.rn-field select:focus,.rn-field textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 4px var(--brand-soft);background:var(--surface)}.rn-vol-select{padding:6px 8px;border-radius:9px;border:1px solid var(--line);background:var(--soft);color:var(--ink);font-family:inherit;font-size:13px;max-width:150px}.rn-vol-select:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.rn-list{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--surface)}.rn-vol-head{display:flex;align-items:baseline;gap:10px;margin:22px 0 0;font-size:15px;font-weight:600}.rn-vol-head .rn-sub{font-size:12.5px;font-weight:400}.rn-row{display:flex;align-items:center;gap:12px;padding:14px 16px}.rn-row+.rn-row{border-top:1px solid var(--line)}.rn-row:hover{background:var(--soft)}.rn-row .rn-num{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--subtle);font-size:13px;width:28px}.rn-row .rn-row-title{font-weight:500}.rn-row .sp{flex:1 1}.rn-sceneboard{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:20px}.rn-scene-card{position:relative;min-width:150px;max-width:210px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--surface);cursor:-webkit-grab;cursor:grab;transition:border-color var(--dur),box-shadow var(--dur),transform var(--dur)}.rn-scene-card:hover{border-color:var(--brand-line)}.rn-scene-card.on{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.rn-scene-card.dragging{opacity:.5}.rn-scene-card:active{cursor:-webkit-grabbing;cursor:grabbing}.rn-scene-num{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--brand);font-weight:700}.rn-scene-title{font-weight:600;font-size:14px;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:18px}.rn-scene-meta{font-size:12px;color:var(--subtle);margin-top:4px}.rn-scene-del{position:absolute;top:6px;right:6px}.rn-scene-del button{width:22px;height:22px;border-radius:7px;border:none;background:transparent;color:var(--subtle);cursor:pointer;font-size:16px;line-height:1}.rn-scene-del button:hover{background:var(--sunken);color:#dc2626}.rn-scene-addbtn{min-width:150px;height:100%;min-height:74px;padding:12px 14px;border:1px dashed var(--brand-line);border-radius:12px;background:var(--soft);color:var(--brand-strong);cursor:pointer;font-family:inherit;font-size:14px;font-weight:600;display:flex;align-items:center;gap:6px;justify-content:center}.rn-scene-addbtn:hover{background:var(--brand-soft)}.rn-editor-wrap{max-width:820px;margin:0 auto}.rn-editor-bar{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:8px 10px;border:1px solid var(--line);border-radius:12px;background:var(--soft);position:-webkit-sticky;position:sticky;top:70px;z-index:15}.rn-editor-bar button{min-width:34px;height:34px;padding:0 9px;border-radius:9px;border:1px solid transparent;background:transparent;color:var(--muted);font-family:inherit;font-size:14px;font-weight:600;cursor:pointer;transition:background var(--dur),color var(--dur)}.rn-editor-bar button:hover{background:var(--surface);color:var(--brand)}.rn-editor-bar button.on{background:var(--brand-soft);color:var(--brand-strong)}.rn-editor-bar .sp{flex:1 1}.rn-save-state{font-size:13px;color:var(--subtle);display:inline-flex;align-items:center;gap:7px}.rn-save-state .dot{width:8px;height:8px;border-radius:50%;background:var(--subtle)}.rn-save-state.saved .dot{background:var(--brand)}.rn-save-state.saving .dot{background:#d97706;animation:pulse 1.4s infinite}.rn-save-state.failed .dot{background:#dc2626}.rn-prose{margin-top:18px;min-height:60dvh;font-size:18px;line-height:1.8;color:var(--ink)}.rn-prose:focus{outline:none}.rn-prose .ProseMirror{outline:none;min-height:60dvh}.rn-prose p{margin:0 0 1em}.rn-prose h1,.rn-prose h2,.rn-prose h3{font-family:var(--font-d,var(--font-display));font-weight:700;letter-spacing:-.01em;margin:1.2em 0 .5em;line-height:1.2}.rn-prose h1{font-size:1.7em}.rn-prose h2{font-size:1.4em}.rn-prose h3{font-size:1.2em}.rn-prose blockquote{border-left:3px solid var(--brand-line);padding-left:16px;color:var(--muted);font-style:italic;margin:0 0 1em}.rn-prose ol,.rn-prose ul{padding-left:1.4em;margin:0 0 1em}.rn-prose code{background:var(--sunken);padding:2px 6px;border-radius:6px;font-size:.9em}.rn-prose hr{border:none;border-top:1px solid var(--line);margin:2em auto;width:40%}.rn-prose .ProseMirror p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;color:var(--subtle);pointer-events:none;height:0}.rn-findbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:8px;padding:8px 10px;border:1px solid var(--line);border-radius:12px;background:var(--soft)}.rn-findbar input{padding:7px 10px;border-radius:9px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font-family:inherit;font-size:14px;min-width:140px}.rn-findbar input:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.rn-findbar>button:not(.btn){min-width:32px;height:32px;padding:0 8px;border-radius:8px;border:1px solid transparent;background:transparent;color:var(--muted);font-family:inherit;font-size:14px;cursor:pointer}.rn-findbar>button:not(.btn):hover{background:var(--surface);color:var(--brand)}.rn-findbar>button.on{background:var(--brand-soft);color:var(--brand-strong)}.rn-findbar .rn-find-count{font-size:13px;color:var(--subtle);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;min-width:46px;text-align:center}.rn-diff{font-size:17px;line-height:1.8;color:var(--ink);white-space:pre-wrap;border:1px solid var(--line);border-radius:var(--radius);padding:22px;background:var(--surface)}.rn-diff ins{background:rgba(16,185,129,.18);color:var(--brand-strong);text-decoration:none;border-radius:3px}.rn-diff del{background:rgba(220,38,38,.14);color:#b91c1c;border-radius:3px}.rn-reader-shell{max-width:720px;margin:0 auto;padding:40px 24px 96px}.rn-reader-shell .rn-reader-head{text-align:center;margin-bottom:32px}.rn-reader-shell h1{font-family:var(--font-d,var(--font-display));font-weight:800;font-size:clamp(28px,5vw,40px);letter-spacing:-.02em;line-height:1.1}.rn-reader-body{font-size:19px;line-height:1.85;color:var(--ink)}.rn-reader-body p{margin:0 0 1.1em}.rn-reader-body h1,.rn-reader-body h2,.rn-reader-body h3{font-family:var(--font-d,var(--font-display));font-weight:700;margin:1.3em 0 .5em}.rn-reader-body blockquote{border-left:3px solid var(--brand-line);padding-left:18px;color:var(--muted);font-style:italic}.rn-reader-nav{display:flex;justify-content:space-between;gap:12px;margin-top:48px}.rn-reader-theme{border-radius:var(--radius)}.rt-sepia{background:#f4ecd8;color:#433422}.rt-dark,.rt-sepia{padding:4px 22px 40px}.rt-dark{background:#14181d;color:#d6dde4}.rt-dark .rn-reader-body,.rt-sepia .rn-reader-body{color:inherit}.rt-dark .rn-reader-body a,.rt-sepia .rn-reader-body a{color:inherit;text-decoration:underline}.rn-reader-bar{display:flex;gap:12px;flex-wrap:wrap;align-items:center;justify-content:center;padding:9px 10px;margin-bottom:22px;border:1px solid var(--line);border-radius:12px;background:var(--soft);position:-webkit-sticky;position:sticky;top:66px;z-index:15;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.rt-sepia .rn-reader-bar{background:#eaddc4;border-color:#d8c9a8}.rt-dark .rn-reader-bar{background:#1c222a;border-color:#2b333d}.rn-reader-bar .grp{display:inline-flex;gap:4px}.rn-reader-bar button{padding:6px 11px;border-radius:8px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font-family:inherit;font-size:13px;cursor:pointer;transition:background var(--dur)}.rn-reader-bar button.on{background:linear-gradient(135deg,var(--e-400),var(--e-600));color:#fff;border-color:transparent}.rt-sepia .rn-reader-bar button{background:#f4ecd8;color:#433422;border-color:#d8c9a8}.rt-dark .rn-reader-bar button{background:#14181d;color:#d6dde4;border-color:#2b333d}.rt-dark .rn-reader-bar button.on,.rt-sepia .rn-reader-bar button.on{color:#fff}.rn-reader-progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:60;pointer-events:none}.rn-reader-progress>span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--e-400),var(--e-600))}.rn-social{max-width:680px;margin:44px auto 0;border-top:1px solid var(--line);padding-top:26px}.rn-comment{border:1px solid var(--line);border-radius:12px;padding:14px 16px;background:var(--surface)}.rn-comment-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.btn.on{background:var(--brand-soft);color:var(--brand-strong);border-color:var(--brand-line)}.rn-pub-header{display:flex;align-items:center;gap:16px;padding:14px 24px;border-bottom:1px solid var(--line);position:-webkit-sticky;position:sticky;top:0;z-index:30;background:color-mix(in srgb,var(--surface) 82%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.rn-pub-header .rn-brand{display:flex;align-items:center;gap:10px;font-family:var(--font-d,var(--font-display));font-weight:800;font-size:19px}.rn-pub-header .rn-brand svg{width:28px;height:28px;color:var(--brand)}.rn-pub-header .rn-brand b{color:var(--brand)}.rn-pub-header .sp{flex:1 1}.rn-hwrap{width:100%;padding:0 22px}.rn-studio{min-height:calc(100dvh - 66px)}.rn-studio .rn-topbar{top:66px}@media (min-width:861px){.rn-studio .rn-side{top:66px;height:calc(100dvh - 66px)}}.rn-focus{position:fixed;inset:0;z-index:60;background:var(--surface);overflow-y:auto;padding:40px 24px 40vh}.rn-focus .rn-editor-wrap{max-width:720px;margin:0 auto}.rn-focus .rn-editor-bar{top:0}.rn-focus .rn-prose{font-size:19px}.rn-search-form{display:flex;gap:10px;max-width:620px;margin-top:12px}.rn-search-form input{flex:1 1;padding:12px 15px;border-radius:12px;border:1px solid var(--line);background:var(--soft);color:var(--ink);font-family:inherit;font-size:15px;transition:border-color var(--dur),box-shadow var(--dur)}.rn-search-form input:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 4px var(--brand-soft);background:var(--surface)}.rn-search-group{margin-top:26px}.rn-search-group>.rn-eyebrow{display:block;margin-bottom:10px}mark{background:var(--brand-soft);color:var(--brand-strong);border-radius:3px;padding:0 2px}.rn-hero{text-align:center;padding:72px 24px 32px}.rn-hero h1{font-family:var(--font-d,var(--font-display));font-weight:800;font-size:clamp(36px,6vw,64px);letter-spacing:-.03em;line-height:1.04}.rn-hero h1 .g{background:linear-gradient(100deg,var(--e-500),var(--e-700),var(--e-400));-webkit-background-clip:text;background-clip:text;color:transparent}.rn-hero p{color:var(--muted);font-size:18px;max-width:560px;margin:18px auto 26px}