:root{--ink:#16221c;--muted:#637068;--paper:#f7f3e9;--card:#fffdf7;--line:#ded8c8;--green:#1f5b46;--gold:#bd8e3b;--error:#9d312b}*{box-sizing:border-box}html{background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif;line-height:1.55}body{margin:0;min-height:100vh;background:radial-gradient(circle at 85% 5%,#e2eadf 0,transparent 27rem)}a{color:var(--green);text-underline-offset:.2em}button,.button{appearance:none;border:0;border-radius:999px;background:var(--green);color:white;cursor:pointer;display:inline-flex;font:inherit;font-weight:700;gap:.5rem;justify-content:center;padding:.8rem 1.2rem;text-decoration:none}button:hover,.button:hover{background:#174534}.secondary{background:transparent;border:1px solid var(--green);color:var(--green)}.secondary:hover{background:#e7eee9;color:var(--ink)}.site-header{align-items:center;display:flex;justify-content:space-between;margin:auto;max-width:76rem;padding:1.25rem 2rem}.brand{color:var(--ink);font-family:Georgia,serif;font-size:1.35rem;font-weight:700;text-decoration:none}.brand span{color:var(--gold)}nav{display:flex;gap:1.25rem}.site-header nav a{color:var(--ink);font-weight:600;text-decoration:none}main{min-height:70vh}.hero{margin:6rem auto 4rem;max-width:68rem;padding:0 2rem;text-align:center}.eyebrow{color:var(--gold);font-size:.75rem;font-weight:800;letter-spacing:.18em}.hero h1,.page-heading h1,.panel h1{font-family:Georgia,serif;font-size:clamp(2.5rem,7vw,5.5rem);font-weight:500;letter-spacing:-.04em;line-height:1.02;margin:.5rem 0 1.5rem}.hero h1 span{color:var(--green);font-style:italic}.hero>p:not(.eyebrow,.free-note){color:var(--muted);font-size:1.1rem;margin:0 auto 2rem;max-width:43rem}.search{background:var(--card);border:1px solid var(--line);border-radius:999px;box-shadow:0 1rem 3rem #4b574617;display:flex;margin:0 auto;max-width:46rem;padding:.45rem}.search input{background:transparent;border:0;flex:1;font:inherit;font-size:1.05rem;min-width:0;outline:0;padding:.6rem 1rem}.free-note,.muted{color:var(--muted);font-size:.88rem}.results,.library{margin:0 auto;max-width:68rem;padding:2rem}.section-heading,.job-card{align-items:center;display:flex;justify-content:space-between}.verse-card,.panel,.job-card,.empty{background:var(--card);border:1px solid var(--line);border-radius:1.25rem;box-shadow:0 .75rem 2rem #4b57460c;margin:1rem 0;padding:1.5rem}.verse-card h3{font-family:Georgia,serif;font-size:1.8rem;margin:0 0 1rem}.editions{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,20rem),1fr))}.edition{border-left:3px solid #d8c79e;padding:.5rem 1rem}.edition-name{color:var(--gold);font-size:.75rem;font-weight:800;letter-spacing:.14em}.edition blockquote{font-family:Georgia,serif;font-size:1.12rem;margin:1rem 0}.notice{background:#edf2ed;border-left:4px solid var(--green);margin:1rem auto;max-width:64rem;padding:1rem}.notice.error{background:#f8e9e7;border-color:var(--error);color:var(--error)}.page-heading{margin:4rem auto 1rem;max-width:68rem;padding:0 2rem}.page-heading h1,.panel h1{font-size:clamp(2.2rem,6vw,4rem)}.narrow{margin-left:auto;margin-right:auto;max-width:44rem}.panel{margin-top:4rem;padding:2rem}.reference{font-family:Georgia,serif;font-size:1.6rem}.job-card{gap:2rem}.job-card h2{font-family:Georgia,serif;margin:.6rem 0 0}.status{background:#edf2ed;border-radius:999px;color:var(--green);font-size:.75rem;font-weight:800;padding:.35rem .6rem;text-transform:uppercase}.status.failed,.status.rejected{background:#f8e9e7;color:var(--error)}.pagination{justify-content:space-between;padding:1rem}.generation{text-align:center}.preview{aspect-ratio:9/16;background:#111;border-radius:1rem;max-height:65vh;max-width:100%;width:auto}.progress-orb{animation:pulse 1.8s infinite;background:var(--green);border:8px solid #d9e5dc;border-radius:50%;height:4rem;margin:2rem auto;width:4rem}.stage{font-family:Georgia,serif;font-size:1.5rem}@keyframes pulse{50%{box-shadow:0 0 0 1rem #d9e5dc88;transform:scale(.92)}}.account-list>div{border-bottom:1px solid var(--line);display:flex;justify-content:space-between;padding:1rem 0}.account-list dt{color:var(--muted)}.account-list dd{font-weight:700;margin:0}.message{text-align:center}.export-grid{display:grid;gap:2rem;grid-template-columns:minmax(16rem,24rem) minmax(20rem,40rem);justify-content:center;margin:2rem auto;max-width:72rem;padding:0 2rem}.export-grid .panel{margin:0}.export-form label:not(.choice){display:block;font-weight:700;margin:1rem 0}.export-form input[type=text],.export-form input:not([type]),.export-form textarea{background:white;border:1px solid var(--line);border-radius:.6rem;display:block;font:inherit;margin-top:.35rem;padding:.7rem;width:100%}.export-form fieldset{border:0;border-top:1px solid var(--line);margin:1.5rem 0;padding:1rem 0}.export-form legend{font-family:Georgia,serif;font-size:1.2rem;font-weight:700}.choice{display:block;margin:.8rem 0}.choice input{height:1.1rem;margin-right:.5rem;width:1.1rem}.choice.consent{background:#edf2ed;border-radius:.75rem;padding:1rem}.export-form button:disabled{cursor:not-allowed;opacity:.45}.policy{padding:4rem 1rem}.policy>h1{font-family:Georgia,serif;font-size:clamp(2.4rem,6vw,4rem);line-height:1.05}.policy section{border-top:1px solid var(--line);padding:1rem 0}.policy h2{font-family:Georgia,serif}.danger-link{color:var(--error);font-weight:700}footer{border-top:1px solid var(--line);display:flex;justify-content:space-between;margin:5rem auto 0;max-width:76rem;padding:2rem}.sr-only{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0)}@media(max-width:640px){.site-header{padding:1rem}.site-header nav{gap:.75rem}.site-header nav a:first-child{display:none}.hero{margin-top:3rem;padding:0 1rem}.search{border-radius:1rem;flex-direction:column}.results,.library,.page-heading{padding-left:1rem;padding-right:1rem}.section-heading,.job-card,footer{align-items:flex-start;flex-direction:column}.panel{border-left:0;border-right:0;border-radius:0;margin-top:2rem}.account-list>div{display:block}.account-list dd{margin-top:.25rem}.export-grid{grid-template-columns:1fr;padding:0 1rem}.export-grid>div:first-child{text-align:center}}
