@import"https://fonts.googleapis.com/css2?family=Cinzel:wght@700&family=Fraunces:wght@400;600&display=swap";:root{--font-body: "Fraunces", Georgia, serif;--font-title: "Cinzel", "Times New Roman", serif;font-family:var(--font-body);--coffee: #65452f;--ochre: #bb8b35;--ink: #302e2b;--muted: #716557;--paper: #f6f1e7;--line: #d8cbb8;--tint: #f0e7d8;color:var(--ink);background:var(--paper);font-synthesis:none}body{background-image:radial-gradient(ellipse at top left,#bb8b3510,transparent 65%)}button,input,select,textarea{-webkit-tap-highlight-color:transparent;accent-color:var(--coffee)}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--ochre);outline-offset:3px}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select{font:inherit}button{cursor:pointer;border:0;border-radius:12px;padding:.75rem 1rem;background:#e9e4d8;color:#24372f;font-weight:600}button:disabled{opacity:.45;cursor:not-allowed}.primary,.charge{background:#315c4c;color:#fff}.login-shell,.splash{min-height:100dvh;display:grid;place-items:center;padding:1.5rem;text-align:center}.login-card{width:min(420px,100%);background:#fff;border-radius:28px;padding:2rem;box-shadow:0 22px 70px #315c4c22;display:grid;gap:1rem}.brand-mark{margin:auto;width:68px;height:68px;border-radius:20px;background:#315c4c;color:#fff;display:grid;place-items:center;font-family:var(--font-title);font-size:1.5rem;font-weight:700}.login-card h1{margin:0;font-family:var(--font-title);font-weight:700}.login-card p{margin:-.8rem 0 1rem;color:#738078}.login-card label,.dialog label{display:grid;text-align:left;gap:.4rem;font-weight:600}.login-card input,.dialog input,.ticket-search input,.search-row input{border:2px solid #ddd6c8;border-radius:12px;padding:.85rem;background:#fff;min-width:0}.login-card .primary{padding:1rem}.error{background:#ffe5df;color:#9e3324;padding:.8rem;border-radius:12px}.topbar{height:68px;background:#315c4c;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:.6rem 1rem;gap:1rem}.topbar>div:first-child{display:grid}.topbar small{opacity:.78}.topbar b,.splash h1,.dialog h2{font-family:var(--font-title);font-weight:700}.top-actions{display:flex;align-items:center;gap:.5rem}.top-actions button{padding:.55rem .8rem}.online,.offline{font-size:.8rem;padding:.35rem .55rem;border-radius:999px;background:#fff2}.offline{background:#a83e32}.notice{background:#fff1bd;padding:.65rem 1rem;text-align:center;font-weight:600}.warning{background:#ffe5bc;color:#744715;padding:.65rem 1rem;text-align:center;font-weight:600}.workspace{height:calc(100dvh - 68px);display:grid;grid-template-columns:minmax(0,1fr) minmax(330px,32%);overflow:hidden}.catalog{display:flex;flex-direction:column;min-width:0}.search-row{display:grid;grid-template-columns:1fr auto auto;gap:.6rem;padding:.8rem}.search-row input{font-size:1.05rem}.categories{display:flex;gap:.5rem;overflow:auto;padding:0 .8rem .8rem}.categories button{white-space:nowrap;padding:.55rem .85rem}.categories .active{background:#d88b5a;color:#fff}.product-grid{padding:.2rem .8rem 1rem;display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.7rem;overflow:auto}.product-card{min-height:148px;text-align:left;background:#fff;box-shadow:0 3px 12px #315c4c14;display:flex;flex-direction:column;align-items:flex-start;gap:.25rem}.product-card .product-name{font-size:1rem;font-weight:600}.product-card code,.product-card em{font-size:.72rem;color:#718076;font-style:normal}.product-card strong{font-size:1.15rem;margin-top:auto}.product-card em.low{color:#b74732;font-weight:600}aside{background:#fff;display:flex;flex-direction:column;border-left:1px solid #e2ddcf;min-height:0;padding:.8rem}.cart{display:flex;flex-direction:column;min-height:0;flex:1}.cart header,.cart footer{display:flex;align-items:center;justify-content:space-between}.cart h2{margin:.2rem 0}.cart-lines{overflow:auto;flex:1}.cart-lines article{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:.7rem;align-items:center;padding:.8rem 0;border-bottom:1px solid #eee9df}.cart-lines article>div:first-child{display:grid;min-width:0}.cart-lines small{color:#77827c}.quantity{display:flex;align-items:center;gap:.45rem}.quantity button{width:34px;height:34px;padding:0}.cart footer{font-size:1.2rem;padding:1rem 0}.cart footer strong{font-size:1.55rem}.main-charge{font-size:1.2rem;padding:1.05rem}.clear{margin-top:.5rem;background:transparent}.empty{text-align:center;color:#748079;padding:2.5rem 1rem;grid-column:1/-1}.overlay{position:fixed;z-index:20;inset:0;background:#18221dbb;display:grid;place-items:center;padding:1rem}.dialog{position:relative;background:#fff;border-radius:24px;padding:1.5rem;width:min(480px,100%);max-height:92dvh;overflow:auto;box-shadow:0 20px 80px #0005}.dialog.wide{width:min(850px,100%)}.close{position:absolute;right:.8rem;top:.8rem;background:#eee8dc;font-size:1.3rem;padding:.3rem .7rem}.quick-pay,.cash-buttons{display:flex;gap:.5rem;flex-wrap:wrap;margin:1rem 0}.quick-pay button.selected{background:#315c4c;color:#fff}.change{font-size:1.2rem;margin:1rem 0}.dialog>.charge{width:100%;font-size:1.1rem;padding:1rem}.safe-note{font-size:.78rem;color:#718078}.ticket-search{display:grid;grid-template-columns:1fr auto;gap:.5rem}.ticket-list{display:grid;margin:1rem 0}.ticket-list>button{background:#fff;border-bottom:1px solid #eee5d8;border-radius:0;display:flex;justify-content:space-between;text-align:left}.ticket-list span{display:grid}.ticket-list small{font-weight:400;color:#69766f}.loading-inline{text-align:center;padding:2rem}.subdialog{position:absolute;inset:1rem;background:#fff;border:2px solid #315c4c;border-radius:20px;padding:1.5rem;overflow:auto}.subdialog p{display:flex;justify-content:space-between}.safe-note,.subdialog{line-height:1.4}@media(max-width:760px){.topbar{height:auto;min-height:66px}.top-actions span{display:none}.workspace{height:auto;min-height:calc(100dvh - 68px);grid-template-columns:1fr;overflow:visible}.product-grid{max-height:45dvh}.workspace aside{border-left:0;border-top:1px solid #ddd}.cart-lines{max-height:32dvh}.top-actions button{font-size:.78rem;padding:.5rem}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product-card{min-height:135px}.overlay{align-items:end;padding:0}.dialog{border-radius:24px 24px 0 0;width:100%;max-height:94dvh}}.payment-rows{display:grid;gap:.7rem;margin:1rem 0}.customer-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:.45rem}.customer-row select{min-width:0;border:1px solid #d8d0c2;border-radius:9px;padding:.65rem}.payment-row{display:flex;gap:.45rem;flex-wrap:wrap;padding:.65rem;background:#f7f3e9;border-radius:14px}.payment-row select,.payment-row input{min-width:90px;flex:1;border:1px solid #d8d0c2;border-radius:9px;padding:.6rem}.payment-row button{padding:.55rem}.quick-charge{display:grid;grid-template-columns:repeat(3,1fr);gap:.4rem;margin:.55rem 0}.quick-charge button{padding:.72rem .35rem;background:#e1efe7;color:#244f3e}.return-line{display:grid;grid-template-columns:minmax(0,1fr) auto 88px;gap:.6rem;align-items:center;padding:.75rem 0;border-bottom:1px solid #eee5d8}.return-line>span{display:grid}.return-line small{color:#68766f}.return-line>input{width:80px;padding:.55rem;border:1px solid #d8d0c2;border-radius:9px}.return-line label{grid-column:1/-1;font-size:.82rem;font-weight:600;display:flex;align-items:center;gap:.4rem}.return-line label input{width:auto}.transfer-create{display:grid;gap:.7rem;padding:1rem;border-radius:16px;background:#f7f3e9}.transfer-create>select{padding:.7rem;border:1px solid #d8d0c2;border-radius:9px}.transfer-products{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:.5rem;max-height:260px;overflow:auto}.transfer-products label{display:grid;grid-template-columns:minmax(0,1fr) 70px;gap:.5rem;align-items:center;background:#fff;padding:.6rem;border-radius:10px}.transfer-products span{display:grid}.transfer-products small{color:#68766f}.transfer-products input{width:70px;padding:.5rem}.transfer-card{margin:.7rem 0;padding:.9rem;border:1px solid #e4ddcf;border-radius:14px;display:grid;gap:.45rem}.transfer-card p{display:flex;justify-content:space-between;margin:0}.panel-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:.65rem}.panel-stats>div{background:#f7f3e9;border-radius:12px;padding:.75rem;display:grid}.panel-stats strong{font-size:1.2rem}.panel-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.panel-columns p{display:flex;justify-content:space-between;gap:.5rem;border-bottom:1px solid #eee5d8;padding-bottom:.4rem}@media(max-width:430px){.panel-columns{grid-template-columns:1fr}.search-row{grid-template-columns:1fr 1fr}.search-row input{grid-column:1/-1}.customer-row{grid-template-columns:1fr 1fr}.customer-row select{grid-column:1/-1}.quick-charge{grid-template-columns:1fr}.return-line{grid-template-columns:minmax(0,1fr) auto}.return-line>input{grid-column:1/-1;width:100%}}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.brand-login-logo{display:block;width:min(260px,100%);height:auto;margin:0 auto 1rem;background:transparent;mix-blend-mode:multiply}.brand-splash-logo{display:block;width:min(300px,80vw);height:auto;background:transparent;mix-blend-mode:multiply}.brand-header-logo{display:block;width:152px;height:36px;object-fit:contain;background:transparent;filter:grayscale(1) invert(1) sepia(.35);mix-blend-mode:screen}.topbar .pos-brand{display:grid;align-content:center;gap:2px;min-width:0;flex-shrink:0}.pos-brand small{overflow-wrap:anywhere;font-size:11px;line-height:13px}.topbar{isolation:isolate}@media(max-width:760px){.brand-header-logo{width:144px;height:34px}}button{background:var(--tint);color:var(--coffee);border-radius:6px;min-height:44px;transition:background-color .15s,border-color .15s}.primary,.charge,.quick-pay button.selected{background:var(--coffee);color:#fff;box-shadow:0 2px #38291d}.topbar{background:var(--ink);border-bottom:4px double var(--ochre)}.topbar b{color:#f2dba8;letter-spacing:.06em}.topbar small{opacity:1;color:#e2d4bd}.login-card,.dialog{border:1px solid var(--line);border-top:4px double var(--ochre);border-radius:10px;box-shadow:0 16px 48px #65452f18}.brand-mark{background:var(--coffee);color:#f2dba8;border:4px double var(--ochre);border-radius:50%}.login-card h1{letter-spacing:.06em}.login-card p,.product-card code,.product-card em,.cart-lines small,.safe-note,.empty,.ticket-list small,.return-line small,.transfer-products small{color:var(--muted)}.login-card input,.dialog input,.ticket-search input,.search-row input,.customer-row select,.payment-row select,.payment-row input,.return-line>input,.transfer-create>select{border:1px solid #b3a38d;border-radius:6px;background:#fff;color:var(--ink)}.categories button{border:1px solid var(--line)}.categories .active{background:var(--coffee);color:#fff;border-color:var(--coffee)}.product-card{background:#fffdf8;border:1px solid var(--line);border-top:3px solid var(--ochre);border-radius:8px;box-shadow:0 3px 10px #65452f08;color:var(--ink)}.product-card strong{color:var(--coffee)}.product-card strong,.cart footer strong,.panel-stats strong{font-variant-numeric:tabular-nums}.product-card em.low{color:#a13c2b}aside,.workspace aside{border-color:var(--line)}.cart h2{font-family:var(--font-title);font-weight:700}.cart footer{border-top:3px double var(--ochre)}.cart-lines article,.ticket-list>button,.return-line,.panel-columns p{border-bottom-color:var(--line)}.quantity button{width:44px;height:44px}.overlay{background:#302821b8}.close{background:var(--tint)}.subdialog{border-color:var(--ochre);border-radius:8px}.notice,.warning{background:#f3e6bf;color:#624716}.quick-charge button{background:var(--tint);color:var(--coffee);border:1px solid var(--line)}.payment-row,.transfer-create,.panel-stats>div{background:var(--paper);border-radius:8px}.transfer-card{border-color:var(--line);border-radius:8px}.panel-stats>div{border-top:2px solid var(--ochre)}.danger{background:#a83e32;color:#fff}.clear{background:transparent}@media(hover:hover){button:hover:not(:disabled){background:#e4d6bf}.product-card:hover:not(:disabled){background:#f3ecdf;border-color:var(--ochre)}.primary:hover:not(:disabled),.charge:hover:not(:disabled),.categories .active:hover,.quick-pay button.selected:hover{background:#513923}.danger:hover:not(:disabled){background:#853026}}@media(max-width:760px){.dialog{border-radius:12px 12px 0 0}.topbar{flex-wrap:wrap;height:auto}.top-actions{flex-wrap:wrap}}@media(prefers-reduced-motion:reduce){button{transition:none}}
