:root{
  --bg:#f7f3ea;
  --paper:#fffaf1;
  --ink:#17231c;
  --muted:#5f6b61;
  --green:#146b4b;
  --green-2:#dceee5;
  --gold:#f1c657;
  --line:#ded4c1;
  --danger:#8a3a2e;
  --shadow:0 18px 50px rgba(23,35,28,.12);
}
*{box-sizing:border-box}
body{
  margin:0;
  font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color:var(--ink);
  background:radial-gradient(circle at top left,#ecf7ef,transparent 32rem),var(--bg);
}
.hero{
  display:flex;
  justify-content:space-between;
  gap:2rem;
  padding:2.4rem clamp(1rem,4vw,4rem);
  background:linear-gradient(135deg,#123d2e,#1d7958);
  color:white;
}
.eyebrow{text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;color:#c9f3dc;font-weight:700}
h1{font-size:clamp(2rem,4vw,4rem);line-height:.98;margin:.2rem 0 1rem;max-width:900px}
.lead{font-size:1.08rem;max-width:850px;color:#eefaf2}
.badge{align-self:flex-start;min-width:170px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);border-radius:1rem;padding:1rem;box-shadow:var(--shadow)}
.badge strong,.badge span{display:block}.badge span{font-size:.9rem;color:#e2f4e9;margin-top:.25rem}
.layout{display:grid;grid-template-columns:minmax(320px,1.1fr) minmax(320px,.9fr);gap:1.25rem;padding:1.25rem clamp(1rem,4vw,4rem)}
.panel{background:var(--paper);border:1px solid var(--line);border-radius:1.2rem;padding:1.25rem;box-shadow:var(--shadow)}
h2{margin:0 0 1rem;color:#123d2e}.form-panel h2:not(:first-child){margin-top:1.6rem}
.grid{display:grid;gap:1rem}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
label{display:block;font-weight:700;color:#24372d;margin-bottom:.85rem}
input,select,textarea{
  width:100%;margin-top:.35rem;border:1px solid #c9bea9;border-radius:.8rem;padding:.75rem .85rem;background:#fffdf8;color:var(--ink);font:inherit;
}
textarea{resize:vertical} input:focus,select:focus,textarea:focus{outline:3px solid var(--green-2);border-color:var(--green)}
fieldset{border:1px solid var(--line);border-radius:1rem;margin:1rem 0;padding:1rem;background:#fffdf8}legend{font-weight:800;color:#123d2e;padding:0 .35rem}.checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}.checks label{font-weight:600;margin:0;display:flex;gap:.45rem;align-items:flex-start}.checks input{width:auto;margin-top:.2rem;accent-color:var(--green)}
.actions,.mini-actions{display:flex;gap:.65rem;flex-wrap:wrap;align-items:center}button{border:0;border-radius:999px;padding:.8rem 1rem;font-weight:800;cursor:pointer;background:var(--green);color:white;box-shadow:0 10px 24px rgba(20,107,75,.18)}button:hover{filter:brightness(1.05)}button.secondary{background:var(--green-2);color:#123d2e;box-shadow:none}button.ghost{background:transparent;color:var(--danger);border:1px solid #dbb8af;box-shadow:none}.result-panel{position:sticky;top:1rem;align-self:start}.result-head{display:flex;align-items:center;justify-content:space-between;gap:1rem}pre{white-space:pre-wrap;background:#10251d;color:#f3fff7;border-radius:1rem;padding:1rem;min-height:55vh;line-height:1.5;border:1px solid #274638;overflow:auto}.hint{color:var(--muted);font-size:.93rem}footer{padding:1rem clamp(1rem,4vw,4rem) 2rem;color:var(--muted)}
@media (max-width:900px){.hero,.layout{display:block}.badge{margin-top:1rem}.result-panel{position:static;margin-top:1rem}.grid.two,.checks{grid-template-columns:1fr}}
@media print{body{background:white}.hero,.form-panel,.mini-actions,.hint,footer{display:none}.layout{display:block;padding:0}.panel{box-shadow:none;border:0}.result-panel{display:block}pre{background:white;color:black;border:0;min-height:auto;font-size:11pt}}
