:root{--green:#3E8E6A;--yellow:#E8C547;--ink:#1d2a24;--muted:#5d6b64;--bg:#f6f7f4;--card:#fff}
*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--ink);background:var(--bg);line-height:1.5}
.top{display:flex;justify-content:space-between;align-items:center;padding:.8rem 1.2rem;background:#fff;border-bottom:4px solid var(--yellow)}
.brand{display:flex;align-items:center;gap:.5rem;font-weight:700;font-size:1.15rem;color:var(--ink);text-decoration:none}.brand img{width:34px}
nav a{margin-left:1rem;color:var(--green);font-weight:600;text-decoration:none}
main{max-width:1050px;margin:0 auto;padding:1.5rem 1.2rem}
.hero{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:start}.art img{width:100%;max-width:440px;display:block;margin:auto}
@media(max-width:760px){.hero,.cols{grid-template-columns:1fr!important}}
h1{line-height:1.2;margin-top:0}.features{padding-left:1.2rem}.features li::marker{color:var(--green)}
.card{background:var(--card);border-radius:12px;padding:1.2rem;box-shadow:0 1px 3px rgba(0,0,0,.08);margin-bottom:1rem}
fieldset{border:0;padding:0;margin:0 0 1rem}legend{font-weight:700;margin-bottom:.3rem}
.opt{display:flex;gap:.6rem;align-items:center;padding:.45rem .6rem;border:1px solid #dde2dc;border-radius:8px;margin-bottom:.35rem;cursor:pointer}.opt span{flex:1}
label{display:block;margin-bottom:.7rem;font-weight:500}.check{font-weight:400}
input:not([type=radio]):not([type=checkbox]),textarea,select{width:100%;padding:.55rem;border:1px solid #c9d1cb;border-radius:8px;font:inherit}
input[type=number]{max-width:6rem}.row{display:grid;grid-template-columns:1fr 2fr;gap:.8rem}
button,.btn{background:var(--green);color:#fff;border:0;border-radius:8px;padding:.7rem 1.2rem;font:inherit;font-weight:700;cursor:pointer;text-decoration:none;display:inline-block}
button:hover,.btn:hover{filter:brightness(1.08)}button.secondary{background:#e9ece8;color:var(--ink)}button.link{background:none;color:#a33;padding:0;font-weight:500}
.lines{width:100%;border-collapse:collapse}.lines td{padding:.4rem 0;border-bottom:1px solid #eef0ed;vertical-align:middle}.r{text-align:right;white-space:nowrap}
.total td{font-weight:800;font-size:1.1rem;border-bottom:0}.small{font-size:.85rem;color:var(--muted)}
.flash{background:#eaf5ef;border-left:4px solid var(--green);padding:.6rem .9rem;border-radius:6px}.error{color:#a33;font-weight:600;margin:.2rem 0}
.cols{display:grid;grid-template-columns:3fr 2fr;gap:1.5rem;align-items:start}.confirm{max-width:620px;margin:auto}.mini{width:70px}
footer{max-width:1050px;margin:1rem auto 2rem;padding:0 1.2rem}.disclaimer{font-size:.8rem;color:var(--muted);border-top:1px solid #dde2dc;padding-top:1rem}
.tablewrap{overflow-x:auto}.admin{border-collapse:collapse;width:100%;background:#fff;font-size:.9rem}.admin th,.admin td{border:1px solid #e1e5e0;padding:.4rem;vertical-align:top;text-align:left}
