*{box-sizing:border-box}body{margin:0;background:#f1f3ee;color:#172c29;font:15px system-ui}button,input,select,textarea{font:inherit}button{cursor:pointer;background:#245b52;color:#fff;border:0;border-radius:6px;padding:10px 14px;margin:3px}button:disabled{opacity:.45;cursor:default}input,select,textarea{width:100%;padding:10px;border:1px solid #bccbc5;border-radius:5px;background:#fff;color:#172c29}input[type=color]{height:45px}label{display:block;margin:8px 0;font-size:13px}label input,label select,label textarea{display:block;margin-top:6px}fieldset{border:1px solid #d1d9d1;border-radius:8px;margin:20px 0;padding:16px;min-width:0}legend{font-weight:650}textarea{min-height:90px}.top{display:flex;justify-content:space-between;align-items:center;padding:30px 4vw;border-bottom:1px solid #d0d9d1;background:#fff}.top select{width:130px}h1{margin:4px 0;font-size:28px}small{letter-spacing:.12em;font-size:10px}main{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;max-width:1600px;margin:auto;padding:30px 4vw}.editor{min-width:0}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.actions{display:flex;flex-wrap:wrap;align-items:center}.paper{background:#fff;padding:35px;min-height:700px;box-shadow:0 8px 35px #142f2910;border-top:5px solid;overflow-wrap:anywhere}.paper p{white-space:pre-wrap}.paper.corporate{border-top-width:22px}.paper.agency{border-left:12px solid #245b52;border-top:0}.paper h2{font-size:26px}.paper table{border-collapse:collapse;width:100%;font-size:12px;margin:25px 0}.paper td,.paper th{padding:10px 5px;border-bottom:1px solid #dce1dc;text-align:left;white-space:pre-wrap}.total{display:flex;justify-content:space-between;gap:10px}.demo{color:#a06035;font-size:13px;font-weight:700}.error{color:#a43526}.discount{display:flex;gap:8px}.discount select{max-width:100px}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #c99145;outline-offset:2px}.tablewrap{overflow-x:auto}@media(max-width:950px){main{grid-template-columns:1fr}.paper{min-height:0}}@media(max-width:450px){.grid{grid-template-columns:1fr}.top,.paper{padding:18px}main{padding:18px;gap:18px}}
