:root {
  --paper: #f6f5f0;
  --surface: #fffefa;
  --ink: #202e29;
  --muted: #58665e;
  --line: #d8dfd6;
  --control-line: #819086;
  --green: #1f513b;
  --green-hover: #153d2c;
  --green-soft: #eaf1e8;
  --lime: #d7ea9a;
  --amber: #755012;
  --amber-soft: #fff3d6;
  --danger: #a1322b;
  --radius: 20px;
  --font-ui: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  --font-editorial: Georgia, "Times New Roman", serif;
}
* { box-sizing: border-box; }
body { margin: 0; color: var(--ink); background: var(--paper); font: 15px/1.55 var(--font-ui); }
button, input, textarea, select { font: inherit; }
a { color: var(--green); text-underline-offset: 4px; }
button { cursor: pointer; }
button:disabled { cursor: default; }
:focus-visible { outline: 3px solid var(--green); outline-offset: 4px; }
.skip { position: absolute; left: 16px; top: -80px; padding: 12px; background: white; z-index: 10; }
.skip:focus { top: 10px; }
.demo { background: var(--ink); color: #fffefa; font-size: 12px; text-align: center; padding: 8px 16px; }
.shell { width: min(1280px, calc(100% - 80px)); margin-inline: auto; }
.nav { height: 84px; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid var(--line); gap: 24px; }
.brand { display: flex; align-items: center; gap: 12px; font-size: 16px; font-weight: 650; }
.brand-mark { display: grid; place-items: center; width: 36px; height: 36px; background: var(--green); border-radius: 11px; color: white; font: 26px/1 var(--font-editorial); }
.nav-links { display: flex; align-items: center; gap: 8px; }
.nav-links span { padding: 10px 16px; border-radius: 10px; }
.nav-links .current { background: var(--green-soft); color: var(--green); font-weight: 650; }
.muted { color: var(--muted); }
.intro { padding: 38px 0 30px; display: flex; justify-content: space-between; align-items: end; gap: 24px; }
.eyebrow { text-transform: uppercase; letter-spacing: 1.8px; color: var(--muted); font-size: 11px; font-weight: 700; margin: 0 0 12px; }
h1 { font-size: clamp(32px, 3.4vw, 48px); letter-spacing: -1.8px; line-height: 1.13; margin: 0 0 12px; font-weight: 620; }
h1 em { color: var(--green); font-family: var(--font-editorial); font-weight: 400; }
.intro p { margin-bottom: 0; max-width: 660px; }
.quiet-note { font-size: 12px; color: var(--muted); text-align: right; max-width: 220px; }
.workspace { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 24px; align-items: start; }
.panel { background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius); overflow: hidden; }
.panel-top { padding: 23px 26px 16px; display: flex; justify-content: space-between; gap: 16px; align-items: center; }
h2 { margin: 0; font-size: 20px; line-height: 1.3; letter-spacing: -.3px; }
.step { display: inline-grid; place-items: center; width: 26px; height: 26px; border: 1px solid var(--line); border-radius: 50%; font-size: 12px; margin-right: 9px; vertical-align: 2px; }
.small { font-size: 12px; }
.panel-body { padding: 0 26px 26px; }
label, legend { font-size: 13px; font-weight: 650; }
label { display: block; margin-bottom: 8px; }
textarea, select, input[type=text] { color: var(--ink); background: var(--surface); border: 1px solid var(--control-line); border-radius: 11px; width: 100%; padding: 13px 14px; }
textarea { resize: vertical; min-height: 176px; font-size: 16px; line-height: 1.7; }
textarea::placeholder { color: var(--muted); }
.subrow { display: flex; justify-content: space-between; gap: 16px; color: var(--muted); font-size: 12px; margin: 7px 0 20px; }
.field-group { margin-top: 20px; }
.context { min-height: 94px; }
.hint { color: var(--muted); font-size: 12px; margin: 6px 0 0; }
fieldset { border: 0; margin: 24px 0 0; padding: 0; min-width: 0; }
.mode-row { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-top: 9px; }
.mode { border: 1px solid var(--control-line); border-radius: 12px; padding: 12px; margin: 0; font-weight: 400; }
.mode.selected { background: var(--green-soft); border-color: var(--green); }
.mode input { accent-color: var(--green); }
.mode strong { font-size: 14px; }
.mode small { display: block; color: var(--muted); font-size: 12px; margin: 4px 0 0 22px; line-height: 1.4; }
.select-row { display: grid; grid-template-columns: 1fr; gap: 12px; margin-top: 23px; }
select { height: 48px; }
.button { display: inline-flex; justify-content: center; align-items: center; gap: 12px; border: 1px solid var(--green); border-radius: 11px; min-height: 48px; padding: 11px 18px; font-weight: 650; text-decoration: none; }
.primary { color: white; background: var(--green); }
.primary:hover:not(:disabled) { background: var(--green-hover); }
.secondary { color: var(--green); background: var(--surface); }
.wide { width: 100%; margin-top: 20px; }
.badge { padding: 5px 9px; background: var(--green-soft); color: var(--green); border-radius: 7px; font-size: 11px; font-weight: 600; }
.metric { background: var(--green); color: var(--surface); margin: 0 26px 22px; border-radius: 14px; padding: 21px 22px; }
.metric-top { display: flex; justify-content: space-between; gap: 16px; }
.metric-top span { font-size: 12px; color: #e0eddf; }
.metric-value { display: flex; align-items: baseline; gap: 12px; margin: 7px 0 1px; }
.metric-value strong { font-size: 49px; letter-spacing: -2px; line-height: 1.1; color: var(--lime); font-weight: 550; }
.metric-value span { font-size: 13px; }
.metric-counts { margin: 11px 0 0; font-size: 15px; font-variant-numeric: tabular-nums; }
.metric p { font-size: 11px; color: #e0eddf; margin: 9px 0 0; }
.result-text { min-height: 160px; background: #fafbf7; }
.actions { display: flex; gap: 10px; margin-top: 16px; }
.actions .button { flex: 1; }
.review { border-top: 1px solid var(--line); margin-top: 24px; padding-top: 21px; }
.review h3 { display: flex; justify-content: space-between; gap: 12px; margin: 0 0 14px; font-size: 14px; }
.review ul { padding: 0; margin: 0; list-style: none; }
.review li { display: flex; align-items: center; gap: 9px; margin: 8px 0; font-size: 13px; }
.check { display: grid; place-items: center; border-radius: 50%; width: 18px; height: 18px; flex-shrink: 0; color: var(--green); background: var(--green-soft); font-size: 12px; }
.warning { background: var(--amber-soft); border-left: 3px solid #a97926; border-radius: 6px; padding: 11px 12px; color: var(--amber); font-size: 12px; margin-top: 18px; }
details { border-top: 1px solid var(--line); margin-top: 20px; padding-top: 15px; }
summary { cursor: pointer; min-height: 44px; color: var(--green); font-size: 13px; font-weight: 650; }
.changes { color: var(--muted); font-size: 13px; padding-left: 18px; }
.footer { display: flex; justify-content: space-between; gap: 24px; padding: 24px 0 36px; color: var(--muted); font-size: 12px; }
.footer p { margin: 0; }
@media (max-width: 1023px) {
  .shell { width: calc(100% - 48px); }
  .workspace { grid-template-columns: 1fr; gap: 20px; }
  .quiet-note { display: none; }
  .intro { padding: 28px 0; }
  .result-text { min-height: 150px; }
}
@media (max-width: 599px) {
  .shell { width: calc(100% - 32px); }
  .nav { height: 72px; gap: 10px; }
  .brand { font-size: 13px; gap: 8px; }
  .brand-mark { width: 30px; height: 30px; border-radius: 9px; }
  .nav-links { font-size: 12px; }
  .nav-links span { padding: 8px; }
  .nav-links .current { display: none; }
  h1 { font-size: 34px; letter-spacing: -1.2px; }
  .intro p { font-size: 14px; }
  .eyebrow { font-size: 10px; letter-spacing: 1.4px; }
  .panel { border-radius: 16px; }
  .panel-top { padding: 20px 18px 14px; }
  .panel-body { padding: 0 18px 20px; }
  h2 { font-size: 18px; }
  .metric { margin: 0 18px 20px; padding: 18px; }
  .metric-value strong { font-size: 44px; }
  .mode-row { gap: 8px; }
  .mode { padding: 10px; }
  .mode small { margin-left: 0; }
  .actions { flex-direction: column; }
  .footer { flex-direction: column; gap: 12px; }
}
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; animation: none !important; transition: none !important; } }

[hidden]{display:none!important}.text-button{border:0;background:none;color:var(--green);padding:6px 2px;min-height:32px;font-size:12px;text-decoration:underline;text-underline-offset:3px}.single-mode{margin-top:20px}.single-mode p{margin:5px 0 0}.status{font-size:13px;min-height:42px}.error{color:var(--danger)!important}.profile-table{overflow-x:auto;margin-top:20px}.profile-table table{width:100%;border-collapse:collapse;font-size:12px;font-variant-numeric:tabular-nums}.profile-table caption{text-align:left;color:var(--muted);margin-bottom:8px}.profile-table th,.profile-table td{padding:9px 5px;text-align:right;border-bottom:1px solid var(--line)}.profile-table th:first-child,.profile-table td:first-child{text-align:left}.diff{white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.8}.diff del{color:#8b2727;background:#ffe6e3}.diff ins{color:#16472b;background:#dcf1dc;text-decoration:none}.metric.growth{background:#62430f}.review li{overflow-wrap:anywhere;display:block}.panel-top .text-button{flex-shrink:0}.button:disabled{opacity:.65}textarea:empty{min-height:176px}@media(max-width:400px){.nav-links{display:none}.panel-top{gap:8px}.panel-top h2{font-size:16px}.metric-top{flex-wrap:wrap;gap:4px}.metric-value{flex-wrap:wrap}}

.builder{border:1px solid var(--line);background:var(--surface);border-radius:14px;padding:16px 22px;margin:0 0 24px}.builder-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:16px}.builder textarea{min-height:108px}.optional{margin:0 0 18px;padding-top:4px}.optional ul{padding-left:18px;font-size:12px;overflow-wrap:anywhere}@media(max-width:900px){.builder-fields{grid-template-columns:1fr}}

.docs{padding:30px;max-width:960px}.docs h2{margin:24px 0 12px}.docs h2:first-child{margin-top:0}.docs p,.docs li{line-height:1.75}.docs li{margin:9px 0}

.outcome,.offer{margin-top:28px}.offer .panel-body{padding-top:28px}.offer-price{font:38px/1.3 var(--font-editorial);color:var(--green);margin:18px 0}.offer-price span{font:14px var(--font-ui);color:var(--muted)}.criterion{border:1px solid var(--line);padding:18px;border-radius:12px}.criterion legend{padding:0 8px;overflow-wrap:anywhere}.criterion label{margin-top:12px}.check-option{display:flex;align-items:center;gap:9px}.check-option input{width:20px;height:20px}.subrow{flex-wrap:wrap}#outcome-status{font-weight:650;color:var(--green)}#revision-panel{margin-top:20px}#criterion-list{display:grid;grid-template-columns:1fr 1fr;gap:18px}@media(max-width:900px){#criterion-list{grid-template-columns:1fr}}
