/* Proof and the planned extensions share the site shell, with their own examples. */
.ep-product{padding-bottom:4rem}
.ep-product .ep-shell{width:min(100% - 64px,1280px);margin-inline:auto}
.ep-product.pp-product .ep-hero{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(2rem,5vw,5rem)!important;align-items:center;padding:10rem 0 5rem!important;text-align:left}
.ep-product.pp-product .ep-copy{min-width:0;max-width:36rem;margin:0}
.ep-product .ep-identity{display:flex;align-items:center;gap:.8rem;color:#f5f0fc;font-weight:600}
.ep-product .ep-identity img{object-fit:contain;width:52px;height:52px}
.ep-product.pp-product #top h1{font-size:clamp(2.8rem,4.2vw,4.4rem)!important;line-height:1.06!important;margin:1.8rem 0 0;max-width:18ch;text-wrap:pretty}
.ep-product.pp-product #top .ep-lead{font-size:1.08rem;max-width:36rem;margin:1.5rem 0 0}
.ep-product .ep-actions{display:flex;align-items:center;flex-wrap:wrap;gap:.8rem;margin-top:2rem}
.ep-product .ep-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.8rem 1.3rem;border-radius:999px;border:1px solid #7c35ff;color:#fff;font-weight:600}
.ep-product .ep-primary{background:#7c35ff}
.ep-product .ep-primary:hover{background:#8f52ff}
.ep-product .ep-secondary:hover{background:#7c35ff1c}
.ep-product.pp-product #top .ep-release{font-size:.86rem;margin:1.25rem 0 0;color:#c8c0d5}
.ep-product .ep-visual{margin:0;min-width:0;border:1px solid #ffffff24;border-radius:16px;overflow:hidden;background:#15121c;box-shadow:0 20px 60px #0003}
.ep-browser-bar{display:flex;align-items:center;gap:.7rem;min-height:64px;padding:.8rem 1.1rem;border-bottom:1px solid #ffffff14;font-size:.9rem;font-weight:600;color:#ebe4f6}
.ep-browser-bar img{object-fit:contain}
.ep-theme-controls{display:flex;gap:3px;padding:3px;margin-left:auto;background:#ffffff06;border:1px solid #ffffff18;border-radius:999px}
.ep-theme-controls button{border:0;padding:.4rem .7rem;min-height:36px;border-radius:999px;font:inherit;font-size:.78rem;background:transparent;color:#c5bfce;cursor:pointer;transition:background .2s,color .2s}
.ep-theme-controls button[aria-pressed=true]{background:#7c35ff;color:white}
.ep-product .ep-reading{padding:clamp(1.5rem,3vw,2.5rem);min-height:350px;background:#1b1823;color:#f2edf8;transition:background-color .45s ease,color .45s ease}
.ep-reading-kicker{display:block;font-size:.7rem;letter-spacing:.16em;color:inherit;opacity:.65}
.ep-product.pp-product .ep-reading h2{font-size:clamp(2rem,3vw,2.8rem)!important;color:inherit!important;margin:1rem 0 1.2rem}
.ep-product.pp-product #top .ep-reading p{font-size:1rem;margin:1rem 0;color:inherit;max-width:40rem}
.ep-reading-rule{height:1px;margin-block:1.5rem;background:currentColor;opacity:.15}
.ep-product .ep-reading[data-ep-reading=light]{background:#f6f3ec;color:#302e35}
.ep-product .ep-visual figcaption{padding:.8rem 1.1rem;border-top:1px solid #ffffff14;color:#bcb5ca;font-size:.76rem;line-height:1.5}
.ep-product .ep-document{min-height:350px;padding:clamp(1.5rem,3vw,2.5rem);background:#f7f4ed;color:#292631}
.ep-document-label{display:block;color:#716b78;font-size:.85rem;margin-bottom:2rem}
.ep-product.pp-product #top .ep-document p{color:#292631;font-size:1.08rem;margin:1rem 0;max-width:40rem}
.ep-typo{text-decoration:underline wavy #b32335;text-underline-offset:5px}
.ep-correction{width:min(100%,245px);display:flex;flex-direction:column;gap:.8rem;margin:1.5rem 0 0 auto;padding:1rem 1.1rem;background:#fff;color:#292631;border:1px solid #ddd7e1;border-radius:10px;box-shadow:0 12px 30px #29263114}
.ep-correction>span:first-child{font-size:.7rem;color:#706776}
.ep-correction strong{font-size:1.05rem;font-weight:600}
.ep-dictionary{border-top:1px solid #eee8f0;padding-top:.8rem;font-size:.8rem;color:#62576a}
.ep-product .ep-section{padding-block:4rem;scroll-margin-top:7rem}
.ep-product .ep-section>h2{max-width:50rem;margin:0 0 2.5rem}
.ep-features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2.5rem}
.ep-features article{min-width:0}
.ep-tool-heading{display:flex;align-items:center;gap:.75rem}
.ep-tool-heading h3{margin:0}
.ep-icon{width:26px;height:26px;flex:none;display:block;background:#7c35ff;mask:var(--ep-icon) center/contain no-repeat}
.ep-features article>p{margin:1rem 0 0 38px;font-size:.97rem}
.ep-local,.ep-status{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:clamp(2rem,6vw,6rem);border-top:1px solid #ffffff1c}
.ep-local h2,.ep-status h2{margin:0 0 1.2rem}
.ep-local h3,.ep-status h3{margin:0 0 1.2rem}
.ep-text-link,.ep-sources a{color:#f5f0fc;text-decoration:underline;text-decoration-color:#7c35ff;text-decoration-thickness:2px;text-underline-offset:5px}
.ep-text-link{display:inline-block;margin-top:1rem}
.ep-text-link:hover,.ep-sources a:hover{text-decoration-color:#8f52ff}
.ep-product .ep-sources{max-width:55rem}
.ep-sources details{margin-top:1.5rem}
.ep-sources summary{cursor:pointer;color:#f5f0fc;padding:.8rem 0;min-height:48px}
.ep-sources details p{font-size:.9rem}
.ep-product .ep-faq{max-width:900px;margin-inline:auto}
.ep-faq h2{text-align:center}
.ep-faq-items{margin-top:2.5rem}
.ep-faq-items details>div:not(.oh-faq-answer){padding-bottom:1.5rem}
.ep-product :is(a,button,summary):focus-visible{outline:2px solid #8f52ff;outline-offset:4px}
@media(max-width:1000px){.ep-product.pp-product .ep-hero{grid-template-columns:minmax(0,1fr);gap:3rem!important}.ep-product.pp-product .ep-copy{max-width:44rem}.ep-product.pp-product #top h1{max-width:18ch}.ep-product .ep-visual{width:100%;max-width:44rem}.ep-features{gap:1.5rem}.ep-local,.ep-status{gap:2rem}}
@media(max-width:680px){.ep-product .ep-shell{width:calc(100% - 32px)}.ep-product.pp-product .ep-hero{padding-top:7.5rem!important}.ep-product.pp-product #top h1{font-size:clamp(1.8rem,8.2vw,2.4rem)!important;hyphens:auto;overflow-wrap:break-word}.ep-product .ep-section{padding-block:3rem}.ep-features,.ep-local,.ep-status{grid-template-columns:1fr;gap:2rem}.ep-actions{align-items:stretch}.ep-product .ep-actions a{width:100%}.ep-browser-bar{padding-inline:.8rem;font-size:.8rem}.ep-product .ep-reading,.ep-product .ep-document{min-height:0}.ep-product .ep-visual{border-radius:12px}}
@media(prefers-reduced-motion:reduce){.ep-product .ep-reading,.ep-theme-controls button{transition:none}}
