*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.65;color:var(--text);background-color:var(--bg);min-height:100vh;display:flex;flex-direction:column;transition:background-color .2s ease,color .2s ease}a:any-link{color:var(--accent)}a:any-link:hover{color:var(--accent-strong)}a.button--primary,a.button--primary:hover{color:var(--on-accent)}a:focus-visible,button:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:3px}app-root,app-home,app-privacy,app-terms,app-pricing,app-not-found{display:block;width:100%;min-width:0}.container{width:min(92%,var(--max-width));margin:0 auto}h1,h2,h3{line-height:1.2;font-weight:700;color:var(--text)}h1{font-size:clamp(2.1rem,5vw,3rem);letter-spacing:-.02em}h2{font-size:clamp(1.4rem,3.2vw,1.85rem);margin-bottom:.6rem}h3{font-size:1.12rem;margin-bottom:.3rem}p{margin-bottom:.9rem}.button{display:inline-block;cursor:pointer;text-decoration:none;font-weight:600;font-size:1rem;padding:.8rem 1.7rem;border-radius:.7rem;border:1px solid transparent;transition:transform .12s ease,background-color .2s ease}.button--primary{background:var(--accent);color:var(--on-accent)}.button--primary:hover{background:var(--accent-strong);color:var(--on-accent)}.button--ghost{background:transparent;color:var(--text);border-color:var(--rule)}.button--ghost:hover{border-color:var(--accent);color:var(--accent)}.button:active{transform:translateY(1px)}.card{background:var(--surface);border:1px solid var(--rule);border-radius:1rem;box-shadow:var(--shadow);padding:1.5rem 1.6rem}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.prose{padding:2.5rem 0 3.5rem}.prose h2{margin-top:2rem;padding-bottom:.35rem;border-bottom:1px solid var(--rule)}.prose p,.prose li{color:var(--text-dim)}.prose ul{margin:0 0 1rem 1.2rem}.prose li{margin-bottom:.35rem}
