:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}html,body{color:#222;background:#f0f0f0;margin:0;padding:0}#root{min-height:100vh}.app{box-sizing:border-box;direction:ltr;align-items:flex-start;gap:24px;min-height:100vh;padding:16px;display:flex}.a4-page{background:#fff;flex-shrink:0;justify-content:center;align-items:center;width:210mm;height:297mm;display:flex;position:relative;box-shadow:0 2px 12px #00000026}.paper-shape{background:#fff;width:120mm;height:190mm;position:relative}.paper-shape svg{width:100%;height:100%;display:block}.ruler{pointer-events:none;position:absolute}.ruler-top{top:3mm;left:0}.ruler-left{top:0;left:3mm}.controls{flex-direction:column;gap:10px;width:280px;max-height:calc(100vh - 32px);font-family:system-ui,-apple-system,sans-serif;font-size:12px;display:flex;position:sticky;top:16px;overflow-y:auto}.controls fieldset{border:1px solid #ccc;border-radius:6px;margin:0;padding:8px 10px}.controls legend{color:#333;padding:0 6px;font-weight:600}.controls .slider{grid-template-columns:32px 1fr 64px;align-items:center;gap:6px;margin:4px 0;display:grid}.controls .val{justify-content:flex-end;align-items:baseline;gap:2px;display:inline-flex}.controls .num{width:42px;font:inherit;font-variant-numeric:tabular-nums;text-align:right;color:#222;background:#fff;border:1px solid #ccc;border-radius:3px;padding:2px 4px}.controls .num::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.controls .num::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.controls .num{-moz-appearance:textfield}.controls .unit{color:#888;font-size:11px}.controls .row{align-items:center;gap:8px;margin:4px 0;display:flex}.controls .lbl{color:#666}.controls .val{text-align:right;font-variant-numeric:tabular-nums;color:#555}.controls input[type=range]{width:100%}.controls input[type=text],.controls select,.controls textarea{width:100%;font-family:inherit;font-size:inherit;box-sizing:border-box;border:1px solid #ccc;border-radius:4px;padding:4px 6px}.controls textarea{resize:vertical}.controls .segments{flex-direction:column;gap:8px;display:flex}.controls .segment{background:#fafafa;border:1px solid #e4e4e4;border-radius:4px;flex-direction:column;gap:4px;padding:6px;display:flex}.controls .seg-fields{gap:6px}.controls .field{align-items:center;gap:4px;margin:0;display:inline-flex}.controls .num.overridden{color:#b06400;background:#fff4d6;border-color:#e0a85f;font-weight:600}.controls .reset{color:#888;cursor:pointer;background:0 0;border:1px solid #0000;padding:0 4px;font-size:12px;line-height:1}.controls .reset:hover{color:#333;background:#fff;border-color:#ccc}.controls button{cursor:pointer;background:#f5f5f5;border:1px solid #888;border-radius:4px;padding:6px 12px}.controls button:hover{background:#e8e8e8}.controls button.danger{color:#b33;border-color:#b33}.controls .row.btns{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.error-banner{color:#fff;cursor:pointer;z-index:1000;background:#b33;border-radius:6px;max-width:80vw;padding:8px 14px;font:12px system-ui,-apple-system,sans-serif;position:fixed;bottom:12px;left:50%;transform:translate(-50%)}@media print{@page{size:A4 portrait;margin:0}.controls{display:none}.app{padding:0;display:block}.a4-page{box-shadow:none;page-break-inside:avoid;margin:0}.ruler{display:none}text{stroke:#000!important}}
