: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}.text-muted{color:var(--text-muted)}.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,.app-header .app-wordmark{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 .app-header-title-link{color:inherit;text-decoration:none;border-bottom:none}.app-header .app-header-title-link:hover{color:inherit;border-bottom:none}.app-header .app-header-title-link:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px}.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)}html:has(.page-body--fixed-chrome){height:100%;overflow:hidden}body:has(.page-body--fixed-chrome){height:100%;overflow:hidden}.page-body--fixed-chrome{box-sizing:border-box;display:flex;flex-direction:column;height:100dvh;max-height:100dvh;overflow:hidden;padding-top:max(1rem,env(safe-area-inset-top));padding-bottom:max(1rem,env(safe-area-inset-bottom))}.app-shell--fixed-chrome{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden;width:100%}.app-shell--fixed-chrome .app-header{flex-shrink:0;margin-bottom:0}.app-scroll-region{flex:1;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.app-chrome-footer{flex-shrink:0;padding-top:.75rem}.app-chrome-footer .app-footer{margin-top:0;padding-top:.75rem}.auth-shell{max-width:65ch;margin:0;padding:0}.auth-shell h2{font-size:clamp(1.5rem,3vw,2rem);font-weight:500;letter-spacing:-.01em;margin:0 0 1.5rem;color:var(--text-primary)}.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){.landing-shell.auth-callback{max-width:80ch}}@media(max-width:760px){.page-body{padding:1rem;padding-left:max(1rem,env(safe-area-inset-left));padding-right:max(1rem,env(safe-area-inset-right))}.page-body--fixed-chrome{padding-top:max(.75rem,env(safe-area-inset-top));padding-bottom:max(.75rem,env(safe-area-inset-bottom))}.app-header-row{flex-direction:column;align-items:stretch}.auth-actions{width:100%;gap:.45rem .65rem}.header-link{font-size:.88rem}.auth-email{flex:1 1 100%;white-space:normal;word-break:break-all}.auth-actions button{flex:0 1 auto;min-width:0}.app-footer{gap:.45rem .85rem;font-size:.88rem}.app-shell,.landing-shell{gap:1.25rem}}@media(max-width:768px){.auth-shell h2{margin-bottom:1.25rem}}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}.reader-body{max-width:65ch}.reader-body h1,.reader-body h2,.reader-body h3{margin-top:2rem;margin-bottom:.8rem}.reader-body p{margin:0 0 1.2rem}.reader-body ul,.reader-body ol{margin:0 0 1.2rem;padding-left:1.2rem}.reader-embed{margin:1.5rem 0;aspect-ratio:16 / 9;max-width:100%}.reader-embed iframe{width:100%;height:100%;border:1px solid var(--border);border-radius:6px}.library-volume{margin-top:2.5rem}.library-volume h2{margin-bottom:.5rem}.library-item-list{list-style:none;padding:0;margin:1rem 0 0}.library-item-list li{margin-bottom:1.2rem}.library-item-summary{margin:.35rem 0 0;font-size:.95rem}.landing-content .action-primary{display:inline-block;margin-top:.5rem}@media(max-width:760px){.reader-body{max-width:100%}.reader-embed{margin:1rem 0}.library-volume{margin-top:2rem}}
