:root{--purple:#79339e;--magenta:#ea018e;--orange:#f48716;--ink:#000;--page-w:210mm;--page-h:297mm;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{min-height:100%}body{color:var(--ink);-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#e8e8e8;font-family:Segoe UI,Helvetica Neue,Arial,sans-serif}.page{width:var(--page-w);height:var(--page-h);background:#fff;margin:24px auto 40px;position:relative;overflow:hidden;box-shadow:0 8px 28px #0000002e}.corner{pointer-events:none;z-index:1;position:absolute;inset:0}.corner svg{width:100%;height:100%;display:block}.content{z-index:2;flex-direction:column;height:100%;padding:24mm 12.7mm 20mm;display:flex;position:relative}.company{letter-spacing:.01em;color:#000;max-width:12cm;font-family:Segoe UI,Helvetica Neue,Arial,sans-serif;font-size:22pt;font-weight:700;line-height:1.15}.address{color:#000;width:100%;max-width:14cm;margin-top:6px;font-family:Times New Roman,Times,Georgia,serif;font-size:10.5pt;line-height:1.3}.gst-line{flex-wrap:wrap;align-items:baseline;gap:0 .35em;margin-top:4px;font-size:10.5pt;line-height:1.35;display:flex}.gst-line .label{font-family:Times New Roman,Times,Georgia,serif;font-size:10.5pt;font-weight:700}.gst-value{min-width:18ch;font-family:Calibri,Segoe UI,Arial,sans-serif;font-size:11pt;font-weight:700}.gst-value:placeholder-shown,.gst-value:not(:focus):placeholder-shown{opacity:.55}.contact{flex-wrap:wrap;align-items:baseline;gap:0 .35em;margin-top:4px;font-size:11pt;line-height:1.35;display:flex}.contact .label{font-family:Times New Roman,Times,Georgia,serif;font-size:10.5pt;font-weight:700}.contact .value{min-width:8ch;font-family:Calibri,Segoe UI,Arial,sans-serif;font-size:11pt;font-weight:700}.contact .sep{margin:0 .15em;font-family:Times New Roman,Times,Georgia,serif;font-weight:700}.title{color:var(--purple);letter-spacing:.04em;margin-top:22px;font-family:Segoe UI,Helvetica Neue,Arial,sans-serif;font-size:22pt;font-weight:700}.date{align-items:baseline;gap:.35em;margin-top:10px;font-family:Calibri,Segoe UI,Arial,sans-serif;font-size:14pt;font-weight:700;display:flex}.date-value{font:inherit;width:12ch;font-weight:700}table.quote{border-collapse:collapse;table-layout:fixed;width:100%;margin-top:18px}table.quote th,table.quote td{vertical-align:middle;border:.75pt solid #000;padding:6px 8px}table.quote th{text-align:center;padding:6px;font-family:Times New Roman,Times,Georgia,serif;font-size:12pt;font-weight:700}table.quote td{font-family:Ebrima,Segoe UI,Arial,sans-serif;font-size:12pt}table.quote td.cell-center{text-align:center}table.quote td.cell-left{text-align:left;padding-left:12px}.th-inner{justify-content:center;align-items:center;gap:4px;display:flex}.th-input{font:inherit;text-align:center;width:100%;font-family:Times New Roman,Times,Georgia,serif;font-weight:700}.cell-input{font:inherit;width:100%;text-align:inherit}.cell-left .cell-input{text-align:left}.cell-center .cell-input{text-align:center}.actions-col{text-align:center;background:0 0;width:56px;border:none!important}.row-actions{align-items:center;gap:2px;display:inline-flex}.terms{margin-top:22px}.terms-header{align-items:center;gap:12px;margin-bottom:8px;display:flex}.terms-title{width:100%;max-width:12cm;font-family:Ebrima,Segoe UI,Arial,sans-serif;font-size:14pt;font-weight:700}.terms ol{padding:0;list-style:none}.terms li{align-items:center;gap:6px;padding-left:1.4em;font-family:Ebrima,Segoe UI,Arial,sans-serif;font-size:12pt;line-height:1.55;display:flex;position:relative}.terms li:before{content:attr(data-n);position:absolute;left:.35em}.term-input{font:inherit;flex:1;width:100%}.thanks{text-align:center;color:var(--purple);width:100%;margin-top:auto;padding-top:28px;padding-bottom:8px;font-family:Ebrima,Segoe UI,Arial,sans-serif;font-size:16pt;font-weight:700}.footer-bar{z-index:3;height:2.4mm;position:absolute;bottom:0;left:0;right:0}.footer-bar .seg{position:absolute;top:0;bottom:0}.footer-bar .orange{background:var(--orange);left:40.7%;right:0}.footer-bar .magenta{background:var(--magenta);width:60.2%;left:32.1%}.footer-bar .purple{background:var(--purple);width:60.3%;left:0}.editable{color:inherit;resize:none;field-sizing:content;background:0 0;border:1px solid #0000;border-radius:3px;outline:none;min-width:2ch;padding:1px 2px}.editable:hover{background:#79339e0a;border-color:#79339e40}.editable:focus{background:#fff;border-color:#79339e8c;box-shadow:0 0 0 2px #79339e1f}@media print{body{background:0 0!important}.no-print{display:none!important}.page{width:210mm;height:297mm;overflow:hidden;box-shadow:none!important;margin:0!important}.editable{box-shadow:none!important;background:0 0!important;border:none!important;border-radius:0!important;padding:0!important}.gst-empty,.actions-col,table.quote col.actions-col{display:none!important}@page{size:A4;margin:0}}@media screen and (width<=820px){.page{width:100%;height:auto;min-height:100vh;box-shadow:none;margin:0}.content{padding:28px 20px 40px}.company{max-width:70%;font-size:20px}.title{font-size:22px}table.quote th,table.quote td{padding:8px 6px;font-size:13px}}.app{min-height:100vh;padding-bottom:24px}.toolbar{z-index:20;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffeb;border-bottom:1px solid #ddd;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 20px;display:flex;position:sticky;top:0;box-shadow:0 2px 10px #0000000f}.toolbar-brand{flex-direction:column;gap:2px;display:flex}.toolbar-brand strong{color:#222;font-size:15px}.toolbar-brand span{color:#666;font-size:12px}.toolbar-actions{flex-wrap:wrap;gap:8px;display:flex}.toolbar button,.icon-btn{font:inherit;cursor:pointer;color:#222;background:#fff;border:1px solid #ccc;border-radius:8px;padding:8px 12px;font-size:13px;font-weight:600;transition:background .15s,border-color .15s,color .15s}.toolbar button:hover,.icon-btn:hover:not(:disabled){color:#79339e;background:#faf5fc;border-color:#79339e}.toolbar button.primary{color:#fff;background:#79339e;border-color:#79339e}.toolbar button.primary:hover{color:#fff;background:#652a86;border-color:#652a86}.toolbar button.ghost{background:0 0}.icon-btn{color:#888;background:0 0;border-color:#0000;border-radius:50%;width:26px;height:26px;padding:0;font-size:16px;line-height:1}.icon-btn:disabled{opacity:.35;cursor:not-allowed}.text-btn{font:inherit;cursor:pointer;color:#79339e;white-space:nowrap;background:0 0;border:none;border-radius:4px;padding:2px 4px;font-size:12px;font-weight:700}.text-btn:hover{background:#79339e14}@media screen and (width<=820px){.toolbar{padding:12px;position:static}.toolbar-actions{width:100%}.toolbar button{flex:auto}}
