:root { --ink:#18251e; --paper:#fbfaf5; --sage:#dce8dc; --accent:#d95d39; --line:#d7d9d0; --muted:#647168; }
* { box-sizing:border-box; }
body { margin:0; background:var(--paper); color:var(--ink); font:16px/1.5 system-ui,-apple-system,"Segoe UI",sans-serif; }
header, main { max-width:1120px; margin:auto; padding-left:24px; padding-right:24px; }
header { height:76px; display:flex; align-items:center; justify-content:space-between; }
header nav, .actions, .row-actions, .metrics { display:flex; align-items:center; gap:12px; }
header nav { gap:18px; } header nav a { text-decoration:none; font-weight:650; }
a { color:inherit; }
.brand { font:bold 28px Georgia,serif; text-decoration:none; }
.brand span, .steps b { color:var(--accent); }
main { padding-top:44px; padding-bottom:80px; }
.hero { max-width:760px; padding:66px 0; }
.eyebrow { color:#55725d; font-weight:700; font-size:13px; letter-spacing:.08em; text-transform:uppercase; }
.hero h1, h1 { font:clamp(42px,7vw,76px)/.98 Georgia,serif; margin:12px 0 22px; letter-spacing:-.055em; }
.lead { font-size:21px; max-width:700px; color:#405149; }
.actions { margin-top:32px; }
.actions.compact { margin-top:0; }
.button { appearance:none; border:0; border-radius:10px; background:var(--accent); color:#fff; cursor:pointer; display:inline-block; font:inherit; font-weight:700; padding:13px 18px; text-decoration:none; }
.button.secondary { background:transparent; color:var(--ink); border:1px solid var(--ink); }
.link { border:0; background:none; padding:0; font:inherit; cursor:pointer; text-decoration:underline; }
.danger, .error { color:#a42e18; }
.micro, .muted, small { color:var(--muted); font-size:14px; }
.steps, .cards { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.steps article, .option-card, .empty, .callout, .accepted, .terms, .boundary, .template-picker, .pilot-cta, .pilot-signal { border:1px solid var(--line); border-radius:16px; padding:24px; background:#fff; }
.steps h2, .boundary h2, .option-card h2 { font:28px/1.05 Georgia,serif; margin:10px 0; }
.boundary { margin-top:52px; max-width:720px; background:var(--sage); }
.pilot-cta { margin-top:52px; max-width:720px; background:#fff1ea; border-color:#e6aa95; }
.pilot-cta h2 { font:32px/1.05 Georgia,serif; margin:10px 0; }
.login { max-width:440px; margin:40px auto; }
.login h1, .page-head h1 { font-size:48px; }
.login form, .offer-form { display:grid; gap:18px; }
label { display:grid; gap:6px; font-weight:650; }
input, textarea, select { width:100%; font:inherit; border:1px solid #b8c0b8; background:#fff; padding:11px; border-radius:8px; }
textarea { min-height:84px; resize:vertical; }
.page-head { display:flex; justify-content:space-between; gap:20px; align-items:start; margin-bottom:30px; }
.page-head h1 { margin:5px 0; }
.offer-list { display:grid; gap:10px; }
.offer-list > a { border:1px solid var(--line); background:#fff; border-radius:12px; padding:17px; display:grid; grid-template-columns:140px 1fr auto; gap:12px; text-decoration:none; align-items:center; }
.status { font-size:13px; font-weight:700; }.status.draft{color:#67716b}.status.sent{color:#9c6200}.status.accepted{color:#17733b}.status.archived{color:#7b697b}
.metrics { margin:0 0 18px; }.metrics span { background:var(--sage); border-radius:999px; padding:7px 12px; font-size:14px; }.metrics b { font-size:17px; }
.pilot-signal { margin:0 0 18px; padding:18px; background:#f5f8f3; }.pilot-signal p { margin:5px 0; }
.metrics .attention { background:#fff0d6; color:#815300; }
.filters { display:grid; grid-template-columns:minmax(220px,1fr) 190px auto; align-items:end; gap:10px; margin:18px 0; }
.filters .button { min-height:47px; }
.offer-list mark { margin-left:8px; padding:3px 7px; border-radius:999px; background:#fff0d6; color:#815300; font-size:12px; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.empty { max-width:620px; }.offer-form { max-width:800px; }.offer-form section { display:grid; gap:14px; padding-bottom:20px; }.offer-form h2 { font:31px Georgia,serif; margin:0; }
.grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; }.option { border:1px solid var(--line); border-radius:12px; padding:18px; display:grid; gap:12px; }.option legend { font-weight:750; padding:0 6px; }.check { display:flex; align-items:center; gap:8px; }.check input { width:auto; }
.callout code { display:block; padding:12px; background:#f1f3ef; overflow:auto; }.cards { margin-top:26px; }.option-card { position:relative; }.option-card.recommended { border:2px solid #5f8969; }.option-card > span { color:#386344; font-weight:700; font-size:13px; }.option-card > b { font-size:26px; }.option-card ul { padding-left:18px; min-height:80px; }.option-card form { display:grid; gap:12px; }
.copy-row { display:flex; align-items:stretch; gap:10px; }.copy-row code { flex:1; }.questions { margin:26px 0; }.questions article { display:flex; justify-content:space-between; align-items:center; gap:20px; border-bottom:1px solid var(--line); padding:12px 0; }.questions article.resolved { opacity:.58; }.questions p { margin:0 0 4px; }
.section-head,.pagination { display:flex; justify-content:space-between; align-items:center; gap:14px; }.pagination { margin-top:20px; justify-content:center; }
.public-offer { max-width:980px; margin:auto; }.public-offer h1 { font-size:56px; }.deadline { font-weight:700; }.public-offer footer { margin-top:36px; color:var(--muted); font-size:13px; }
.terms { margin:20px 0; background:#f5f8f3; white-space:pre-line; }.terms h2 { margin-top:0; }.error-page { max-width:700px; padding:50px 0; }
.button:focus-visible,.link:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible { outline:3px solid #f0a58f; outline-offset:3px; }
.row-actions { margin:22px 0; flex-wrap:wrap; }.save-template { display:flex; align-items:end; gap:8px; padding:12px; background:#f3f6f1; border-radius:12px; }.save-template label { font-size:13px; min-width:230px; }.save-template input { padding:8px; }.template-picker { padding:16px; margin:0 0 24px; }.template-group { margin-top:14px; }.template-group > small { display:block; color:var(--muted); font-weight:700; }.template-group > div { display:flex; align-items:center; gap:12px; flex-wrap:wrap; margin-top:8px; }.template-picker a { border:1px solid var(--line); border-radius:999px; padding:6px 10px; text-decoration:none; font-size:14px; }.template-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }.template-card { border:1px solid var(--line); border-radius:16px; padding:20px; background:#fff; }.template-card h2 { font:25px/1.1 Georgia,serif; margin:6px 0; }.template-card .actions { margin-top:16px; flex-wrap:wrap; }
@media (max-width:700px) { header,main { padding-left:16px; padding-right:16px; } header nav { gap:10px; font-size:14px; }.hero { padding:32px 0; }.actions,.page-head { flex-direction:column; align-items:stretch; }.steps,.cards,.grid,.template-list,.filters { grid-template-columns:1fr; }.offer-list > a { grid-template-columns:1fr; }.public-offer h1 { font-size:45px; }.metrics,.row-actions { flex-wrap:wrap; }.template-group > div { display:grid; grid-template-columns:1fr; }.template-picker a { text-align:center; }.save-template,.copy-row,.questions article { align-items:stretch; flex-direction:column; }.save-template label { min-width:0; } }
