.ph-home{--ph-accent:#6558bb;--ph-soft:#ece7f5;--ph-shadow:0 16px 48px #302d2412;--ph-radius:12px;background:var(--bg)}:root[data-theme=dark] .ph-home{--ph-accent:#b8acf1;--ph-soft:#322c44;--ph-shadow:0 16px 48px #08070538}.ph-home main{overflow:clip}.ph-home h1,.ph-home h2,.ph-home h3,.ph-home p{margin:0}.ph-home h1,.ph-home h2,.ph-home h3{text-wrap:balance;letter-spacing:-.035em}.ph-home em{color:var(--muted);font-style:normal}.ph-home button{cursor:pointer}.ph-home button,.ph-home a{-webkit-tap-highlight-color:transparent}.ph-home :focus-visible{outline:2px solid var(--ph-accent);outline-offset:5px;border-radius:4px}.ph-home ::selection{background:var(--ph-soft);color:var(--ink)}.ph-home{scrollbar-color:var(--muted) var(--bg)}.ph-home section[id]{scroll-margin-top:105px}.ph-container{width:min(1280px,100% - 96px);margin-inline:auto}.ph-icon{vertical-align:middle;flex-shrink:0;width:20px;height:20px;display:inline-block}.ph-home .ph-button{background:var(--ink);min-height:52px;color:var(--bg);border-radius:999px;justify-content:center;align-items:center;gap:28px;padding:14px 18px 14px 24px;font-size:15px;font-weight:550;transition:background .2s,transform .2s,box-shadow .2s;display:inline-flex;box-shadow:inset 0 1px #ffffff26,0 8px 24px #1717150f}.ph-home button.ph-button{border:0}.ph-home .ph-button:hover{background:var(--ph-accent);color:var(--bg)}.ph-hero{isolation:isolate;grid-template-columns:.88fr 1.12fr;align-items:center;gap:5%;padding-block:88px 80px;display:grid;position:relative}.ph-dot-field{z-index:-1;pointer-events:none;background-image:radial-gradient(var(--line) 1px,transparent 1.2px);transform:translateY(var(--ph-dot-shift,0px));background-size:25px 25px;position:absolute;inset:-100px -8% 0;-webkit-mask-image:radial-gradient(at 52% 45%,#000 12%,#0000 68%);mask-image:radial-gradient(at 52% 45%,#000 12%,#0000 68%)}.ph-hero h1{letter-spacing:-.05em;font-size:clamp(54px,6.1vw,88px);font-weight:450;line-height:1.04}.ph-hero h1 em{color:var(--ph-accent)}html[lang=zh-CN] .ph-hero h1{font-size:clamp(38px,4.7vw,68px);line-height:1.2}.ph-hero-copy>p{max-width:430px;color:var(--muted);margin:27px 0 30px;font-size:17px;line-height:1.75}.ph-download-meta{color:var(--muted);font-variant-numeric:tabular-nums;margin-top:15px;font-size:12px;display:block}.ph-hero-note{color:var(--muted);max-width:340px;margin-top:27px;font-size:12px;line-height:1.7;display:block}.ph-demo-wrap{min-width:0;padding-top:8px}.ph-demo-controls{align-items:center;gap:3px;margin-bottom:17px;display:flex}.ph-demo-controls button{min-height:44px;color:var(--muted);background:0 0;border:0;border-radius:6px;padding:10px 16px;font-size:13px}.ph-demo-controls button[aria-pressed=true]{background:var(--ph-soft);color:var(--ph-accent);font-weight:600}.ph-demo-controls>span{color:var(--muted);align-items:center;gap:8px;margin-left:auto;font-size:12px;display:flex}.ph-demo-controls>span .ph-icon{width:16px;transform:rotate(45deg)}.ph-workbench{border-radius:var(--ph-radius);background:var(--paper);box-shadow:var(--ph-shadow);overflow:hidden}.ph-window-bar{border-bottom:1px solid var(--line);align-items:center;gap:12px;height:52px;padding:0 14px;display:flex}.ph-window-dots{gap:5px;display:flex}.ph-window-dots i{background:#cfc9bb;border-radius:50%;width:7px;height:7px}.ph-window-dots i:first-child{background:#d39782}.ph-window-dots i:nth-child(2){background:#d6b675}.ph-window-dots i:nth-child(3){background:#95aa8a}.ph-window-bar>span:nth-child(2){color:var(--muted);align-items:center;gap:5px;margin:auto;font-size:11px;display:flex}.ph-window-bar>span .ph-icon{width:15px}.ph-window-bar button{min-height:44px;color:var(--muted);background:0 0;border:0;align-items:center;gap:4px;font-size:11px;display:flex}.ph-window-bar button .ph-icon{width:14px}.ph-board{isolation:isolate;background-color:var(--bg);background-image:radial-gradient(var(--line) 1px,transparent 1px);background-size:22px 22px;height:480px;position:relative;overflow:hidden}.ph-example-card{z-index:2;background:var(--card);border-radius:10px;width:42%;height:158px;position:absolute;box-shadow:0 6px 20px #2722190d}.ph-example-card:focus-within{z-index:5}.ph-card-0{color:#332e23;background:#eee9dc}.ph-card-1{color:#342c49;background:#ece7f3}:root[data-theme=dark] .ph-card-0{color:#eee9dc;background:#3d372c}:root[data-theme=dark] .ph-card-1{color:#ece7f3;background:#3a324c}.ph-grip{touch-action:none;background:0 0;border:0;place-items:center;width:100%;height:28px;display:grid;cursor:grab!important}.ph-grip:active{cursor:grabbing!important}.ph-grip span{opacity:.2;background:currentColor;border-radius:4px;width:24px;height:3px}.ph-card-content{text-align:left;background:0 0;border:0;border-radius:0 0 10px 10px;flex-direction:column;gap:6px;width:100%;height:calc(100% - 28px);padding:0 16px 12px;display:flex}.ph-filetype{letter-spacing:.09em;opacity:.65;font-size:8px}.ph-card-content strong{letter-spacing:-.025em;font-size:15px;font-weight:600;line-height:1.3}.ph-card-snippet{opacity:.78;font-size:11px;line-height:1.45}.ph-card-footer{opacity:.65;justify-content:space-between;align-items:center;width:100%;margin-top:auto;font-size:9px;display:flex}.ph-card-footer .ph-icon{width:13px;height:13px}.ph-card-content:hover .ph-card-footer{opacity:1}.ph-formula{letter-spacing:.03em;margin:5px 0;font-family:Georgia,serif;font-size:29px}.ph-connections{z-index:1;stroke:var(--ph-accent);stroke-width:1.5px;position:absolute;inset:0}.ph-connections line{stroke-dasharray:1000;animation:.65s ease-out ph-connect}@keyframes ph-connect{0%{stroke-dashoffset:1000px}to{stroke-dashoffset:0}}.ph-board-bottom{min-height:48px;color:var(--muted);justify-content:space-between;align-items:center;gap:10px;padding:0 12px 0 18px;font-size:10px;display:flex}.ph-board-bottom button{background:0 0;border:0;flex-shrink:0;place-items:center;width:44px;height:44px;display:grid}.ph-demo-wrap .ph-demo-caption{color:var(--muted);text-align:right;margin:14px 0 0;font-size:10px;line-height:1.6}.ph-captured{z-index:7;background:var(--card);width:76%;box-shadow:var(--ph-shadow);border-radius:10px;grid-template-columns:25px 1fr;gap:7px;padding:20px;display:grid;position:absolute;top:40%;left:12%}.ph-captured strong{font-size:14px}.ph-captured span{color:var(--muted);grid-column:2;font-size:12px}.ph-working-window{z-index:10;background:var(--card);box-shadow:var(--ph-shadow);border-radius:10px;position:absolute;inset:20px;overflow:auto}.ph-working-bar{min-height:48px;color:var(--muted);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding-left:20px;font-size:11px;display:flex}.ph-working-bar button{background:0 0;border:0;width:48px;height:48px}.ph-working-body{padding:26px}.ph-working-body h3{font-size:26px}.ph-working-body p{color:var(--muted);margin-top:18px;font-size:14px;line-height:1.7}.ph-working-body hr{border:0;border-top:1px solid var(--line);margin-top:25px}.ph-context{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:12%;padding-block:58px 76px;display:grid}.ph-home h2{letter-spacing:-.04em;font-size:clamp(30px,3.5vw,46px);font-weight:450;line-height:1.16}.ph-context h2{font-size:32px}.ph-context p,.ph-faq>div>p,.ph-founder p:not(.ph-founder-signature){color:var(--muted);font-size:16px;line-height:1.8}.ph-use-cases{color:var(--muted);flex-wrap:wrap;gap:8px 20px;margin-top:21px;font-size:11px;display:flex}.ph-use-cases span{border-bottom:1px solid var(--line);padding-bottom:5px}.ph-ink-band{color:#f4f1e9;background:#292a26}.ph-research{grid-template-columns:1fr 1fr;align-items:center;gap:10%;padding-block:90px;display:grid}.ph-research-copy>p{color:#c4c4b8;margin-top:25px;font-size:16px;line-height:1.8}.ph-research-copy .ph-research-principle{color:#f4f1e9;border-block:1px solid #484940;margin:27px 0;padding:25px 0;font-size:17px}.ph-text-link{text-underline-offset:6px;min-height:44px;text-decoration:underline;-webkit-text-decoration-color:var(--line);text-decoration-color:var(--line);align-items:center;gap:15px;font-size:13px;font-weight:550;display:inline-flex}.ph-text-link:hover .ph-icon{transform:translate(4px)}.ph-text-link .ph-icon{width:17px;transition:transform .2s}.ph-research .ph-text-link{color:#d5c9ff;text-decoration-color:#777080}.ph-research-copy small{color:#b4b6a8;margin-top:15px;font-size:11px;display:block}.ph-research-demo{min-width:0}.ph-research-tabs{border-bottom:1px solid #515248;gap:0;margin-bottom:14px;display:flex}.ph-research-tabs button{color:#b4b6a8;background:0 0;border:0;border-bottom:2px solid #0000;flex:1;justify-content:center;align-items:center;gap:7px;min-height:50px;font-size:12px;display:flex}.ph-research-tabs button[aria-pressed=true]{color:#f4f1e9;border-color:#c0acef}.ph-research-tabs button span{opacity:.7;font-size:10px}.ph-research-page{color:#2b2c25;background:#f5f2e9;border-radius:12px;min-height:344px;padding:30px}.ph-demo-label{color:#6a6b5c;letter-spacing:.07em;font-size:9px}.ph-research-page h3{margin:20px 0 14px;font-size:27px;font-weight:500;line-height:1.2}.ph-research-page p{color:#66675b;font-size:14px;line-height:1.75}.ph-attached{color:#66675b;border-block:1px solid #ddd9cb;align-items:center;gap:9px;margin-top:24px;padding-block:15px;font-size:11px;display:flex}.ph-attached .ph-icon{width:17px}.ph-action{color:#544695;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;width:100%;min-height:48px;margin-top:13px;padding:12px 0 0;font-size:13px;font-weight:550;display:flex}.ph-research-log{margin:14px 0 0;padding:0;list-style:none}.ph-research-log li{border-bottom:1px solid #ddd9cb;padding:11px 0;font-size:14px}.ph-research-log span{color:#66675b;margin-top:4px;font-size:11px;display:block}.ph-source-button{color:#544695;text-align:left;background:0 0;border:1px solid #c5bfac;border-radius:6px;align-items:center;gap:10px;width:100%;min-height:48px;margin:23px 0 15px;padding:12px;font-size:12px;display:flex}.ph-source-button .ph-icon:last-child{margin-left:auto}.ph-research-page blockquote{color:#66675b;margin:0;padding:12px 0;font-size:13px;line-height:1.7}.ph-research-page .ph-source-hint{font-size:12px}.ph-research-demo .ph-research-caption{color:#b4b6a8;text-align:right;margin-top:14px;font-size:10px}.ph-faq{border-top:1px solid var(--line);grid-template-columns:.8fr 1.2fr;gap:10%;padding-block:76px;display:grid}.ph-faq>div>p{max-width:340px;margin:20px 0}.ph-questions details{border-bottom:1px solid var(--line)}.ph-questions summary{cursor:pointer;justify-content:space-between;align-items:center;gap:20px;min-height:64px;padding:20px 0;font-size:16px;list-style:none;display:flex}.ph-questions summary::-webkit-details-marker{display:none}.ph-questions details[open] summary .ph-icon{transform:rotate(45deg)}.ph-questions summary .ph-icon{width:18px;transition:transform .2s}.ph-questions p{color:var(--muted);padding-bottom:25px;font-size:14px;line-height:1.8}.ph-questions p a{text-underline-offset:4px;text-decoration:underline}.ph-questions p .ph-icon{width:15px;margin-left:5px}.ph-founder{border-top:1px solid var(--line);grid-template-columns:.8fr 1.2fr;gap:10%;padding-block:55px 75px;display:grid}.ph-founder .ph-founder-signature{padding-top:5px;font-size:24px}.ph-founder-signature span{color:var(--muted);margin-top:7px;font-size:12px;display:block}.ph-founder h2{margin-bottom:18px;font-size:25px}.ph-founder p:not(.ph-founder-signature){font-size:14px}.ph-final{background:var(--ph-soft);padding-block:70px}.ph-final>.ph-container{justify-content:space-between;align-items:center;gap:40px;display:flex}.ph-final h2{font-size:clamp(40px,5vw,66px)}.ph-final h2 em{color:var(--ph-accent)}.ph-final p{color:var(--muted);margin:20px 0 8px;font-size:12px}.ph-final span{color:var(--muted);font-size:11px}@media (min-width:1440px){.ph-board{height:510px}.ph-example-card{height:172px}.ph-card-content strong{font-size:17px}.ph-card-snippet{font-size:12px}}@media (max-width:1100px){.ph-container{width:calc(100% - 64px)}.ph-hero{grid-template-columns:.9fr 1.1fr;gap:4%;padding-block:66px}.ph-hero h1{font-size:64px}.ph-hero-copy>p{font-size:15px}.ph-card-content{padding-inline:12px}.ph-card-content strong{font-size:13px}.ph-card-snippet{font-size:10px}.ph-example-card{height:151px}.ph-context,.ph-research{gap:7%}.ph-research-page{padding:24px}.ph-window-dots{display:none}}@media (max-width:850px){.ph-hero{grid-template-columns:1fr;gap:38px;padding:58px 0}.ph-hero h1{font-size:72px}.ph-hero h1 em br{display:none}.ph-hero-copy>p{max-width:560px;margin:22px 0 25px;font-size:17px}.ph-hero-note{max-width:none;margin-top:15px}.ph-download-meta{margin-left:18px;display:inline-block}.ph-demo-wrap{width:min(680px,100%);margin:auto}.ph-board{height:460px}.ph-example-card{height:156px}.ph-card-content strong{font-size:16px}.ph-card-snippet{font-size:12px}.ph-window-dots{display:flex}.ph-context{padding-block:42px 60px}.ph-context h2{font-size:28px}.ph-research{grid-template-columns:1fr;gap:40px;padding-block:62px}.ph-research-copy>p{max-width:600px}.ph-research-demo{width:100%;max-width:620px}.ph-research-page{min-height:328px}.ph-faq,.ph-founder{grid-template-columns:.85fr 1.15fr;gap:7%}.ph-final{padding-block:55px}.ph-home h2{font-size:34px}.ph-final h2{font-size:46px}.ph-founder h2{font-size:23px}}@media (max-width:580px){.ph-container{width:calc(100% - 40px)}.ph-hero{gap:26px;padding-top:45px}.ph-hero h1{font-size:58px;line-height:1.08}.ph-hero h1 em br{display:initial}.ph-hero-copy>p{font-size:16px;line-height:1.75}.ph-download-meta{margin:13px 0 0;display:block}.ph-hero-note{font-size:11px}.ph-demo-controls{margin-bottom:12px}.ph-board{height:435px}.ph-example-card{width:43%;height:147px}.ph-card-content{gap:5px;padding:0 11px 10px}.ph-card-content strong{font-size:13px}.ph-card-snippet{font-size:10px}.ph-filetype,.ph-card-footer{font-size:8px}.ph-grip{height:28px}.ph-window-bar{gap:6px;padding-inline:10px}.ph-window-bar>span:nth-child(2){font-size:10px}.ph-window-dots{gap:4px}.ph-window-dots i{width:5px;height:5px}.ph-board-bottom{padding-left:12px;font-size:10px}.ph-demo-wrap .ph-demo-caption{text-align:left;font-size:9px}.ph-working-window{inset:12px}.ph-working-body{padding:20px}.ph-working-body h3{font-size:24px}.ph-working-body p{font-size:13px}.ph-context,.ph-faq,.ph-founder{grid-template-columns:1fr;gap:25px}.ph-context{padding-block:38px 48px}.ph-home h2{font-size:31px;line-height:1.25}.ph-context p,.ph-faq>div>p{font-size:15px}.ph-use-cases{gap:10px 14px;font-size:10px}.ph-research{gap:25px;padding-block:50px}.ph-research-copy>p{font-size:15px}.ph-research-copy .ph-research-principle{padding-block:20px;font-size:16px}.ph-research-page{min-height:355px;padding:23px}.ph-research-page h3{font-size:26px}.ph-research-tabs button{font-size:11px}.ph-research-demo .ph-research-caption{text-align:left;font-size:9px}.ph-faq{gap:25px;padding-block:48px}.ph-questions summary{font-size:15px}.ph-founder{gap:18px;padding-block:37px 50px}.ph-founder .ph-founder-signature{font-size:19px}.ph-founder-signature span{margin-left:12px;display:inline}.ph-founder h2{font-size:23px}.ph-final>.ph-container{display:block}.ph-final h2{margin-bottom:28px;font-size:45px}}@media (max-width:360px){.ph-container{width:calc(100% - 28px)}.ph-hero h1{font-size:51px}.ph-window-dots,.ph-card-snippet{display:none}.ph-example-card{height:134px}}@media (max-width:580px){html[lang=zh-CN] .ph-hero h1{font-size:clamp(38px,11vw,44px)}.ph-board{height:480px}.ph-example-card{height:162px}.ph-grip{height:44px}.ph-card-content{height:calc(100% - 44px)}}.ph-home{--ph-grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .55 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.ph-glow{z-index:-1;pointer-events:none;filter:blur(70px);background:radial-gradient(closest-side,color-mix(in srgb,var(--ph-accent) 34%,transparent),color-mix(in srgb,var(--ph-accent) 10%,transparent) 60%,transparent);border-radius:50%;position:absolute}.ph-hero .ph-glow{aspect-ratio:1.25;opacity:.75;width:62%;top:6%;right:-6%}:root[data-theme=dark] .ph-glow{opacity:.42}.ph-shell{border-radius:calc(var(--ph-radius) + 7px);background:color-mix(in srgb,var(--paper) 46%,transparent);-webkit-backdrop-filter:blur(20px)saturate(140%);backdrop-filter:blur(20px)saturate(140%);box-shadow:0 0 0 1px color-mix(in srgb,var(--card) 70%,transparent) inset,0 30px 80px -20px color-mix(in srgb,var(--ph-accent) 22%,transparent),var(--ph-shadow);padding:7px}:root[data-theme=dark] .ph-shell{background:color-mix(in srgb,var(--paper) 55%,transparent);box-shadow:0 0 0 1px #ffffff12 inset,0 30px 80px -20px #0006,var(--ph-shadow)}.ph-shell .ph-workbench{box-shadow:0 1px 3px #2722190f}.ph-eyebrow{font-family:var(--font-geist-mono),monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);align-items:center;gap:12px;margin-bottom:20px;font-size:11px;display:flex}.ph-eyebrow:before{content:"";opacity:.6;background:currentColor;width:22px;height:1px}.ph-research .ph-eyebrow{color:#b4b6a8}.ph-ink-band{isolation:isolate;background:radial-gradient(60% 80% at 88% 10%,#6558bb40,#0000 70%),radial-gradient(50% 60% at 0 100%,#bca98b1f,#0000 70%),#272824;position:relative;overflow:hidden}.ph-ink-band:after,.ph-final:after{content:"";z-index:-1;pointer-events:none;background-image:var(--ph-grain);opacity:.05;mix-blend-mode:overlay;position:absolute;inset:0}.ph-research-page{box-shadow:0 0 0 7px #ffffff0d,0 0 0 8px #ffffff14,0 40px 90px -30px #000a}.ph-research-tabs button[aria-pressed=true]{border-color:#c0acef}.ph-faq-n{min-width:34px;font-family:var(--font-geist-mono),monospace;color:var(--muted);font-variant-numeric:tabular-nums;font-size:11px}.ph-questions summary{border-radius:10px;justify-content:flex-start;margin-inline:-12px;padding-inline:12px;transition:background .2s}.ph-questions summary:hover{background:color-mix(in srgb,var(--ph-soft) 60%,transparent)}.ph-questions summary .ph-icon{box-sizing:content-box;border:1px solid var(--line);border-radius:50%;width:14px;height:14px;margin-left:auto;padding:6px}.ph-questions details[open] summary .ph-icon{background:var(--ph-soft);color:var(--ph-accent);border-color:#0000}.ph-questions p{padding-left:34px}.ph-founder .ph-founder-signature{letter-spacing:-.04em;font-size:34px;font-weight:300}.ph-final{isolation:isolate;background:var(--ph-soft);padding-block:110px;position:relative;overflow:hidden}.ph-final .ph-glow{aspect-ratio:1.4;opacity:.9;width:48%;bottom:-40%;left:-8%}.ph-final h2{letter-spacing:-.05em;font-size:clamp(44px,6vw,84px);font-weight:400;line-height:1.04}[data-reveal=wait]{opacity:0;filter:blur(8px);transform:translateY(18px)}[data-reveal=in]{opacity:1;filter:none;transition:opacity .9s var(--ease),transform 1.1s var(--ease),filter .9s var(--ease);transform:none}.ph-questions[data-reveal=in]{transition-delay:.12s}.ph-research-tabs button{position:relative}.ph-r-progress{transform-origin:0;opacity:.55;background:#f4f1e9;height:2px;animation:linear forwards ph-r-progress;position:absolute;bottom:-2px;left:0;right:0;transform:scaleX(0)}@keyframes ph-r-progress{to{transform:scaleX(1)}}.ph-research-page{min-height:400px}.ph-r-in{animation:ph-r-in .8s var(--ease) both;animation-delay:var(--d,0s)}@keyframes ph-r-in{0%{opacity:0;filter:blur(6px);transform:translateY(10px)}}.ph-r-hand{color:#f4f1e9;background:#2b2c25;border:0;border-radius:999px;align-items:center;gap:10px;min-height:44px;margin-top:22px;padding:10px 14px 10px 16px;font-size:13px;font-weight:550;display:inline-flex;box-shadow:0 8px 24px #2b2c2526}.ph-r-hand i{color:#c0acef;font-style:normal}.ph-r-hand .ph-icon{width:15px}[data-auto] .ph-r-hand{animation:ph-r-in .8s var(--ease) both var(--d),ph-r-press 1.6s var(--ease) 3.1s}@keyframes ph-r-press{0%,to{transform:none}30%{background:#544695;transform:scale(.95)}60%{background:#544695}}.ph-research-log li{align-items:flex-start;gap:14px;display:flex}.ph-r-tick{width:16px;height:16px;animation:ph-r-spin .9s linear var(--d,0s),ph-r-done 10ms linear var(--done,0s) forwards;border:1.5px solid #c5bfac;border-top-color:#544695;border-radius:50%;flex:none;margin-top:2px;position:relative}.ph-r-tick:after{content:"";opacity:0;width:4px;height:8px;animation:ph-r-check .3s var(--ease) forwards;animation-delay:var(--done,0s);border:1.5px solid #fff;border-width:0 1.5px 1.5px 0;position:absolute;top:1px;left:4px;transform:rotate(45deg)}@keyframes ph-r-spin{to{rotate:360deg}}@keyframes ph-r-done{to{background:#544695;border-color:#544695}}@keyframes ph-r-check{to{opacity:1}}.ph-r-sources{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.ph-r-sources b{color:#544695;background:#fbf9f3;border:1px solid #ddd9cb;border-radius:999px;align-items:center;gap:6px;padding:5px 10px 5px 8px;font-size:11px;font-weight:500;display:inline-flex}.ph-r-sources .ph-icon{width:13px;height:13px}.ph-source-button[data-open]{background:#ece7f5;border-color:#544695}[data-auto] .ph-source-button:not([data-open]){animation:ph-r-in .8s var(--ease) both var(--d),ph-r-ring 1.2s var(--ease) 1.9s}@keyframes ph-r-ring{50%{border-color:#6558bb;box-shadow:0 0 0 5px #6558bb2e}}.ph-r-quote{animation:ph-r-open .7s var(--ease) both}@keyframes ph-r-open{0%{opacity:0;clip-path:inset(0 0 100%)}to{opacity:1;clip-path:inset(0)}}.ph-r-quote mark{color:inherit;animation:ph-r-mark .9s var(--ease) .5s forwards;background:linear-gradient(#d9cff7,#d9cff7) 0/0 100% no-repeat;border-radius:3px;padding:0 2px}@keyframes ph-r-mark{to{background-size:100% 100%}}@media (max-width:850px){.ph-hero .ph-glow{width:110%;top:44%;right:-30%}.ph-final{padding-block:72px}.ph-final .ph-glow{width:100%}}@media (max-width:580px){.ph-shell{border-radius:calc(var(--ph-radius) + 5px);padding:5px}.ph-questions p{padding-left:0}.ph-faq-n{min-width:28px}.ph-final h2{font-size:44px}}@media (prefers-reduced-motion:reduce){.ph-r-in,.ph-r-hand,.ph-source-button,.ph-r-quote{animation:none!important}.ph-r-tick{background:#544695;border-color:#544695;animation:none}.ph-r-tick:after{opacity:1;animation:none}.ph-r-quote mark{background-size:100% 100%;animation:none}.ph-dot-field{transform:none}.ph-connections line{animation:none}.ph-home *{transition:none!important}}
.ph-story{border-top:1px solid var(--line);--ph-story-top:64px;height:480vh;position:relative}.ph-story-sticky{top:var(--ph-story-top);height:calc(100vh - var(--ph-story-top));height:calc(100svh - var(--ph-story-top));grid-template-columns:minmax(0,.78fr) minmax(0,1.62fr);align-items:center;gap:6%;padding-block:40px;display:grid;position:sticky}.ph-story-gauge{max-width:240px;margin-bottom:26px}.ph-story-track{background:var(--line);height:1px;position:relative}.ph-story-fill{background:var(--ph-accent);transform-origin:0;position:absolute;inset:0;transform:scaleX(0)}.ph-story-ticks{justify-content:space-between;display:flex;position:absolute;inset:-3px 0}.ph-story-ticks i{background:var(--bg);border:1px solid var(--line);width:7px;height:7px;transition:background .4s var(--ease),border-color .4s var(--ease);border-radius:50%}.ph-story-ticks i[data-on]{background:var(--ph-accent);border-color:var(--ph-accent)}.ph-story-stack{display:grid;position:relative}.ph-story-cap{transition:opacity .6s var(--ease),transform .8s var(--ease),filter .6s var(--ease);grid-area:1/1}.ph-story-cap:not([data-on]){opacity:0;filter:blur(5px);pointer-events:none;transform:translateY(12px)}.ph-story-tag{font-family:var(--font-geist-mono),monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);align-items:center;gap:10px;font-size:11px;display:flex}.ph-story-tag b,.ph-story-phead b{color:var(--ph-accent);border:1px solid color-mix(in srgb,var(--ph-accent) 40%,transparent);letter-spacing:.06em;border-radius:999px;padding:3px 8px;font-weight:500}.ph-home .ph-story-cap h2{margin-top:16px;font-size:clamp(32px,3.6vw,48px);line-height:1.1}.ph-story-cap h2 em{color:var(--ph-accent)}.ph-home .ph-story-cap p{max-width:400px;color:var(--muted);margin-top:20px;font-size:16px;line-height:1.8}.ph-story-cap small{color:var(--muted);margin-top:16px;font-size:11px;display:block}.ph-story-cap .ph-text-link{margin-top:14px}.ph-story-figure{flex-direction:column;min-width:0;height:100%;max-height:640px;display:flex}.ph-story-window{border-radius:var(--ph-radius);background:var(--paper);min-height:0;box-shadow:var(--ph-shadow);flex-direction:column;flex:1;display:flex;overflow:hidden}.ph-story-bar{border-bottom:1px solid var(--line);flex:none;grid-template-columns:1fr auto 1fr;align-items:center;height:48px;padding:0 14px;display:grid}.ph-story-bar>span:nth-child(2){color:var(--muted);white-space:nowrap;align-items:center;gap:6px;font-size:11px;display:flex}.ph-story-stage{isolation:isolate;background:var(--bg);flex:1;min-height:0;position:relative;overflow:hidden}.ph-story-dots{background-image:radial-gradient(var(--line) 1px,transparent 1px);background-size:22px 22px;position:absolute;inset:0}.ph-story-caption{text-align:right;color:var(--muted);margin:14px 0 0;font-size:10px}.ph-story-stage>*{position:absolute;top:0;left:0}.ph-story-glyph{flex:none;width:12px;height:12px}.ph-story-group{border:1px dashed color-mix(in srgb,var(--ph-accent) 35%,var(--line));opacity:0;border-radius:16px}.ph-story-group span{background:var(--bg);font-family:var(--font-geist-mono),monospace;letter-spacing:.09em;text-transform:uppercase;color:var(--ph-accent);padding:0 8px;font-size:10px;line-height:18px;position:absolute;top:-9px;left:14px}.ph-story-card{z-index:3;background:var(--card);will-change:transform;overflow:hidden;box-shadow:0 6px 20px #2722190d;container-type:size}:root[data-theme=dark] .ph-story-card{box-shadow:0 6px 20px #0806043d}.ph-story-g0.ph-story-note{color:#332e23;background:#eee9dc}.ph-story-g1.ph-story-note{color:#342c49;background:#ece7f3}:root[data-theme=dark] .ph-story-g0.ph-story-note{color:#eee9dc;background:#3d372c}:root[data-theme=dark] .ph-story-g1.ph-story-note{color:#ece7f3;background:#3a324c}.ph-story-face{flex-direction:column;justify-content:flex-end;gap:6px;padding:10px 12px 11px;display:flex;position:absolute;inset:0}.ph-story-type{font-family:var(--font-geist-mono),monospace;letter-spacing:.09em;text-transform:uppercase;opacity:.6;white-space:nowrap;align-items:center;gap:5px;margin-bottom:auto;font-size:8.5px;display:flex}.ph-story-type .ph-story-glyph{width:10px;height:10px}.ph-story-face strong{letter-spacing:-.02em;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;font-weight:550;line-height:1.3;display:-webkit-box;overflow:hidden}.ph-story-todo .ph-story-face strong:before{content:"";vertical-align:-1px;opacity:.5;border:1.3px solid;border-radius:3px;width:10px;height:10px;margin-right:7px;display:inline-block}.ph-story-art{min-height:0;color:var(--ph-accent);background:linear-gradient(150deg,var(--ph-soft),color-mix(in srgb,var(--ph-soft) 40%,var(--paper)));border-radius:7px;flex:1;place-items:center;display:grid}.ph-story-art svg{width:100%;height:100%}@container (max-height:96px){.ph-story-art{display:none}}@container (max-height:84px){.ph-story-face strong{-webkit-line-clamp:1}}.ph-story-row{font-family:var(--font-geist-mono),monospace;white-space:nowrap;opacity:0;color:var(--ink);align-items:center;gap:9px;padding:0 12px;font-size:11.5px;display:flex;position:absolute;inset:0;overflow:hidden}.ph-story-row em{color:var(--muted);margin-left:auto;font-size:10px;font-style:normal}.ph-story-links{pointer-events:none;opacity:0;z-index:2;width:100%;height:100%}.ph-story-links path{fill:none;stroke:var(--ph-accent);stroke-width:1px;stroke-dasharray:1;stroke-dashoffset:1px;opacity:.6}.ph-story-panel{z-index:4;opacity:0;background:color-mix(in srgb,var(--card) 74%,transparent);-webkit-backdrop-filter:blur(18px)saturate(150%);backdrop-filter:blur(18px)saturate(150%);border:1px solid color-mix(in srgb,var(--card) 60%,var(--line));box-shadow:var(--ph-shadow);will-change:transform,opacity;border-radius:14px;flex-direction:column;justify-content:space-between;gap:2cqh;padding:5cqh 5cqw;display:flex;overflow:hidden;container-type:size}.ph-story-phead{font-family:var(--font-geist-mono),monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;font-size:10px;display:flex}.ph-story-phead b{font-size:9px}.ph-story-pmain{justify-content:space-between;align-items:flex-end;gap:4cqw;min-height:0;display:flex}.ph-story-num{letter-spacing:-.05em;font-variant-numeric:tabular-nums;align-items:flex-start;gap:6px;font-size:min(34cqh,20cqw);font-weight:250;line-height:.9;display:flex}.ph-story-num sup{white-space:nowrap;font-family:var(--font-geist-mono),monospace;letter-spacing:.04em;color:var(--muted);margin-top:.5em;font-size:10px;font-weight:400}.ph-story-chart{flex:none;width:auto;height:min(36cqh,22cqw);overflow:visible}.ph-story-chart line{stroke:var(--line)}.ph-story-chart polyline{fill:none;stroke:var(--ph-accent);stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:100;stroke-dashoffset:100px}.ph-story-chart circle{fill:var(--ph-accent);opacity:0;transition:opacity .3s}.ph-story-chart text{fill:var(--muted);font-family:var(--font-geist-mono),monospace;font-size:8px}.ph-story-pfoot{font-family:var(--font-geist-mono),monospace;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);flex-wrap:wrap;align-items:center;gap:12px;font-size:10px;display:flex}.ph-story-pips{gap:6px;display:flex}.ph-story-pips i{border:1px solid var(--line);width:8px;height:8px;transition:background .4s var(--ease),border-color .4s var(--ease);border-radius:50%}.ph-story-pips i.on{background:var(--ph-accent);border-color:var(--ph-accent)}.ph-story-nudge{background:var(--ph-soft);color:var(--ink);white-space:nowrap;border-radius:999px;align-items:center;gap:10px;padding:9px 14px;font-size:13px;display:flex;overflow:hidden}.ph-story-nudge i{background:var(--ph-accent);border-radius:50%;flex:none;width:7px;height:7px}.ph-story-nudge span{color:var(--muted);margin-left:auto;font-size:10px}.ph-story-slim{flex-direction:row;align-items:center;gap:4cqw;padding:0 5cqw}.ph-story-slim>span{white-space:nowrap;font-family:var(--font-geist-mono),monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:10px}.ph-story-slim .ph-story-num{font-size:min(56cqh,13cqw)}@container (max-height:170px){.ph-story-nudge{display:none}}@container (max-width:340px){.ph-story-nudge span,.ph-story-phead b{display:none}}@container (max-height:90px) and (max-width:420px){.ph-story-slim .ph-story-pips{display:none}}.ph-story-finder{z-index:1;opacity:0;background:var(--card);box-shadow:var(--ph-shadow);border-radius:10px;overflow:hidden}.ph-story-path{border-bottom:1px solid var(--line);height:36px;font-family:var(--font-geist-mono),monospace;color:var(--muted);align-items:center;padding:0 16px;font-size:11px;display:flex}.ph-story-folder{z-index:4;opacity:0;font-family:var(--font-geist-mono),monospace;color:var(--ph-accent);align-items:center;gap:8px;font-size:12px;display:flex}.ph-story-chat{z-index:5;opacity:0;background:color-mix(in srgb,var(--card) 82%,transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:var(--ph-shadow);border-radius:10px;flex-direction:column;gap:11px;padding:16px 18px;font-size:14px;line-height:1.5;display:flex}.ph-story-who{font-family:var(--font-geist-mono),monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);align-items:center;gap:8px;font-size:10px;display:flex}.ph-story-who i{background:var(--ph-accent);border-radius:50%;width:7px;height:7px}.ph-story-q{background:var(--ph-soft);border-radius:12px 12px 4px;align-self:flex-end;max-width:90%;padding:8px 12px}.ph-story-reads{font-family:var(--font-geist-mono),monospace;color:var(--muted);align-items:center;gap:7px;font-size:10.5px;display:flex}.ph-story-answer{min-height:4.5em;color:var(--ink)}.ph-story-answer[data-typing]:after{content:"";vertical-align:-2px;background:var(--ph-accent);width:1px;height:1em;margin-left:2px;animation:1s step-end infinite ph-story-caret;display:inline-block}@keyframes ph-story-caret{50%{opacity:0}}@media (max-width:850px){.ph-story{--ph-story-top:60px;height:540vh}.ph-story-sticky{grid-template-rows:auto minmax(0,1fr);grid-template-columns:1fr;align-items:stretch;gap:16px;padding-block:18px 14px}.ph-story-gauge{margin-bottom:14px}.ph-home .ph-story-cap h2{margin-top:10px;font-size:28px}.ph-home .ph-story-cap p{max-width:560px;margin-top:10px;font-size:14px;line-height:1.65}.ph-story-cap small{margin-top:8px}.ph-story-figure{max-height:none}.ph-story-bar{height:40px}.ph-story-caption{text-align:left;margin-top:8px;font-size:9px}.ph-story-face strong{font-size:12px}.ph-story-face{padding:9px 10px}.ph-story-chat{gap:8px;padding:12px 14px;font-size:12.5px}.ph-story-answer{min-height:3.8em}}@media (max-width:580px){.ph-story{height:400vh}.ph-story-sticky{gap:12px;padding-block:14px 10px}.ph-story-gauge{max-width:none;margin-bottom:12px}.ph-home .ph-story-cap h2{margin-top:8px;font-size:25px}.ph-home .ph-story-cap p{margin-top:8px;line-height:1.6}.ph-story-cap small{font-size:10px}.ph-story-cap .ph-text-link{min-height:40px;margin-top:2px}}@media (prefers-reduced-motion:reduce){.ph-story-cap{transition:none}.ph-story-answer[data-typing]:after{animation:none}}
