*{box-sizing:border-box}body{margin:0;background:#f5f5ef;color:#233d36;font:16px system-ui}header{padding:24px 5%;border-bottom:1px solid #ddd;display:flex;justify-content:space-between}header span,small{font-size:12px;color:#64776c}main{max-width:1300px;margin:40px auto;display:grid;grid-template-columns:310px 1fr;gap:60px;padding:0 28px}h1{font-size:44px;line-height:1.2}aside{position:sticky;top:25px;align-self:start}p{line-height:1.8}.notice{font-size:13px;background:#ece8d9;padding:18px;border-radius:12px}article{background:white;border:1px solid #e0e4da;padding:36px;border-radius:20px;min-height:70vh}button{cursor:pointer;border:1px solid #ccd6cd;background:white;color:#244c3d;border-radius:8px;padding:12px 18px;margin:5px}button:hover,.active{background:#e4eee6}button.primary{background:#275c47;color:white}input,textarea{font:inherit;width:100%;padding:13px;margin:8px 0 20px;border:1px solid #cbd5ce;border-radius:8px}label{display:block;font-size:14px}h2{font-size:30px}h3{margin-top:30px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.item{border-top:1px solid #e3e7df;padding:20px 0}.hint{font-size:13px;color:#6b7c72}img.thumb{height:100px;width:120px;object-fit:contain}canvas{border:1px dashed #8b9e90;width:100%;height:150px;touch-action:none}nav button{display:block;width:100%;text-align:left}.photo{display:inline-block}.error{color:#ad402c}@media(max-width:750px){main{display:block;margin:20px auto;padding:0 14px}aside{position:static}h1{font-size:32px}aside h1 br{display:none}article{padding:22px}nav{display:flex;overflow:auto}nav button{white-space:nowrap} .grid{grid-template-columns:1fr}}@media print{header,aside,.no-print{display:none!important}main{display:block;margin:0;padding:0}article{border:0;padding:0} .print-photo{break-inside:avoid;height:125mm;padding:5mm 0}.print-photo img{width:100%;height:100mm;object-fit:contain}.signature{width:240px} @page{size:A4;margin:15mm}}

.layout{text-align:left;padding:20px;line-height:1.9}.layout.active{border:2px solid #275c47}.area-row{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e3e7df;padding:6px 0}details{margin-top:24px}summary{cursor:pointer;padding:12px 0;color:#275c47}
button:disabled{opacity:.48;cursor:not-allowed}
button:disabled:hover{background:white}
