:root{--ar:.671895;--ink:#1c1b19;--muted:#8d877c;--paper:#f7f4ef;--desk:#ece8e1;--charcoal:#242321;--charcoal-2:#32302c;--line:#d9d3c8;--gold:#c6a15b;--gold-ink:#3d3118;--red:#ea1917;--field-focus:#c6a15bf2;--print-gap:5mm;--print-nudge-x:0mm;--print-nudge-y:0mm;--page-portrait-inner-w:194mm;--page-portrait-inner-h:281mm;--page-landscape-inner-w:281mm;--page-landscape-inner-h:194mm;--page-inner-w:var(--page-portrait-inner-w);--page-inner-h:var(--page-portrait-inner-h);--type-customer:88cqh;--type-folio:90cqh;--type-date:min(86cqh, 70cqw);--type-qty:min(88cqh, 48cqw);--type-article:88cqh;--type-price:88cqh;--type-importe:88cqh;--type-total:90cqh;--print-type-customer:98cqh;--print-type-folio:98cqh;--print-type-date:min(96cqh, 88cqw);--print-type-qty:min(98cqh, 78cqw);--print-type-article:98cqh;--print-type-price:98cqh;--print-type-importe:98cqh;--print-type-total:100cqh;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body{height:100%;margin:0}body{color:var(--ink);background:var(--desk);font-family:Segoe UI,Helvetica Neue,Arial,sans-serif}button,input,select{font:inherit}.app{background:var(--desk);flex-direction:column;height:100dvh;display:flex;overflow:hidden}.toolbar{background:var(--charcoal);color:#f6f3ee;z-index:20;flex:none;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"brand actions""tools tools";align-items:center;gap:8px 10px;padding:8px 10px;display:grid}.brand{grid-area:brand;min-width:0}.brand h1{letter-spacing:-.02em;margin:0;font-size:.98rem;font-weight:650;line-height:1.15}.brand p{color:var(--gold);letter-spacing:.08em;text-transform:uppercase;margin:1px 0 0;font-size:.68rem}.actions{grid-area:actions}.tools{flex-wrap:wrap;grid-area:tools;align-items:center;gap:6px;min-width:0;display:flex}.toolbar-group{align-items:center;gap:6px;min-width:0;display:flex}.zoom-group{align-items:center;gap:4px;margin-left:auto;display:flex}.folio-control,.mode-control{align-items:center;gap:6px;min-width:0;font-size:.92rem;font-weight:650;display:flex}.folio-control input,.mode-control select,.zoom-group button,.actions button,.ghost{min-height:44px;font-size:16px}@media (width<=719px){.toolbar{row-gap:6px;padding:6px 8px 8px}.brand h1{font-size:.92rem}.brand p{font-size:.64rem}.tools{flex-wrap:wrap;gap:4px}.folio-control{flex:none}.folio-control input{width:4.2rem;padding:6px 8px}.mode-control{flex:auto;min-width:5.2rem;max-width:6.2rem}.mode-control select{width:100%;min-width:0;max-width:100%;padding:6px 4px;display:block}.ghost{flex:none;padding:6px 8px}.zoom-group{flex:100%;justify-content:flex-end;gap:3px;margin-left:0}.zoom-group button{min-width:40px;min-height:40px;padding:6px 8px}#zoom-level{display:none}#zoom-fit{width:40px;padding:0;font-size:0}#zoom-fit:before{content:"⤢";font-size:16px;line-height:1}.primary{padding:8px 12px}}.folio-control input{color:#ffb4b0;background:#1a1918;border:1px solid #4a4742;border-radius:8px;width:5.2rem;padding:8px 10px;font-weight:700}.mode-control{flex:auto;min-width:0}.mode-control select{color:#f6f3ee;background:#1a1918;border:1px solid #4a4742;border-radius:8px;width:100%;min-width:0;max-width:9.2rem;padding:8px 10px}.zoom-group button,.ghost{color:#f6f3ee;white-space:nowrap;background:0 0;border:1px solid #4a4742;border-radius:8px;padding:8px 12px}.zoom-group button{min-width:44px}#zoom-fit{min-width:0;padding-inline:12px}#zoom-level{text-align:center;font-variant-numeric:tabular-nums;color:#c8c2b8;min-width:3.1rem;font-size:.85rem}.primary{background:var(--gold);color:var(--gold-ink);white-space:nowrap;border:0;border-radius:8px;padding:10px 14px;font-weight:700}.primary:disabled,.zoom-group button:disabled{opacity:.4}.primary:hover{background:#d4b36e}.primary:active{background:#b08d48}button:focus-visible,select:focus-visible,.folio-control input:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.status,.template-notice{flex:none;margin:0;padding:8px 12px;font-size:.92rem;line-height:1.4}.status{color:#3d3118;background:#f3ecdc;border-bottom:1px solid #e4d7bc}.folio-control{flex-wrap:wrap;align-items:center;gap:6px 8px;display:inline-flex}.folio-sync{letter-spacing:.02em;color:#cbbfa8;white-space:nowrap;font-size:.72rem}.folio-sync.is-ready{color:#b7d7a8}.folio-sync.is-warn{color:#f0c36a}.folio-sync.is-error{color:#f0a8a0}.primary:disabled{opacity:.55;cursor:not-allowed}.template-notice{color:#5c4310;background:#fff4d8;border-bottom:1px solid #ead7a2}.template-notice code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.92em}.stage{touch-action:pan-x pan-y;overscroll-behavior:contain;background:linear-gradient(180deg, #e7e2da 0%, var(--desk) 120px);flex:1;min-height:0;scroll-padding:16px;overflow:auto}.sizer{margin:0 auto;padding:16px 12px 32px;display:table}.print-area{display:block}.receipt{width:100%;aspect-ratio:var(--ar);touch-action:pan-x pan-y;background:#fff;position:relative;box-shadow:0 1px 2px #1c1b190f,0 16px 40px #1c1b1924;container-type:inline-size}.receipt img{object-fit:contain;opacity:0;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:100%;position:absolute;inset:0}.receipt.has-template img{opacity:1}.receipt.missing-template:after{content:"Plantilla no cargada";color:#3c322861;text-align:center;pointer-events:none;width:80%;font-size:18px;position:absolute;top:46%;left:50%;transform:translate(-50%,-50%)}.overlay{pointer-events:none;position:absolute;inset:0}.field{z-index:2;pointer-events:auto;align-items:center;margin:0;display:flex;position:absolute;overflow:hidden;container-type:size}.missing-template .field{background:#ffffff59;outline:1px dashed #503c2847}.field input,.field .text,.folio-print{font-family:Arial,Helvetica Neue,sans-serif;font-size:var(--type-customer);color:#1a1a1a;padding-block:0;line-height:1}.field input{appearance:none;touch-action:manipulation;background:0 0;border:0;border-radius:0;outline:none;width:100%;min-width:0;height:100%;margin:0;padding:0 3px}.field input:focus{box-shadow:inset 0 0 0 1.5px var(--field-focus);background:#fff8e2b8}.field input:-webkit-autofill{-webkit-text-fill-color:#1a1a1a;caret-color:#1a1a1a;transition:background-color 99999s ease-out;box-shadow:inset 0 0 0 1000px #0000}.field input:-webkit-autofill:focus{-webkit-text-fill-color:#1a1a1a;caret-color:#1a1a1a;transition:background-color 99999s ease-out;box-shadow:inset 0 0 0 1000px #0000}.field .text{white-space:nowrap;background:0 0;border:0;align-items:center;width:100%;height:100%;margin:0;padding:0 2px;display:flex;overflow:hidden}.folio-field input,.folio-print{color:var(--red);text-align:left;letter-spacing:.01em;font-weight:800;font-size:var(--type-folio)}.folio-field input:-webkit-autofill{-webkit-text-fill-color:var(--red)}.folio-print{align-items:center;width:100%;padding-left:2px;display:none}.date-field .text{text-align:center;font-variant-numeric:tabular-nums;font-weight:700;font-size:var(--type-date);justify-content:center}.qty input{text-align:center;font-size:var(--type-qty)}.article input{text-align:left;font-size:var(--type-article);text-overflow:clip}.money input,.money .text,.total-field .text{text-align:right;font-variant-numeric:tabular-nums;justify-content:flex-end;font-weight:700}.money input{font-size:var(--type-price)}.money .text{font-size:var(--type-importe)}.total-field .text{font-size:var(--type-total);font-weight:800}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width>=900px){.toolbar{flex-wrap:nowrap;gap:12px;padding:8px 16px;display:flex}.brand{margin-right:4px}.brand h1{font-size:1.05rem}.brand p{font-size:.72rem}.tools{flex-wrap:nowrap;flex:auto}.mode-control{flex:0 auto}.mode-control select{min-width:7.2rem}.actions{order:3;margin-left:4px}.ghost{min-width:6.5rem}.ghost:after{content:" nota"}}@page{size:A4 portrait;margin:8mm}@page landscape-sheet{size:A4 landscape;margin:8mm}@page portrait-sheet{size:A4 portrait;margin:8mm}@media print{html,body,.app,.stage,.sizer{height:auto!important;min-height:0!important;box-shadow:none!important;background:#fff!important;margin:0!important;padding:0!important;display:block!important;overflow:visible!important}.toolbar,.status,.template-notice,noscript,.receipt.missing-template:after{display:none!important}.print-area{justify-content:center;align-items:center;gap:var(--print-gap);width:100%;transform:translate(var(--print-nudge-x), var(--print-nudge-y));display:flex!important}.print-area[data-copies="1"]{page:portrait-sheet;flex-direction:column}.print-area[data-copies="2"]{page:landscape-sheet;flex-flow:row}.receipt{break-inside:avoid;page-break-inside:avoid;background:0 0;flex:none;box-shadow:none!important;margin:0!important}.print-area[data-copies="1"] .receipt{width:min(var(--page-portrait-inner-w), calc(var(--page-portrait-inner-h) * var(--ar)))!important}.print-area[data-copies="2"] .receipt{width:min(calc((var(--page-landscape-inner-w) - var(--print-gap)) / 2), calc(var(--page-landscape-inner-h) * var(--ar)))!important}.field{overflow:hidden!important;container-type:size!important}.receipt img,.folio-print{-webkit-print-color-adjust:exact;print-color-adjust:exact}.missing-template .field{background:0 0!important;outline:none!important}.field input,.field input:focus{-webkit-text-fill-color:#1a1a1a;box-shadow:none!important;color:#1a1a1a!important;background:0 0!important;border:none!important;outline:none!important}.folio-field input{display:none!important}.folio-print{-webkit-text-fill-color:var(--red);color:var(--red)!important;display:flex!important}.field input,.field .text{font-size:var(--print-type-customer);line-height:1}.folio-print{font-size:var(--print-type-folio);line-height:1}.date-field .text{font-size:var(--print-type-date)}.article input{font-size:var(--print-type-article)}.qty input{font-size:var(--print-type-qty)}.money input{font-size:var(--print-type-price);padding-inline:1px;font-weight:700}.money .text{font-size:var(--print-type-importe);padding-inline:1px;font-weight:800}.total-field .text{font-size:var(--print-type-total);letter-spacing:.01em;padding-inline:1px;font-weight:900}.field input[data-kind=nombre],.field input[data-kind=direccion],.field input[data-kind=ciudad],.article input{white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;align-items:center;line-height:1.05}}
