:root{color-scheme:light;font-family:Tahoma,Arial,sans-serif;color:#243638;background:#f4f5ef}*{box-sizing:border-box}body{margin:0}header,main,footer{max-width:1200px;margin:auto;padding:24px}header{padding-bottom:8px}.eyebrow{color:#50736b;font-size:13px}h1{font-size:28px;margin:12px 0}h2{font-size:17px;margin:0 0 14px}p{line-height:1.9;margin:8px 0}.notice{background:#fff0d2;padding:10px 16px;border-radius:10px;font-size:14px}main{display:grid;grid-template-columns:minmax(280px,1.15fr) minmax(360px,1fr);gap:22px;align-items:start}section{background:white;border:1px solid #dce3dc;border-radius:14px;padding:18px}aside{display:grid;gap:14px}.drawing{position:sticky;top:16px}.drawing p,.small,footer{font-size:12px;color:#536466}.legend{display:flex;gap:15px;flex-wrap:wrap;font-size:12px}.legend span:first-child{color:#166780}.legend span:nth-child(2){color:#ac4c16}svg{width:100%;height:540px;display:block;touch-action:none}.guide{stroke:#ccd5d0;stroke-width:.15}.front{stroke:#166780}.back{stroke:#ac4c16}.curve{fill:none;stroke-width:.4}.selected{stroke-width:.8}.handle-line{stroke:#526362;stroke-width:.2;stroke-dasharray:1 1}.handle{fill:white;stroke:#203f38;stroke-width:.35;cursor:grab}.anchor{fill:#203f38}label{display:block;font-size:14px;margin-bottom:8px}select,input,button,.file{font:inherit}select,input[type=number]{width:100%;padding:10px;border:1px solid #b8c8c0;border-radius:7px;background:white;color:#243638}fieldset{border:0;padding:0;margin:18px 0}legend{font-size:13px;margin-bottom:12px}#coordinates{display:grid;grid-template-columns:1fr 1fr;gap:12px}input[type=number]{direction:ltr}button,.file{border:1px solid #b8c8c0;border-radius:7px;background:#edf3ee;color:#243638;padding:10px 12px;cursor:pointer;font-size:13px;margin:0}button:disabled{opacity:.45;cursor:default}.actions{display:flex;gap:8px;flex-wrap:wrap}.file input{display:block;max-width:210px;margin-top:8px}table{border-collapse:collapse;width:100%;font-size:12px}th,td{padding:10px 4px;text-align:right;border-bottom:1px solid #e1e7e1}td:not(:first-child){direction:ltr;font-variant-numeric:tabular-nums}#status{font-size:13px;color:#27654c}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #d4a63e;outline-offset:2px}@media(max-width:760px){main{grid-template-columns:1fr}header,main,footer{padding:16px}.drawing{position:static}svg{height:430px}h1{font-size:23px}}
