@import "https://fonts.googleapis.com/css2?family=Exo+2:wght@200;300;400;700&display=swap";:root{--bg-color:#f3f4f6;--surface-color:#fff;--border-color:#0000000d;--text-primary:#1f2937;--text-secondary:#6b7280;--accent-primary:#6366f1;--accent-secondary:#8b5cf6;--accent-success:#10b981;--accent-danger:#ef4444;--accent-warning:#f59e0b;--glass-bg:#ffffffb3;--glass-blur:blur(20px);--glass-border:1px solid #fff6;--radius-pill:9999px;--radius-card:24px;--radius-sm:12px;--font-family:"Exo 2", "Inter", system-ui, -apple-system, sans-serif;--space-xs:.5rem;--space-sm:1rem;--space-md:1.5rem;--space-lg:2rem;--space-xl:3rem}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{font-family:var(--font-family);background-color:var(--bg-color);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;flex-direction:column;min-height:100vh;margin:0;display:flex;overflow-x:auto}#root{flex-direction:column;min-height:100vh;display:flex}input,button,textarea,select{font-family:inherit}h1,h2,h3,h4,h5,h6{color:#111827;letter-spacing:-.025em;margin-top:0;font-weight:700}p{color:var(--text-secondary);margin-bottom:1rem;line-height:1.6}.container{width:100%;padding:0 var(--space-lg);box-sizing:border-box;max-width:1440px;margin:0 auto}@media (width<=1024px){.container{padding:0 var(--space-md)}}@media (width<=768px){.container{padding:0 var(--space-sm)}}.glass-panel{background:var(--surface-color);border:1px solid var(--border-color);border-radius:var(--radius-card);padding:var(--space-md);transition:transform .2s,box-shadow .2s;box-shadow:0 4px 6px -1px #0000000d,0 2px 4px -1px #00000008}@media (width<=768px){.glass-panel{padding:var(--space-sm);border-radius:var(--radius-sm)}}.glass-panel:hover{transform:translateY(-2px);box-shadow:0 10px 15px -3px #00000014}.btn{color:var(--text-primary);border:1px solid var(--border-color);border-radius:var(--radius-pill);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:#fff;justify-content:center;align-items:center;gap:.5rem;padding:.6rem 1.5rem;font-size:.875rem;font-weight:600;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex;box-shadow:0 1px 2px #0000000d}@media (width<=768px){.btn{min-height:44px;padding:.7rem 1.25rem;font-size:.875rem}}.btn:hover{background:#f9fafb;border-color:#d1d5db;transform:scale(1.02)}.btn-primary{background:var(--accent-primary);color:#fff;border:none}.btn-primary:hover{background:var(--accent-secondary);box-shadow:0 0 20px #6366f14d}.badge{color:var(--accent-primary);border-radius:var(--radius-pill);text-transform:uppercase;letter-spacing:.05em;background:#6366f11a;padding:.25rem .75rem;font-size:.75rem;font-weight:600}@keyframes fadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:.5s cubic-bezier(.16,1,.3,1) forwards fadeIn}nav{-webkit-backdrop-filter:blur(12px)!important;background:#fffc!important;border-bottom:1px solid #0000000d!important}.mobile-bottom-nav{-webkit-backdrop-filter:blur(20px);border-top:1px solid var(--border-color);z-index:200;padding:.5rem 0;padding-bottom:env(safe-area-inset-bottom,.5rem);background:#fffffff2;display:none;position:fixed;bottom:0;left:0;right:0}@media (width<=1024px){.mobile-bottom-nav{display:flex}main{padding-bottom:70px}}.mobile-nav-item{color:var(--text-secondary);-webkit-tap-highlight-color:transparent;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.25rem;padding:.5rem;font-size:.65rem;font-weight:600;text-decoration:none;transition:color .2s;display:flex}.mobile-nav-item.active{color:var(--accent-primary)}.grid-auto-sm{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;display:grid}.grid-auto-md{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;display:grid}.grid-auto-lg{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1.5rem;display:grid}.grid-4{grid-template-columns:repeat(4,1fr);gap:1.5rem;display:grid}.grid-3{grid-template-columns:repeat(3,1fr);gap:1.5rem;display:grid}.grid-2{grid-template-columns:repeat(2,1fr);gap:1.5rem;display:grid}@media (width<=1024px){.grid-4,.grid-3{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.grid-4,.grid-3,.grid-2,.grid-auto-md{grid-template-columns:1fr}}.table-wrapper{-webkit-overflow-scrolling:touch;overflow-x:auto}.table-wrapper table{border-collapse:collapse;width:100%;min-width:700px}.flex-stack{align-items:center;gap:1rem;display:flex}@media (width<=768px){.flex-stack{flex-direction:column;align-items:stretch}.chef-g-panel{z-index:1001!important;border-radius:0!important;width:100%!important;height:100%!important;position:fixed!important;inset:0!important}.chef-g-fab{width:60px!important;height:60px!important;bottom:5rem!important;right:1rem!important}.cabinet-modal{border-radius:20px 20px 0 0!important;width:100%!important;max-width:100%!important;bottom:0!important;left:0!important;right:0!important}}.scanner-engines-bar{border-radius:var(--radius-pill);background:#ffffffd9;border:1px solid #6366f140;flex-wrap:wrap;align-items:center;gap:1.75rem;width:100%;padding:.85rem 2.25rem;display:flex;box-shadow:0 10px 35px #6366f11a}.scanner-scanning-layout{align-items:center;gap:2rem;min-height:500px;padding:2rem;display:flex}.scanner-scanning-left{text-align:left;border-right:1px solid var(--border-color);flex:1;padding-right:2rem}.scanner-scanning-center{background:#000;border:1px solid #ffffff1a;border-radius:24px;flex-shrink:0;width:400px;height:400px;position:relative;overflow:hidden}.scanner-scanning-right{text-align:right;border-left:1px solid var(--border-color);flex:1;padding-left:2rem}.scanner-hud-grid{grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:2rem;display:grid}.scanner-main-layout{grid-template-columns:1.2fr .8fr;align-items:start;gap:2rem;margin-bottom:2rem;display:grid}@media (width<=992px){.scanner-engines-bar{border-radius:var(--radius-card)!important;gap:1rem!important;padding:1rem 1.5rem!important}.scanner-scanning-layout{flex-direction:column;gap:1.5rem;min-height:auto;padding:1.5rem}.scanner-scanning-left,.scanner-scanning-right{width:100%;text-align:center!important;border:none!important;padding:0!important}.scanner-scanning-right{flex-direction:column;align-items:center;display:flex}.scanner-scanning-right button{float:none!important}.scanner-hud-grid{grid-template-columns:repeat(2,1fr)!important}.scanner-main-layout{grid-template-columns:1fr!important;gap:1.5rem!important}}@media (width<=576px){.scanner-hud-grid{grid-template-columns:1fr!important}.scanner-scanning-center{width:290px;height:290px}}@media (width<=1024px){.hide-mobile{display:none!important}}@media (width>=1025px){.show-mobile-only{display:none!important}}@media (width<=1024px){.hide-tablet{display:none!important}}*{max-width:100%}img,video,canvas,svg{max-width:100%;height:auto}@media (width<=768px){[style*="grid-template-columns: 1.5fr 1fr"],[style*="grid-template-columns: 2fr 1fr"],[style*="grid-template-columns: 1.2fr 1fr"],[style*="grid-template-columns: 1fr 1fr"],[style*="grid-template-columns: 1.6fr 1fr"],[style*="grid-template-columns: 1fr 1.6fr"],[style*="grid-template-columns: 1.2fr 0.8fr"],[style*="grid-template-columns: 2fr 1.2fr"],[style*="grid-template-columns: 1fr 1.2fr"]{grid-template-columns:1fr!important}.recharts-wrapper,.recharts-surface{overflow:hidden;max-width:100%!important}h1{font-size:1.6rem!important}h2{font-size:1.3rem!important}p,span,div,td,th{overflow-wrap:break-word;word-break:break-word}.container{padding-left:max(1rem, env(safe-area-inset-left));padding-right:max(1rem, env(safe-area-inset-right))}}html{scroll-behavior:smooth}.scroll-container{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;overflow-y:auto}@keyframes fn-ping{0%,to{opacity:.6;transform:scale(1)}50%{opacity:0;transform:scale(1.2)}}@keyframes fn-spin{to{transform:rotate(360deg)}}@keyframes fn-pulse{0%,to{opacity:1}50%{opacity:.4}}.skeleton{background:linear-gradient(90deg,#0000000f 25%,#0000001f 50%,#0000000f 75%) 0 0/200% 100%;border-radius:8px;animation:1.5s infinite fn-skeleton}@keyframes fn-skeleton{0%{background-position:200% 0}to{background-position:-200% 0}}html,body{width:100%;overflow:auto}
