:root{color-scheme:light dark;--text:#202820;--bg:#f4f4ef;--line:#d9ddd2;--body:#586052;--muted:#65705f;--accent-text:#536747;--card:#fffefa;--field:#fff;--field-line:#b8c0af;--primary:#334e32;--on-primary:#fff;--focus:#bf8b34;--soft:#e8eddf;--warn:#6d592b}@media(prefers-color-scheme:dark){:root{--text:#e9ece4;--bg:#121613;--line:#2b332a;--body:#c4cbbb;--muted:#99a48f;--accent-text:#a9c39b;--card:#1b211b;--field:#151a16;--field-line:#45503f;--primary:#7fb078;--on-primary:#0e140e;--focus:#e0ab4e;--soft:#243024;--warn:#dcb86a}}
:root{font-family:Inter,ui-sans-serif,system-ui,sans-serif;color:var(--text);background:var(--bg);font-synthesis:none}*{box-sizing:border-box}body{margin:0}header{min-height:88px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px 6vw}.brand{font-size:15px;letter-spacing:.12em;font-weight:800;color:inherit;text-decoration:none}.brand span{font-size:10px;display:block;letter-spacing:.3em;color:var(--muted);margin-top:5px}main{max-width:1120px;padding:58px 30px 88px;margin:auto;min-height:75vh}.intro{max-width:700px;margin-bottom:38px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.15em;color:var(--accent-text)}h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(38px,6vw,66px);line-height:1.06;letter-spacing:-.045em;margin:18px 0}h2{font-size:23px;letter-spacing:-.025em;margin:0 0 16px}h3{font-size:23px;font-weight:600;letter-spacing:-.025em;margin:16px 0;overflow-wrap:anywhere}p{line-height:1.65;color:var(--body)}a{color:var(--primary);text-underline-offset:4px}.card{border:1px solid var(--line);background:var(--card);padding:30px;border-radius:12px}.login{max-width:470px}label{display:block;font-size:13px;font-weight:600;margin:22px 0}input{font:inherit;width:100%;display:block;padding:12px;border:1px solid var(--field-line);background:var(--field);border-radius:6px;margin-top:8px;color:var(--text)}button,.project-link{font:inherit;font-size:14px;font-weight:600;padding:12px 18px;background:var(--primary);color:var(--field);border:1px solid var(--primary);border-radius:6px;cursor:pointer}.project-link{display:inline-block;text-decoration:none;margin-top:12px}.secondary{background:transparent;color:var(--primary);border-color:var(--field-line)}button:disabled{opacity:.5;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--focus);outline-offset:4px}.help{font-size:13px;margin-top:26px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:26px}.section-heading h2{margin-bottom:0}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-bottom:24px}.badge{display:inline-block;font-size:11px;letter-spacing:.06em;font-weight:700;color:var(--accent-text);border:1px solid var(--line);border-radius:24px;padding:6px 10px}.project-card p{max-width:48ch}.project-card{display:flex;flex-direction:column;align-items:flex-start}.project-card .project-link{margin-top:auto}#notice:empty{display:none}#notice{padding:16px 20px;background:var(--soft);border-radius:8px;margin-bottom:24px}footer{font-size:12px;line-height:1.8;padding:25px 6vw;border-top:1px solid var(--line);color:var(--muted)}footer a{color:inherit}[hidden]{display:none!important}@media(max-width:650px){header{min-height:76px}main{padding:34px 20px 60px}.project-grid{grid-template-columns:1fr}.card{padding:24px}.intro{margin-bottom:28px}}

.task-progress{width:100%;margin-top:18px}.progress-panel{border-top:1px solid var(--line);padding-top:18px}.progress-list{list-style:none;padding:0}.progress-list li{padding:14px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.progress-list span{display:block;font-size:13px;color:var(--body);margin-top:6px}.progress-actions{display:flex;flex-wrap:wrap;gap:8px}

.usage-recovery{width:100%;margin-top:12px}.usage-panel{border-top:1px solid var(--line);padding-top:18px}.usage-panel p{overflow-wrap:anywhere}.usage-panel form{margin-bottom:18px}.usage-panel input{min-width:0}

.edit-composer{width:100%;margin-top:12px}.edit-panel{border-top:1px solid var(--line);padding-top:18px}.edit-panel textarea,.edit-panel select{font:inherit;width:100%;max-width:100%;display:block;padding:12px;border:1px solid var(--field-line);background:var(--field);border-radius:6px;margin-top:8px;color:var(--text)}.edit-panel textarea:focus-visible,.edit-panel select:focus-visible{outline:3px solid var(--focus);outline-offset:4px}.edit-panel p{overflow-wrap:anywhere}.request-reference{font-size:12px}.edit-panel form{margin-bottom:18px}

.billing-history{margin-top:48px;padding-top:28px;border-top:1px solid var(--line)}.billing-accounts,.billing-invoices{list-style:none;padding:0}.billing-accounts{display:flex;flex-wrap:wrap;gap:10px}.billing-accounts button[aria-current=true]{background:var(--soft);border-color:var(--primary)}.billing-details{margin:24px 0}.billing-invoices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.billing-invoices h4{font-size:19px;margin:0;overflow-wrap:anywhere}.billing-invoices h5{font-size:14px;margin:20px 0 8px}.billing-invoices dl{margin:20px 0}.billing-invoices dt{font-size:12px;color:var(--body);margin-top:12px}.billing-invoices dd{margin:4px 0 0;font-weight:600;overflow-wrap:anywhere}.billing-history p,.billing-history button,.billing-payments li{overflow-wrap:anywhere}.billing-payments{padding-left:20px;font-size:13px;line-height:1.8}@media(max-width:650px){.billing-invoices{grid-template-columns:1fr}.billing-accounts li,.billing-accounts button{max-width:100%}}
.preview-panel{border-top:1px solid var(--line);padding-top:18px;width:100%;margin-top:18px}.preview-panel .preview-frame{width:100%;height:560px;border:1px solid var(--line);border-radius:8px;background:#fff}.preview-panel .preview-actions{display:flex;flex-wrap:wrap;gap:8px}.preview-panel p,.preview-panel dd{overflow-wrap:anywhere}@media(max-width:650px){.preview-panel .preview-frame{height:420px}}
button[aria-busy=true]{position:relative;color:transparent!important;cursor:progress}button[aria-busy=true]::after{content:'';position:absolute;inset:0;margin:auto;width:16px;height:16px;border:2px solid currentColor;border-color:var(--on-primary) transparent var(--on-primary) transparent;border-radius:50%;animation:ff-spin .8s linear infinite}#projects button[aria-busy=true]::after,.secondary[aria-busy=true]::after{border-color:var(--primary) transparent var(--primary) transparent}@keyframes ff-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){button[aria-busy=true]::after{animation-duration:2s}}#notice[aria-busy=true]{background:transparent;border:1px solid var(--line)}
