@font-face{font-family:Rubik;font-style:normal;font-display:swap;font-weight:300 900;src:url(/assets/rubik-arabic-wght-normal-CGnJ-sf6.woff2)format("woff2-variations");unicode-range:U+6??,U+750-77F,U+870-88E,U+890-891,U+897-8E1,U+8E3-8FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Rubik;font-style:normal;font-display:swap;font-weight:300 900;src:url(/assets/rubik-latin-ext-wght-normal-OacczzuJ.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Rubik;font-style:normal;font-display:swap;font-weight:300 900;src:url(/assets/rubik-latin-wght-normal-CnQIisVs.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bleu:#0f2b5b;--creme:#fff3dc;--harissa:#e5391f;--soleil:#f7b52c;--olive:#4f6b2a;--encre:#1b1b1f;--blanc:#fff;--bg:var(--creme);--text:var(--encre);--surface:var(--blanc);--line:#0f2b5b2e;--radius:1.25rem;--radius-pill:999px;--tap:3.5rem;--gutter:1rem;--anim:.2s;--font:"Rubik", system-ui, sans-serif}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--bg);color:var(--text);font-family:var(--font);-webkit-tap-highlight-color:transparent;margin:0;font-size:1.0625rem}button,input,select{font:inherit;color:inherit}.app{flex-direction:column;max-width:40rem;height:100%;margin-inline:auto;display:flex}.screen{padding-inline:var(--gutter);flex:1;padding-block:1.25rem 1.5rem;overflow-y:auto}.screen>*+*{margin-block-start:1rem}h1,h2{letter-spacing:-.01em;margin:0;font-weight:900;line-height:1.1}h1{font-size:2rem}h2{font-size:1.35rem}.muted{opacity:.7}.marker{background:linear-gradient(transparent 62%, var(--soleil) 62%, var(--soleil) 82%, transparent 82%);padding-inline:.15em}.hero{background:var(--bleu);color:var(--creme);border-radius:var(--radius);padding:1.25rem}.hero .big{font-size:2.5rem;font-weight:900;line-height:1}.hero .marker{background-image:linear-gradient(transparent 62%, var(--soleil) 62%, var(--soleil) 82%, transparent 82%)}.btn{min-height:var(--tap);border-radius:var(--radius-pill);cursor:pointer;background:var(--bleu);color:var(--creme);transition:transform var(--anim) ease;border:0;padding-inline:1.25rem;font-size:1.125rem;font-weight:800}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn.cash{background:var(--olive)}.btn.ghost{color:var(--bleu);border:2px solid var(--bleu);background:0 0}.btn.block{width:100%}.field{flex-direction:column;gap:.25rem;display:flex}.field label{font-size:.9rem;font-weight:700}.input{min-height:var(--tap);border:2px solid var(--line);border-radius:var(--radius);background:var(--surface);min-width:0;padding-inline:1rem}.field>.input{width:100%}.input:focus{outline:3px solid var(--soleil);border-color:var(--bleu)}.card{background:var(--surface);border-radius:var(--radius);border:2px solid var(--line);padding:1rem}.grid{grid-template-columns:repeat(auto-fill,minmax(8rem,1fr));gap:.75rem;display:grid}.tile{border-radius:var(--radius);border:2px solid var(--bleu);background:var(--surface);text-align:start;cursor:pointer;flex-direction:column;justify-content:space-between;gap:.25rem;min-height:5rem;padding:.75rem;display:flex}.tile:active{background:var(--soleil)}.tile .price{font-weight:800}.row{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.cart-line{border-block-end:1px solid var(--line);padding-block:.75rem}.stepper{align-items:center;gap:.5rem;display:flex}.stepper button{border:2px solid var(--bleu);cursor:pointer;background:0 0;border-radius:50%;width:2.75rem;height:2.75rem;font-size:1.4rem;font-weight:800}.qty-input{text-align:center;width:5rem;min-height:2.75rem}.tabbar{background:var(--bleu);padding-block-end:env(safe-area-inset-bottom,0px);display:flex}.tab{min-height:var(--tap);color:var(--creme);opacity:.65;cursor:pointer;background:0 0;border:0;flex:1;font-weight:700}.tab[aria-current=page]{opacity:1;box-shadow:inset 0 -4px 0 var(--soleil)}.placeholder{border:3px dashed var(--bleu);border-radius:var(--radius);text-align:center;opacity:.6;aspect-ratio:16/9;place-items:center;padding:1.5rem;font-size:.8rem;display:grid}.toast{background:var(--olive);color:var(--creme);border-radius:var(--radius);padding:1rem;font-weight:800}.error{color:var(--harissa);font-weight:700}.lang{max-width:9rem}.install p{margin:.5rem 0 1rem}.install h2{font-size:1.25rem}.install .row{flex-wrap:wrap;justify-content:flex-start}.btn.sun{background:var(--soleil);color:var(--bleu)}.btn.ghost-light{color:var(--creme);background:0 0;border:2px solid #fff3dc73}.install-steps{gap:.6rem;margin:.75rem 0;padding-inline-start:1.4rem;display:grid}.install-steps li{padding-inline-start:.25rem}.install .muted{font-size:.95rem}.badge{border-radius:var(--radius-pill);background:var(--olive);color:var(--creme);padding:.2rem .65rem;font-size:.8rem;font-weight:700}.badge.warn{background:var(--soleil);color:var(--bleu)}.scanner{z-index:50;background:var(--bleu);color:var(--creme);flex-direction:column;display:flex;position:fixed;inset:0}.scanner-bar{padding:.75rem var(--gutter);justify-content:space-between;align-items:center;gap:.75rem;display:flex}.scanner-view{background:#000;flex:1;place-items:center;min-height:0;display:grid;position:relative;overflow:hidden}.scanner-view video{object-fit:cover;width:100%;height:100%}.scanner-frame{inset-inline:10%;border:3px solid var(--soleil);border-radius:var(--radius);pointer-events:none;height:30%;position:absolute;top:35%;box-shadow:0 0 0 100vmax #00000059}.scanner-view.alert .scanner-frame{border-color:var(--harissa);border-width:6px;box-shadow:0 0 0 100vmax #c81e1e80}.scanner-hint{inset-inline:1rem;text-align:center;text-shadow:0 1px 4px #000;margin:0;font-weight:700;position:absolute;bottom:1rem}.scanner-message{padding:1.5rem var(--gutter);flex:1;font-size:1.1rem;font-weight:700}.scanner-manual{padding:.75rem var(--gutter) calc(.75rem + env(safe-area-inset-bottom,0px));gap:.5rem;display:flex}.scanner-manual .input{flex:1}.scan-note{z-index:60;inset-inline:var(--gutter);border-radius:var(--radius);color:var(--creme);padding:.75rem 1rem;font-weight:800;position:fixed;bottom:5.5rem}.scan-note.ok{background:var(--olive)}.scan-note.warn{background:var(--harissa)}.calendar{gap:.75rem;display:grid}.calendar-head{gap:.5rem}.cal-month{text-transform:capitalize;font-size:1.15rem}.cal-nav{min-width:2.75rem;min-height:2.75rem;padding-inline:0;font-size:1.5rem;line-height:1}[dir=rtl] .cal-nav{transform:scaleX(-1)}.cal-grid{grid-template-columns:repeat(7,1fr);gap:.3rem;display:grid}.cal-wd{text-align:center;opacity:.7;font-size:.85rem;font-weight:700}.cal-day{aspect-ratio:1;cursor:pointer;background:var(--surface);min-height:2.5rem;color:var(--bleu);border:2px solid #0000;border-radius:.75rem;font-weight:700}.cal-day.lvl-0{background:var(--creme)}.lvl-1{background:color-mix(in srgb, var(--soleil) 35%, var(--creme))}.lvl-2{background:var(--soleil)}.lvl-3{background:var(--olive);color:var(--creme)}.lvl-4{background:var(--bleu);color:var(--creme)}.cal-day.today{border-color:var(--harissa)}.cal-day.selected{outline:3px solid var(--bleu);outline-offset:2px}.cal-day:focus-visible{outline:3px solid var(--soleil);outline-offset:2px}.cal-legend{justify-content:flex-end;align-items:center;gap:.35rem;font-size:.8rem;display:flex}.cal-swatch{border:1px solid var(--line);border-radius:.3rem;width:1rem;height:1rem}.cal-swatch.lvl-0{background:var(--creme)}.balance-owed{color:var(--harissa);font-weight:800}.balance-ahead{color:var(--olive);font-weight:800}.tab{text-overflow:ellipsis;white-space:nowrap;min-width:0;padding-inline:.15rem;font-size:.8rem;overflow:hidden}.swipe-row{scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;display:flex;overflow-x:auto}.swipe-row::-webkit-scrollbar{display:none}.swipe-main{scroll-snap-align:start;box-sizing:border-box;flex:0 0 100%}.swipe-actions{scroll-snap-align:end;flex:none;display:flex}.swipe-btn{min-width:5.5rem;color:var(--creme);cursor:pointer;border:0;font-weight:800}.swipe-btn.edit{background:var(--bleu)}.swipe-btn.delete{background:var(--harissa)}.form-grid{grid-template-columns:minmax(0,1fr);gap:.75rem;display:grid}.form-grid .row>.btn{flex:none}.sale-toggle{text-align:start;cursor:pointer;background:0 0;border:0;gap:.25rem;width:100%;padding:0;display:grid}.sale-toggle .row{width:100%}.sale-detail{border-radius:var(--radius);background:var(--bg);gap:.35rem;margin:.75rem 0 0;padding:.75rem;display:grid}.sale-detail dt{font-weight:500}.sale-detail dd{text-align:end;margin:0;font-weight:700}.sale-detail .row{align-items:baseline}.chips{scrollbar-width:none;gap:.5rem;padding-block-end:.25rem;display:flex;overflow-x:auto}.chips::-webkit-scrollbar{display:none}.chip{border-radius:var(--radius-pill);cursor:pointer;border:2px solid var(--bleu);min-height:2.5rem;color:var(--bleu);background:0 0;flex:none;padding-inline:1rem;font-weight:700}.chip[aria-pressed=true]{background:var(--bleu);color:var(--creme)}.keep-alive:not([hidden]){display:contents}input[type=email],input[type=password],input[inputmode=email],input[inputmode=numeric],input[inputmode=decimal],input[inputmode=tel]{direction:ltr}input[type=email]:placeholder-shown,input[inputmode=numeric]:placeholder-shown,input[inputmode=decimal]:placeholder-shown,input[inputmode=tel]:placeholder-shown{direction:inherit}.tile.pinned{background:var(--soleil);border-color:var(--bleu)}.pay-success{z-index:70;background:var(--olive);color:var(--creme);flex-direction:column;justify-content:center;align-items:center;gap:.75rem;animation:.18s ease-out pay-fade;display:flex;position:fixed;inset:0}.pay-badge{place-items:center;width:120px;height:120px;animation:.42s cubic-bezier(.2,1.4,.4,1) both pay-pop;display:grid;position:relative}.pay-badge svg{position:relative}.pay-circle{stroke:var(--creme);stroke-width:3px;stroke-dasharray:151;stroke-dashoffset:151px;animation:.45s ease-out 80ms forwards pay-draw}.pay-check{stroke:var(--soleil);stroke-width:5px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:40;stroke-dashoffset:40px;animation:.32s ease-out .38s forwards pay-draw}.pay-ring{border:3px solid var(--creme);opacity:0;border-radius:50%;animation:1.1s ease-out .3s pay-ripple;position:absolute;inset:0}.pay-ring-2{animation-delay:.52s}.pay-amount{margin-block-start:.5rem;font-size:2.5rem;font-weight:900;animation:.4s ease-out .3s both pay-rise}.pay-label{opacity:.9;font-weight:700;animation:.4s ease-out .4s both pay-rise}@keyframes pay-fade{0%{opacity:0}to{opacity:1}}@keyframes pay-pop{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}@keyframes pay-draw{to{stroke-dashoffset:0}}@keyframes pay-ripple{0%{opacity:.6;transform:scale(1)}to{opacity:0;transform:scale(2.6)}}@keyframes pay-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.pay-success,.pay-badge,.pay-amount,.pay-label{animation:none}.pay-circle,.pay-check{stroke-dashoffset:0;animation:none}.pay-ring{display:none}}.perms{border:0;gap:.25rem;margin:.5rem 0 0;padding:0;display:grid}.perm{cursor:pointer;align-items:center;gap:.6rem;min-height:2.5rem;display:flex}.perm input{flex:none;width:1.4rem;height:1.4rem}.danger{border:2px solid var(--harissa);border-radius:var(--radius);padding:.75rem}.danger summary{cursor:pointer;color:var(--harissa);font-weight:800}.btn.danger-btn{background:var(--harissa);color:var(--blanc)}.cart-line.cancelled .sale-toggle strong,.cart-line.cancelled .sale-toggle .muted{opacity:.6;text-decoration:line-through}.btn.danger-text{color:var(--harissa);border-color:var(--harissa)}.receipt-actions{flex-wrap:wrap;justify-content:flex-start}.print-receipt{display:none}@media print{@page{margin:5mm}body>#root{display:none!important}.print-receipt{color:#000;background:#fff;display:block}.print-receipt pre{white-space:pre-wrap;margin:0;font:13px/1.45 ui-monospace,Courier New,monospace}}.collapsible>summary{cursor:pointer;list-style:none}.collapsible>summary::-webkit-details-marker{display:none}.collapsible>summary h2{margin:0;display:inline}.collapsible>summary:after{content:"▾";float:inline-end;font-weight:800}.collapsible[open]>summary:after{content:"▴"}.collapsible>.form-grid{margin-block-start:.75rem}.collapsible .cart-line{flex-wrap:wrap}.collapsible .cart-line>div{overflow-wrap:anywhere;flex:10rem;min-width:0}.collapsible .cart-line .row{flex-wrap:wrap}.collapsible .perms{min-width:0}
