*{box-sizing:border-box}body{margin:0;background:#f4f1e9;color:#173b32;font:16px Tahoma,Arial,sans-serif;line-height:1.8}main{max-width:1400px;margin:auto;padding:25px}a{color:#246b58}h1{margin:10px 0}small{display:block;color:#675a41}.layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,1fr);gap:25px;align-items:start}.viewer{min-width:0;position:sticky;top:20px}canvas{display:block;width:100%;height:65vh;min-height:350px;touch-action:none;border-radius:18px}form{min-width:0}fieldset{border:1px solid #d3cbb8;border-radius:12px;margin:0 0 16px;background:white;padding:16px}legend{font-weight:bold}label{display:block;margin:8px 0}.fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}input:not([type=checkbox]),select{width:100%;font:inherit;padding:8px;border:1px solid #d6d7cf;border-radius:6px}input[type=checkbox]{accent-color:#1c5c47}button{font:inherit;border:0;border-radius:8px;padding:12px 18px;background:#194c3c;color:white;cursor:pointer}button:disabled{opacity:.5}output{display:block;background:#f1e7cb;border-radius:8px;padding:12px}#formError{color:#a12b22}@media(max-width:850px){main{padding:15px}.layout{grid-template-columns:1fr}.viewer{position:static}canvas{height:45vh;min-height:300px}}
