#root,body,html{height:100%}body{background:#f3f4f6;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;margin:0}code{font-family:SF Mono,Menlo,Monaco,Consolas,monospace}:root{--color-primary:#2563eb;--color-primary-dark:#1d4ed8;--color-secondary:#10b981;--color-warning:#f59e0b;--color-danger:#ef4444;--color-success:#22c55e;--color-bg:#f3f4f6;--color-surface:#fff;--color-surface-alt:#f9fafb;--color-border:#e5e7eb;--color-text:#111827;--color-text-muted:#6b7280;--color-text-inverse:#fff;--radius-sm:6px;--radius:12px;--radius-lg:18px;--shadow-sm:0 1px 2px #0000000f;--shadow:0 4px 12px #00000014;--shadow-lg:0 12px 24px #0000001f;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--transition:200ms ease}*{box-sizing:border-box}body,html{-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;background-color:#f3f4f6;background-color:var(--color-bg);color:#111827;color:var(--color-text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;margin:0;padding:0}button{background:none;border:none;cursor:pointer}button,input,select,textarea{font-family:inherit}.app-container{display:flex;flex-direction:column;min-height:100vh}.header{background:radial-gradient(ellipse at 10% 50%,#63b3ed26 0,#0000 50%),radial-gradient(ellipse at 90% 50%,#2563eb40 0,#0000 45%),linear-gradient(160deg,#0f172a,#1e293b 55%,#0c1a3a);box-shadow:0 4px 12px #00000014;box-shadow:var(--shadow);color:#fff;color:var(--color-text-inverse);padding:16px 24px;padding:var(--space-4) var(--space-6);position:-webkit-sticky;position:sticky;top:0;z-index:10}.header-content{align-items:center;display:flex;flex-wrap:wrap;gap:12px;gap:var(--space-3);justify-content:space-between;margin:0 auto;max-width:1400px}.logo{font-size:1.6rem;font-weight:700;margin:0}.header-status{align-items:center;display:flex;gap:12px;gap:var(--space-3)}.whatsapp-badge{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff26;border-radius:999px;display:inline-flex;font-size:.85rem;font-weight:600;gap:8px;gap:var(--space-2);padding:8px 16px;padding:var(--space-2) var(--space-4)}.whatsapp-badge.conectado{background:#22c55e40}.whatsapp-badge.desconectado{background:#ef444440}.whatsapp-badge .dot{animation:pulse 2s ease-in-out infinite;background:currentColor;border-radius:50%;height:8px;width:8px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.main-content{flex:1 1;margin:0 auto;max-width:1400px;width:100%}.footer{background:#fff;background:var(--color-surface);border-top:1px solid #e5e7eb;border-top:1px solid var(--color-border);color:#6b7280;color:var(--color-text-muted);font-size:.85rem;padding:16px 24px;padding:var(--space-4) var(--space-6);text-align:center}.footer p{margin:0}.menu-principal{padding:16px;padding:var(--space-4)}.menu-grid{grid-gap:20px;grid-gap:var(--space-5);display:grid;gap:20px;gap:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin:0 auto;max-width:900px}.menu-card{align-items:center;background:#fff;background:var(--color-surface);border-radius:18px;border-radius:var(--radius-lg);box-shadow:0 4px 12px #00000014;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:8px;gap:var(--space-2);justify-content:center;min-height:200px;padding:32px 20px;padding:var(--space-8) var(--space-5);position:relative;text-align:center;transition:transform .2s ease,box-shadow .2s ease;transition:transform var(--transition),box-shadow var(--transition)}.menu-card:hover{box-shadow:0 12px 24px #0000001f;box-shadow:var(--shadow-lg);transform:translateY(-4px)}.menu-card:active{transform:translateY(-2px)}.menu-card .icon{font-size:3rem;margin-bottom:8px;margin-bottom:var(--space-2)}.menu-card h2{color:#111827;color:var(--color-text);font-size:1.25rem;margin:0}.menu-card p{color:#6b7280;color:var(--color-text-muted);font-size:.95rem;margin:0}.menu-card .badge{background:#ef4444;background:var(--color-danger);border-radius:999px;color:#fff;font-size:.85rem;font-weight:700;padding:2px 10px;position:absolute;right:16px;right:var(--space-4);top:16px;top:var(--space-4)}.menu-card.nueva-orden{border-top:4px solid #2563eb;border-top:4px solid var(--color-primary)}.menu-card.ordenes{border-top:4px solid #10b981;border-top:4px solid var(--color-secondary)}.menu-card.notificaciones{border-top:4px solid #f59e0b;border-top:4px solid var(--color-warning)}.menu-card.configuracion{border-top:4px solid #6b7280;border-top:4px solid var(--color-text-muted)}.btn-volver{box-shadow:0 1px 2px #0000000f;box-shadow:var(--shadow-sm);gap:8px;gap:var(--space-2);margin-bottom:20px;margin-bottom:var(--space-5);padding:8px 16px;padding:var(--space-2) var(--space-4);transition:background .2s ease;transition:background var(--transition)}.btn-primary{background:#2563eb;background:var(--color-primary);border-radius:12px;border-radius:var(--radius);color:#fff;font-size:1.1rem;font-weight:700;margin-top:20px;margin-top:var(--space-5);padding:16px 24px;padding:var(--space-4) var(--space-6);transition:background .2s ease,transform .2s ease;transition:background var(--transition),transform var(--transition);width:100%}.btn-primary:hover:not(:disabled){background:#1d4ed8;background:var(--color-primary-dark)}.btn-primary:active:not(:disabled){transform:scale(.98)}.btn-primary:disabled{cursor:not-allowed;opacity:.6}.nueva-orden-form{background:#fff;background:var(--color-surface);border-radius:18px;border-radius:var(--radius-lg);box-shadow:0 4px 12px #00000014;box-shadow:var(--shadow);margin:0 auto;max-width:800px;padding:24px;padding:var(--space-6)}.nueva-orden-form h2{color:#111827;color:var(--color-text);margin:0 0 20px;margin:0 0 var(--space-5) 0}.nueva-orden-form fieldset{border:1px solid #e5e7eb;border:1px solid var(--color-border);border-radius:12px;border-radius:var(--radius);margin-bottom:20px;margin-bottom:var(--space-5);padding:20px;padding:var(--space-5)}.nueva-orden-form legend{color:#111827;color:var(--color-text);font-size:.95rem;font-weight:700;padding:0 12px;padding:0 var(--space-3)}.nueva-orden-form input,.nueva-orden-form select,.nueva-orden-form textarea{background:#f9fafb;background:var(--color-surface-alt);border:1px solid #e5e7eb;border:1px solid var(--color-border);border-radius:6px;border-radius:var(--radius-sm);font-size:1rem;margin-bottom:12px;margin-bottom:var(--space-3);padding:12px 16px;padding:var(--space-3) var(--space-4);transition:border-color .2s ease,box-shadow .2s ease;transition:border-color var(--transition),box-shadow var(--transition);width:100%}.nueva-orden-form input:focus,.nueva-orden-form select:focus,.nueva-orden-form textarea:focus{background:#fff;border-color:#2563eb;border-color:var(--color-primary);box-shadow:0 0 0 3px #2563eb26;outline:none}.nueva-orden-form textarea{min-height:90px;resize:vertical}.foto-input{align-items:center;display:flex;gap:12px;gap:var(--space-3)}.foto-input label{background:#2563eb;background:var(--color-primary);border-radius:6px;border-radius:var(--radius-sm);color:#fff;cursor:pointer;display:inline-block;font-weight:600;padding:12px 20px;padding:var(--space-3) var(--space-5);transition:background .2s ease;transition:background var(--transition)}.foto-input label:hover{background:#1d4ed8;background:var(--color-primary-dark)}.foto-input input[type=file]{display:none}.fotos-preview{margin-top:16px;margin-top:var(--space-4)}.fotos-preview p{color:#6b7280;color:var(--color-text-muted);font-size:.9rem;margin:0 0 12px;margin:0 0 var(--space-3) 0}.foto-item{display:inline-block;margin-bottom:12px;margin-bottom:var(--space-3);margin-right:12px;margin-right:var(--space-3);text-align:center}.foto-item img{border:2px solid #e5e7eb;border:2px solid var(--color-border);border-radius:6px;border-radius:var(--radius-sm);height:90px;object-fit:cover;width:90px}.foto-item small{color:#6b7280;color:var(--color-text-muted);display:block;font-size:.75rem;margin-top:4px;margin-top:var(--space-1);max-width:90px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.alert{border-radius:6px;border-radius:var(--radius-sm);font-weight:500;margin-bottom:16px;margin-bottom:var(--space-4);padding:12px 16px;padding:var(--space-3) var(--space-4)}.alert-error{background:#ef44441a;border-left:4px solid #ef4444;border-left:4px solid var(--color-danger);color:#ef4444;color:var(--color-danger)}.alert-warning{background:#f59e0b1a;border-left:4px solid #f59e0b;border-left:4px solid var(--color-warning);color:#f59e0b;color:var(--color-warning)}.alert-success{background:#22c55e1a;border-left:4px solid #22c55e;border-left:4px solid var(--color-success);color:#22c55e;color:var(--color-success)}.filtros,.lista-ordenes h2{margin-bottom:20px;margin-bottom:var(--space-5)}.filtros{display:flex;flex-wrap:wrap;gap:8px;gap:var(--space-2)}.filtro-btn{background:#fff;background:var(--color-surface);border-radius:6px;border-radius:var(--radius-sm);box-shadow:0 1px 2px #0000000f;box-shadow:var(--shadow-sm);color:#111827;color:var(--color-text);font-size:.9rem;font-weight:600;padding:8px 16px;padding:var(--space-2) var(--space-4);transition:all .2s ease;transition:all var(--transition)}.filtro-btn.activo{background:#2563eb;background:var(--color-primary);color:#fff}.ordenes-grid{grid-gap:16px;grid-gap:var(--space-4);display:grid;gap:16px;gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.orden-card{background:#fff;background:var(--color-surface);border-radius:12px;border-radius:var(--radius);box-shadow:0 4px 12px #00000014;box-shadow:var(--shadow);padding:20px;padding:var(--space-5);transition:transform .2s ease,box-shadow .2s ease;transition:transform var(--transition),box-shadow var(--transition)}.orden-card:hover{box-shadow:0 12px 24px #0000001f;box-shadow:var(--shadow-lg);transform:translateY(-2px)}.orden-header{align-items:center;display:flex;flex-wrap:wrap;gap:8px;gap:var(--space-2);justify-content:space-between;margin-bottom:12px;margin-bottom:var(--space-3)}.orden-header h3{font-size:1.05rem;margin:0}.orden-card p{color:#6b7280;color:var(--color-text-muted);font-size:.9rem;margin:8px 0;margin:var(--space-2) 0}.estado-badge{background:#e5e7eb;background:var(--color-border);border-radius:999px;color:#111827;color:var(--color-text);font-size:.78rem;font-weight:700;padding:4px 10px;text-transform:uppercase}.estado-recibido{background:#2563eb26;color:#2563eb;color:var(--color-primary)}.estado-diagnostico,.estado-diagnóstico{background:#f59e0b26;color:#f59e0b;color:var(--color-warning)}.estado-en\ reparacion,.estado-en\ reparación{background:#ef444426;color:#ef4444;color:var(--color-danger)}.estado-qa{background:#a855f726;color:#8b5cf6}.estado-listo,.estado-listo\ para\ retiro{background:#22c55e26;color:#22c55e;color:var(--color-success)}.estado-completado{background:#6b728026;color:#6b7280;color:var(--color-text-muted)}.panel-notificaciones h2{margin-bottom:20px;margin-bottom:var(--space-5)}.sin-notificaciones{color:#6b7280;color:var(--color-text-muted);font-size:1.05rem;padding:32px;padding:var(--space-8);text-align:center}.notificaciones-lista{display:flex;flex-direction:column;gap:12px;gap:var(--space-3)}.notif-item{align-items:flex-start;background:#fff;background:var(--color-surface);border-left:4px solid #f59e0b;border-left:4px solid var(--color-warning);box-shadow:0 1px 2px #0000000f;box-shadow:var(--shadow-sm);display:flex;gap:16px;gap:var(--space-4);justify-content:space-between;padding:16px 20px;padding:var(--space-4) var(--space-5)}.notif-info{flex:1 1;min-width:0}.notif-tipo{color:#2563eb;color:var(--color-primary);font-size:.85rem;font-weight:700;letter-spacing:.5px;margin-bottom:8px;margin-bottom:var(--space-2);text-transform:uppercase}.notif-mensaje{color:#111827;color:var(--color-text);font-size:.95rem;margin:0 0 8px;margin:0 0 var(--space-2) 0;white-space:pre-wrap;word-break:break-word}.notif-meta{color:#6b7280;color:var(--color-text-muted);font-size:.8rem}.estado-pendiente{background:#f59e0b26;border-radius:999px;color:#f59e0b;color:var(--color-warning);font-size:.75rem;font-weight:700;padding:4px 10px}@media (max-width:640px){.main-content{padding:16px;padding:var(--space-4)}.header{padding:12px 16px;padding:var(--space-3) var(--space-4)}.logo{font-size:1.3rem}.menu-card{min-height:160px;padding:20px 16px;padding:var(--space-5) var(--space-4)}.menu-card .icon{font-size:2.3rem}.nueva-orden-form{padding:16px;padding:var(--space-4)}.notif-item{flex-direction:column}}@media (min-width:1024px){.menu-grid{grid-template-columns:repeat(4,1fr)}}.login-page{background:#f3f4f6;background:var(--color-bg);display:grid;grid-template-columns:minmax(0,1fr);min-height:100vh;min-height:100dvh}.login-brand{background:radial-gradient(ellipse at 15% 15%,#63b3ed38 0,#0000 55%),radial-gradient(ellipse at 85% 85%,#2563eb59 0,#0000 50%),radial-gradient(ellipse at 60% 40%,#4f46e526 0,#0000 45%),linear-gradient(160deg,#0f172a,#1e293b 45%,#0c1a3a);color:#fff;color:var(--color-text-inverse);display:flex;flex-direction:column;justify-content:space-between;min-height:clamp(200px,30vh,320px);overflow:hidden;padding:clamp(20px,4vw,32px);padding:clamp(var(--space-5),4vw,var(--space-8));padding-left:max(clamp(20px,4vw,32px),env(safe-area-inset-left));padding-left:max(clamp(var(--space-5),4vw,var(--space-8)),env(safe-area-inset-left));padding-right:max(clamp(20px,4vw,32px),env(safe-area-inset-right));padding-right:max(clamp(var(--space-5),4vw,var(--space-8)),env(safe-area-inset-right));padding-top:max(clamp(20px,4vw,32px),env(safe-area-inset-top));padding-top:max(clamp(var(--space-5),4vw,var(--space-8)),env(safe-area-inset-top));position:relative}.login-brand:before{background-image:radial-gradient(#ffffff0a 1px,#0000 0);background-size:28px 28px;inset:0}.login-brand:after,.login-brand:before{content:"";pointer-events:none;position:absolute}.login-brand:after{background:radial-gradient(circle,#3b82f62e 0,#0000 70%);border-radius:50%;height:320px;right:-80px;top:-80px;width:320px}.login-brand-inner{margin:auto 0;max-width:480px;position:relative;width:100%}.login-mark{align-items:center;display:flex;font-size:clamp(1.15rem,1.6vw,1.4rem);font-weight:800;gap:12px;gap:var(--space-3);letter-spacing:-.01em;margin-bottom:clamp(16px,4vw,32px);margin-bottom:clamp(var(--space-4),4vw,var(--space-8))}.login-mark img{filter:drop-shadow(0 2px 8px rgba(0,0,0,.18))}.login-tagline{font-size:clamp(1.45rem,3.6vw,2.5rem);font-weight:700;letter-spacing:-.02em;line-height:1.15;margin:0 0 12px;margin:0 0 var(--space-3) 0}.login-sub{color:#ffffffd9;font-size:clamp(.95rem,1.6vw,1.05rem);line-height:1.55;margin:0 0 clamp(16px,4vw,32px);margin:0 0 clamp(var(--space-4),4vw,var(--space-8)) 0;max-width:42ch}.login-features{color:#ffffffeb;flex-direction:column;font-size:.98rem;list-style:none;margin:0;padding:0}.login-features,.login-features li{display:flex;gap:12px;gap:var(--space-3)}.login-features li{align-items:center}.login-features svg{color:#bbf7d0;flex:0 0 auto}.login-foot{color:#ffffffa6;font-size:.8rem;margin:0;position:relative}.login-form-wrap{align-items:center;display:flex;justify-content:center;padding:max(clamp(20px,4vw,32px),env(safe-area-inset-top)) max(clamp(20px,4vw,32px),env(safe-area-inset-right)) max(clamp(20px,4vw,32px),env(safe-area-inset-bottom)) max(clamp(20px,4vw,32px),env(safe-area-inset-left));padding:max(clamp(var(--space-5),4vw,var(--space-8)),env(safe-area-inset-top)) max(clamp(var(--space-5),4vw,var(--space-8)),env(safe-area-inset-right)) max(clamp(var(--space-5),4vw,var(--space-8)),env(safe-area-inset-bottom)) max(clamp(var(--space-5),4vw,var(--space-8)),env(safe-area-inset-left))}.login-card{animation:login-rise .28s ease-out;background:#fff;background:var(--color-surface);border-radius:18px;border-radius:var(--radius-lg);box-shadow:0 4px 12px #00000014;box-shadow:var(--shadow);max-width:440px;padding:clamp(20px,4vw,32px);padding:clamp(var(--space-5),4vw,var(--space-8));width:100%}@keyframes login-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.login-card-head{margin-bottom:24px;margin-bottom:var(--space-6);text-align:center}.login-card-logo{border-radius:16px;box-shadow:0 4px 16px #2563eb2e}.login-card-head h1{font-size:clamp(1.35rem,2.4vw,1.65rem);letter-spacing:-.01em;margin:0 0 6px}.login-card-head p{color:#6b7280;color:var(--color-text-muted);font-size:.95rem;margin:0}.login-field{margin-bottom:16px;margin-bottom:var(--space-4)}.login-field>label{color:#111827;color:var(--color-text);display:block;font-size:.85rem;font-weight:600;margin-bottom:6px}.login-input{align-items:center;background:#f9fafb;background:var(--color-surface-alt);border:1px solid #e5e7eb;border:1px solid var(--color-border);border-radius:12px;border-radius:var(--radius);display:flex;position:relative;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease;transition:border-color var(--transition),box-shadow var(--transition),background var(--transition)}.login-input:focus-within{background:#fff;border-color:#2563eb;border-color:var(--color-primary);box-shadow:0 0 0 3px #2563eb26}.login-input>svg{color:#6b7280;color:var(--color-text-muted);flex:0 0 auto;height:18px;margin:0 0 0 12px;margin:0 0 0 var(--space-3);width:18px}.login-input input{background:#0000;border:0;color:#111827;color:var(--color-text);flex:1 1;font-size:16px;min-width:0;outline:0;padding:14px 12px;padding:14px var(--space-3)}.login-eye{align-self:stretch;border-radius:0 12px 12px 0;border-radius:0 var(--radius) var(--radius) 0;color:#2563eb;color:var(--color-primary);font-size:.8rem;font-weight:600;min-width:44px;padding:0 16px;padding:0 var(--space-4)}.login-eye:hover{color:#1d4ed8;color:var(--color-primary-dark)}.login-error{align-items:flex-start;background:#ef444414;border-left:3px solid #ef4444;border-left:3px solid var(--color-danger);border-radius:12px;border-radius:var(--radius);color:#ef4444;color:var(--color-danger);display:flex;font-size:.9rem;gap:8px;gap:var(--space-2);line-height:1.4;margin-bottom:16px;margin-bottom:var(--space-4);padding:12px 16px;padding:var(--space-3) var(--space-4)}.login-error svg{flex:0 0 auto;margin-top:1px}.login-submit{align-items:center;background:#2563eb;background:var(--color-primary);border-radius:12px;border-radius:var(--radius);color:#fff;display:inline-flex;font-size:1rem;font-weight:700;gap:10px;justify-content:center;margin-top:12px;margin-top:var(--space-3);min-height:52px;padding:14px;transition:background .2s ease,transform .2s ease;transition:background var(--transition),transform var(--transition);width:100%}.login-submit:hover:not(:disabled){background:#1d4ed8;background:var(--color-primary-dark)}.login-submit:active:not(:disabled){transform:scale(.99)}.login-submit:disabled{cursor:not-allowed;opacity:.55}.login-spin{animation:login-spin .7s linear infinite;border:2px solid #fff6;border-radius:50%;border-top-color:#fff;height:16px;width:16px}@keyframes login-spin{to{transform:rotate(1turn)}}@media (max-width:639px){.login-features,.login-foot{display:none}.login-sub{max-width:none}}@media (min-width:640px) and (max-width:959px){.login-brand{min-height:clamp(240px,32vh,340px)}.login-features{flex-direction:row;flex-wrap:wrap;font-size:.92rem;gap:12px 20px;gap:var(--space-3) var(--space-5)}}@media (min-width:960px){.login-page{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr)}.login-brand{min-height:100vh;min-height:100dvh}.login-card{border-radius:18px;border-radius:var(--radius-lg);box-shadow:0 12px 24px #0000001f;box-shadow:var(--shadow-lg)}}@media (min-width:1440px){.login-form-wrap{padding-left:80px;padding-left:calc(var(--space-8)*2.5);padding-right:80px;padding-right:calc(var(--space-8)*2.5)}.login-card{max-width:460px}.login-brand-inner{max-width:520px}}@media (max-width:959px) and (max-height:520px){.login-brand{min-height:auto;padding:12px 20px;padding:var(--space-3) var(--space-5)}.login-brand-inner{margin:0;max-width:none}.login-features,.login-foot,.login-sub,.login-tagline{display:none}.login-mark{margin:0}.login-form-wrap{padding:16px;padding:var(--space-4)}.login-card{padding:20px;padding:var(--space-5)}.login-card-head{margin-bottom:16px;margin-bottom:var(--space-4)}}@media (min-width:960px){.login-card-logo{display:none!important}.login-card-head{text-align:left}}@media (max-width:359px){.login-mark{font-size:1.05rem;gap:8px;gap:var(--space-2);margin-bottom:12px;margin-bottom:var(--space-3)}.login-mark img{width:140px}.login-tagline{font-size:1.3rem}.login-card{border-radius:12px;border-radius:var(--radius)}.login-field{margin-bottom:12px;margin-bottom:var(--space-3)}}@media (prefers-reduced-motion:reduce){.login-card{animation:none}.login-spin{animation-duration:1.5s}.login-input,.login-submit{transition:none}}:focus-visible{border-radius:4px;box-shadow:0 0 0 3px #2563eb40;outline:none}.brand-mark{align-items:center;display:inline-flex;font-weight:800;gap:8px;gap:var(--space-2);letter-spacing:-.01em}.brand-mark img{border-radius:10px;box-shadow:0 2px 10px #2563eb66}.brand-mark span{color:#fff}.brand-mark span em{color:#93c5fd;font-style:normal}.user-pill{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff26;border-radius:999px;color:#fff;font-size:.85rem;font-weight:600;gap:8px;gap:var(--space-2);padding:6px 10px 6px 6px}.user-pill,.user-pill .avatar{align-items:center;display:inline-flex}.user-pill .avatar{background:#ffffff40;border-radius:50%;font-size:.78rem;font-weight:800;height:28px;justify-content:center;width:28px}.user-pill .meta{display:flex;flex-direction:column;line-height:1.15}.user-pill .meta small{font-size:.7rem;font-weight:500;letter-spacing:.4px;opacity:.85;text-transform:uppercase}.user-pill .logout{background:#0000002e;border-radius:999px;color:#fff;font-size:.75rem;font-weight:700;margin-left:8px;margin-left:var(--space-2);padding:4px 10px;transition:background .2s ease;transition:background var(--transition)}.user-pill .logout:hover{background:#0000004d}.page-shell{padding:clamp(16px,3vw,24px);padding:clamp(var(--space-4),3vw,var(--space-6));padding-bottom:max(clamp(16px,3vw,24px),env(safe-area-inset-bottom));padding-bottom:max(clamp(var(--space-4),3vw,var(--space-6)),env(safe-area-inset-bottom));padding-left:max(clamp(16px,3vw,24px),env(safe-area-inset-left));padding-left:max(clamp(var(--space-4),3vw,var(--space-6)),env(safe-area-inset-left));padding-right:max(clamp(16px,3vw,24px),env(safe-area-inset-right));padding-right:max(clamp(var(--space-4),3vw,var(--space-6)),env(safe-area-inset-right))}.page-hero{align-items:center;display:flex;flex-wrap:wrap;gap:12px;gap:var(--space-3);margin-bottom:20px;margin-bottom:var(--space-5)}.page-hero .titles{flex:1 1;min-width:0}.page-hero h1,.page-hero h2{font-size:clamp(1.35rem,2.4vw,1.75rem);letter-spacing:-.01em;line-height:1.2;margin:0}.page-hero p{color:#6b7280;color:var(--color-text-muted);font-size:.95rem;margin:2px 0 0}.page-hero .actions{display:flex;flex-wrap:wrap;gap:8px;gap:var(--space-2)}.btn,.btn-danger,.btn-ghost,.btn-icon,.btn-secondary{align-items:center;border-radius:12px;border-radius:var(--radius);display:inline-flex;font-size:.95rem;font-weight:600;gap:8px;justify-content:center;min-height:44px;padding:10px 16px;transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease;transition:background var(--transition),color var(--transition),border-color var(--transition),transform var(--transition);white-space:nowrap}.btn{background:#2563eb;background:var(--color-primary);color:#fff}.btn:hover:not(:disabled){background:#1d4ed8;background:var(--color-primary-dark)}.btn:active:not(:disabled){transform:scale(.98)}.btn:disabled{cursor:not-allowed;opacity:.55}.btn-secondary{background:#fff;background:var(--color-surface);border:1px solid #e5e7eb;border:1px solid var(--color-border);color:#111827;color:var(--color-text)}.btn-secondary:hover:not(:disabled){background:#f9fafb;background:var(--color-surface-alt)}.btn-danger{background:#ef4444;background:var(--color-danger);color:#fff}.btn-danger:hover:not(:disabled){background:#dc2626}.btn-ghost{background:#0000;color:#111827;color:var(--color-text)}.btn-ghost:hover:not(:disabled){background:#f9fafb;background:var(--color-surface-alt)}.btn-icon{background:#fff;background:var(--color-surface);border:1px solid #e5e7eb;border:1px solid var(--color-border);color:#111827;color:var(--color-text);padding:0;width:44px}.btn-icon:hover{background:#f9fafb;background:var(--color-surface-alt)}.btn-volver{align-items:center;background:#fff;background:var(--color-surface);border:1px solid #e5e7eb;border:1px solid var(--color-border);border-radius:12px;border-radius:var(--radius);box-shadow:none;color:#111827;color:var(--color-text);display:inline-flex;font-size:.9rem;font-weight:600;gap:6px;margin-bottom:0;min-height:40px;padding:8px 12px 8px 10px;transition:background .2s ease,border-color .2s ease;transition:background var(--transition),border-color var(--transition)}.btn-volver:hover{background:#f9fafb;background:var(--color-surface-alt);border-color:#d1d5db}.field{margin-bottom:16px;margin-bottom:var(--space-4)}.field-row{grid-gap:12px 16px;grid-gap:var(--space-3) var(--space-4);display:grid;gap:12px 16px;gap:var(--space-3) var(--space-4);grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.field label{color:#111827;color:var(--color-text);display:block;font-size:.85rem;font-weight:600;margin-bottom:6px}.field .hint{color:#6b7280;color:var(--color-text-muted);display:block;font-size:.78rem;margin-top:4px}.input,.select,.textarea{background:#f9fafb;background:var(--color-surface-alt);border:1px solid #e5e7eb;border:1px solid var(--color-border);border-radius:12px;border-radius:var(--radius);color:#111827;color:var(--color-text);font-size:16px;line-height:1.4;padding:12px 14px;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease;transition:border-color var(--transition),box-shadow var(--transition),background var(--transition);width:100%}.input:focus,.select:focus,.textarea:focus{background:#fff;border-color:#2563eb;border-color:var(--color-primary);box-shadow:0 0 0 3px #2563eb26;outline:none}.textarea{min-height:96px;resize:vertical}.select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 12 12%27><path fill=%27%236b7280%27 d=%27M3 4.5 6 8l3-3.5z%27/></svg>");background-position:right 12px center;background-repeat:no-repeat;background-size:12px;padding-right:36px}.chip-group{display:flex;flex-wrap:wrap;gap:8px;gap:var(--space-2)}.chip{align-items:center;background:#f9fafb;background:var(--color-surface-alt);border:1px solid #e5e7eb;border:1px solid var(--color-border);border-radius:999px;color:#111827;color:var(--color-text);cursor:pointer;display:inline-flex;font-size:.88rem;font-weight:600;gap:6px;min-height:38px;padding:8px 14px;transition:all .2s ease;transition:all var(--transition)}.chip:hover{background:#fff;border-color:#cbd5e1}.chip.active{background:#2563eb;background:var(--color-primary);border-color:#2563eb;border-color:var(--color-primary);color:#fff}.chip .dot{border-radius:50%;height:8px;width:8px}.chip[data-tone=baja] .dot{background:#22c55e;background:var(--color-success)}.chip[data-tone=normal] .dot{background:#f59e0b;background:var(--color-warning)}.chip[data-tone=alta] .dot{background:#fb923c}.chip[data-tone=urgente] .dot{background:#ef4444;background:var(--color-danger)}.upload-zone{align-items:center;background:#f9fafb;background:var(--color-surface-alt);border:2px dashed #e5e7eb;border:2px dashed var(--color-border);border-radius:18px;border-radius:var(--radius-lg);color:#6b7280;color:var(--color-text-muted);display:flex;flex-direction:column;gap:6px;justify-content:center;padding:24px 16px;padding:var(--space-6) var(--space-4);text-align:center;transition:border-color .2s ease,background .2s ease;transition:border-color var(--transition),background var(--transition)}.upload-zone:focus-within{background:#fff;border-color:#2563eb;border-color:var(--color-primary)}.upload-zone>svg{height:32px;width:32px}.upload-zone strong{color:#111827;color:var(--color-text);font-weight:700}.upload-actions{display:flex;flex-wrap:wrap;gap:8px;gap:var(--space-2);justify-content:center;margin-top:12px;margin-top:var(--space-3)}.upload-btn{align-items:center;background:#fff;background:var(--color-surface);border:1px solid #e5e7eb;border:1px solid var(--color-border);border-radius:12px;border-radius:var(--radius);color:#111827;color:var(--color-text);cursor:pointer;display:inline-flex;font-size:.9rem;font-weight:600;gap:8px;min-height:44px;padding:10px 16px;transition:background .2s ease,border-color .2s ease,color .2s ease;transition:background var(--transition),border-color var(--transition),color var(--transition)}.upload-btn:focus-within,.upload-btn:hover{background:#f9fafb;background:var(--color-surface-alt);border-color:#cbd5e1;color:#2563eb;color:var(--color-primary)}.upload-btn svg{flex:0 0 auto;height:18px;width:18px}.sr-input{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}@media (hover:hover) and (pointer:fine){.upload-btn.cam-only{display:none}}.photo-grid{grid-gap:12px;grid-gap:var(--space-3);display:grid;gap:12px;gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(110px,1fr));margin-top:12px;margin-top:var(--space-3)}.photo-grid .photo{aspect-ratio:1;background:#f9fafb;background:var(--color-surface-alt);border:1px solid #e5e7eb;border:1px solid var(--color-border);border-radius:12px;border-radius:var(--radius);overflow:hidden;position:relative}.photo-grid .photo img{display:block;height:100%;object-fit:cover;width:100%}.photo-grid .photo button.remove{align-items:center;background:#0009;border-radius:50%;color:#fff;display:inline-flex;font-size:.85rem;font-weight:700;height:26px;justify-content:center;position:absolute;right:6px;top:6px;transition:background .2s ease;transition:background var(--transition);width:26px}.photo-grid .photo button.remove:hover{background:#000000d9}.empty-state{background:#fff;background:var(--color-surface);border:1px dashed #e5e7eb;border:1px dashed var(--color-border);border-radius:18px;border-radius:var(--radius-lg);display:flex;flex-direction:column;gap:12px;gap:var(--space-3);padding:32px 20px;padding:var(--space-8) var(--space-5);text-align:center}.empty-state,.empty-state .icon{align-items:center;color:#6b7280;color:var(--color-text-muted)}.empty-state .icon{background:#f9fafb;background:var(--color-surface-alt);border-radius:50%;display:inline-flex;height:56px;justify-content:center;width:56px}.empty-state h3{color:#111827;color:var(--color-text);font-size:1.05rem;margin:0}.empty-state p{margin:0;max-width:36ch}.skeleton-grid{grid-gap:16px;grid-gap:var(--space-4);display:grid;gap:16px;gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.skeleton{animation:skeleton-shimmer 1.4s ease-in-out infinite;background:linear-gradient(90deg,#eef0f4,#f7f8fa 50%,#eef0f4);background-size:200% 100%;border-radius:12px;border-radius:var(--radius)}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-card{background:#fff;background:var(--color-surface);border-radius:12px;border-radius:var(--radius);box-shadow:0 1px 2px #0000000f;box-shadow:var(--shadow-sm);padding:20px;padding:var(--space-5)}.skeleton-line{height:14px;margin-bottom:10px}.skeleton-line.lg{height:20px;width:60%}.skeleton-line.sm{height:12px;width:40%}.search-input{flex:1 1;max-width:360px;min-width:220px;position:relative}.search-input svg{color:#6b7280;color:var(--color-text-muted);height:16px;left:12px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%);width:16px}.search-input input{background:#fff;background:var(--color-surface);border:1px solid #e5e7eb;border:1px solid var(--color-border);border-radius:12px;border-radius:var(--radius);font-size:.95rem;padding:10px 12px 10px 36px;transition:border-color .2s ease,box-shadow .2s ease;transition:border-color var(--transition),box-shadow var(--transition);width:100%}.search-input input:focus{border-color:#2563eb;border-color:var(--color-primary);box-shadow:0 0 0 3px #2563eb26;outline:none}.toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:12px;gap:var(--space-3);margin-bottom:20px;margin-bottom:var(--space-5)}.orden-card{cursor:pointer;position:relative}.orden-card .meta-row{align-items:center;color:#6b7280;color:var(--color-text-muted);display:flex;flex-wrap:wrap;font-size:.85rem;gap:12px;gap:var(--space-3);margin-top:12px;margin-top:var(--space-3)}.orden-card .meta-row svg{flex:0 0 auto;height:14px;width:14px}.orden-card .meta-row span{align-items:center;display:inline-flex;gap:4px}.filtros{flex-wrap:nowrap;margin:0;overflow-x:auto;padding-bottom:4px;scrollbar-width:thin}.filtros::-webkit-scrollbar{height:6px}.filtros::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:999px}.filtro-btn{border:1px solid #e5e7eb;border:1px solid var(--color-border);flex:0 0 auto;min-height:38px;padding:0 16px;padding:0 var(--space-4)}.detalle-hero{background:#fff;background:var(--color-surface);border-radius:18px;border-radius:var(--radius-lg);box-shadow:0 4px 12px #00000014;box-shadow:var(--shadow);margin-bottom:20px;margin-bottom:var(--space-5);padding:20px;padding:var(--space-5)}.detalle-hero .top{align-items:flex-start;display:flex;flex-wrap:wrap;gap:12px;gap:var(--space-3);justify-content:space-between;margin-bottom:12px;margin-bottom:var(--space-3)}.detalle-hero .placa{color:#111827;color:var(--color-text);font-family:SF Mono,Menlo,Consolas,monospace;font-size:clamp(1.4rem,3vw,2rem);font-weight:800;letter-spacing:.04em;margin:0}.detalle-hero .id-label{color:#6b7280;color:var(--color-text-muted);font-size:.78rem;font-weight:700;letter-spacing:.5px;margin-bottom:2px;text-transform:uppercase}.detalle-grid{grid-gap:12px;grid-gap:var(--space-3);border-top:1px solid #e5e7eb;border-top:1px solid var(--color-border);display:grid;gap:12px;gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-top:16px;margin-top:var(--space-4);padding-top:16px;padding-top:var(--space-4)}.detalle-grid .pair{display:flex;flex-direction:column;gap:2px}.detalle-grid .pair .k{color:#6b7280;color:var(--color-text-muted);font-size:.75rem;font-weight:700;letter-spacing:.4px;text-transform:uppercase}.detalle-grid .pair .v{color:#111827;color:var(--color-text);font-size:.95rem;word-break:break-word}.timeline{padding-left:28px;position:relative}.timeline:before{background:#e5e7eb;background:var(--color-border);border-radius:1px;bottom:4px;content:"";left:11px;position:absolute;top:4px;width:2px}.timeline-item{margin-bottom:16px;margin-bottom:var(--space-4);position:relative}.timeline-item:before{background:#fff;border:3px solid #2563eb;border:3px solid var(--color-primary);border-radius:50%;box-shadow:0 0 0 3px #2563eb1f;content:"";height:12px;left:-22px;position:absolute;top:14px;width:12px}.timeline-item.completed:before{background:#22c55e;background:var(--color-success);border-color:#22c55e;border-color:var(--color-success);box-shadow:0 0 0 3px #22c55e2e}.timeline-card{background:#fff;background:var(--color-surface);border-radius:12px;border-radius:var(--radius);box-shadow:0 1px 2px #0000000f;box-shadow:var(--shadow-sm);padding:16px;padding:var(--space-4)}.timeline-card .head{align-items:center;display:flex;flex-wrap:wrap;gap:8px 12px;gap:var(--space-2) var(--space-3);margin-bottom:6px}.timeline-card .head .state{color:#111827;color:var(--color-text);font-weight:700}.timeline-card .head .when{color:#6b7280;color:var(--color-text-muted);font-size:.8rem}.timeline-card .obs{color:#111827;color:var(--color-text);font-size:.95rem;line-height:1.5;margin:6px 0 0}.modal-overlay{align-items:center;animation:modal-fade .18s ease-out;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f172a8c;display:flex;inset:0;justify-content:center;padding:16px;padding:var(--space-4);position:fixed;z-index:50}.modal-card{animation:modal-rise .2s cubic-bezier(.16,1,.3,1);background:#fff;border-radius:18px;border-radius:var(--radius-lg);box-shadow:0 30px 60px #0000004d;max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);max-width:560px;overflow-y:auto;padding:24px;padding:var(--space-6);width:100%}.modal-head{align-items:flex-start;display:flex;gap:12px;gap:var(--space-3);justify-content:space-between;margin-bottom:20px;margin-bottom:var(--space-5)}.modal-head h3{font-size:1.2rem;letter-spacing:-.01em;margin:0}.modal-head p{font-size:.9rem;margin:4px 0 0}.modal-close,.modal-head p{color:#6b7280;color:var(--color-text-muted)}.modal-close{align-items:center;background:#f9fafb;background:var(--color-surface-alt);border-radius:50%;display:inline-flex;flex:0 0 auto;font-size:1rem;height:32px;justify-content:center;transition:background .2s ease,color .2s ease;transition:background var(--transition),color var(--transition);width:32px}.modal-close:hover{background:#e5e7eb;background:var(--color-border);color:#111827;color:var(--color-text)}.modal-actions{display:flex;flex-wrap:wrap;gap:8px;gap:var(--space-2);justify-content:flex-end;margin-top:20px;margin-top:var(--space-5)}@keyframes modal-fade{0%{opacity:0}to{opacity:1}}@keyframes modal-rise{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.status-card{background:#fff;background:var(--color-surface);border-radius:18px;border-radius:var(--radius-lg);box-shadow:0 4px 12px #00000014;box-shadow:var(--shadow);padding:24px;padding:var(--space-6)}.status-card,.status-card .status-head{margin-bottom:20px;margin-bottom:var(--space-5)}.status-card .status-head{align-items:center;display:flex;flex-wrap:wrap;gap:16px;gap:var(--space-4)}.status-card .status-icon{align-items:center;background:#f9fafb;background:var(--color-surface-alt);border-radius:16px;color:#6b7280;color:var(--color-text-muted);display:inline-flex;flex:0 0 auto;height:56px;justify-content:center;width:56px}.status-card.connected .status-icon{background:#22c55e26;color:#22c55e;color:var(--color-success)}.status-card.error .status-icon{background:#ef444426;color:#ef4444;color:var(--color-danger)}.status-card.pending .status-icon{background:#f59e0b26;color:#f59e0b;color:var(--color-warning)}.status-card .status-text{flex:1 1;min-width:0}.status-card .status-text .label{color:#6b7280;color:var(--color-text-muted);font-size:.75rem;font-weight:700;letter-spacing:.5px;margin-bottom:2px;text-transform:uppercase}.status-card .status-text h3{color:#111827;color:var(--color-text);font-size:1.25rem;margin:0}.status-stats{border-top:1px solid #e5e7eb;border-top:1px solid var(--color-border);display:flex;flex-wrap:wrap;gap:20px;gap:var(--space-5);padding-top:16px;padding-top:var(--space-4)}.status-stats .stat{display:flex;flex-direction:column;gap:2px}.status-stats .stat .v{color:#111827;color:var(--color-text);font-size:1.25rem;font-weight:800}.status-stats .stat .k{color:#6b7280;color:var(--color-text-muted);font-size:.75rem;letter-spacing:.4px;text-transform:uppercase}.qr-wrap{background:#fff;background:var(--color-surface);border-radius:18px;border-radius:var(--radius-lg);box-shadow:0 4px 12px #00000014;box-shadow:var(--shadow);padding:24px;padding:var(--space-6);text-align:center}.qr-wrap .qr-box{background:#fff;border:1px solid #e5e7eb;border:1px solid var(--color-border);border-radius:12px;border-radius:var(--radius);display:inline-block;margin-top:12px;margin-top:var(--space-3);padding:16px;padding:var(--space-4)}.qr-wrap p{color:#6b7280;color:var(--color-text-muted);margin:0 0 8px;margin:0 0 var(--space-2) 0}.menu-greeting{margin-bottom:24px;margin-bottom:var(--space-6);text-align:center}.menu-greeting h2{font-size:clamp(1.35rem,2.4vw,1.6rem);letter-spacing:-.01em;margin:0 0 4px}.menu-greeting p{color:#6b7280;color:var(--color-text-muted);margin:0}.notif-item{border-left-width:4px;border-radius:12px;border-radius:var(--radius)}.notif-item.enviado{border-left-color:#22c55e;border-left-color:var(--color-success)}.notif-item.fallido{border-left-color:#ef4444;border-left-color:var(--color-danger)}@media (max-width:640px){.header-content{gap:8px;gap:var(--space-2)}.user-pill .meta{display:none}.user-pill{padding:4px 8px 4px 4px}.whatsapp-badge{font-size:.78rem;padding:6px 10px}.whatsapp-badge span:last-child{display:none}.whatsapp-badge .dot{height:10px;width:10px}}@media (max-width:480px){.timeline{padding-left:22px}.timeline:before{left:9px}.timeline-item:before{border-width:2px;height:10px;left:-20px;top:12px;width:10px}.detalle-hero{padding:16px;padding:var(--space-4)}}@media (max-width:520px){.modal-overlay{align-items:flex-end;padding:0}.modal-card{animation:modal-rise-sheet .26s cubic-bezier(.16,1,.3,1);border-radius:18px 18px 0 0;border-radius:var(--radius-lg) var(--radius-lg) 0 0;max-height:92dvh}@keyframes modal-rise-sheet{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}}@media (prefers-reduced-motion:reduce){.skeleton{background:#eef0f4}.modal-card,.modal-overlay,.skeleton{animation:none}}
/*# sourceMappingURL=main.a4abdef1.css.map*/