:root{font-family:Inter,system-ui,sans-serif;color:#183936;background:#eeeae0;font-synthesis:none}*{box-sizing:border-box}body{margin:0}header,main,footer{max-width:1350px;margin:auto;padding:30px}header{position:relative;border-bottom:1px solid #abb6aa}.eyebrow{font-size:12px;letter-spacing:.2em}h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(40px,6vw,76px);margin:10px 0}h1 span{color:#be602e;margin-left:20px}header button{position:absolute;right:30px;top:30px}p{line-height:1.6;color:#51665d;max-width:75ch}main{display:grid;grid-template-columns:1fr 1.25fr;gap:35px}section{min-width:0}b{letter-spacing:.08em;font-size:14px}.source,.result{position:relative;background:#c2c8bd;overflow:hidden;border:8px solid #fff;box-shadow:0 8px 25px #17382a17}.source{max-width:430px;aspect-ratio:1;margin:22px 0}.source canvas,.source svg{position:absolute;width:100%;height:100%;touch-action:none}.source svg{cursor:crosshair}.result{aspect-ratio:4/3;margin:22px 0}.result canvas{width:100%;height:100%;image-rendering:pixelated}.seams{position:absolute;inset:0;display:flex;pointer-events:none}.seams span{width:12.5%;border-left:1px dashed white;color:#fff;text-shadow:0 1px 2px black;padding:10px}.owners{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}label{display:flex;flex-direction:column;gap:5px;font-size:12px;margin:9px 0}input,select,textarea,button{font:inherit;border:1px solid #a6b1a5;border-radius:4px;padding:9px;background:#fffef8;color:#193d35;max-width:100%}button{cursor:pointer;font-size:13px}button:hover{background:#d8e2cd}button:disabled{opacity:.45;cursor:not-allowed}.buttons{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.points{max-height:300px;overflow:auto}.points>div{display:flex;gap:8px;align-items:center}.points input{width:100px}.points label{flex-direction:row;align-items:center}.project{grid-column:1/-1;border-top:1px solid #adb9ac;padding-top:25px}textarea{width:100%;min-height:120px;font:12px monospace}.warning{color:#a13e20}footer{font-size:12px;border-top:1px solid #adb9ac}:focus-visible{outline:3px solid #cb6e35;outline-offset:3px}:fullscreen{overflow:auto;background:#eeeae0}@media(max-width:760px){main{grid-template-columns:1fr;padding:20px}header button{position:static}.owners{grid-template-columns:repeat(2,1fr)}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
