
:root{--bg:#f6f8f4;--card:#fff;--ink:#183127;--muted:#617067;--accent:#315f49;--soft:#dfe9e2;--line:#d7dfd9;--warn:#fff5da;--danger:#fde8e8;--good:#edf7ee}
*{box-sizing:border-box}
body{margin:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--ink);line-height:1.5}
a{color:var(--accent)}.wrap{max-width:920px;margin:auto;padding:0 18px}
header{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}
.nav{display:flex;justify-content:space-between;align-items:center;min-height:64px}.brand{font-weight:800;text-decoration:none;color:var(--ink)}
nav{display:flex;gap:14px}nav a{text-decoration:none;color:var(--ink);font-size:.92rem}
.hero{padding:44px 0 28px;background:linear-gradient(#e7efe9,var(--bg))}.hero h1{font-size:clamp(2rem,6vw,3.7rem);line-height:1.05;margin:.2em 0}
.card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:17px;margin:22px 0}.step{display:none}.step.active{display:block}
.choice{display:flex;gap:10px;padding:12px;border:1px solid var(--line);border-radius:10px;margin:8px 0;background:#fff}
input,select{width:100%;padding:10px;border:1px solid var(--line);border-radius:8px;font:inherit;background:#fff}.choice input{width:auto}
label.field{display:block;font-weight:700;margin:10px 0 4px}.action{background:var(--accent);color:#fff;border:0;border-radius:10px;padding:12px 15px;font-weight:800;width:100%;margin-top:12px}
.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.bucket{border:1px solid var(--line);border-radius:12px;padding:13px;background:#fafcfa}.bucket h3{margin:0 0 6px}
.warn{background:var(--warn)}.danger{background:var(--danger)}.good{background:var(--good)}.small{color:var(--muted);font-size:.9rem}
.badge{display:inline-block;background:var(--soft);padding:4px 8px;border-radius:999px;font-size:.78rem;font-weight:700;margin:2px}
.result{display:none}.result.show{display:block}.summary{background:#eef4ef;border:1px solid var(--line);border-radius:10px;padding:12px;margin:10px 0}
.print-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}.print-actions button{width:100%}
button.secondary{background:#fff;color:var(--accent);border:1px solid var(--accent);border-radius:10px;padding:12px 15px;font-weight:800}
.metric{border:1px solid var(--line);border-radius:10px;padding:12px;background:#fff;margin:8px 0}.metric strong{font-size:1.2rem}
#raw-note{display:none}.hide{display:none!important}
@media(max-width:700px){nav{display:none}.grid{grid-template-columns:1fr}}
@media print{header,.hero,.step,.print-actions,.nonprint{display:none!important}.result{display:block!important}.card{border:0;margin:0;padding:0}.bucket,.summary,.metric{break-inside:avoid}}
