:root{--bg-primary:#0a0f1a;--bg-secondary:#111827;--bg-card:#1f2937;--bg-card-hover:#374151;--text-primary:#f3f4f6;--text-secondary:#9ca3af;--text-muted:#6b7280;--accent-primary:#3b82f6;--accent-secondary:#2563eb;--accent-glow:rgba(59,130,246,.3);--status-online:#3b82f6;--status-offline:#6b7280;--status-printing:#60a5fa;--status-error:#ef4444;--border-color:hsla(0,0%,100%,.08);--shadow-sm:0 2px 8px rgba(0,0,0,.3);--shadow-md:0 4px 20px rgba(0,0,0,.4);--shadow-lg:0 8px 40px rgba(0,0,0,.5);--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--font-family:"SF Pro Display",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--font-display:"Syne",sans-serif;--font-mono:"IBM Plex Mono",monospace;--safe-area-top:env(safe-area-inset-top,0px);--safe-area-bottom:env(safe-area-inset-bottom,0px);--tc-bg:#13161d;--tc-bg-row:#0f1118;--tc-border:#1e2330;--tc-text-primary:#e8eaf2;--tc-text-secondary:#8b90a8;--tc-text-muted:#4a5068;--tc-text-ghost:#35394d;--tc-accent:#5b7cfa;--tc-accent-bg:rgba(91,124,250,.08);--tc-accent-border:rgba(91,124,250,.2);--tc-success:#22c55e;--tc-success-bg:rgba(34,197,94,.08);--tc-success-border:rgba(34,197,94,.18);--tc-radius:20px;--tc-radius-sm:10px;--tc-radius-xs:6px}*,:after,:before{box-sizing:border-box;margin:0;padding:0}body,html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--bg-primary);color:var(--text-primary);font-family:var(--font-family);min-height:100vh;overflow-x:hidden}body{background:radial-gradient(ellipse at 50% 0,rgba(59,130,246,.08) 0,transparent 50%),radial-gradient(ellipse at 80% 100%,rgba(37,99,235,.06) 0,transparent 40%),var(--bg-primary)}.app-container{display:flex;flex-direction:column;max-width:100vw;min-height:100vh;padding-bottom:var(--safe-area-bottom);padding-top:var(--safe-area-top)}.app-footer{align-items:center;color:var(--text-muted);display:flex;font-size:12px;gap:6px;justify-content:center;margin-top:auto;padding:20px}.app-footer strong{color:var(--accent-primary);font-weight:600}.app-header{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:linear-gradient(180deg,var(--bg-primary) 0,rgba(15,20,25,.95) 100%);border-bottom:1px solid var(--border-color);padding:16px 20px;position:sticky;top:0;z-index:100}.header-content{justify-content:space-between;margin:0 auto;max-width:600px}.header-brand,.header-content{align-items:center;display:flex}.header-brand{gap:10px}.header-logo{color:var(--accent-primary);height:28px;width:28px}.header-title{-webkit-text-fill-color:transparent;background:linear-gradient(135deg,var(--text-primary) 0,var(--accent-primary) 100%);-webkit-background-clip:text;background-clip:text;font-size:22px;font-weight:700;letter-spacing:-.5px}.header-status{align-items:center;display:flex}.status-connected,.status-disconnected{align-items:center;border-radius:20px;display:flex;font-size:12px;font-weight:600;gap:6px;letter-spacing:.5px;padding:8px 14px;text-transform:uppercase}.status-connected{background:rgba(59,130,246,.15);color:var(--status-online)}.status-disconnected{background:hsla(220,9%,46%,.15);color:var(--text-muted)}.header-status .status-icon{height:16px;width:16px}.status-connected .status-icon{animation:pulse-icon 2s ease-in-out infinite}@keyframes pulse-icon{0%,to{opacity:1}50%{opacity:.6}}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.2)}}.main-content{flex:1;margin:0 auto;max-width:600px;padding:20px;width:100%}.bottom-nav{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:linear-gradient(180deg,rgba(26,35,50,.98) 0,var(--bg-secondary) 100%);border-top:1px solid var(--border-color);bottom:0;display:flex;justify-content:space-around;left:0;padding:8px 20px calc(8px + var(--safe-area-bottom));position:fixed;right:0;z-index:100}.nav-item{align-items:center;background:transparent;border:none;border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;display:flex;flex-direction:column;gap:4px;padding:10px 24px;transition:all .2s ease}.nav-item.active{background:rgba(59,130,246,.1);color:var(--accent-primary)}.nav-item:hover:not(.active){background:hsla(0,0%,100%,.05);color:var(--text-secondary)}.nav-icon{font-size:22px}.nav-label{font-size:11px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.printer-list{display:flex;flex-direction:column;gap:16px}.printer-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:20px;transition:all .3s ease}.printer-card:hover{background:var(--bg-card-hover);box-shadow:var(--shadow-md);transform:translateY(-2px)}.printer-card.online{border-left:4px solid var(--status-online)}.printer-card.offline{border-left:4px solid var(--status-offline)}.printer-card.printing{animation:pulse-border 1.5s ease-in-out infinite;border-left:4px solid var(--status-printing)}.printer-card.error{border-left:4px solid var(--status-error)}@keyframes pulse-border{0%,to{border-left-color:var(--status-printing)}50%{border-left-color:var(--accent-primary)}}.printer-card-header{align-items:flex-start;display:flex;gap:14px;margin-bottom:16px}.printer-icon{align-items:center;background:linear-gradient(135deg,var(--bg-secondary) 0,var(--bg-primary) 100%);border:1px solid var(--border-color);border-radius:var(--radius-md);display:flex;font-size:24px;height:48px;justify-content:center;width:48px}.printer-info{flex:1;min-width:0}.printer-name{color:var(--text-primary);font-size:17px;font-weight:600;margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.printer-model{color:var(--text-secondary);font-size:13px}.status-badge{border-radius:20px;color:#fff;font-size:11px;font-weight:600;letter-spacing:.5px;padding:6px 12px;text-transform:uppercase;white-space:nowrap}.printer-details{background:rgba(0,0,0,.2);border-radius:var(--radius-md);display:flex;flex-direction:column;gap:10px;margin-bottom:16px;padding:14px}.detail-row{align-items:center;display:flex;gap:10px}.detail-icon{font-size:14px;text-align:center;width:20px}.detail-text{color:var(--text-secondary);font-size:14px}.printer-actions{display:flex;gap:10px}.action-btn{align-items:center;border:none;border-radius:var(--radius-md);cursor:pointer;display:flex;flex:1;font-size:13px;font-weight:600;gap:6px;justify-content:center;padding:12px 16px;transition:all .2s ease}.toggle-btn{background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-secondary)}.toggle-btn:hover:not(:disabled){background:var(--bg-card-hover);color:var(--text-primary)}.print-btn{background:linear-gradient(135deg,var(--accent-primary) 0,var(--accent-secondary) 100%);color:var(--bg-primary)}.print-btn:hover:not(:disabled){box-shadow:0 4px 20px var(--accent-glow);transform:translateY(-1px)}.delete-btn{background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.3);color:var(--status-error);flex:0;padding:12px 14px}.delete-btn:hover:not(:disabled){background:rgba(239,68,68,.2)}.action-btn:disabled{cursor:not-allowed;opacity:.5;transform:none}.empty-state{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:50vh;padding:60px 20px;text-align:center}.empty-icon{font-size:72px;margin-bottom:24px;opacity:.6}.empty-state h2{color:var(--text-primary);font-size:24px;font-weight:700;margin-bottom:8px}.empty-state p{color:var(--text-secondary);font-size:15px;margin-bottom:32px;max-width:280px}.loading-container{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:50vh;padding:60px 20px}.loading-spinner{animation:spin 1s linear infinite;border:3px solid var(--border-color);border-radius:50%;border-top-color:var(--accent-primary);height:40px;margin-bottom:16px;width:40px}@keyframes spin{to{transform:rotate(1turn)}}.loading-container p{color:var(--text-secondary);font-size:15px}.add-printer-form{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:24px}.form-group{margin-bottom:24px}.form-group label{color:var(--text-primary);display:block;font-size:14px;font-weight:600;margin-bottom:10px}.form-input{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);font-family:inherit;font-size:16px;padding:14px 16px;transition:all .2s ease;width:100%}.form-input::placeholder{color:var(--text-muted)}.form-input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-glow);outline:none}.type-selector{display:grid;gap:12px;grid-template-columns:repeat(2,1fr)}.type-option{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;display:flex;flex-direction:column;padding:16px;transition:all .2s ease}.type-option input{display:none}.type-option.selected{background:rgba(59,130,246,.1);border-color:var(--accent-primary)}.type-option:hover:not(.selected){background:var(--bg-card-hover)}.type-label{color:var(--text-primary);font-size:15px;font-weight:600;margin-bottom:4px}.type-description{color:var(--text-secondary);font-size:12px}.form-actions{display:flex;gap:12px;margin-top:32px}.btn-primary{background:linear-gradient(135deg,var(--accent-primary) 0,var(--accent-secondary) 100%);border:none;border-radius:var(--radius-md);color:var(--bg-primary);cursor:pointer;flex:1;font-family:inherit;font-size:16px;font-weight:700;padding:16px 24px;transition:all .2s ease}.btn-primary:hover:not(:disabled){box-shadow:0 4px 24px var(--accent-glow);transform:translateY(-2px)}.btn-primary:disabled{cursor:not-allowed;opacity:.6;transform:none}.btn-secondary{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;flex:1;font-family:inherit;font-size:16px;font-weight:600;padding:16px 24px;transition:all .2s ease}.btn-secondary:hover:not(:disabled){background:var(--bg-card-hover);color:var(--text-primary)}.error-message{align-items:center;background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.3);border-radius:var(--radius-md);color:var(--status-error);display:flex;font-size:14px;gap:10px;margin-bottom:24px;padding:14px 16px}@media (max-width:380px){.printer-actions{flex-wrap:wrap}.print-btn,.toggle-btn{flex:1 1 calc(50% - 5px)}.delete-btn{flex:0 0 auto}.type-selector{grid-template-columns:1fr}}@supports (padding-bottom:env(safe-area-inset-bottom)){.bottom-nav{padding-bottom:calc(8px + env(safe-area-inset-bottom))}}.bluetooth-container{display:flex;flex-direction:column;gap:20px}.bluetooth-disabled{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:50vh;padding:60px 20px;text-align:center}.bt-icon{font-size:72px;margin-bottom:24px;opacity:.6}.bluetooth-disabled h2{color:var(--text-primary);font-size:24px;font-weight:700;margin-bottom:8px}.bluetooth-disabled p{color:var(--text-secondary);font-size:15px;margin-bottom:32px}.dropdown-section{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);margin-bottom:16px;overflow:hidden}.dropdown-header{align-items:center;background:transparent;border:none;color:var(--text-primary);cursor:pointer;display:flex;justify-content:space-between;padding:18px 20px;transition:all .2s ease;width:100%}.dropdown-header:hover{background:hsla(0,0%,100%,.03)}.dropdown-header.expanded{border-bottom:1px solid var(--border-color)}.dropdown-header.connected{background:linear-gradient(135deg,rgba(59,130,246,.1),rgba(37,99,235,.05))}.dropdown-title{align-items:center;display:flex;font-size:15px;font-weight:600;gap:12px}.dropdown-icon{flex-shrink:0}.dropdown-count{background:var(--bg-secondary);border-radius:12px;color:var(--text-muted);font-size:12px;font-weight:600;margin-left:4px;padding:3px 10px}.dropdown-header-right{align-items:center;display:flex;gap:12px;margin-left:auto}.dropdown-stats{align-items:center;display:flex;gap:8px}.btn-refresh-small{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer;font-size:14px;padding:8px;transition:all .2s ease}.btn-refresh-small:hover{background:var(--bg-card-hover)}.dropdown-arrow{color:var(--text-muted);font-size:12px;transition:transform .3s ease}.dropdown-arrow.open{transform:rotate(180deg)}.dropdown-content{animation:slideDown .2s ease;padding:0 20px 20px}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.connected-device-row{background:rgba(59,130,246,.08);gap:14px;margin-top:10px;padding:14px}.connected-device-row,.device-icon-large{align-items:center;border-radius:var(--radius-md);display:flex}.device-icon-large{background:var(--bg-secondary);flex-shrink:0;font-size:24px;height:48px;justify-content:center;width:48px}.device-details{flex:1;min-width:0}.device-details h4{color:var(--text-primary);font-size:15px;font-weight:600;margin-bottom:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.connected-actions-inline{display:flex;flex-shrink:0;gap:8px}.btn-action-icon{align-items:center;background:linear-gradient(135deg,var(--accent-primary) 0,var(--accent-secondary) 100%);border:none;border-radius:var(--radius-md);cursor:pointer;display:flex;font-size:20px;height:44px;justify-content:center;transition:all .2s ease;width:44px}.btn-action-icon:hover{box-shadow:0 4px 16px var(--accent-glow);transform:scale(1.05)}.btn-action-icon.disconnect{background:rgba(239,68,68,.15);border:1px solid rgba(239,68,68,.3)}.btn-action-icon.disconnect:hover{background:rgba(239,68,68,.25);box-shadow:0 4px 16px rgba(239,68,68,.2)}.btn-print{background:linear-gradient(135deg,var(--accent-primary) 0,var(--accent-secondary) 100%);border:none;border-radius:var(--radius-md);color:var(--bg-primary);cursor:pointer;flex:1;font-size:15px;font-weight:700;padding:14px 20px;transition:all .2s ease}.btn-print:hover{box-shadow:0 4px 20px var(--accent-glow);transform:translateY(-1px)}.btn-disconnect{background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.3);border-radius:var(--radius-md);color:var(--status-error);cursor:pointer;font-size:15px;font-weight:600;padding:14px 20px;transition:all .2s ease}.btn-disconnect:hover{background:rgba(239,68,68,.2)}.no-devices-container{padding:30px 20px;text-align:center}.no-devices{color:var(--text-muted);font-size:15px;margin-bottom:8px}.no-devices-hint{color:var(--text-muted);font-size:13px;opacity:.7}.device-list{display:flex;flex-direction:column;gap:12px}.device-card{align-items:center;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);display:flex;gap:14px;padding:16px;transition:all .2s ease}.device-card:hover{background:var(--bg-card-hover)}.device-card.connected{background:rgba(59,130,246,.05);border-color:var(--accent-primary)}.device-icon{align-items:center;background:var(--bg-primary);border-radius:var(--radius-md);display:flex;font-size:22px;height:44px;justify-content:center;width:44px}.device-info{flex:1;min-width:0}.device-name{color:var(--text-primary);font-size:15px;font-weight:600;margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.device-address{color:var(--text-muted);font-family:SF Mono,Menlo,monospace;font-size:12px}.paired-badge{background:rgba(59,130,246,.15);border-radius:10px;color:var(--accent-primary);display:inline-block;font-size:10px;font-weight:600;margin-left:8px;padding:2px 8px;text-transform:uppercase}.btn-connect{align-items:center;background:linear-gradient(135deg,var(--accent-primary) 0,var(--accent-secondary) 100%);border:none;border-radius:50%;color:var(--bg-primary);cursor:pointer;display:flex;font-size:18px;font-weight:700;height:44px;justify-content:center;transition:all .2s ease;width:44px}.btn-connect:hover:not(:disabled){box-shadow:0 4px 16px var(--accent-glow);transform:scale(1.05)}.btn-connect.connected{background:var(--status-online)}.btn-connect:disabled{cursor:not-allowed;opacity:.6;transform:none}.btn-connect.connecting{animation:pulse-connect 1s ease-in-out infinite}@keyframes pulse-connect{0%,to{opacity:1}50%{opacity:.5}}.print-status{align-items:center;animation:slideIn .3s ease;border-radius:var(--radius-md);display:flex;font-size:14px;font-weight:500;gap:10px;margin-bottom:16px;padding:14px 18px}.print-status.success{background:rgba(59,130,246,.15);border:1px solid rgba(59,130,246,.3);color:var(--status-online)}.print-status.error{background:rgba(239,68,68,.15);border:1px solid rgba(239,68,68,.3);color:var(--status-error)}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.printing-indicator{align-items:center;background:linear-gradient(135deg,rgba(59,130,246,.15),rgba(59,130,246,.08));border:1px solid rgba(59,130,246,.3);border-radius:var(--radius-md);color:var(--status-printing);display:flex;font-size:14px;font-weight:600;gap:12px;justify-content:center;margin-bottom:16px;padding:16px}.printing-spinner{animation:spin 1s linear infinite;border:2px solid rgba(59,130,246,.3);border-radius:50%;border-top:2px solid var(--status-printing);height:20px;width:20px}.autoprint-control{align-items:center;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);display:flex;justify-content:space-between;margin-bottom:16px;padding:14px 18px}.autoprint-toggle{align-items:center;cursor:pointer;display:flex;gap:12px}.autoprint-toggle input{display:none}.toggle-slider{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;height:24px;position:relative;transition:all .3s ease;width:44px}.toggle-slider:after{background:var(--text-muted);border-radius:50%;content:"";height:18px;left:2px;position:absolute;top:2px;transition:all .3s ease;width:18px}.autoprint-toggle input:checked+.toggle-slider{background:linear-gradient(135deg,var(--accent-primary) 0,var(--accent-secondary) 100%);border-color:var(--accent-primary)}.autoprint-toggle input:checked+.toggle-slider:after{background:#fff;left:22px}.toggle-label{color:var(--text-primary);font-size:14px;font-weight:600}.pending-badge{background:rgba(251,191,36,.15);border:1px solid rgba(251,191,36,.3);border-radius:20px;color:#fbbf24;font-size:12px;font-weight:600;padding:6px 12px}.stat-badge{align-items:center;border-radius:12px;display:flex;font-size:11px;font-weight:600;gap:4px;padding:4px 10px}.stat-badge.printed{background:rgba(59,130,246,.15);color:var(--status-online)}.stat-badge.pending{background:rgba(251,191,36,.15);color:#fbbf24}.stat-icon{height:12px;width:12px}.orders-list{max-height:60vh;overflow-y:auto;padding:12px}.loading-orders,.no-orders{color:var(--text-muted);font-size:14px;padding:40px 20px;text-align:center}.order-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);margin-bottom:10px;overflow:hidden;transition:all .2s ease}.order-card:last-child{margin-bottom:0}.order-card.pending{border-left:3px solid #fbbf24}.order-card.printed{border-left:3px solid var(--status-online)}.order-card.printing{animation:pulse-order 1.5s ease-in-out infinite;border-left:3px solid var(--status-printing)}@keyframes pulse-order{0%,to{background:var(--bg-secondary)}50%{background:rgba(59,130,246,.1)}}.order-header{align-items:center;cursor:pointer;display:flex;justify-content:space-between;padding:14px 16px;transition:all .2s ease}.order-header:hover{background:hsla(0,0%,100%,.03)}.order-info{align-items:center;display:flex;flex:1;gap:10px;min-width:0}.order-id{color:var(--text-primary);font-family:SF Mono,Menlo,monospace;font-size:14px;font-weight:700}.order-time{color:var(--text-muted);font-size:12px}.order-delivery{background:var(--bg-primary);border-radius:10px;color:var(--text-secondary);font-size:11px;font-weight:600;padding:3px 8px;text-transform:uppercase}.order-delivery.takeaway{background:rgba(139,92,246,.15);color:#a78bfa}.order-delivery.delivery{background:rgba(59,130,246,.15);color:#60a5fa}.order-status-actions{align-items:center;display:flex;gap:10px}.order-status{border-radius:10px;font-size:11px;font-weight:600;padding:4px 10px}.order-status.pending{background:rgba(251,191,36,.15);color:#fbbf24}.order-status.printed{background:rgba(59,130,246,.15);color:var(--status-online)}.print-btn-small{align-items:center;background:linear-gradient(135deg,var(--accent-primary) 0,var(--accent-secondary) 100%);border:none;border-radius:var(--radius-sm);cursor:pointer;display:flex;font-size:14px;height:32px;justify-content:center;transition:all .2s ease;width:32px}.print-btn-small.reprint{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.print-btn-small:hover:not(:disabled){box-shadow:0 4px 12px var(--accent-glow);transform:scale(1.1)}.print-btn-small.reprint:hover:not(:disabled){box-shadow:0 4px 12px rgba(139,92,246,.4)}.print-btn-small:disabled{cursor:not-allowed;opacity:.6}.order-details{animation:expandDetails .2s ease;padding:0 16px 16px}@keyframes expandDetails{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.order-products{background:var(--bg-primary);border-radius:var(--radius-sm);margin-bottom:12px;padding:14px}.order-products h5{color:var(--text-muted);font-size:12px;font-weight:600;letter-spacing:.5px;margin-bottom:10px;text-transform:uppercase}.order-products ul{list-style:none}.product-item{align-items:center;border-bottom:1px solid var(--border-color);display:flex;font-size:14px;gap:10px;padding:8px 0}.product-item:last-child{border-bottom:none;padding-bottom:0}.product-qty{color:var(--accent-primary);font-weight:700;min-width:28px}.product-name{flex:1}.product-price{color:var(--text-secondary);font-family:SF Mono,Menlo,monospace;font-weight:600}.order-footer{align-items:center;border-top:1px solid var(--border-color);display:flex;justify-content:space-between;padding-top:12px}.order-payment{color:var(--text-secondary);font-size:13px}.order-payment strong{color:var(--text-primary);text-transform:capitalize}.order-total{color:var(--text-secondary);font-size:15px}.order-total strong{color:var(--accent-primary);font-size:17px}.reprint-section{align-items:center;border-top:1px dashed var(--border-color);display:flex;gap:12px;justify-content:space-between;margin-top:12px;padding-top:12px}.printed-info-text{color:var(--status-online);font-size:12px}.btn-reprint{background:linear-gradient(135deg,#8b5cf6,#7c3aed);border:none;border-radius:var(--radius-sm);color:#fff;font-size:13px;justify-content:center;padding:10px 16px;transition:all .2s ease}.btn-reprint:hover:not(:disabled){box-shadow:0 4px 16px rgba(139,92,246,.4);transform:translateY(-1px)}.btn-reprint:disabled{opacity:.7;transform:none}.btn-spinner{animation:spin 1s linear infinite;border:2px solid hsla(0,0%,100%,.3);border-radius:50%;border-top-color:#fff;height:14px;width:14px}.orders-list::-webkit-scrollbar{width:6px}.orders-list::-webkit-scrollbar-track{background:var(--bg-secondary);border-radius:3px}.orders-list::-webkit-scrollbar-thumb{background:var(--text-muted);border-radius:3px}.orders-list::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.action-icon-svg,.bt-icon-large,.btn-icon,.chevron-icon,.chevron-icon-sm,.connect-icon,.delivery-icon,.device-icon-svg,.device-type-icon,.dropdown-chevron,.dropdown-icon,.error-icon,.info-icon,.payment-icon,.refresh-icon,.section-icon,.stat-icon,.status-icon,.status-icon-sm{flex-shrink:0}.print-status .status-icon{height:20px;width:20px}.chevron-icon{color:var(--text-muted);height:16px;width:16px}.chevron-icon-sm{color:var(--text-muted);height:14px;width:14px}.section-icon{color:var(--accent-primary);height:20px;width:20px}.delivery-icon,.status-icon-sm{height:14px;margin-right:4px;width:14px}.btn-icon{height:16px;width:16px}.btn-icon.spinning{animation:spin 1s linear infinite}.payment-icon{color:var(--text-muted);height:16px;margin-right:6px;width:16px}.info-icon{height:14px;margin-right:6px;width:14px}.error-icon{flex-shrink:0;height:20px;width:20px}.bt-icon-large{color:var(--text-muted);height:80px;margin-bottom:24px;width:80px}.dropdown-icon{color:var(--text-secondary);height:20px;width:20px}.dropdown-icon.success{color:var(--status-online)}.dropdown-chevron{color:var(--text-muted);height:16px;transition:transform .3s ease;width:16px}.dropdown-chevron.open{transform:rotate(180deg)}.refresh-icon{color:var(--text-secondary);height:16px;width:16px}.device-icon-svg{color:var(--accent-primary);height:28px;width:28px}.action-icon-svg{height:20px;width:20px}.device-type-icon{color:var(--text-secondary);height:24px;width:24px}.connect-icon{height:18px;width:18px}.connect-icon.spinning{animation:spin 1s linear infinite}.order-delivery,.order-payment,.order-status,.printed-info-text{align-items:center;display:flex}.btn-reprint{gap:6px}.btn-primary{align-items:center;display:flex;gap:8px;justify-content:center}.btn-primary .btn-icon{height:18px;width:18px}.login-container{align-items:center;background:radial-gradient(ellipse at 50% 0,rgba(59,130,246,.12) 0,transparent 50%),radial-gradient(ellipse at 80% 100%,rgba(37,99,235,.08) 0,transparent 40%),var(--bg-primary);display:flex;justify-content:center;min-height:100vh;padding:20px}.login-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);max-width:400px;padding:40px 32px;width:100%}.login-header{margin-bottom:32px;text-align:center}.login-logo{color:var(--accent-primary);height:56px;margin-bottom:16px;width:56px}.login-title{-webkit-text-fill-color:transparent;background:linear-gradient(135deg,var(--text-primary) 0,var(--accent-primary) 100%);-webkit-background-clip:text;background-clip:text;color:var(--text-primary);font-size:24px;font-weight:700;margin-bottom:8px}.login-subtitle{color:var(--text-muted);font-size:14px}.login-form{display:flex;flex-direction:column;gap:20px}.login-form .form-group{margin-bottom:0}.login-form label{color:var(--text-secondary);display:block;font-size:13px;font-weight:600;margin-bottom:8px}.input-wrapper{position:relative}.input-icon{color:var(--text-muted);height:18px;left:14px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%);width:18px}.form-input.with-icon{padding-left:44px}.login-error{align-items:center;background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.3);border-radius:var(--radius-md);color:var(--status-error);display:flex;font-size:13px;gap:10px;padding:12px 14px}.login-error .error-icon{flex-shrink:0;height:18px;width:18px}.btn-login{align-items:center;background:linear-gradient(135deg,var(--accent-primary) 0,var(--accent-secondary) 100%);border:none;border-radius:var(--radius-md);color:#fff;cursor:pointer;display:flex;font-size:15px;font-weight:600;gap:8px;justify-content:center;margin-top:8px;padding:14px 24px;transition:all .2s ease;width:100%}.btn-login:hover:not(:disabled){box-shadow:0 4px 20px var(--accent-glow);transform:translateY(-1px)}.btn-login:disabled{cursor:not-allowed;opacity:.6;transform:none}.btn-login .btn-spinner{animation:spin 1s linear infinite;border:2px solid hsla(0,0%,100%,.3);border-radius:50%;border-top-color:#fff;height:16px;width:16px}.login-footer{align-items:center;border-top:1px solid var(--border-color);color:var(--text-muted);display:flex;font-size:12px;gap:6px;justify-content:center;margin-top:32px;padding-top:24px}.login-footer strong{color:var(--accent-primary);font-weight:600}.app-loading{background:var(--bg-primary);color:var(--text-muted);flex-direction:column;gap:16px;justify-content:center;min-height:100vh}.app-loading,.header-actions{align-items:center;display:flex}.header-actions{gap:12px}.btn-logout{align-items:center;background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.2);border-radius:var(--radius-sm);cursor:pointer;display:flex;height:36px;justify-content:center;transition:all .2s ease;width:36px}.btn-logout:hover{background:rgba(239,68,68,.2);border-color:rgba(239,68,68,.4)}.logout-icon{color:var(--status-error);height:18px;width:18px}.order-card.failed{background:rgba(239,68,68,.05);border-left:3px solid var(--status-error)}.order-card.retrying{background:rgba(245,158,11,.05);border-left:3px solid #f59e0b}.order-status.failed{color:var(--status-error)}.order-status.retrying{color:#f59e0b}.print-status.warning{background:rgba(245,158,11,.15);border-color:rgba(245,158,11,.3);color:#f59e0b}.print-status.info{background:rgba(59,130,246,.15);border-color:rgba(59,130,246,.3);color:var(--accent-primary)}.autoprint-badges{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.failed-badge{align-items:center;background:rgba(239,68,68,.15);border:1px solid rgba(239,68,68,.3);border-radius:var(--radius-sm);color:var(--status-error);cursor:pointer;display:flex;font-size:12px;font-weight:500;gap:6px;padding:6px 12px;transition:all .2s ease}.failed-badge:hover{background:rgba(239,68,68,.25)}.failed-badge .badge-icon{height:14px;width:14px}.print-btn-small.retry{background:rgba(245,158,11,.15);border-color:rgba(245,158,11,.3)}.print-btn-small.retry:hover:not(:disabled){background:rgba(245,158,11,.25)}.failed-section{align-items:center;border-top:1px solid var(--border-color);display:flex;gap:12px;justify-content:space-between;margin-top:12px;padding-top:12px}.failed-info-text{align-items:center;color:var(--status-error);display:flex;font-size:12px;gap:6px}.failed-info-text .info-icon{height:14px;width:14px}.btn-retry{align-items:center;background:rgba(245,158,11,.15);border:1px solid rgba(245,158,11,.3);border-radius:var(--radius-sm);color:#f59e0b;cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:6px;padding:8px 14px;transition:all .2s ease}.btn-retry:hover:not(:disabled){background:rgba(245,158,11,.25)}.btn-retry:disabled{cursor:not-allowed;opacity:.5}.btn-retry .btn-icon{height:14px;width:14px}.disconnect-alert{align-items:center;animation:alertPulse 2s ease-in-out infinite;background:linear-gradient(135deg,rgba(239,68,68,.2),rgba(239,68,68,.1));border:1px solid rgba(239,68,68,.4);border-radius:var(--radius-md);color:#fca5a5;display:flex;font-size:14px;font-weight:500;gap:10px;justify-content:center;margin:0 16px 16px;padding:14px 20px}.disconnect-alert .alert-icon{font-size:18px}@keyframes alertPulse{0%,to{box-shadow:0 0 0 0 rgba(239,68,68,.4);opacity:1}50%{box-shadow:0 0 20px 5px rgba(239,68,68,.2);opacity:.9}}.Toastify__toast-container{z-index:9999!important}.Toastify__toast{border-radius:var(--radius-md)!important;font-family:var(--font-family)!important;font-size:14px!important}.Toastify__toast--dark{background:var(--bg-card)!important;border:1px solid var(--border-color)!important}.Toastify__toast-body{font-weight:500!important}.Toastify__progress-bar--success{background:#22c55e!important}.Toastify__progress-bar--error{background:var(--status-error)!important}.Toastify__progress-bar--warning{background:#f59e0b!important}.Toastify__progress-bar--info{background:var(--accent-primary)!important}.sidebar-overlay{animation:fadeIn .2s ease;backdrop-filter:blur(4px);background:rgba(0,0,0,.6);right:0;z-index:200}.sidebar,.sidebar-overlay{bottom:0;left:0;position:fixed;top:0}.sidebar{background:var(--bg-secondary);border-right:1px solid var(--border-color);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;transform:translateX(-100%);transition:transform .3s cubic-bezier(.4,0,.2,1);width:280px;z-index:201}.sidebar.open{transform:translateX(0)}.sidebar-header{align-items:center;background:linear-gradient(135deg,rgba(59,130,246,.1),transparent);border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:20px}.sidebar-title{color:var(--text-primary);font-size:18px;font-weight:700}.sidebar-close{align-items:center;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;display:flex;height:36px;justify-content:center;transition:all .2s ease;width:36px}.sidebar-close:hover{background:var(--bg-card-hover);color:var(--text-primary)}.sidebar-close .close-icon{height:20px;width:20px}.sidebar-nav{display:flex;flex:1;flex-direction:column;gap:6px;padding:16px 12px}.sidebar-item{align-items:center;background:transparent;border:none;border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;display:flex;font-size:15px;font-weight:500;gap:14px;padding:14px 16px;text-align:left;transition:all .2s ease;width:100%}.sidebar-item:hover{background:var(--bg-card);color:var(--text-primary)}.sidebar-item.active{background:linear-gradient(135deg,rgba(59,130,246,.2),rgba(59,130,246,.1));color:var(--accent-primary);font-weight:600}.sidebar-item.active:before{background:var(--accent-primary);border-radius:0 4px 4px 0;content:"";height:24px;left:0;position:absolute;top:50%;transform:translateY(-50%);width:4px}.sidebar-item{position:relative}.sidebar-item-icon{flex-shrink:0;height:22px;width:22px}.sidebar-footer{align-items:center;border-top:1px solid var(--border-color);color:var(--text-muted);display:flex;font-size:12px;gap:6px;justify-content:center;padding:20px}.sidebar-footer strong{color:var(--accent-primary);font-weight:600}.header-left{gap:12px}.btn-menu,.header-left{align-items:center;display:flex}.btn-menu{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;height:40px;justify-content:center;transition:all .2s ease;width:40px}.btn-menu:hover{background:var(--bg-card-hover);color:var(--text-primary)}.btn-menu .menu-icon{height:22px;width:22px}.products-container{display:flex;flex-direction:column;gap:16px}.products-header{gap:12px;justify-content:space-between}.products-header,.products-stats{align-items:center;display:flex;flex-wrap:wrap}.products-stats{gap:16px}.products-stats .stat-item{align-items:center;color:var(--text-secondary);display:flex;font-size:13px;gap:6px}.products-stats .stat-item strong{color:var(--text-primary);font-weight:700}.products-stats .stat-item.available{color:#22c55e}.products-stats .stat-item.favorites{color:#f59e0b}.products-stats .stat-icon{height:16px;width:16px}.btn-add-product{align-items:center;background:linear-gradient(135deg,var(--accent-primary) 0,var(--accent-secondary) 100%);border:none;border-radius:var(--radius-md);color:#fff;cursor:pointer;display:flex;font-size:13px;font-weight:600;gap:6px;padding:10px 16px;transition:all .2s ease}.btn-add-product:hover{box-shadow:0 4px 16px var(--accent-glow);transform:translateY(-1px)}.btn-add-product .btn-icon{height:16px;width:16px}.products-filters{display:flex;flex-wrap:wrap;gap:12px}.search-box{flex:1;min-width:200px;position:relative}.search-box .search-icon{color:var(--text-muted);height:18px;left:14px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%);width:18px}.search-box input{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);font-size:14px;padding:12px 16px 12px 44px;transition:all .2s ease;width:100%}.search-box input::placeholder{color:var(--text-muted)}.search-box input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-glow);outline:none}.filter-group{align-items:center;display:flex;gap:8px}.filter-group .filter-icon{color:var(--text-muted);height:18px;width:18px}.filter-group select{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;font-size:13px;padding:12px 16px;transition:all .2s ease}.filter-group select:focus{border-color:var(--accent-primary);outline:none}.products-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.products-empty,.products-loading{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.products-empty p,.products-loading p{color:var(--text-muted);font-size:15px}.products-empty .empty-hint{font-size:13px;margin-top:8px;opacity:.7}.product-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden;transition:all .2s ease}.product-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.product-card.unavailable{opacity:.6}.product-card-header{align-items:flex-start;display:flex;justify-content:space-between;padding:16px 16px 0}.product-category{border-radius:12px;color:#fff;font-size:11px;font-weight:600;padding:4px 10px;text-transform:uppercase}.btn-favorite{background:transparent;border:none;cursor:pointer;padding:4px;transition:all .2s ease}.btn-favorite .star-icon{color:var(--text-muted);height:22px;transition:all .2s ease;width:22px}.btn-favorite:hover .star-icon{color:#f59e0b;transform:scale(1.1)}.btn-favorite.active .star-icon{color:#f59e0b}.product-card-body{padding:16px}.product-name{color:var(--text-primary);font-size:17px;font-weight:700;margin-bottom:6px}.product-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--text-secondary);display:-webkit-box;font-size:13px;line-height:1.4;margin-bottom:12px;overflow:hidden}.product-price{color:var(--accent-primary);font-size:22px;font-weight:700;margin-bottom:6px}.product-stock{color:var(--text-muted);font-size:13px}.product-stock strong{color:var(--text-secondary)}.product-card-footer{align-items:center;background:rgba(0,0,0,.2);border-top:1px solid var(--border-color);display:flex;justify-content:space-between;padding:12px 16px}.btn-available{align-items:center;background:hsla(220,9%,46%,.15);border:none;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;display:flex;font-size:12px;font-weight:600;gap:6px;padding:8px 12px;transition:all .2s ease}.btn-available.active{background:rgba(34,197,94,.15);color:#22c55e}.btn-available:hover{transform:scale(1.02)}.btn-available .btn-icon{height:16px;width:16px}.product-actions{display:flex;gap:8px}.btn-delete,.btn-edit{align-items:center;border:none;border-radius:var(--radius-sm);cursor:pointer;display:flex;height:36px;justify-content:center;transition:all .2s ease;width:36px}.btn-edit{background:rgba(59,130,246,.15);color:var(--accent-primary)}.btn-edit:hover{background:rgba(59,130,246,.25);transform:scale(1.05)}.btn-delete{background:rgba(239,68,68,.15);color:var(--status-error)}.btn-delete:hover{background:rgba(239,68,68,.25);transform:scale(1.05)}.btn-delete .btn-icon,.btn-edit .btn-icon{height:18px;width:18px}.modal-overlay{align-items:center;animation:fadeIn .2s ease;backdrop-filter:blur(4px);background:rgba(0,0,0,.7);bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{animation:slideUp .3s ease;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);max-height:90vh;max-width:480px;overflow-y:auto;width:100%}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-header{align-items:center;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:20px 24px}.modal-header h2{color:var(--text-primary);font-size:18px;font-weight:700}.modal-close{align-items:center;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;display:flex;font-size:20px;height:32px;justify-content:center;transition:all .2s ease;width:32px}.modal-close:hover{background:var(--bg-card-hover);color:var(--text-primary)}.product-form{padding:24px}.product-form .form-group{margin-bottom:20px}.product-form label{color:var(--text-secondary);display:block;font-size:13px;font-weight:600;margin-bottom:8px}.product-form input,.product-form select,.product-form textarea{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);font-family:inherit;font-size:14px;padding:12px 16px;transition:all .2s ease;width:100%}.product-form input::placeholder,.product-form textarea::placeholder{color:var(--text-muted)}.product-form input:focus,.product-form select:focus,.product-form textarea:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-glow);outline:none}.product-form textarea{min-height:80px;resize:vertical}.form-row{display:grid;gap:16px;grid-template-columns:1fr 1fr}.form-row.checkboxes{display:flex;gap:24px;margin-top:8px}.checkbox-label{align-items:center;color:var(--text-secondary);cursor:pointer;display:flex;font-size:14px;gap:10px}.checkbox-label input[type=checkbox]{accent-color:var(--accent-primary);cursor:pointer;height:20px;width:20px}.product-form .form-actions{border-top:1px solid var(--border-color);display:flex;gap:12px;margin-top:24px;padding-top:20px}.btn-cancel{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;flex:1;font-size:14px;font-weight:600;padding:14px 20px;transition:all .2s ease}.btn-cancel:hover{background:var(--bg-card-hover);color:var(--text-primary)}.btn-submit{background:linear-gradient(135deg,var(--accent-primary) 0,var(--accent-secondary) 100%);border:none;border-radius:var(--radius-md);color:#fff;cursor:pointer;flex:1;font-size:14px;font-weight:600;padding:14px 20px;transition:all .2s ease}.btn-submit:hover:not(:disabled){box-shadow:0 4px 16px var(--accent-glow);transform:translateY(-1px)}.btn-submit:disabled{cursor:not-allowed;opacity:.6;transform:none}@media (max-width:480px){.products-header{align-items:stretch;flex-direction:column}.products-stats{justify-content:space-between}.products-filters{flex-direction:column}.filter-group{width:100%}.filter-group select{flex:1}.form-row,.products-grid{grid-template-columns:1fr}.form-row.checkboxes{flex-direction:column;gap:12px}}.tickets-container{display:flex;flex-direction:column;gap:16px}.tickets-header{align-items:center;display:flex;gap:12px}.tickets-title{color:var(--text-primary);font-size:20px;font-weight:700}.tickets-count{background:rgba(59,130,246,.15);border-radius:12px;color:var(--accent-primary);font-size:12px;font-weight:700;padding:3px 10px}.tickets-list{display:flex;flex-direction:column;gap:10px}.ticket-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden;transition:box-shadow .2s ease}.ticket-card:hover{box-shadow:var(--shadow-sm)}.ticket-header{align-items:center;background:transparent;border:none;color:var(--text-primary);cursor:pointer;display:flex;gap:12px;justify-content:space-between;padding:14px 16px;text-align:left;transition:background .2s ease;width:100%}.ticket-header:hover{background:hsla(0,0%,100%,.03)}.ticket-header.expanded{background:rgba(59,130,246,.05);border-bottom:1px solid var(--border-color)}.ticket-header-left{align-items:center;display:flex;flex:1;gap:12px;min-width:0}.ticket-icon-wrap{align-items:center;background:rgba(59,130,246,.1);border-radius:var(--radius-sm);display:flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.ticket-icon-svg{color:var(--accent-primary);height:22px;width:22px}.ticket-meta{display:flex;flex-direction:column;gap:2px;min-width:0}.ticket-id{color:var(--text-primary);font-family:SF Mono,Menlo,monospace;font-size:14px;font-weight:700}.ticket-date{color:var(--text-muted);font-size:12px}.ticket-header-right{align-items:center;display:flex;flex-shrink:0;gap:10px}.ticket-total{color:var(--accent-primary);font-size:15px;font-weight:700}.ticket-chevron{color:var(--text-muted);flex-shrink:0;height:16px;transition:transform .25s ease;width:16px}.ticket-chevron.open{transform:rotate(180deg)}.ticket-body{animation:expandDetails .2s ease;padding:16px}.ticket-info-grid{background:rgba(0,0,0,.2);border-radius:var(--radius-sm);display:flex;flex-direction:column;gap:8px;margin-bottom:14px;padding:12px}.ticket-info-row{align-items:center;display:flex;font-size:13px;gap:10px}.ticket-info-icon{color:var(--text-muted);flex-shrink:0;height:16px;width:16px}.ticket-info-label{color:var(--text-muted);min-width:72px}.ticket-info-value{color:var(--text-primary);font-weight:500;text-transform:capitalize}.ticket-mono{font-family:SF Mono,Menlo,monospace;font-size:12px}.ticket-products{margin-bottom:14px}.ticket-products-title{color:var(--text-muted);font-size:11px;font-weight:700;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.ticket-products-list{display:flex;flex-direction:column;gap:6px;list-style:none}.ticket-product-row{align-items:center;border-bottom:1px solid var(--border-color);display:flex;font-size:13px;gap:10px;padding:6px 0}.ticket-product-row:last-child{border-bottom:none}.ticket-product-qty{color:var(--accent-primary);font-size:12px;font-weight:700;min-width:28px}.ticket-product-name{color:var(--text-secondary);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ticket-product-price{color:var(--text-primary);flex-shrink:0;font-family:SF Mono,Menlo,monospace;font-size:12px;font-weight:600}.ticket-footer{align-items:center;border-top:1px solid var(--border-color);display:flex;font-size:13px;justify-content:space-between;padding-top:12px}.ticket-source{color:var(--text-muted)}.ticket-source strong,.ticket-total-footer{color:var(--text-secondary)}.ticket-total-footer strong{color:var(--accent-primary);font-size:15px}.empty-icon-svg{color:var(--text-muted);height:72px;margin-bottom:24px;opacity:.5;width:72px}.ticket-card.ticket-printed{border-left:3px solid var(--status-online)}.ticket-card.ticket-failed{border-left:3px solid var(--status-error)}.tickets-stats{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.ticket-stat-badge{border-radius:12px;font-size:11px;font-weight:700;padding:3px 10px}.ticket-stat-badge.stat-printed{background:rgba(59,130,246,.15);color:var(--status-online)}.ticket-stat-badge.stat-failed{background:rgba(239,68,68,.15);color:var(--status-error)}.ticket-status-badge{align-items:center;border-radius:10px;display:flex;font-size:11px;font-weight:700;gap:4px;padding:3px 8px;white-space:nowrap}.ticket-status-badge.badge-printed{background:rgba(59,130,246,.15);color:var(--status-online)}.ticket-status-badge.badge-failed{background:rgba(239,68,68,.15);color:var(--status-error)}.ticket-status-icon{flex-shrink:0;height:13px;width:13px}.ticket-reprint-row{border-top:1px dashed var(--border-color);display:flex;justify-content:flex-end;margin-top:12px;padding-top:12px}.tc{background:var(--tc-bg);border:1px solid var(--tc-border);border-radius:var(--tc-radius);box-shadow:0 0 0 1px #0a0c10,0 16px 40px rgba(0,0,0,.4);margin-bottom:12px;overflow:hidden;transition:box-shadow .2s ease}.tc:hover{box-shadow:0 0 0 1px #0a0c10,0 20px 50px rgba(0,0,0,.5)}.tc-header{align-items:center;background:transparent;border:none;border-bottom:1px solid transparent;cursor:pointer;display:flex;gap:12px;justify-content:space-between;padding:16px 20px;transition:border-color .2s;width:100%}.tc-header--open{border-bottom-color:var(--tc-border)}.tc-header-left{gap:14px;min-width:0}.tc-header-left,.tc-icon{align-items:center;display:flex}.tc-icon{background:rgba(91,124,250,.06);border:1px solid var(--tc-accent-border);border-radius:10px;flex-shrink:0;height:38px;justify-content:center;width:38px}.tc-icon-svg{color:var(--tc-accent);height:18px;width:18px}.tc-id{color:var(--tc-text-primary);font-family:var(--font-mono);font-size:13px;font-weight:600;letter-spacing:.04em}.tc-date{color:var(--tc-text-muted);font-size:11.5px;margin-top:2px;text-align:left}.tc-header-right{flex-shrink:0;gap:10px}.tc-badge,.tc-header-right{align-items:center;display:flex}.tc-badge{border-radius:20px;font-size:11px;font-weight:600;gap:5px;letter-spacing:.05em;padding:4px 10px;text-transform:uppercase;white-space:nowrap}.tc-badge-icon{height:12px;width:12px}.tc-badge--printed{background:var(--tc-success-bg);border:1px solid var(--tc-success-border);color:var(--tc-success)}.tc-badge--failed{background:rgba(239,68,68,.08);border:1px solid rgba(239,68,68,.2);color:#ef4444}.tc-total-header{color:var(--tc-text-primary);font-family:var(--font-mono);font-size:15px;font-weight:600;white-space:nowrap}.tc-chevron{color:var(--tc-text-ghost);flex-shrink:0;height:16px;transition:transform .25s ease,color .2s;width:16px}.tc-chevron--open{color:var(--tc-text-muted);transform:rotate(180deg)}.tc-body{animation:tc-fade .2s ease both;padding:0 20px 20px}@keyframes tc-fade{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.tc-meta{background:var(--tc-border);border:1px solid var(--tc-border);border-radius:12px;display:grid;gap:1px;grid-template-columns:1fr 1fr;margin-top:16px;overflow:hidden}.tc-meta-cell{background:var(--tc-bg);display:flex;flex-direction:column;gap:4px;padding:11px 14px}.tc-meta-label{color:var(--tc-text-ghost);font-size:10px;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.tc-meta-value{color:var(--tc-text-secondary);font-size:12.5px;font-weight:400}.tc-meta-value--mono{color:var(--tc-accent);font-family:var(--font-mono);font-size:11.5px}.tc-products-label{color:var(--tc-text-ghost);font-size:10px;font-weight:700;letter-spacing:.1em;margin:18px 0 8px;text-transform:uppercase}.tc-products-list{display:flex;flex-direction:column;gap:4px;list-style:none}.tc-product-row{align-items:center;background:var(--tc-bg-row);border:1px solid var(--tc-border);border-radius:10px;display:flex;gap:10px;padding:10px 12px;transition:background .15s}.tc-product-row:hover{background:#141720}.tc-qty-pill{background:var(--tc-accent-bg);border:1px solid var(--tc-accent-border);border-radius:var(--tc-radius-xs);color:var(--tc-accent);flex-shrink:0;font-family:var(--font-mono);font-size:10.5px;font-weight:600;min-width:34px;padding:2px 7px;text-align:center}.tc-product-name{color:#c8cad8;flex:1;font-size:13px}.tc-product-price{color:var(--tc-text-primary);flex-shrink:0;font-family:var(--font-mono);font-size:12.5px;font-weight:600;text-align:right}.tc-divider{border:none;border-top:1px dashed var(--tc-border);margin:16px 0}.tc-footer{align-items:flex-end;display:flex;justify-content:space-between}.tc-source{color:var(--tc-text-ghost);font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.tc-source strong{color:var(--tc-text-muted);font-weight:600}.tc-total-block{text-align:right}.tc-total-label{color:var(--tc-text-ghost);font-size:10px;font-weight:700;letter-spacing:.08em;margin-bottom:2px;text-transform:uppercase}.tc-total-amount{color:#fff;font-family:var(--font-mono);font-size:24px;font-weight:600;letter-spacing:-.02em}.tc-reprint-row{display:flex;justify-content:flex-end;margin-top:14px}.btn-reprint{align-items:center;background:transparent;border:1px solid var(--tc-border);border-radius:var(--tc-radius-sm);color:var(--tc-text-muted);cursor:pointer;display:flex;font-size:12px;font-weight:600;gap:7px;letter-spacing:.03em;padding:8px 16px;transition:all .15s}.btn-reprint:hover:not(:disabled){background:var(--tc-accent-bg);border-color:var(--tc-accent);color:var(--tc-accent)}.btn-reprint:disabled{cursor:not-allowed;opacity:.5}.btn-icon{height:13px;width:13px}