:root{--ink:#17231f;--muted:#65716d;--paper:#f7f7f2;--card:#fff;--sage:#477b68;--sage-dark:#2c5849;--gold:#d6a84e;--border:#dfe5df;--danger:#a53f3f;--shadow:0 18px 50px rgba(26,52,43,.1);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at 90% 0,#e1eee7 0,transparent 34rem),var(--paper);line-height:1.55}a{color:var(--sage-dark);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3{font-family:Georgia,serif;line-height:1.15;margin:.25em 0 .6em}h1{font-size:clamp(2.2rem,5vw,4.8rem)}h2{font-size:clamp(1.6rem,3vw,2.6rem)}p{color:var(--muted)}.container{width:min(1160px,calc(100% - 2rem));margin:auto}.site-header{position:sticky;top:0;z-index:10;background:#f7f7f2eb;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--border)}.nav{min-height:72px;display:flex;align-items:center;gap:1.2rem}.brand{font:700 1.25rem Georgia,serif;color:var(--ink);margin-right:auto}.nav-links{display:flex;align-items:center;gap:1rem}.button,button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;background:var(--sage);color:#fff;padding:.75rem 1.15rem;font:600 .95rem inherit;cursor:pointer}.button:hover,button:hover{background:var(--sage-dark);text-decoration:none}.button.secondary,button.secondary{background:#fff;color:var(--sage-dark);border:1px solid var(--border)}button:disabled{opacity:.6;cursor:wait}.hero{display:grid;grid-template-columns:1.15fr .85fr;gap:3rem;align-items:center;padding:7rem 0}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.75rem;font-weight:800;color:var(--sage)}.hero-card,.card{background:#ffffffe0;border:1px solid var(--border);border-radius:24px;padding:clamp(1.25rem,3vw,2.2rem);box-shadow:var(--shadow)}.hero-card blockquote{font:1.2rem Georgia,serif;border-left:3px solid var(--gold);padding-left:1.1rem;margin-left:0;margin-right:0}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.main{padding:2.2rem 0 5rem}.dashboard{display:grid;grid-template-columns:240px 1fr;gap:1.5rem}.sidebar{display:flex;flex-direction:column;gap:.35rem}.sidebar a{padding:.7rem .9rem;border-radius:12px}.sidebar a.active,.sidebar a:hover{background:#e2ece6;text-decoration:none}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.field{display:flex;flex-direction:column;gap:.35rem}.field.full{grid-column:1/-1}label{font-size:.85rem;font-weight:700}input,textarea,select{width:100%;border:1px solid #cad5ce;border-radius:12px;background:#fff;padding:.8rem;font:inherit;color:var(--ink)}textarea{min-height:130px;resize:vertical}.notice{padding:1rem;border-radius:14px;background:#e6f1eb;color:var(--sage-dark);margin:1rem 0}.notice.error{background:#f7e3e3;color:var(--danger)}.metric{font-size:2rem;font-weight:800;color:var(--sage-dark)}.script-layout{display:grid;grid-template-columns:250px 1fr;gap:1rem}.section-list{display:flex;flex-direction:column;gap:.4rem}.script-section{margin-bottom:1rem;scroll-margin-top:100px}.script-body{white-space:pre-wrap;color:var(--ink)}.progress{display:flex;gap:.6rem;align-items:center;padding:1rem;color:var(--sage-dark)}.spinner{width:20px;height:20px;border:3px solid #cfe0d7;border-top-color:var(--sage);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.footer{border-top:1px solid var(--border);padding:2rem 0;color:var(--muted)}.nav-toggle{display:none}@media(max-width:800px){h1{font-size:clamp(2.25rem,12vw,3.2rem)}h2{font-size:clamp(1.8rem,9vw,2.5rem)}.container{width:min(100% - 1.5rem,1160px)}.hero,.dashboard,.script-layout{grid-template-columns:1fr}.hero{padding:3.5rem 0;gap:2rem}.hero-card blockquote{font-size:1.1rem}.grid,.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.sidebar{display:none}.nav-toggle{display:inline-flex}.nav-links{display:none;position:absolute;top:72px;left:0;right:0;background:var(--paper);padding:1rem;flex-direction:column}.nav-open .nav-links{display:flex}}
