:root{--accent: #f12345;--text-primary: #888888;--text-muted: #aaaaaa;--background: #ffffff;--border: rgba(170, 170, 170, .45);--accent-soft: rgba(241, 35, 69, .08)}*,*:before,*:after{box-sizing:border-box}html{font-size:clamp(16px,1.1vw,18px);color-scheme:light}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Helvetica Neue,Helvetica,Arial,sans-serif;line-height:1.6;color:var(--text-primary);background:var(--background);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:clip}button,input{font:inherit}a{color:var(--accent);text-decoration:none;border-bottom:1px solid rgba(241,35,69,.25);transition:border-color .2s ease}a:hover{border-color:var(--accent)}button,.download-link{border:1px solid var(--accent);border-radius:6px;background:var(--background);color:var(--accent);cursor:pointer;padding:.7rem 1rem;text-decoration:none;font-weight:500;transition:background .2s ease,color .2s ease,border-color .2s ease}button:hover:not(:disabled),.download-link:hover:not(:disabled){background:var(--accent);color:#fff;border-color:var(--accent)}button.button-subtle,.download-link.button-subtle{border-color:var(--border);color:var(--text-muted)}button.button-subtle:hover:not(:disabled),.download-link.button-subtle:hover:not(:disabled){background:#aaaaaa24;color:var(--text-primary);border-color:var(--text-muted)}button.action-primary:not(:disabled),.download-link.action-primary:not(:disabled){background:var(--accent);color:#fff;border-color:var(--accent)}button.action-primary:not(:disabled):hover,.download-link.action-primary:not(:disabled):hover{background:var(--background);color:var(--accent)}button:disabled{cursor:not-allowed;opacity:.55}button:focus-visible,.download-link:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.page-body{min-height:100vh;padding:1.5rem}.app-shell{display:flex;flex-direction:column;gap:1.6rem;margin:0 auto;max-width:1180px}.landing-shell{display:flex;flex-direction:column;gap:1.1rem;margin:0 auto;max-width:52rem}.app-header{margin-bottom:.5rem}.app-header-row{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.auth-actions{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;min-width:0}.auth-email{font-size:.9rem;color:var(--text-muted);min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.auth-callback{min-height:40vh;justify-content:center}.header-link{font-size:.95rem;color:var(--text-muted);text-decoration:none;border-bottom:1px solid rgba(241,35,69,.2);line-height:1.4;transition:color .2s ease,border-color .2s ease}.auth-actions .header-link{padding:0;border:0;border-bottom:1px solid rgba(241,35,69,.2);border-radius:0;font-weight:inherit}.auth-actions .header-link:hover{background:transparent;color:var(--text-primary);border-bottom-color:var(--accent);text-decoration:none}.auth-actions .header-link:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px}.header-link:hover{color:var(--text-primary);border-bottom-color:var(--accent)}.allowance-notice,.status{margin:0;color:var(--text-muted);font-size:.95rem}.allowance-notice{margin-bottom:1rem}.app-header h1{font-size:clamp(2rem,4vw,2.8rem);font-weight:500;letter-spacing:-.01em;line-height:1.25;margin:0 0 1.1rem;color:var(--text-primary)}.app-header p{color:var(--text-muted);margin:0;max-width:65ch}.app-footer{display:flex;flex-wrap:wrap;gap:.75rem 1.25rem;margin-top:.5rem;padding-top:1rem;border-top:1px solid var(--border);font-size:.95rem}.app-footer a{color:var(--text-muted);border-bottom-color:#f1234533}.app-footer a:hover{color:var(--text-primary);border-bottom-color:var(--accent)}.auth-shell{max-width:760px;margin:0 auto;padding:6rem 1.5rem 8rem}.auth-shell h1{font-size:clamp(2rem,4vw,2.8rem);font-weight:500;letter-spacing:-.01em;margin:0 0 3rem}.auth-shell p{margin:0 0 1.4rem;max-width:65ch}.auth-shell form{margin:0 0 1.4rem}@media(min-width:768px){.page-body{padding:3rem}.app-shell,.landing-shell{gap:2rem}}@media(min-width:1200px){.landing-shell{max-width:80ch}}@media(min-width:1400px){.auth-shell{max-width:820px}}@media(max-width:760px){.page-body{padding:1rem}.app-header-row{flex-direction:column;align-items:stretch}.auth-actions{width:100%}.auth-email{flex:1 1 100%;white-space:normal;word-break:break-all}.auth-actions button{flex:0 1 auto;min-width:0}}@media(max-width:768px){.auth-shell{padding:4rem 1.2rem 6rem}.auth-shell h1{margin-bottom:2rem}}h2{font-size:1rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-primary);margin:0 0 1rem}.alert{background:var(--accent-soft);border-left:4px solid var(--accent);color:var(--text-primary);margin:0;padding:.8rem 1rem}.alert a{border-bottom-color:var(--accent)}.warning{background:#fff8e8;border-left:4px solid #c58a12;color:#6a4d08;margin:0;padding:.8rem 1rem}.landing-content h1{font-size:clamp(2rem,4vw,2.8rem);font-weight:500;line-height:1.25;margin:0;color:var(--text-primary)}.landing-content h2{font-size:clamp(1.15rem,2.5vw,1.45rem);font-weight:600;letter-spacing:normal;line-height:1.25;margin:.35rem 0 0;text-transform:none;color:var(--text-primary)}.landing-content h3{font-size:.78rem;font-weight:600;letter-spacing:.06em;line-height:1.3;margin:.5rem 0 0;text-transform:uppercase;color:var(--text-muted)}.landing-content p{margin:0;max-width:65ch}.landing-content ul,.landing-content ol{display:flex;flex-direction:column;gap:.35rem;margin:0;padding-left:0;list-style:none}.landing-content li{position:relative;margin:0;padding-left:1.15rem;line-height:1.45}.landing-content ul>li:before{content:"•";position:absolute;left:0;color:var(--accent);font-weight:700}.landing-content ol{counter-reset:landing-step}.landing-content ol>li{counter-increment:landing-step}.landing-content ol>li:before{content:counter(landing-step) ".";position:absolute;left:0;color:var(--accent);font-weight:600;font-variant-numeric:tabular-nums}.landing-muted{color:var(--text-muted);font-style:normal}.landing-cta{display:inline-block;width:fit-content;margin-top:.25rem;padding:.55rem .9rem;border:1px solid var(--accent);border-radius:.35rem;background:var(--background);color:var(--accent);font-weight:500;text-decoration:none;transition:background .2s ease,color .2s ease,border-color .2s ease}.landing-cta:hover{background:var(--accent);color:#fff;border-color:var(--accent)}.landing-inline-link{color:var(--accent);text-decoration:underline;text-underline-offset:2px}.landing-inline-link:hover{color:var(--text-primary)}.landing-divider{border:0;border-top:1px solid rgba(241,35,69,.15);margin:.35rem 0}.pricing-intro{max-width:60ch}.pricing-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.pricing-card{display:flex;flex-direction:column;gap:.5rem;padding:1.25rem;border:1px solid var(--border);border-radius:.5rem;background:var(--background)}.pricing-card h2{margin:0;font-size:1.1rem}.pricing-amount{margin:0;font-size:1.75rem;font-weight:600;color:var(--text-primary)}.pricing-note{margin:0;color:var(--text-muted);font-size:.95rem}.account-panel{display:flex;flex-direction:column;gap:1rem;max-width:40rem}.account-details{display:grid;gap:.75rem;margin:0}.account-details div{display:grid;gap:.15rem}.account-details dt{margin:0;font-size:.85rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.account-details dd{margin:0}.archive-page .archive-shell{max-width:none;margin:0;padding:0}.archive-main{max-width:760px;margin:0 auto;padding:6rem 1.5rem 8rem}@media(min-width:1400px){.archive-main{max-width:820px}}.archive-main h1{font-size:clamp(2rem,4vw,2.8rem);font-weight:500;letter-spacing:-.01em;margin-bottom:3rem}.archive-main h2{font-size:1rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;margin-top:4rem;margin-bottom:1.2rem;color:var(--text-primary)}.archive-main h3{font-size:.95rem;font-weight:600;margin-top:2rem;margin-bottom:.8rem;color:var(--text-primary)}.archive-main p{margin:0 0 1.4rem;max-width:65ch}.archive-main ul{padding-left:1.2rem;margin-bottom:1.5rem}.archive-main li{margin-bottom:.4rem}.text-muted{color:var(--text-muted)}.diagram-block{margin:6rem 0}.diagram-block img{display:block;width:100%;height:auto;margin-bottom:2.5rem;border:1px solid rgba(241,35,69,.15)}.diagram-text{max-width:65ch}.diagram-text h2{font-size:.8rem;letter-spacing:.12em;margin-top:3rem;color:var(--text-muted)}.legal-nav{margin-bottom:2.5rem;font-size:.85rem;color:var(--text-muted)}.legal-nav span{margin:0 .35rem}.legal-page h2:first-of-type{margin-top:2rem;margin-bottom:.4rem}.legal-meta{margin-top:0;margin-bottom:2.5rem;font-size:.9rem}.legal-page table{width:100%;border-collapse:collapse;margin:1rem 0 1.5rem;font-size:.92rem}.legal-page th,.legal-page td{border:1px solid rgba(241,35,69,.15);padding:.55rem .7rem;text-align:left;vertical-align:top}.legal-page th{font-weight:600;color:var(--text-primary)}.side-tabs{position:fixed;top:50%;right:0;z-index:1000;transform:translateY(-50%);display:flex;flex-direction:column;gap:.5rem}.side-tab{padding:.85rem .55rem;font-size:.72rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;line-height:1.2;color:var(--accent);background:var(--background);border:1px solid var(--accent);border-radius:.35rem 0 0 .35rem;box-shadow:-2px 2px 12px #0000000f;writing-mode:vertical-rl;text-orientation:mixed;text-decoration:none;transition:background .2s ease,color .2s ease,border-color .2s ease,padding-right .2s ease}.side-tab:hover{background:var(--accent);color:#fff;border-color:var(--accent);padding-right:.7rem}.archive-copyright{margin-top:1rem;font-size:.85rem;color:var(--text-muted)}.alert{color:var(--accent);max-width:65ch}@media(max-width:768px){.archive-main{padding:4rem 1.2rem 6rem}.diagram-block{margin:4rem 0}.archive-main h1{margin-bottom:2rem}.side-tab{font-size:.62rem;padding:.65rem .45rem}}
