.ph-page{--ph-cyan:#8be4de;--ph-gold:#d1af7d}.ph-page h1{font-size:clamp(3.2rem,7vw,7.5rem);line-height:1.02;max-width:1000px}.ph-page h2{font-size:clamp(2.1rem,4.4vw,4.2rem);line-height:1.08}.ph-hero,.ph-explorer,.ph-gravity,.ph-record,.ph-next{padding:clamp(36px,6vw,90px) 4.5vw;border-bottom:1px solid #b9d1cd26}.ph-hero{background:radial-gradient(ellipse at 80% 10%,#24434b 0,transparent 55%)}.ph-hero>p:not(.eyebrow){font-size:1.25rem;max-width:720px}.ph-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:40px 0}.ph-facts span{font-size:.8rem;color:#a9b9b9}.ph-facts strong{display:block;font:1.4rem Georgia,serif;color:#eae6d8;margin-bottom:8px}.ph-jumps,.ph-tabs,.ph-actions,.ph-clues{display:flex;gap:12px;flex-wrap:wrap;margin:24px 0}.ph-jumps a,.ph-page button{border:1px solid #a5c7c54d;padding:13px 18px;min-height:46px;background:#11252c;color:#eae6d8;font:inherit;cursor:pointer}.ph-page button:disabled{opacity:.45;cursor:default}.ph-page button[aria-pressed=true]{background:#b8e2dc;color:#102026}.ph-page :focus-visible{outline:3px solid #f1c889;outline-offset:4px}.ph-stage{height:clamp(330px,48vw,650px);position:relative;overflow:hidden;background:#03090e;border:1px solid #64817c66;touch-action:pan-y}.ph-stage canvas{position:absolute;inset:0;width:100%;height:100%;touch-action:none}.ph-poster{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}.ph-poster img{width:100%;height:100%;object-fit:contain;opacity:.65}.ph-poster span{position:absolute;top:20px;left:20px;font-size:.65rem;letter-spacing:.12em;max-width:60%}.ph-load{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:2;min-width:220px}.ph-look{position:absolute;bottom:14px;left:14px;right:14px;display:flex;gap:6px;flex-wrap:wrap;justify-content:center;z-index:2}.ph-look button{min-width:44px;padding:9px}.ph-page [hidden]{display:none!important}.ph-boundary{font-size:.9rem;max-width:1000px;color:#a7b7b9;line-height:1.7}.ph-clue{background:#10242b;padding:24px;border-left:2px solid var(--ph-cyan);max-width:950px}.ph-clue h3{font:1.6rem Georgia,serif}.ph-controls{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:32px 0}.ph-controls label{display:grid;gap:10px;font-size:.95rem}.ph-controls output{color:var(--ph-cyan);font-variant-numeric:tabular-nums}.ph-controls input{width:100%;min-height:44px;accent-color:#8be4de}.ph-chart{margin:24px 0;background:linear-gradient(145deg,#132f39,#071016);border:1px solid #758e8944;padding:14px}.ph-chart svg{width:100%;height:auto;display:block}.ph-chart text{fill:#b5c9c6;font:13px system-ui}.ph-axis{stroke:#839e9c;fill:none}.ph-trace{fill:none;stroke-width:2.5}.ph-cyan{stroke:#8be4de;fill:#8be4de}.ph-trace.ph-cyan,.ph-trace.ph-gold,.ph-trace.ph-white{fill:none}.ph-gold{stroke:#e8b36c;fill:#e8b36c}.ph-white{stroke:#f1eee4;fill:#f1eee4}.ph-chart figcaption,.ph-record figcaption{font-size:.85rem;line-height:1.6;color:#a7b7b9;margin:16px 0 0}.ph-table-wrap{overflow-x:auto}.ph-page table{border-collapse:collapse;width:100%;min-width:530px;font-variant-numeric:tabular-nums}.ph-page caption{text-align:left;padding:12px 0;color:#b9ceca}.ph-page th,.ph-page td{padding:14px;text-align:left;border-bottom:1px solid #78928f44}.ph-page tbody th{color:#8be4de}.ph-record figure{max-width:960px;margin:32px auto}.ph-record figure img{width:100%;height:auto}.ph-source-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:36px;max-width:1200px;margin:40px auto}.ph-source-grid h3{font:1.7rem Georgia,serif}.ph-source-grid p{max-width:60ch}.ph-next>div{display:grid;gap:18px}.ph-feature{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:center;border-top:1px solid #88a39e44}.ph-feature h2{font-size:clamp(2rem,4vw,4rem)}.ph-feature img{width:100%;height:auto}.ph-feature p{max-width:48ch}@media(max-width:780px){.ph-controls,.ph-source-grid,.ph-feature{grid-template-columns:1fr}.ph-facts{gap:18px;grid-template-columns:1fr}.ph-facts span{display:flex;align-items:baseline;gap:18px}.ph-facts strong{min-width:160px;font-size:1.2rem}.ph-stage{height:390px}.ph-look{gap:4px}.ph-look button{padding:6px;min-width:44px}.ph-chart{padding:4px}.ph-tabs button{flex:1;font-size:.85rem}.ph-source-grid{gap:24px}}@media(prefers-reduced-motion:reduce){.ph-page *{scroll-behavior:auto}}
