:root,:root[data-theme=dark]{color-scheme:dark;--bg: #050505;--surface: #0d0d0e;--surface-2: #131314;--surface-3: #1a1a1b;--text: #f1f1ef;--muted: #9a9997;--subtle: #8b8986;--line: rgba(255, 255, 255, .13);--line-strong: rgba(255, 255, 255, .22);--accent: #ff705f;--accent-deep: #ce5147;--accent-ink: #ff9588;--accent-display: #ff705f;--accent-wash: rgba(255, 112, 95, .12);--accent-line: rgba(255, 112, 95, .52);--button-bg: #f1f1ef;--button-text: #080808;--grid-line: rgba(255, 255, 255, .045);--shadow: rgba(0, 0, 0, .45);--max-width: 1180px;--gutter: clamp(1.25rem, 5vw, 4.5rem);--radius-lg: 28px;--radius-md: 18px;--radius-sm: 12px;--ease: cubic-bezier(.2, .75, .25, 1)}:root[data-theme=light]{color-scheme:light;--bg: #f2ead5;--surface: #f8f1df;--surface-2: #e9e0c5;--surface-3: #dfd5b8;--text: #1d1b17;--muted: #5e5a50;--subtle: #6c675b;--line: rgba(74, 61, 33, .16);--line-strong: rgba(74, 61, 33, .27);--accent: #d45b4f;--accent-deep: #a94339;--accent-ink: #a94339;--accent-display: #c95749;--accent-wash: rgba(238, 110, 91, .12);--accent-line: rgba(184, 75, 65, .55);--button-bg: #1d1b17;--button-text: #f8f1df;--grid-line: rgba(74, 61, 33, .06);--shadow: rgba(89, 73, 38, .18)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:86px}body{margin:0;overflow-x:hidden;background:var(--bg);color:var(--text);font-family:Avenir Next,Segoe UI,Inter,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;font-size:17px;line-height:1.6;-webkit-font-smoothing:auto;-moz-osx-font-smoothing:auto;transition:background .26s ease,color .26s ease}::selection{background:var(--accent);color:#160c0a}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit;font:inherit}button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:4px}button:active{transform:translateY(1px) scale(.99)}.site-shell{position:relative;isolation:isolate;min-height:100vh;background:var(--bg)}.site-shell:before{position:absolute;z-index:-1;inset:0 0 auto;height:1100px;background-image:linear-gradient(var(--grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--grid-line) 1px,transparent 1px);background-size:72px 72px;content:"";-webkit-mask-image:linear-gradient(to bottom,#000 0%,transparent 82%);mask-image:linear-gradient(to bottom,#000 0%,transparent 82%);pointer-events:none}.site-header{position:fixed;z-index:20;top:0;left:0;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;width:100%;height:76px;padding:0 max(var(--gutter),calc((100vw - var(--max-width)) / 2));border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--bg) 94%,transparent)}.brand{display:inline-flex;align-items:center;gap:.58rem;width:max-content;font-size:1.04rem;font-weight:720;letter-spacing:-.05em}.brand-mark{width:31px;height:31px;border-radius:9px;object-fit:cover;transition:transform .45s var(--ease)}.brand:hover .brand-mark{transform:rotate(7deg) scale(1.04)}.brand-compact .brand-mark{width:27px;height:27px}.site-nav{display:flex;align-items:center;gap:clamp(1.45rem,3vw,2.8rem);color:var(--muted);font-size:.84rem}.site-nav a,.text-link,.panel-link,.footer-links a{position:relative;white-space:nowrap;transition:color .2s ease}.site-nav a:after,.text-link:after,.panel-link:after,.footer-links a:after{position:absolute;right:0;bottom:-.23rem;left:0;height:1px;background:currentColor;content:"";transform:scaleX(0);transform-origin:right;transition:transform .26s var(--ease)}.site-nav a:hover,.text-link:hover,.panel-link:hover,.footer-links a:hover{color:var(--accent-ink)}.site-nav a:hover:after,.text-link:hover:after,.panel-link:hover:after,.footer-links a:hover:after{transform:scaleX(1);transform-origin:left}.header-actions{display:flex;align-items:center;justify-content:flex-end;gap:1.1rem}.theme-toggle{display:grid;place-items:center;width:36px;height:36px;border:1px solid var(--line);border-radius:10px;background:transparent;cursor:pointer;transition:border-color .2s ease,color .2s ease,background .2s ease}.theme-toggle:hover{border-color:var(--accent-line);background:var(--accent-wash);color:var(--accent)}.header-github{display:inline-flex;align-items:center;gap:.4rem;color:var(--muted);font-size:.84rem}.header-github:hover{color:var(--text)}.button{display:inline-flex;align-items:center;justify-content:center;gap:.62rem;min-height:45px;padding:.75rem 1rem;border:1px solid var(--button-bg);border-radius:var(--radius-sm);background:var(--button-bg);color:var(--button-text);font-size:.84rem;font-weight:720;letter-spacing:-.01em;white-space:nowrap;transition:background .22s ease,border-color .22s ease,color .22s ease,transform .22s var(--ease)}.button:hover{border-color:var(--text);background:var(--text);color:var(--bg);transform:translateY(-2px)}.button-secondary{border-color:var(--line-strong);background:transparent;color:var(--text)}.button-secondary:hover{border-color:var(--accent-line);background:var(--accent-wash);color:var(--accent-ink)}.button-large{min-height:54px;padding:.95rem 1.15rem}.section-frame{width:min(100%,var(--max-width));margin-right:auto;margin-left:auto;padding-right:var(--gutter);padding-left:var(--gutter)}.hero{display:block;min-height:auto;padding-top:clamp(9rem,15vw,12rem);padding-bottom:clamp(6rem,10vw,9rem)}.hero-copy{max-width:64rem;margin:0 auto;text-align:center}.hero h1,.statement h2,.reader-copy h2,.self-host-copy h2{margin:0;font-size:clamp(3rem,5vw,5.25rem);font-weight:680;letter-spacing:-.06em;line-height:.98;text-wrap:balance}.hero h1{font-size:clamp(3.5rem,8vw,7.5rem);letter-spacing:-.075em;line-height:.91}.hero h1 .hero-line-accent,.statement h2 span,.reader-copy h2 span,.self-host-copy h2 span{color:var(--accent-display)}.hero-line{display:inline-block;white-space:nowrap}.hero-lede{max-width:41rem;margin:2.1rem auto 0;color:var(--muted);font-size:clamp(1rem,1.7vw,1.16rem);line-height:1.65}.hero-actions{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:1.25rem;margin-top:2.25rem}.text-link,.panel-link{display:inline-flex;align-items:center;gap:.5rem;width:max-content;color:var(--text);font-size:.9rem}.hero-demo{display:flex;justify-content:center;margin-top:clamp(4rem,8vw,7rem)}.app-preview-wrap{width:min(100%,440px)}.status-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--accent)}.app-preview{--preview-bg: #030303;--preview-surface: #0b0b0c;--preview-surface-2: #151516;--preview-text: #ecece9;--preview-muted: #888886;--preview-line: rgba(255, 255, 255, .11);--preview-accent: #ff705f;position:relative;display:flex;flex-direction:column;width:100%;aspect-ratio:.61;overflow:hidden;border:1px solid #2a2a2b;border-radius:34px;background:var(--preview-bg);box-shadow:0 30px 80px var(--shadow),0 0 0 7px color-mix(in srgb,var(--text) 5%,transparent);color:var(--preview-text);transform:rotate(1.4deg);transition:transform .6s var(--ease),box-shadow .6s ease}.app-preview.preview-light{--preview-bg: #f2ead5;--preview-surface: #f8f1df;--preview-surface-2: #e9e0c5;--preview-text: #1d1b17;--preview-muted: #6c675b;--preview-line: rgba(74, 61, 33, .16);--preview-accent: #a94339;border-color:#dcd2b7;box-shadow:0 30px 80px var(--shadow),0 0 0 7px #4a3d2114}.app-preview:hover{box-shadow:0 35px 95px var(--shadow),0 0 0 7px color-mix(in srgb,var(--accent) 10%,transparent);transform:rotate(0) translateY(-6px)}.preview-statusbar{display:flex;align-items:center;justify-content:space-between;min-height:38px;padding:.7rem 1.15rem 0;color:var(--preview-text);font-size:.61rem;font-weight:650}.preview-status-icons{display:inline-flex;gap:.55rem;color:var(--preview-muted);font-size:.57rem}.preview-content{position:relative;flex:1;min-height:0;overflow:hidden}.preview-screen{height:100%;padding:1rem 1.15rem 1.4rem;animation:preview-enter .42s var(--ease) both}.preview-toolbar{display:flex;align-items:flex-start;justify-content:space-between;padding:.35rem 0 1.45rem}.preview-toolbar h3,.preview-centered-title{margin:0;font-size:1.2rem;font-weight:750;letter-spacing:.07em;line-height:1;text-transform:uppercase}.preview-toolbar-actions{display:flex;gap:.8rem;color:var(--preview-muted)}.preview-list{display:flex;flex-direction:column;border:1px solid var(--preview-line);border-radius:17px;overflow:hidden}.bookmark-row,.settings-row{display:grid;grid-template-columns:38px minmax(0,1fr) 19px;align-items:center;gap:.75rem;min-height:67px;padding:.72rem;border-bottom:1px solid var(--preview-line)}.bookmark-row:last-child,.settings-row:last-child{border-bottom:0}.preview-row-icon,.settings-icon{display:grid;width:38px;height:38px;place-items:center;border-radius:12px;background:var(--preview-surface-2);color:var(--preview-accent)}.bookmark-row strong,.settings-row strong{display:block;overflow:hidden;color:var(--preview-text);font-size:.8rem;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.bookmark-row small{display:block;margin-top:.22rem;color:var(--preview-muted);font-size:.66rem}.preview-caret{color:#535354}.preview-library-foot{display:flex;justify-content:space-between;margin-top:1rem;color:var(--preview-muted);font-size:.66rem}.preview-library-foot span:first-child{display:inline-flex;align-items:center;gap:.4rem}.preview-library-foot .status-dot{width:5px;height:5px}.preview-centered-title{padding:.45rem 0 1.35rem;text-align:center}.preview-search-box{display:grid;grid-template-columns:25px 1fr 36px;align-items:center;gap:.55rem;min-height:50px;padding:.4rem .55rem .4rem .85rem;border:1px solid var(--preview-line);border-radius:13px;color:var(--preview-muted);font-size:.75rem}.preview-filter{display:grid;width:36px;height:36px;place-items:center;border-radius:10px;background:var(--preview-surface-2)}.preview-search-empty{display:flex;flex-direction:column;align-items:center;max-width:230px;margin:7rem auto 0;text-align:center}.empty-icon{display:grid;width:66px;height:66px;margin-bottom:1rem;place-items:center;border:1px solid var(--preview-line);border-radius:18px;background:var(--preview-surface-2);color:var(--preview-muted)}.preview-search-empty h3{margin:0;font-size:1.02rem}.preview-search-empty p{margin:.6rem 0 0;color:var(--preview-muted);font-size:.74rem;line-height:1.55}.preview-settings{padding-right:1rem;padding-left:1rem}.settings-list{border:1px solid var(--preview-line);border-radius:17px;overflow:hidden}.settings-row{grid-template-columns:38px 1fr 19px;min-height:49px;padding:.42rem .65rem}.settings-row strong{font-size:.76rem}.settings-icon{width:34px;height:34px;border-radius:11px}.settings-signout{display:flex;align-items:center;justify-content:center;gap:.5rem;min-height:47px;margin-top:1rem;border:1px solid var(--preview-accent);border-radius:14px;color:var(--preview-accent);font-size:.74rem;font-weight:720;letter-spacing:.12em}.preview-nav{display:grid;grid-template-columns:repeat(3,1fr);min-height:74px;border-top:1px solid var(--preview-line);background:var(--preview-bg)}.preview-nav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.25rem;border:0;background:transparent;color:var(--preview-muted);cursor:pointer;font-size:.66rem;transition:color .18s ease}.preview-nav button:hover,.preview-nav button.is-active{color:var(--preview-accent)}.statement{padding-top:clamp(5rem,11vw,10rem);padding-bottom:clamp(5rem,11vw,10rem);text-align:center}.statement h2{max-width:60rem;margin:0 auto;font-size:clamp(2.5rem,5vw,5rem);line-height:1}.statement p{max-width:30rem;margin:1.6rem auto 0;color:var(--muted);font-size:.95rem;line-height:1.6}.reader-section{padding-top:clamp(5rem,11vw,10rem);padding-bottom:clamp(5rem,11vw,10rem);border-top:1px solid var(--line);border-bottom:1px solid var(--line);text-align:center}.reader-copy{max-width:42rem;margin:0 auto}.reader-copy p,.self-host-copy p{max-width:36rem;margin:1.65rem auto 0;color:var(--muted);font-size:1rem;line-height:1.65}.reader-art{display:flex;justify-content:center;margin-top:clamp(3rem,7vw,6rem)}.reader-preview{width:min(100%,900px);overflow:hidden;border:1px solid var(--line-strong);border-radius:16px;background:var(--surface);transform:none;transition:transform .55s var(--ease),border-color .25s ease}.reader-preview:hover{border-color:var(--accent-line);transform:translateY(-6px)}.reader-preview-top{display:flex;justify-content:space-between;padding:1.1rem 1.25rem;border-bottom:1px solid var(--line);color:var(--muted);font-size:.72rem}.reader-preview-top span:first-child{display:inline-flex;align-items:center;gap:.45rem;color:var(--text)}.reader-preview-body{padding:clamp(2.2rem,6vw,5rem) clamp(1.4rem,8vw,7rem) 2.4rem}.reader-preview-body h3{margin:0;font-size:clamp(2.1rem,4.4vw,4rem);font-weight:680;letter-spacing:-.075em;line-height:.94}.reader-preview-body h3 em{color:var(--accent);font-style:normal}.reader-rule{width:100%;height:1px;margin:clamp(3.2rem,7vw,6rem) 0 1.35rem;background:var(--line)}.reader-preview-body p{max-width:25rem;margin:0;color:var(--muted);font-size:.94rem;line-height:1.65}.reader-preview-foot{display:flex;justify-content:space-between;margin-top:3rem;color:var(--subtle);font-size:.7rem}.reader-preview-foot span:last-child{color:var(--accent);font-size:1rem}.self-host-section{padding-top:clamp(5rem,11vw,10rem);padding-bottom:clamp(5rem,11vw,10rem);border-bottom:1px solid var(--line);text-align:center}.self-host-copy h2{font-size:clamp(2.8rem,6vw,6rem);line-height:.94}.self-host-points{display:grid;max-width:47rem;margin:2.25rem auto 0;padding:0;color:var(--muted);font-size:.9rem;gap:.8rem;list-style:none}.self-host-points li{display:inline-flex;align-items:center;justify-content:center;gap:.55rem}.self-host-points svg{flex:0 0 auto;color:var(--accent)}.self-host-panel{max-width:900px;margin:clamp(3rem,7vw,6rem) auto 0;overflow:hidden;border:1px solid var(--line-strong);border-radius:16px;background:var(--surface);text-align:left;animation:panel-enter .36s var(--ease) both}.self-host-panel-bar{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.75rem;min-height:48px;padding:0 1rem;border-bottom:1px solid var(--line);color:var(--subtle);font-family:SFMono-Regular,Consolas,monospace;font-size:.68rem}.terminal-dots{display:inline-flex;gap:.3rem}.terminal-dots i{width:7px;height:7px;border:1px solid var(--line-strong);border-radius:50%}.self-host-state{display:inline-flex;align-items:center;gap:.4rem;color:var(--muted);font-family:inherit;font-size:inherit}.self-host-state svg{color:var(--accent)}.self-host-panel-body{padding:clamp(1.5rem,4vw,3rem)}.self-host-command{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.7rem;color:var(--text)}.self-host-prompt{color:var(--accent);font-family:SFMono-Regular,Consolas,monospace}.self-host-command code{overflow:hidden;color:var(--text);font-family:SFMono-Regular,Consolas,monospace;font-size:clamp(.75rem,1.5vw,.95rem);text-overflow:ellipsis;white-space:nowrap}.self-host-command button{display:grid;width:32px;height:32px;place-items:center;border:1px solid var(--line);border-radius:8px;background:transparent;color:var(--muted);cursor:pointer}.self-host-command button:hover{border-color:var(--accent-line);color:var(--accent)}.self-host-note{max-width:34rem;margin:1.25rem 0 0;color:var(--muted);font-size:.95rem;line-height:1.6}.panel-link{margin-top:1.75rem}.hosting-specs{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.85rem;color:var(--muted);font-size:.72rem}.hosting-specs span+span:before{margin-right:.45rem;color:var(--accent);content:"·"}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.site-footer{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;gap:1rem;min-height:108px;border-top:1px solid var(--line)}.site-footer>p{margin:0;color:var(--subtle);font-size:.8rem;text-align:center}.footer-links{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:1rem;color:var(--muted);font-size:.74rem}.footer-links a{display:inline-flex;align-items:center;gap:.2rem}.footer-links span{color:var(--subtle)}.js [data-reveal]{opacity:0;transform:translateY(26px);transition:opacity .56s var(--ease),transform .56s var(--ease)}.js [data-reveal].is-visible{opacity:1;transform:translateY(0)}.js .hero-copy[data-reveal]{transition-delay:80ms}.js .hero-demo[data-reveal]{transition-delay:.22s}@keyframes preview-enter{0%{opacity:0;transform:translateY(8px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes panel-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:920px){.site-nav{gap:clamp(.9rem,3vw,1.8rem);font-size:.78rem}.header-github{display:none}.hero{padding-top:9rem}.hero-copy{max-width:40rem}.hero-demo{justify-content:center}.app-preview-wrap{width:min(100%,410px)}.reader-art{justify-content:center}.reader-preview{width:min(100%,650px)}.self-host-panel{width:min(100%,900px)}}@media(max-width:600px){.site-header{height:68px}.brand{gap:.45rem;font-size:.95rem}.brand-mark{width:26px;height:26px}.site-nav{gap:.62rem;font-size:.68rem}.header-actions{gap:.45rem}.theme-toggle{width:34px;height:34px}.hero{padding-top:8.3rem;padding-bottom:5.5rem}.hero h1{font-size:clamp(2.75rem,11.5vw,4.2rem)}.hero-lede{max-width:21rem;font-size:1rem}.hero-actions{align-items:center;flex-direction:column;gap:1.2rem}.app-preview{border-radius:27px}.statement{display:block;padding-top:5rem;padding-bottom:5rem}.statement h2{margin-top:0;font-size:clamp(2.5rem,11.5vw,4.2rem)}.statement p{max-width:20rem;margin-top:1.6rem}.reader-copy h2,.self-host-copy h2{font-size:clamp(2.5rem,11.5vw,4.2rem)}.reader-section,.self-host-section{padding-top:5rem;padding-bottom:5rem}.reader-preview-body{padding:2.3rem 1.35rem 2rem}.reader-preview-body h3{font-size:2.25rem}.reader-preview{transform:none}.reader-preview:hover{transform:translateY(-4px)}.self-host-panel-bar{grid-template-columns:auto 1fr}.self-host-state{grid-column:2}.self-host-panel-body{padding:1.35rem}.self-host-command code{font-size:.66rem}.self-host-points{text-align:left}.self-host-points li{justify-content:flex-start;align-items:flex-start}.site-footer{grid-template-columns:1fr;gap:1.25rem;padding-top:2.5rem;padding-bottom:2.5rem}.site-footer>p{max-width:15rem;text-align:left}.footer-links{justify-content:flex-start}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}.app-preview,.reader-preview{transform:none!important}}
