@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/fef07dbb0973bf53-s.12tyk43_3sh9u.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.0jzbimsg8vl84.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/53b9e256198e5412-s.0-wfv7uh4i7h9.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.0nx0ww8fni_q3.woff2)format("woff2");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:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.09~u27dqhyhd6.woff2)format("woff2");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}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_2ae47f08-module__h69qWW__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_2ae47f08-module__h69qWW__variable{--font-geist-sans:"Geist", "Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5ce348bf30bf5439-s.0zgw-jeven.3w.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.0wkzw~je483f-.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/6306c77e7c8268e4-s.0rhz0arwfsn~5.woff2)format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7d817b4c03b0c5f1-s.0l76wvqk9d84w.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.0k4k9394f2q-k.woff2)format("woff2");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:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.08e28id.o-okb.woff2)format("woff2");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}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_eb58308d-module__w_p2Lq__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_eb58308d-module__w_p2Lq__variable{--font-geist-mono:"Geist Mono", "Geist Mono Fallback"}
:root{--color-primary:#a82f33;--color-primary-hover:#8f262a;--color-bg-dark:#121212;--color-surface:#1e1e1e;--color-surface-light:#2c2c2c;--color-text:#fff;--color-text-muted:#aaa;--color-border:#333;--color-success:#2e7d32;--font-family:"Roboto", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--radius-sm:4px;--radius-md:8px;--radius-lg:16px;--radius-full:9999px;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 6px #0000004d;--shadow-lg:0 10px 15px #0006}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--color-bg-dark);color:var(--color-text);font-family:var(--font-family);-webkit-font-smoothing:antialiased;flex-direction:column;min-height:100vh;display:flex}h1,h2,h3,h4,h5,h6{margin-bottom:.5rem;font-weight:600}button{cursor:pointer;border:none;font-family:inherit;transition:all .2s}button:disabled{opacity:.5;cursor:not-allowed}input{font-family:inherit}.container{flex:1;width:100%;max-width:780px;margin:0 auto;padding:.5rem}.dashboard{flex-direction:row;gap:.5rem;display:flex}.header{background-color:var(--color-surface);border-radius:var(--radius-lg);color:var(--color-text);box-shadow:var(--shadow-sm);padding:1rem}.header-content{justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;padding:0;display:flex}.logo{object-fit:contain;height:40px}.btn-primary{background-color:var(--color-primary);color:#fff;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:.75rem 1.5rem;font-weight:500}.btn-primary:hover:not(:disabled){background-color:var(--color-primary-hover)}.btn-outline{color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:#0000;padding:.75rem 1.5rem}.btn-outline:hover:not(:disabled){background-color:var(--color-surface-light)}.card{background-color:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid #ffffff0d;padding:1rem}@keyframes fadeIn{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:.3s ease-out forwards fadeIn}.product-grid{grid-template-columns:repeat(auto-fill,minmax(95px,1fr));gap:1rem;margin-top:.5rem;display:grid}.product-btn{border:1px solid #ffffff14;border-top:3px solid var(--accent-color,var(--color-primary));border-radius:var(--radius-md);color:var(--color-text);box-shadow:var(--shadow-sm);background:#ffffff08;flex-direction:column;justify-content:center;align-items:center;gap:.25rem;min-height:60px;padding:.5rem .4rem .8rem;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex;position:relative}.product-btn:before{content:"";opacity:0;pointer-events:none;border-radius:var(--radius-md);background:radial-gradient(circle,#ffffff0d 0%,#0000 70%);transition:opacity .25s;position:absolute;inset:0}.product-btn:hover:not(:disabled){border-color:#ffffff26;border-top-color:var(--accent-color,var(--color-primary));box-shadow:0 4px 12px -4px #00000080, 0 0 10px -2px var(--accent-glow,#a82f3333);background:#ffffff0f;transform:translateY(-2px)scale(1.02)}.product-btn:hover:before{opacity:1}.product-btn:active:not(:disabled){transform:translateY(-1px)scale(.98);box-shadow:0 2px 6px -4px #00000080}.product-btn-name{text-align:center;color:#e5e7eb;word-break:break-word;font-size:.875rem;font-weight:500;line-height:1}.product-btn-price{background:var(--price-bg,#ffffff0f);color:var(--price-color,var(--color-text));border:1px dashed var(--price-border,#fff3);z-index:5;border-radius:2px;padding:.12rem .4rem;font-size:.72rem;font-weight:800;transition:all .25s cubic-bezier(.4,0,.2,1);position:absolute;bottom:-6px;right:-4px;transform:rotate(-8deg);box-shadow:2px 2px 5px #0000004d}.product-btn:hover:not(:disabled) .product-btn-price{background:var(--accent-color);color:#fff;border:1px solid var(--accent-color);box-shadow:0 4px 10px var(--accent-glow);transform:rotate(-4deg)scale(1.1)translate(-2px,-2px)}.login-overlay{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:9999;background:radial-gradient(circle,#101814f2 0%,#080c0afa 100%);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.login-card{border-radius:var(--radius-lg);text-align:center;background:#121e1ab3;border:1px solid #10b98126;width:100%;max-width:380px;padding:2.5rem 2rem;animation:.4s ease-out fadeIn;box-shadow:0 20px 40px #0009,0 0 30px #10b9810d}.login-logo-container{filter:drop-shadow(0 0 15px #10b98133);margin-bottom:1.25rem;animation:3s ease-in-out infinite pulseLogo;display:inline-block}.login-card h2{background:linear-gradient(135deg,#fff 0%,#a3e635 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:.25rem;font-size:1.5rem;font-weight:700}.login-subtitle{color:var(--color-text-muted);margin-bottom:2rem;font-size:.9rem}.pin-indicators{justify-content:center;gap:1.25rem;margin-bottom:2.5rem;display:flex}.pin-dot{background:0 0;border:2px solid #fff3;border-radius:50%;width:16px;height:16px;transition:all .2s cubic-bezier(.4,0,.2,1)}.pin-dot.filled{background:var(--color-primary);border-color:var(--color-primary);transform:scale(1.15);box-shadow:0 0 10px #10b98180}.pin-dot.error{background:#ef4444!important;border-color:#ef4444!important;box-shadow:0 0 10px #ef444480!important}.keypad{grid-template-columns:repeat(3,1fr);gap:1rem;max-width:280px;margin:0 auto;display:grid}.keypad-btn{color:var(--color-text);cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;background:#ffffff08;border:1px solid #ffffff14;border-radius:50%;outline:none;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto;font-size:1.35rem;font-weight:600;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.keypad-btn:focus{color:var(--color-text);background:#ffffff08;border-color:#ffffff14;outline:none}@media (hover:hover){.keypad-btn:hover{color:var(--color-primary);background:#10b9811a;border-color:#10b9814d}}.keypad-btn:active{background:#10b98133;transform:scale(.92)}.keypad-btn.action{color:var(--color-text-muted);background:#ffffff03;font-size:1.05rem}@media (hover:hover){.keypad-btn.action:hover{color:#ef4444;background:#ef444414;border-color:#ef444440}}.error-message{color:#ef4444;margin-top:1.5rem;font-size:.85rem;font-weight:500;animation:.2s ease-out fadeIn}@keyframes pulseLogo{0%,to{filter:drop-shadow(0 0 15px #10b98133);transform:scale(1)}50%{filter:drop-shadow(0 0 22px #10b98166);transform:scale(1.03)}}.shake{animation:.4s ease-in-out shakeAnimation}@keyframes shakeAnimation{0%,to{transform:translate(0)}20%,60%{transform:translate(-8px)}40%,80%{transform:translate(8px)}}.spinner{border:3px solid #10b98126;border-top-color:var(--color-primary);border-radius:50%;width:40px;height:40px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}
