:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#233530;background:#f2f5f2;font-size:16px;--accent:#176c55;--border:#dbe4dd}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0}header{display:flex;justify-content:space-between;align-items:center;padding:18px max(20px,calc((100vw - 1080px)/2));background:white;border-bottom:1px solid var(--border);gap:12px}header strong{font-size:20px}header div span{display:block;color:#6d7b74;font-size:13px;margin-top:3px}.badge{background:#e9f3eb;border:1px solid #cde2d1;border-radius:99px;padding:7px 10px;font-size:12px;white-space:nowrap}main{max-width:1120px;margin:0 auto;padding:22px 20px 35px}.grid{display:grid;grid-template-columns:1.05fr 1fr;gap:20px;align-items:start}.card{background:white;border:1px solid var(--border);border-radius:16px;padding:22px;box-shadow:0 3px 10px #223d2405}.login{max-width:460px;margin:55px auto}.login p{color:#66766c}h1,h2{font-size:19px;margin:0 0 18px;font-weight:650}.sectionhead{display:flex;justify-content:space-between;align-items:baseline;gap:10px}.sectionhead h1{margin-bottom:12px}.row{display:flex;align-items:center;gap:10px}.row input{min-width:0}label{display:block;margin:16px 0 7px;font-size:14px;font-weight:600}input,textarea,select{font:inherit;color:inherit}input:not([type=range]):not([type=checkbox]),textarea,select{width:100%;border:1px solid #cbd8ce;border-radius:9px;padding:11px;background:#fcfdfc;outline:none}textarea{resize:vertical;min-height:70px}input:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px #176c5515}button,.button{font:inherit;font-size:14px;font-weight:600;background:var(--accent);border:1px solid transparent;border-radius:9px;padding:11px 16px;color:white;cursor:pointer;text-decoration:none;display:inline-block;white-space:nowrap}button:hover,.button:hover{filter:brightness(.94)}button:disabled{opacity:.5;cursor:wait}.quiet{background:transparent;color:#65756c;border-color:transparent;padding:6px;font-size:13px}.secondary{color:var(--accent);background:white;border-color:var(--border)}.upload{width:100%;background:#f3f8f3;border:1px dashed #91b59d;color:var(--accent);padding:21px}.hint{font-size:12px;line-height:1.55;color:#738078;margin:8px 0 15px}.primary{width:100%;margin-top:21px;padding:14px;font-size:15px}.status{font-size:13px;color:#5b7566;line-height:1.5;margin:10px 0 0;min-height:20px}.toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.toolbar .status{margin:0}#canvasArea{position:relative;max-height:none;width:100%;margin-top:15px;border-radius:10px;overflow:hidden;background:#eef1ef;line-height:0}#source{width:100%;height:auto;display:block}#overlay{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;touch-action:none}#overlay.painting{pointer-events:auto;cursor:crosshair}.check{display:flex;gap:8px;align-items:center;font-size:13px}.check input{width:17px;height:17px;accent-color:var(--accent)}#brushTools label{margin:0;font-size:12px}input[type=range]{accent-color:var(--accent);width:100%;height:24px;cursor:pointer}.rangehead{display:flex;justify-content:space-between;align-items:end}.rangehead output{font-size:13px;color:var(--accent);padding-bottom:7px}.rangecaptions{display:flex;justify-content:space-between;font-size:11px;color:#7b8c81}details{margin-top:20px;border-top:1px solid var(--border);padding-top:14px}summary{font-size:13px;cursor:pointer;color:#50655a}.settings>div{flex:1}.settings label{font-size:12px}.resultCard{position:sticky;top:20px}.empty{display:flex;align-items:center;justify-content:center;text-align:center;aspect-ratio:1;border:1px dashed var(--border);border-radius:11px;color:#8b9990;font-size:14px;background:#fafcf9}#result{width:100%;height:auto;display:block;border-radius:10px}#resultActions{margin-top:14px;flex-wrap:wrap}footer{font-size:12px;line-height:1.6;color:#7c8c82;text-align:center;padding:23px 12px 0}@media(max-width:720px){header{padding:15px 17px}main{padding:15px 12px 25px}.grid{grid-template-columns:1fr;gap:14px}.card{padding:18px;border-radius:13px}.resultCard{position:static}.login{margin-top:28px}.empty{aspect-ratio:1.6}.badge{font-size:11px}button,.button{min-height:40px}.quiet{min-height:34px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
