:root{font-family:Segoe UI,Arial,sans-serif;color:#242733;background:#eef1f5}*{box-sizing:border-box}body{margin:0}.topbar{display:flex;gap:10px;align-items:center;padding:10px 16px;background:#272936;color:white;position:sticky;top:0;z-index:20}.topbar h1{font-size:18px;margin:0 18px 0 0}.btn,button,select,input{font:inherit}.btn,button{border:0;border-radius:5px;padding:8px 12px;background:#4b6cb7;color:white;cursor:pointer}.btn.secondary,button.secondary{background:#555b68}.btn.danger,button.danger{background:#a94442}.layout{display:grid;grid-template-columns:260px minmax(600px,1fr) 300px;min-height:calc(100vh - 54px)}.panel{background:white;border-right:1px solid #d5d8df;padding:12px;overflow:auto}.panel.right{border-right:0;border-left:1px solid #d5d8df}.canvas-wrap{padding:20px;overflow:auto;text-align:center}.canvas{position:relative;margin:auto;background:white;box-shadow:0 3px 16px #0004;transform-origin:top left}.canvas img.bg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.field{position:absolute;border:1px dashed #1687e8;background:#ffffffb8;min-width:20px;min-height:18px;text-align:left;color:#1e4c73;font-size:11px;padding:2px;overflow:hidden}.field.selected{outline:2px solid #ff9800}.field .handle{position:absolute;width:8px;height:8px;right:-1px;bottom:-1px;background:#ff9800;cursor:nwse-resize}.form-row{margin-bottom:10px;text-align:left}.form-row label{display:block;font-size:12px;color:#555;margin-bottom:3px}.form-row input,.form-row select,.form-row textarea{width:100%;padding:7px;border:1px solid #c8ccd5;border-radius:4px}.list{display:flex;flex-direction:column;gap:6px}.list-item{padding:7px;background:#f2f4f8;border-radius:4px;cursor:pointer;font-size:12px}.status{padding:8px;border-radius:4px;background:#eef7ee;margin-top:8px;white-space:pre-wrap;font-size:12px}.status.error{background:#fdeaea}.doc-shell{padding:20px}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.card{background:white;padding:16px;border-radius:8px;box-shadow:0 2px 8px #0002}.responsive-form{position:relative;margin:auto;background:white;box-shadow:0 3px 16px #0004}.responsive-form img{position:absolute;inset:0;width:100%;height:100%}.input-field{position:absolute;border:1px solid #1687e8;background:#ffffffd9;padding:2px;font-size:12px}.toolbar-spacer{flex:1}@media(max-width:900px){.layout{grid-template-columns:1fr}.panel{border:0}.panel.right{border:0}.canvas-wrap{order:-1}.responsive-form{transform-origin:top left}}
