@font-face{font-family:Pangram;src:url(/fonts/Pangram-Regular.otf) format("opentype");font-weight:400}@font-face{font-family:Pangram;src:url(/fonts/Pangram-Medium.otf) format("opentype");font-weight:500}@font-face{font-family:Pangram;src:url(/fonts/Pangram-Bold.otf) format("opentype");font-weight:700}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px}@media (min-width: 1600px){html{font-size:19px}}@media (min-width: 1920px){html{font-size:22px}}@media (min-width: 2560px){html{font-size:28px}}@media (min-width: 3840px){html{font-size:36px}}:root{--brand: #6ECDC5;--brand-dk: #5AB8B0;--accent: #F0A04B;--blue: #6ECDC5;--blue-dk: #5AB8B0;--green: #16a34a;--red: #dc2626;--gray-50: #f9fafb;--gray-100: #f3f4f6;--gray-200: #e5e7eb;--gray-300: #d1d5db;--gray-400: #9ca3af;--gray-500: #6b7280;--gray-700: #374151;--gray-800: #1f2937;--gray-900: #111827;--bg-card: #ffffff;--radius: 10px}html[data-theme=dark]{--gray-50: #1f2937;--gray-100: #111827;--gray-200: #374151;--gray-300: #4b5563;--gray-400: #9ca3af;--gray-500: #d1d5db;--gray-700: #e5e7eb;--gray-800: #f3f4f6;--gray-900: #f9fafb;--bg-card: #1f2937}html[data-theme=dark] body{background:#0f172a;color:#f3f4f6}html[data-theme=dark] input,html[data-theme=dark] select,html[data-theme=dark] textarea{background:#1f2937;color:#f3f4f6;border-color:#4b5563}html[data-theme=dark] .pos-container,html[data-theme=dark] .step-card{background:#0f172a}body{font-family:Pangram,system-ui,-apple-system,sans-serif;background:var(--gray-100);color:var(--gray-900);min-height:100vh}.pos-container{display:flex;flex-direction:column;min-height:100vh}.pos-header{background:var(--gray-900);color:#fff;padding:10px 24px;display:flex;align-items:center;gap:12px}.logo{display:flex;align-items:center;gap:8px;font-size:1.1rem;font-weight:700;letter-spacing:-.5px;color:var(--brand)}.logo img{height:32px;width:auto}.pos-label{font-size:.85rem;color:var(--gray-400);flex:1}.steps-indicator{display:flex;gap:6px}.step-dot{width:10px;height:10px;border-radius:50%;background:var(--gray-400);transition:background .2s}.step-dot.active{background:var(--brand)}.step-dot.done{background:var(--green)}.pos-main{flex:1;display:flex;align-items:flex-start;justify-content:center;padding:32px 16px}.btn-volver{display:inline-flex;align-items:center;gap:4px;font-size:.85rem;padding:6px 14px;border-radius:6px;border:1px solid #0a7c3a;background:#0a7c3a;color:#fff;cursor:pointer;font-family:inherit;font-weight:600;box-shadow:0 2px 4px #0a7c3a33;transition:all .15s}.btn-volver:hover{background:#0fa050;border-color:#0fa050;box-shadow:0 3px 6px #0a7c3a4d}.btn-volver:active{transform:translateY(1px)}.page-header{display:flex;align-items:center;gap:12px;margin-bottom:16px}.page-header h2{margin:0;font-size:1.1rem}.pos-footer{text-align:center;padding:10px 16px;font-size:.65rem;color:var(--gray-400);letter-spacing:.5px}.pos-footer a{color:var(--brand);text-decoration:none;font-weight:600}.pos-home-logo{display:flex;flex-direction:column;align-items:center;gap:12px;opacity:.5;pointer-events:none;-webkit-user-select:none;user-select:none}.pos-home-logo img{width:280px;height:auto;filter:grayscale(20%);animation:floatSpin 8s ease-in-out infinite}@keyframes floatSpin{0%,to{transform:translateY(0) rotate(0)}25%{transform:translateY(-10px) rotate(3deg)}50%{transform:translateY(0) rotate(0)}75%{transform:translateY(-6px) rotate(-3deg)}}.pos-home-logo span{font-size:3rem;font-weight:700;letter-spacing:-1px;color:var(--brand)}.step-card{background:#fff;border-radius:var(--radius);box-shadow:0 1px 4px #00000014;padding:28px 32px;width:100%;max-width:520px;display:flex;flex-direction:column;gap:14px}.card{background:#fff;border-radius:var(--radius);box-shadow:0 1px 4px #0000000f;padding:14px 18px}h2{font-size:1.1rem;font-weight:700;color:var(--gray-900)}label{font-size:.8rem;font-weight:600;color:var(--gray-700);text-transform:uppercase;letter-spacing:.04em}input[type=text],input[type=number],input[type=password],input[type=date],input[type=datetime-local],select,textarea{width:100%;padding:10px 12px;border:1.5px solid var(--gray-200);border-radius:8px;font-size:.95rem;font-family:inherit;outline:none;transition:border-color .15s}input:focus,select:focus,textarea:focus{border-color:var(--brand)}input::placeholder,textarea::placeholder{color:var(--gray-300);opacity:.7;font-style:italic;font-weight:300}@media (max-width: 768px){input,select,textarea{font-size:16px!important;min-height:40px;padding:8px 10px!important}button{min-height:40px;font-size:max(.85rem,14px)!important;padding:8px 12px!important}.machine-card-mobile-readable h3{font-size:1rem!important}}.concepto-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.concepto-btn{display:flex;flex-direction:column;align-items:flex-start;padding:10px 12px;border:1.5px solid var(--gray-200);border-radius:8px;background:var(--gray-50);cursor:pointer;transition:all .15s;font-size:.9rem;text-align:left;gap:2px}.concepto-btn:hover{border-color:var(--brand);background:#eefbfa}.concepto-btn.selected{border-color:var(--brand);background:#eefbfa;box-shadow:0 0 0 2px #b2e8e3}.monto-badge{font-size:.8rem;color:var(--green);font-weight:600}.resumen{display:flex;justify-content:space-between;align-items:center;background:var(--gray-50);border-radius:8px;padding:10px 14px;font-size:1rem}.resumen strong{font-size:1.2rem;color:var(--brand)}.ticket-resumen{font-size:.88rem;color:var(--gray-700);background:var(--gray-50);border-radius:8px;padding:8px 12px}.section-label{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--gray-400)}.maquina-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.maquina-btn{display:flex;flex-direction:column;align-items:flex-start;padding:12px 14px;border-radius:8px;border:1.5px solid var(--gray-200);background:var(--gray-50);cursor:pointer;position:relative;gap:2px;transition:all .15s}.maquina-btn.available:hover{border-color:var(--brand);background:#eefbfa}.maquina-btn.available.selected{border-color:var(--brand);background:#eefbfa;box-shadow:0 0 0 2px #b2e8e3}.maquina-btn.occupied{opacity:.5;cursor:not-allowed}.maquina-nombre{font-weight:600;font-size:.95rem}.maquina-tipo{font-size:.78rem;color:var(--gray-400)}.status-dot{position:absolute;top:10px;right:10px;width:9px;height:9px;border-radius:50%}.status-dot.green{background:var(--green)}.status-dot.red{background:var(--red)}.empty-msg{grid-column:1 / -1;text-align:center;color:var(--gray-400);font-size:.9rem;padding:12px}.btn-primary{padding:12px 20px;background:var(--brand);color:#fff;border:none;border-radius:8px;font-size:.95rem;font-weight:600;font-family:inherit;cursor:pointer;transition:background .15s;flex:1}.btn-primary:hover:not(:disabled){background:var(--brand-dk)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{padding:12px 16px;background:var(--gray-100);color:var(--gray-700);border:1.5px solid var(--gray-200);border-radius:8px;font-size:.9rem;font-weight:600;font-family:inherit;cursor:pointer;transition:background .15s}.btn-secondary:hover{background:var(--gray-200)}.btn-row{display:flex;gap:10px}.btn-logout{background:none;border:none;color:var(--gray-400);font-size:.78rem;cursor:pointer;margin-left:8px;padding:3px 6px;border-radius:4px}.btn-logout:hover{color:#fff}.status-card{border-radius:10px;padding:20px;text-align:center;border:2px solid var(--gray-200);background:var(--gray-50)}.status-card.status-pending,.status-card.status-command_sent{border-color:#b2e8e3;background:#eefbfa}.status-card.status-ack_received,.status-card.status-running{border-color:#86efac;background:#f0fdf4}.status-card.status-completed{border-color:var(--green);background:#f0fdf4}.status-card.status-failed,.status-card.status-timed_out{border-color:var(--red);background:#fef2f2}.status-card.status-cancelled{border-color:var(--gray-400);background:var(--gray-100)}.status-icon{font-size:2.5rem;margin-bottom:6px}.status-label{font-size:1rem;font-weight:600}.status-uuid{font-size:.75rem;color:var(--gray-400);margin-top:4px}.loading-bar{height:4px;background:var(--gray-200);border-radius:2px;overflow:hidden}.loading-bar-inner{height:100%;background:var(--brand);animation:slide 1.5s infinite ease-in-out;width:40%}@keyframes slide{0%{transform:translate(-100%)}to{transform:translate(350%)}}.error-msg{background:#fef2f2;border:1.5px solid #fca5a5;color:#991b1b;border-radius:8px;padding:10px 14px;font-size:.9rem}.success-msg{background:#eefbfa;border:1.5px solid #b2e8e3;color:#115e59;border-radius:8px;padding:10px 14px;font-size:.9rem}.loading{text-align:center;color:var(--gray-400);font-size:.9rem;padding:8px}@media (max-width: 1024px){table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;white-space:nowrap;max-width:100%}table thead,table tbody{display:table;width:100%}}@media (max-width: 1024px){body{overflow-x:hidden}.page-header{padding:12px!important}[role=dialog],.modal,.modal-content{max-width:95vw!important;width:95vw!important;max-height:90vh;overflow-y:auto}.toolbar,.actions-row,.button-row{flex-wrap:wrap!important;gap:8px!important}}@media (max-width: 640px){[style*=grid-template-columns][style*="140px"],[style*=gridTemplateColumns][style*="140px"]{grid-template-columns:repeat(auto-fill,minmax(min(100%,160px),1fr))!important}[style*="gridTemplateColumns: 'repeat(3,"],[style*="gridTemplateColumns: 'repeat(4,"],[style*="gridTemplateColumns: 'repeat(5,"],[style*="gridTemplateColumns: 'repeat(6,"],[style*='gridTemplateColumns: "repeat(3,'],[style*='gridTemplateColumns: "repeat(4,'],[style*='gridTemplateColumns: "repeat(5,'],[style*='gridTemplateColumns: "repeat(6,'],[style*="gridTemplateColumns: '1fr 1fr 1fr'"],[style*="gridTemplateColumns: '1fr 1fr 1fr 1fr'"],[style*="gridTemplateColumns: '2fr 1fr'"]{grid-template-columns:1fr 1fr!important}h1{font-size:1.4rem!important}h2{font-size:1.1rem!important}h3{font-size:1rem!important}main,.page,.content{padding:8px!important}[style*="display: flex"][style*=gap],[style*="display:flex"]{flex-wrap:wrap}[style*="gridTemplateColumns: '2fr 1fr'"],[style*="gridTemplateColumns: '1fr 2fr'"]{grid-template-columns:1fr!important}}@media (max-width: 1024px){[style*="gridTemplateColumns: '2fr 1fr'"],[style*="gridTemplateColumns: '1fr 2fr'"]{grid-template-columns:1fr!important}.table-responsive,[data-responsive-table]{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width: 640px){.machine-card{padding:14px!important;min-height:190px!important}.machine-card *{font-size:max(.78rem,12px)!important}.machine-card h3,.machine-card h4{font-size:1rem!important}.machine-card button{min-height:40px!important;padding:6px 10px!important;font-size:.82rem!important}.machine-card input[type=text],.machine-card input[type=number],.machine-card input[type=tel]{font-size:16px!important;padding:8px 10px!important;min-height:40px!important}.caja-cobro-row{grid-template-columns:1fr auto!important;grid-auto-rows:auto;gap:4px!important}.caja-cobro-row>span:first-child{grid-column:1 / -1;font-size:.7rem!important}.modal-responsive{max-width:min(95vw,440px)!important;width:95vw!important}.modal-overlay-responsive{padding:max(8px,env(safe-area-inset-left))!important}}
