:root{--bg: #f7f8fb;--panel: #ffffff;--primary: #0a7d2b;--primary-weak: #e9f7ee;--danger: #c62828;--danger-weak: #fdecec;--warn: #f59e0b;--muted: #64748b;--border: #e5e7eb;--border-subtle: #e9ecef;--border-soft: #f1f3f4;--text: #0f172a;--accent: #2563eb;--berry: #b0174a;--radius: 12px;--shadow: 0 6px 18px rgba(2,6,23,.06);--tile-worker-bg: #e8f2ff;--tile-worker-border: #cfe5ff;--tile-area-bg: #e8fff1;--tile-area-border: #c9f2d9;--tile-class-bg: #fff5e8;--tile-class-border: #ffdcb8;--tile-nfc-bg: #f3e8ff;--tile-nfc-border: #e1bee7;--tile-box-border: #c5e3a0;--tile-qty-bg: #fffef8;--tile-qty-border: #ffcc80;--tile-weight-bg: #fff9fb;--tile-weight-border: #f8bbd9;--border-default: var(--border);--border-strong: #d1d5db}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Helvetica Neue,Arial,Noto Sans,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol;font-size:15px;line-height:1.5}.topbar{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:8px;flex-wrap:nowrap;white-space:nowrap;padding:10px 16px;background:var(--panel);border-bottom:1px solid var(--border);box-shadow:var(--shadow)}.topbar .brand{font-weight:700;letter-spacing:.2px}.topbar .brand img{height:28px;display:block}.topbar a{color:var(--text);text-decoration:none;white-space:nowrap}.topbar .btn{padding:8px 12px;min-height:36px;border-radius:8px;border:none;font-size:14px}.topbar .btn.ghost{background:transparent}.topbar .btn:hover{background:var(--primary-weak)}.topbar .divider{width:1px;height:24px;background:var(--border)}.topnav{gap:8px;flex-wrap:nowrap}.nav-links{flex:1 1 auto;min-width:0;overflow:visible}.nav-links .btn{padding:8px 10px;min-height:36px;font-size:14px}.container{max-width:95%;margin:0 auto;padding:16px}.warehouse-page-wide{width:100vw;max-width:100vw;margin-left:calc(-50vw + 50%)}.warehouse-page-wide .container,.warehouse-page-wide .container.analytics-page,.container.warehouse-wide{max-width:calc(100vw - 48px)!important;width:calc(100vw - 48px)!important;margin:0 auto!important;padding:16px 24px!important}@media(max-width:768px){.warehouse-page-wide .container,.container.warehouse-wide{max-width:calc(100vw - 32px)!important;width:calc(100vw - 32px)!important;padding:16px!important}}.panel{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px}.panel-footer{margin-top:12px;padding-top:10px;border-top:1px solid var(--border)}.hstack{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.vstack{display:flex;flex-direction:column;gap:14px}.spacer{flex:1 1 auto}.sticky-actions{margin:12px 0 18px}.badge{display:inline-flex;align-items:center;gap:8px;font-size:14px;padding:8px 12px;border-radius:8px;border:1px solid var(--border);background:#fff;color:var(--muted);line-height:1.3}.badge.ok{background:var(--primary-weak);border-color:#a7e6b8;color:var(--primary)}.badge.warn{background:#fff8e6;border-color:#ffd074;color:#9a6b00}.badge.err{background:var(--danger-weak);border-color:#ffb3b3;color:var(--danger)}.btn{padding:10px 16px;min-height:42px;border-radius:10px;border:1px solid var(--border);background:#fff;cursor:pointer;transition:background .15s ease,box-shadow .15s ease,transform .05s ease;font-size:14px;font-weight:500;display:inline-flex;align-items:center;justify-content:center;gap:6px}.btn:hover{background:#f9fafb}.btn:active{transform:translateY(1px)}.btn:focus{outline:none;box-shadow:0 0 0 3px #2563eb26}.btn:disabled{opacity:.6;cursor:not-allowed}.btn.primary{background:var(--primary);color:#fff;border-color:transparent}.btn.primary:hover{filter:brightness(.98)}.btn.danger{background:var(--danger);color:#fff;border-color:transparent}.btn.danger:hover{filter:brightness(.98)}.btn.ghost{background:transparent}.btn.ghost.danger{background:transparent;color:var(--danger);border-color:var(--danger)}.btn.ghost.danger:hover{background:#ef44441a}.btn.berry{background:var(--berry);color:#fff;border-color:transparent}.input,select{padding:10px 14px;min-height:42px;border-radius:10px;border:1px solid var(--border);background:#fff;outline:none;transition:border-color .15s ease,box-shadow .15s ease;font-size:14px}.input:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px #2563eb26}.table-responsive{overflow-x:auto;margin-bottom:1rem;scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.3) transparent}.table-responsive::-webkit-scrollbar{height:8px}.table-responsive::-webkit-scrollbar-track{background:#0000001a;border-radius:4px}.table-responsive::-webkit-scrollbar-thumb{background:#0000004d;border-radius:4px}.table-responsive::-webkit-scrollbar-thumb:hover{background:#00000080}.table{width:100%;border-collapse:separate;border-spacing:0 8px}.table:not(.ant-table) th{text-align:left;font-weight:600;color:var(--muted);font-size:14px;padding:10px 12px;vertical-align:top;word-wrap:break-word;line-height:1.3}.table:not(.ant-table) td{padding:14px 12px;background:#fff;border-top:1px solid var(--border);border-bottom:1px solid var(--border);font-size:14px;line-height:1.4;word-wrap:break-word;word-break:break-word;-webkit-hyphens:auto;hyphens:auto;vertical-align:top;max-width:200px}.table:not(.ant-table) tr td:first-child{border-left:1px solid var(--border);border-top-left-radius:10px;border-bottom-left-radius:10px;width:auto!important;min-width:auto!important;max-width:none!important;text-align:center;padding:6px 4px}.table:not(.ant-table) tr td:last-child{border-right:1px solid var(--border);border-top-right-radius:10px;border-bottom-right-radius:10px;width:110px;min-width:110px;white-space:nowrap}.table:not(.ant-table) tr th:first-child{width:auto!important;min-width:auto!important;max-width:none!important;text-align:center;padding:6px 4px}.table:not(.ant-table) tr th:last-child{width:110px;min-width:110px;white-space:nowrap}.table:not(.ant-table) th[role=columnheader]:first-child,.table:not(.ant-table) td[role=cell]:first-child{width:auto!important;min-width:auto!important;max-width:none!important;text-align:center!important}.table:not(.ant-table) th:first-child input[type=checkbox],.table:not(.ant-table) td:first-child input[type=checkbox]{margin:0!important;width:auto!important;max-width:16px!important}.table:not(.ant-table) td[data-type=id]{font-family:monospace;font-size:13px;word-break:break-all}.table:not(.ant-table) td[data-type=date]{font-size:13px;white-space:nowrap}.table:not(.ant-table) td[data-type=status]{text-align:center}.table:not(.ant-table) td[data-type=actions]{white-space:nowrap;text-align:center}.table:not(.ant-table) td{max-height:4.2em;overflow:hidden;position:relative}.table:not(.ant-table) td:hover{max-height:none;overflow:visible;z-index:10;background:#f9f9f9!important;box-shadow:0 2px 8px #00000026}.table:not(.ant-table) td:nth-child(2),.table:not(.ant-table) th:nth-child(2){max-width:80px;min-width:60px}.table:not(.ant-table) td:nth-child(3),.table:not(.ant-table) th:nth-child(3){max-width:200px;min-width:120px}.table:not(.ant-table) td:nth-child(4),.table:not(.ant-table) th:nth-child(4){max-width:100px;min-width:80px}.table:not(.ant-table) td:nth-child(5),.table:not(.ant-table) th:nth-child(5){max-width:150px;min-width:100px}.table:not(.ant-table) td:last-child,.table:not(.ant-table) th:last-child{width:120px!important;max-width:120px!important;min-width:120px!important}.table:not(.ant-table) tr.row-active td{background:var(--primary-weak)}.page-title{margin:0 0 8px}.subtle{color:var(--muted);font-size:13px;line-height:1.4}.topbar .badge{padding:6px 10px;border-radius:8px}.hide-on-mobile{display:initial}.show-on-mobile{display:none}.universal-menu .menu-trigger{display:flex;align-items:center;gap:8px;padding:8px 12px;background:transparent;color:var(--text);border:none;border-radius:8px;cursor:pointer;font-weight:500;transition:all .2s ease;font-size:20px}.universal-menu .menu-trigger:hover{background:var(--primary-weak);color:var(--primary)}.universal-menu .menu-label{font-size:14px}@media(max-width:768px){.universal-menu .menu-label{display:none}.universal-menu .menu-trigger{padding:8px;font-size:24px}}.two-col-mobile,.actions-mobile{display:flex;gap:16px}.card{border:1px solid var(--border);border-radius:12px;padding:16px;background:#fff;box-shadow:0 1px 2px #00000008;font-size:14px;line-height:1.5}.card .row{display:flex;gap:10px;margin-bottom:8px}.card .label{width:130px;color:var(--muted);flex:0 0 auto;font-size:13px;font-weight:500}.card .value{flex:1 1 auto;font-size:14px}.tile-badge{font-size:11px;line-height:1;color:#374151;background:#ffffffb3;border:1px solid rgba(0,0,0,.05);border-radius:999px;padding:4px 8px}@media(max-width:1024px){.hide-on-mobile{display:none!important}.show-on-mobile{display:initial}.two-col-mobile{display:flex;gap:8px;width:100%;flex-wrap:nowrap}.two-col-mobile>input{flex:1 1 75%}.two-col-mobile>button{flex:0 0 25%;min-width:25%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.actions-mobile{display:flex;gap:12px;width:100%}.actions-mobile>*{flex:1 1 0}body{font-size:16px}.btn{min-height:48px;padding:12px 18px;font-size:15px}.input,select{min-height:48px;padding:12px 16px;font-size:16px}.table:not(.ant-table) td{padding:16px 12px;font-size:15px}.table:not(.ant-table) th{padding:12px;font-size:15px}.subtle{font-size:14px}.card{padding:18px;font-size:15px}.card .label{font-size:14px;width:140px}.card .value{font-size:15px}}@media(max-width:480px){.two-col-mobile{gap:6px}.two-col-mobile>input{flex:1 1 70%}.two-col-mobile>button{flex:0 0 30%;min-width:30%;font-size:14px;padding:8px 4px}}.offcanvas-backdrop{position:fixed;inset:0;background:#0f172a59;z-index:2000}.offcanvas-panel{position:fixed;z-index:2100;top:0;right:0;height:100%;width:360px;max-width:95vw;border-radius:0;border-left:1px solid var(--border);transform:translate(100%);animation:slideIn .2s ease forwards;background:var(--panel);display:flex;flex-direction:column}.offcanvas-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--border);background:var(--background)}.offcanvas-content{flex:1;overflow-y:auto;padding:16px 20px;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.offcanvas-content::-webkit-scrollbar{width:4px}.offcanvas-content::-webkit-scrollbar-track{background:transparent}.offcanvas-content::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.menu-section{margin-bottom:24px}.section-title{font-size:12px;font-weight:600;text-transform:uppercase;color:var(--text-muted);margin-bottom:12px;padding-left:4px;letter-spacing:.5px}.menu-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.menu-tile.menu-tile--full{grid-column:1 / -1}.menu-tile{animation:tileSlideIn .4s cubic-bezier(.4,0,.2,1) both}.menu-tile:nth-child(1){animation-delay:.05s}.menu-tile:nth-child(2){animation-delay:.1s}.menu-tile:nth-child(3){animation-delay:.15s}.menu-tile:nth-child(4){animation-delay:.2s}.menu-tile:nth-child(5){animation-delay:.25s}.menu-tile:nth-child(6){animation-delay:.3s}.menu-tile:nth-child(7){animation-delay:.35s}.menu-tile:nth-child(8){animation-delay:.4s}@keyframes tileSlideIn{0%{opacity:0;transform:translate(20px) scale(.8)}to{opacity:1;transform:translate(0) scale(1)}}.menu-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:16px 12px;background:var(--background);border:1px solid var(--border);border-radius:12px;text-decoration:none;color:var(--text);transition:all .3s cubic-bezier(.4,0,.2,1);min-height:80px;position:relative;overflow:hidden;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.menu-tile:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--tile-color, #1890ff),transparent);opacity:0;transition:opacity .3s ease}.menu-tile:after{content:"";position:absolute;top:50%;left:50%;width:0;height:0;background:radial-gradient(circle,var(--tile-color, #1890ff)20,transparent 70%);opacity:0;border-radius:50%;transition:all .4s ease;transform:translate(-50%,-50%);z-index:0}.menu-tile:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 8px 25px #0000001a,0 4px 10px #00000014;border-color:var(--tile-color, #1890ff);background:color-mix(in srgb,var(--background) 95%,var(--tile-color, #1890ff) 5%)}.menu-tile:hover:before{opacity:1}.menu-tile:hover:after{width:100px;height:100px;opacity:.1}.menu-tile:active{transform:translateY(-1px) scale(.98);transition:all .1s ease}.menu-tile-icon{font-size:20px;margin-bottom:8px;color:var(--tile-color, #1890ff);transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;z-index:1;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.menu-tile:hover .menu-tile-icon{transform:scale(1.15) rotate(5deg);filter:drop-shadow(0 4px 8px rgba(0,0,0,.15))}.menu-tile-label{font-size:12px;font-weight:500;text-align:center;line-height:1.3;position:relative;z-index:1;transition:color .3s ease}.menu-tile:hover .menu-tile-label{color:var(--tile-color, #1890ff);font-weight:600}.offcanvas-footer{padding:16px 20px calc(16px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--border);background:var(--background)}.language-selector{display:flex;align-items:center;gap:12px}.language-selector label{font-size:12px;font-weight:500;min-width:70px}.language-selector select{flex:1;min-width:120px}@media(max-width:480px){.offcanvas-panel{width:100vw;max-width:100vw}.offcanvas-footer{padding-bottom:calc(72px + env(safe-area-inset-bottom,0px))}.menu-grid{grid-template-columns:1fr}.menu-tile{flex-direction:row;justify-content:flex-start;text-align:left;min-height:60px;padding:12px 16px}.menu-tile-icon{margin-bottom:0;margin-right:12px;font-size:18px}.menu-tile-label{font-size:14px;text-align:left}}@media(min-width:481px)and (max-width:1024px){.offcanvas-panel{width:560px;max-width:90vw}.menu-grid{grid-template-columns:repeat(3,1fr)}.offcanvas-footer{padding-bottom:calc(72px + env(safe-area-inset-bottom,0px))}}@media(min-width:1025px){.offcanvas-panel{width:720px;max-width:min(80vw,920px)}.menu-grid{grid-template-columns:repeat(4,1fr)}}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.footerbar{position:fixed;left:0;right:0;bottom:0;z-index:900;border-top:1px solid var(--border);background:var(--panel);box-shadow:var(--shadow);padding:8px 12px calc(8px + env(safe-area-inset-bottom,0px))}.footerbar .btn{min-height:44px;font-size:15px;flex:1}.container{padding-bottom:160px}@media(max-width:640px){.topbar{padding:12px 16px}.topbar .btn{min-height:40px;padding:10px 14px;font-size:15px}.panel{padding:20px 20px 75px}.table:not(.ant-table) td{padding:18px 14px}.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch}.table:not(.ant-table){min-width:600px}.table:not(.ant-table) tr td:last-child,.table:not(.ant-table) tr th:last-child{position:sticky;right:0;background:#fff;z-index:2;box-shadow:-2px 0 4px #0000001a;min-width:110px!important;width:110px!important}.table .hstack{gap:2px!important}.table .btn{padding:2px 4px!important;font-size:12px!important;min-width:auto!important;min-height:auto!important}.table:not(.ant-table) tr td:first-child,.table:not(.ant-table) tr th:first-child{position:sticky;left:0;background:#fff;z-index:2;box-shadow:2px 0 4px #0000001a}.btn-set .btn{min-height:50px;font-size:16px}.card{padding:20px;margin-bottom:16px}.card .label{width:150px;font-size:15px}.card .value{font-size:16px}}.btn-set{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.btn-set .btn{width:100%;text-align:center}.row-modified td{background:#fff07a!important;position:relative;box-shadow:inset 0 0 0 2px #b4530973}.row-modified td:first-child{border-left:6px solid #b45309}.row-deleted td{background:#fee!important;position:relative;box-shadow:inset 0 0 0 2px #dc354573}.row-deleted td:first-child{border-left:6px solid #dc3545}.badge.changed{background:#111827;color:#fff;border-color:#111827;font-weight:700;text-transform:uppercase;letter-spacing:.3px;padding:6px 10px;border-radius:999px;font-size:11px;display:inline-flex;align-items:center;gap:6px;margin-bottom:8px}.table .btn{min-height:36px;padding:6px 10px;font-size:13px}.card .btn{min-height:38px;padding:8px 12px;font-size:13px}.hstack .btn{flex-shrink:0}.cell-summary{display:flex;flex-direction:column;gap:4px;min-height:42px;justify-content:center}.cell-summary>div{line-height:1.4}.scan-input-large{font-size:24px!important;font-weight:600!important;text-align:center!important;min-height:56px!important}.scan-rating-container{display:flex;justify-content:center;align-items:center;margin:16px 0}.scan-camera-container{display:flex;flex-direction:column;align-items:center;gap:16px;margin:20px 0}.scan-star-btn{transition:transform .1s ease,background-color .2s ease}.scan-star-btn:hover{transform:scale(1.05)}.scan-star-btn:active{transform:scale(.95)}@media(max-width:768px){.scan-input-large{font-size:20px!important;min-height:52px!important}.scan-camera-container{margin:16px 0}.scan-rating-container .hstack{gap:4px!important}.scan-star-btn{min-width:36px!important;min-height:36px!important;padding:8px 10px!important;font-size:16px!important}.hstack{flex-wrap:nowrap!important}.scan-camera-btn{min-width:90px!important;font-size:14px!important}.container{max-width:100%!important;padding:8px!important;overflow-x:hidden!important}.panel,.vstack,.hstack{max-width:100%!important;overflow-x:hidden!important}.input{max-width:100%!important;box-sizing:border-box!important}}.analytics-summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:16px}.analytics-summary-grid.compact{gap:8px}.analytics-summary-grid.compact .analytics-card{height:50px;padding:8px;border-radius:8px}.analytics-summary-grid.standard{grid-template-columns:repeat(5,1fr);gap:12px}.analytics-summary-grid.standard .analytics-card{height:100px;padding:16px;border-radius:12px}.analytics-summary-card{background:#fff;border-radius:12px;padding:8px;text-align:center;box-shadow:0 2px 8px #0000001a;height:100px;display:flex;flex-direction:column;justify-content:center;align-items:center;border:2px solid transparent;transition:all .2s ease}.analytics-summary-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #00000026}.analytics-summary-icon{font-size:24px;margin-bottom:4px;line-height:1}.analytics-summary-value{font-weight:700;font-size:18px;margin-bottom:6px;line-height:1.2}.analytics-summary-label{font-size:12px;color:#666;line-height:1.2;opacity:.8}.analytics-daily-card{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;padding:12px;margin-bottom:8px}.analytics-header{margin-bottom:16px;flex-wrap:wrap;gap:12px;display:flex;overflow:visible;position:relative;z-index:10}.analytics-title{margin:0;flex:1}.analytics-controls{gap:8px;display:flex}.analytics-view-toggle{min-width:auto}.analytics-toggle-options{gap:4px;display:flex}.analytics-daily-date{font-weight:600;margin-bottom:8px;color:#495057;font-size:14px}.analytics-daily-stats{display:flex;gap:16px;flex-wrap:wrap}.analytics-daily-stat{display:flex;flex-direction:column;gap:2px;min-width:80px}.analytics-daily-stat-label{font-size:12px;color:#6c757d}.analytics-daily-stat-value{font-weight:600;font-size:14px}@media(max-width:480px){.analytics-summary-grid.compact{grid-template-columns:repeat(3,1fr)!important;gap:4px!important}.analytics-summary-grid.compact .analytics-card{height:45px!important;padding:4px!important;border-radius:6px!important}.analytics-summary-grid.standard{grid-template-columns:repeat(2,1fr)!important;gap:6px!important}.analytics-summary-grid.standard .analytics-card{height:80px!important;padding:12px!important;border-radius:8px!important}}@media(min-width:481px)and (max-width:768px){.analytics-summary-grid.compact{grid-template-columns:repeat(3,1fr)!important;gap:6px!important}.analytics-summary-grid.standard{grid-template-columns:repeat(5,1fr)!important;gap:8px!important}}@media(min-width:769px){.analytics-summary-grid.compact{grid-template-columns:repeat(3,1fr)!important;gap:8px!important}.analytics-summary-grid.standard{grid-template-columns:repeat(5,1fr)!important;gap:12px!important}}.view-mode-buttons{display:flex;gap:4px;background:#f1f5f9;padding:4px;border-radius:8px}.view-mode-button{min-width:36px;height:32px;padding:4px 8px;border-radius:6px;border:none;background:transparent;cursor:pointer;transition:all .15s ease;font-size:14px}.view-mode-button:hover{background:#e2e8f0}.view-mode-button.active{background:#fff;box-shadow:0 1px 2px #0000001a}.analytics-filters{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;padding:12px;margin-bottom:16px}.analytics-filters-grid{display:grid;gap:12px}.analytics-filters-dropdown{position:relative;display:inline-block;z-index:100}.analytics-filters-panel{position:absolute;top:100%;right:0;z-index:1000;background:#fff;border:1px solid #e9ecef;border-radius:8px;box-shadow:0 8px 24px #0000002e;padding:16px;min-width:320px;margin-top:8px}.analytics-filters-grid{display:grid;grid-template-columns:1fr;gap:12px}.analytics-filter-group{display:flex;flex-direction:column;gap:4px}.analytics-filter-label{font-size:12px;color:#6c757d;margin-bottom:4px;display:block}@media(min-width:768px){.analytics-filters-panel{min-width:480px}.analytics-filters-grid{grid-template-columns:repeat(2,1fr);gap:16px}}.analytics-table-container{overflow-x:auto;border:1px solid #e9ecef;border-radius:8px;background:#fff;box-shadow:0 2px 8px #0000001a}.analytics-table{width:100%;min-width:600px;font-size:13px}.analytics-table th,.analytics-table td{padding:8px 12px;text-align:left;border-bottom:1px solid #f1f3f4;white-space:nowrap}.analytics-table th{background:#f8f9fa;font-weight:600;font-size:12px;color:#495057;text-transform:uppercase;letter-spacing:.5px}.analytics-table tr:hover{background:#f8f9fa}.analytics-table-compact{font-size:11px}.analytics-table-compact th,.analytics-table-compact td{padding:6px 8px}@media(max-width:768px){.analytics-table-container{border-radius:6px;box-shadow:0 1px 4px #0000001a}.analytics-table{min-width:500px;font-size:11px}.analytics-table th,.analytics-table td{padding:6px 8px}.analytics-table th{font-size:10px}}@media(max-width:480px){.analytics-table{min-width:400px;font-size:10px}.analytics-table th,.analytics-table td{padding:4px 6px}}.analytics-filter-label{font-size:12px;color:#6c757d;margin-bottom:4px;display:block;font-weight:500}@media(max-width:640px){.analytics-filters-grid{grid-template-columns:1fr}}@media(min-width:641px)and (max-width:1023px){.analytics-filters-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.analytics-filters-grid{grid-template-columns:repeat(3,1fr)}}.analytics-workers-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;margin-top:16px}.analytics-worker-card{background:#fff;border-radius:12px;padding:16px;box-shadow:0 2px 8px #0000001a;border:2px solid transparent;transition:all .2s ease}.analytics-worker-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #00000026;border-color:#e3f2fd}.analytics-worker-header{display:flex;align-items:center;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid #f1f3f4}.analytics-worker-avatar{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;margin-right:12px;font-size:16px;box-shadow:0 2px 8px #00000026}.analytics-worker-info{flex:1}.analytics-worker-name{font-weight:600;font-size:16px;margin-bottom:2px;color:#333}.analytics-worker-id{font-size:12px;color:#666}.analytics-worker-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:12px}.analytics-worker-stat{text-align:center;padding:8px;background:#f8f9fa;border-radius:8px}.analytics-worker-stat-value{font-weight:700;font-size:18px;margin-bottom:2px}.analytics-worker-stat-label{font-size:11px;color:#666;text-transform:uppercase;letter-spacing:.5px}.analytics-worker-stat.boxes .analytics-worker-stat-value{color:#4caf50}.analytics-worker-stat.weight .analytics-worker-stat-value{color:#2196f3}.analytics-worker-stat.scans .analytics-worker-stat-value{color:#ff9800}.analytics-worker-stat.efficiency .analytics-worker-stat-value{color:#9c27b0}@media(max-width:768px){.analytics-workers-grid{grid-template-columns:1fr;gap:12px}.analytics-worker-card{padding:12px}.analytics-worker-stats{grid-template-columns:repeat(2,1fr);gap:8px}.analytics-worker-stat{padding:6px}.analytics-worker-stat-value{font-size:16px}}@media(max-width:480px){.analytics-workers-grid{gap:8px}.analytics-worker-stats{grid-template-columns:1fr;gap:6px}.analytics-worker-stat{display:flex;justify-content:space-between;align-items:center;text-align:left;padding:8px 12px}.analytics-worker-stat-value{font-size:14px}.analytics-worker-stat-label{font-size:10px}}@media(max-width:768px){.analytics-header{flex-direction:column;align-items:stretch;gap:8px}.analytics-controls{justify-content:flex-end}}@media(max-width:480px){.analytics-header{text-align:center}.analytics-controls{justify-content:center}}.table:not(.ant-table){min-width:650px}@media(max-width:768px){.table:not(.ant-table) th,.table:not(.ant-table) td{padding:8px 6px;font-size:12px}.table:not(.ant-table) th{white-space:nowrap}.table:not(.ant-table) td{word-break:break-word;min-width:60px}.table:not(.ant-table) th:nth-child(5),.table:not(.ant-table) td:nth-child(5),.table:not(.ant-table) th:nth-child(6),.table:not(.ant-table) td:nth-child(6){display:none}}@media(max-width:480px){.table:not(.ant-table) th,.table:not(.ant-table) td{padding:6px 4px;font-size:11px}.table:not(.ant-table) th:nth-child(4),.table:not(.ant-table) td:nth-child(4){display:none}}@media(max-width:480px){.sticky-actions{gap:4px!important;justify-content:space-between!important}.sticky-actions select,.sticky-actions input[type=date]{flex:1!important;min-width:0!important;width:auto!important;font-size:12px!important;padding:6px 4px!important}.sticky-actions select{max-width:90px!important}.sticky-actions .spacer{display:none!important}}@media(max-width:600px){.sticky-actions{gap:4px!important}.sticky-actions select{width:100px!important;font-size:12px!important}.sticky-actions input[type=date]{width:110px!important;font-size:12px!important}}@media(max-width:768px){.container{padding:4px!important;max-width:100%!important}.table:not(.ant-table){font-size:11px!important;border-spacing:0 2px!important}.table:not(.ant-table) th{font-size:10px!important;padding:4px 2px!important;line-height:1.1!important}.table:not(.ant-table) td{font-size:11px!important;padding:6px 3px!important;line-height:1.2!important;max-width:80px!important}.table:not(.ant-table) tr td:first-child,.table:not(.ant-table) tr th:first-child,.table:not(.ant-table) th[role=columnheader]:first-child,.table:not(.ant-table) td[role=cell]:first-child{width:auto!important;min-width:auto!important;max-width:none!important;padding:4px 3px!important}.table:not(.ant-table) input[type=checkbox]{transform:scale(.8)!important}.table:not(.ant-table) tr td:last-child{width:70px!important;max-width:70px!important}.table .btn{padding:2px 4px!important;font-size:9px!important;min-width:auto!important}}@media(max-width:480px){.container{padding:2px!important}.table:not(.ant-table){font-size:10px!important;border-spacing:0 1px!important}.table:not(.ant-table) th{font-size:9px!important;padding:3px 1px!important}.table:not(.ant-table) td{font-size:10px!important;padding:4px 2px!important;max-width:60px!important}.table:not(.ant-table) tr td:first-child,.table:not(.ant-table) tr th:first-child,.table:not(.ant-table) th[role=columnheader]:first-child,.table:not(.ant-table) td[role=cell]:first-child{width:auto!important;min-width:auto!important;max-width:none!important;padding:2px!important}.table:not(.ant-table) input[type=checkbox]{transform:scale(.6)!important}.table:not(.ant-table) tr td:last-child{width:55px!important;max-width:55px!important}.table .btn{padding:1px 2px!important;font-size:8px!important}}@media(max-width:360px){.table:not(.ant-table){font-size:9px!important}.table:not(.ant-table) th,.table:not(.ant-table) td{padding:2px 1px!important;font-size:9px!important}.table:not(.ant-table) tr td:first-child,.table:not(.ant-table) tr th:first-child,.table:not(.ant-table) th[role=columnheader]:first-child,.table:not(.ant-table) td[role=cell]:first-child{width:auto!important;min-width:auto!important;max-width:none!important;padding:2px 1px!important}.table:not(.ant-table) tr td:last-child{width:45px!important;max-width:45px!important}.table .btn{padding:1px!important;font-size:7px!important}.table:not(.ant-table) input[type=checkbox]{transform:scale(.5)!important}}.ant-table{font-size:14px}.ant-table-thead>tr>th{white-space:normal;word-wrap:break-word;text-align:center;padding:8px;line-height:1.2;font-weight:600}.ant-table-tbody>tr>td{padding:8px;vertical-align:middle}.ant-table-container{border:1px solid #f0f0f0!important;border-radius:6px!important}.ant-table-body{scrollbar-width:thin!important;scrollbar-color:#eaeaea transparent!important;scrollbar-gutter:stable!important}.ant-table-body::-webkit-scrollbar{height:8px!important}.ant-table-body::-webkit-scrollbar-track{background:#f1f1f1!important;border-radius:4px!important}.ant-table-body::-webkit-scrollbar-thumb{background:#c1c1c1!important;border-radius:4px!important}.ant-table-body::-webkit-scrollbar-thumb:hover{background:#a1a1a1!important}.page-container{padding:24px 24px 100px;max-width:1200px;margin:0 auto}.page-header{margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--border)}.page-header h1,.page-header h2{margin:0 0 8px;color:var(--text-primary)}.page-header p{margin:0;color:var(--text-secondary);font-size:14px}@media(max-width:768px){.page-container{padding:16px}.page-header{margin-bottom:16px;padding-bottom:12px}}.ant-table-cell .ant-tooltip,.ant-table .ant-tooltip,.ant-table .ant-tooltip-arrow{display:none!important}.ant-table .ant-table-cell[title]{overflow:hidden!important}.ant-table [title]:not(.ant-table-column-title){pointer-events:none!important}.ant-table .ant-table-column-title,.ant-table .ant-table-column-sorters,.ant-table .ant-btn[title],.ant-table .ant-btn,.ant-table .ant-dropdown-trigger{pointer-events:auto!important}.ant-table .btn,.ant-table button.btn,.ant-table .btn[title],.ant-table button.btn[title],.ant-table button[title].btn,.ant-table-cell .btn,.ant-table-cell button{pointer-events:auto!important;cursor:pointer!important}.tenant-selector{position:relative}.tenant-info{transition:all .2s ease}.tenant-selector-mobile{transition:all .2s ease;-webkit-user-select:none;user-select:none}.tenant-selector-mobile:hover{background-color:#f9fafb!important;border-color:#9ca3af!important}.tenant-selector-mobile:active{transform:scale(.98)}@media(max-width:768px){.tenant-info{font-size:12px;padding:6px 8px!important;gap:4px!important;min-width:auto!important;max-width:120px!important}.tenant-info .fa-building{font-size:12px!important}.tenant-info span{font-size:12px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tenant-info .limitations{display:none}.tenant-selector-mobile{font-size:12px;touch-action:manipulation}.ant-modal-content{border-radius:12px!important}.ant-modal-header{border-radius:12px 12px 0 0!important}.ant-modal-body{padding:0!important}}@media(min-width:769px)and (max-width:1024px){.tenant-selector{min-width:240px!important}.tenant-info{min-width:180px!important}}@media(min-width:1025px){.tenant-selector{min-width:280px}.tenant-info{min-width:200px}}.tenant-selector button,.tenant-selector-mobile{transition:all .2s cubic-bezier(.4,0,.2,1)}.tenant-selector button:hover,.tenant-selector-mobile:hover{box-shadow:0 2px 4px #0000001a}.tenant-selector .dropdown-menu{animation:fadeInScale .15s ease-out}@keyframes fadeInScale{0%{opacity:0;transform:scale(.95) translateY(-5px)}to{opacity:1;transform:scale(1) translateY(0)}}.tenant-modal-search input{font-size:16px!important}.tenant-list-item{transition:background-color .15s ease}.tenant-list-item:hover{background-color:#f9fafb!important}.tenant-list-item.active{background-color:#f3f4f6!important;border-left:3px solid #3b82f6}@media(hover:none)and (pointer:coarse){.tenant-selector-mobile:hover{background-color:#fff!important;border-color:#d1d5db!important}.tenant-selector-mobile:active{background-color:#f3f4f6!important;border-color:#9ca3af!important}}@media(max-width:360px){.tenant-selector-mobile .fa-chevron-down{display:none}.tenant-selector-mobile{max-width:100px!important}}.ant-table-wrapper .ant-table-container,.ant-table-wrapper .ant-table-content,.ant-table-wrapper .ant-table{position:relative!important;overflow:visible!important}.ant-table-wrapper .ant-table-body{overflow-x:auto!important;overflow-y:auto!important;max-width:100%!important}.ant-table-fixed-left .ant-table-cell,.ant-table-fixed-right .ant-table-cell{z-index:10!important;background:#fff}.ant-table-fixed-header .ant-table-thead .ant-table-cell{z-index:11!important;background:#fafafa}.ant-table-thead .ant-table-cell{background:#fafafa!important;color:#333!important;font-weight:600!important;border-bottom:2px solid #e0e0e0!important;padding:12px 16px!important;z-index:10!important}.ant-table-thead .ant-table-cell-fix-left,.ant-table-thead .ant-table-cell-fix-right{background:#fafafa!important;z-index:11!important}.ant-table-wrapper .ant-table-tbody>tr>td{transform:none!important;position:static!important}.ant-table-wrapper .ant-table-tbody>tr>td.ant-table-cell-fix-left,.ant-table-wrapper .ant-table-tbody>tr>td.ant-table-cell-fix-right{position:sticky!important}.ant-table-wrapper *{box-sizing:border-box!important}.ant-table-wrapper .ant-table-thead>tr>th:first-child,.ant-table-wrapper .ant-table-tbody>tr>td:first-child{border-left:none!important;padding-left:16px!important}.ant-table-wrapper .ant-table-thead>tr>th:last-child,.ant-table-wrapper .ant-table-tbody>tr>td:last-child{border-right:none!important;padding-right:16px!important}.ant-table-wrapper .ant-table table{table-layout:auto!important;width:100%!important}.dashboard{min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px}.dashboard-loading{display:flex;justify-content:center;align-items:center;min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2)}.loading-spinner{text-align:center;color:#fff}.spinner{width:40px;height:40px;border:4px solid rgba(255,255,255,.3);border-top:4px solid white;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 16px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.dashboard-header{max-width:1200px;margin:0 auto 40px}.dashboard-welcome{display:flex;align-items:center;gap:20px;background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;padding:24px;color:#fff;box-shadow:0 8px 32px #0000001a}.welcome-icon{font-size:48px;opacity:.8}.welcome-content h1{margin:0 0 8px;font-size:28px;font-weight:600}.welcome-content p{margin:0;font-size:16px;opacity:.9}.dashboard-content{max-width:1200px;margin:0 auto}.dashboard-section{margin-bottom:40px}.dashboard-section-title{color:#fff;font-size:24px;font-weight:600;margin:0 0 20px;text-shadow:0 2px 4px rgba(0,0,0,.3)}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}.dashboard-grid-two-column{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.dashboard-tile{display:flex;align-items:center;gap:16px;background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:12px;padding:20px;text-decoration:none;color:#333;transition:all .3s ease;box-shadow:0 4px 16px #0000001a;border-left:4px solid var(--tile-color, #1890ff)}.dashboard-tile:hover{transform:translateY(-4px);box-shadow:0 8px 24px #00000026;background:#fff;color:#333;text-decoration:none}.dashboard-tile-icon{font-size:32px;color:var(--tile-color, #1890ff);flex-shrink:0;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:rgba(var(--tile-color-rgb, 24, 144, 255),.1);border-radius:8px}.dashboard-tile-content{flex:1}.dashboard-tile-title{margin:0 0 4px;font-size:16px;font-weight:600;color:#333}.dashboard-tile-description{margin:0;font-size:14px;color:#666;line-height:1.4}.main-section .dashboard-tile{border-left-width:6px}.main-section .dashboard-tile:hover{transform:translateY(-6px)}.dashboard-accordion{background:transparent!important}.dashboard-accordion .ant-collapse-item{margin-bottom:20px;border:none!important;background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:12px!important;overflow:hidden}.dashboard-accordion .ant-collapse-header{padding:16px 24px!important;background:#deeafffc!important;color:#838383fc!important;font-weight:600!important;font-size:18px!important;border:none!important;border-radius:12px!important}.dashboard-accordion .ant-collapse-item-active .ant-collapse-header{background:#fff3!important}.dashboard-accordion .ant-collapse-content{background:transparent!important;border:none!important}.dashboard-accordion .ant-collapse-content-box{padding:20px!important}.dashboard-accordion .ant-collapse-expand-icon{color:#fff!important}.accordion-header{display:flex;align-items:center;gap:12px}.accordion-icon{font-size:20px;opacity:.9}.accordion-title{flex:1}.accordion-count{opacity:.7;font-size:14px;font-weight:400}@media(max-width:768px){.dashboard{padding:16px 16px 100px}.dashboard-welcome{flex-direction:column;text-align:center;padding:20px}.welcome-content h1{font-size:24px}.dashboard-grid{grid-template-columns:1fr;gap:16px}.dashboard-grid-two-column{grid-template-columns:1fr;gap:12px}.dashboard-tile{padding:16px}.dashboard-section-title{font-size:20px}}@media(max-width:480px){.dashboard-welcome{padding:16px}.welcome-content h1{font-size:20px}.welcome-content p{font-size:14px}.dashboard-tile-icon{font-size:24px;width:40px;height:40px}.dashboard-tile-title{font-size:15px}.dashboard-tile-description{font-size:13px}}.dashboard-tile{--tile-color-rgb: 24, 144, 255}.dashboard-tile[style*="--tile-color: #52c41a"]{--tile-color-rgb: 82, 196, 26}.dashboard-tile[style*="--tile-color: #722ed1"]{--tile-color-rgb: 114, 46, 209}.dashboard-tile[style*="--tile-color: #13c2c2"]{--tile-color-rgb: 19, 194, 194}.dashboard-tile[style*="--tile-color: #fa8c16"]{--tile-color-rgb: 250, 140, 22}.dashboard-tile[style*="--tile-color: #eb2f96"]{--tile-color-rgb: 235, 47, 150}.dashboard-tile[style*="--tile-color: #faad14"]{--tile-color-rgb: 250, 173, 20}.dashboard-tile[style*="--tile-color: #f5222d"]{--tile-color-rgb: 245, 34, 45}.dashboard-tile[style*="--tile-color: #2f54eb"]{--tile-color-rgb: 47, 84, 235}.dashboard-tile[style*="--tile-color: #389e0d"]{--tile-color-rgb: 56, 158, 13}.dashboard-tile[style*="--tile-color: #fa541c"]{--tile-color-rgb: 250, 84, 28}.ant-input,.ant-input-number,.ant-input-password,.ant-input-affix-wrapper,.ant-input-textarea textarea,.ant-picker{min-height:40px!important;height:auto!important;font-size:16px!important}.ant-input-number-input{height:38px!important}.ant-select-selector{min-height:40px!important;height:auto!important;padding-top:6px!important;padding-bottom:6px!important}.ant-select-selection-search-input{height:38px!important;font-size:16px!important}.ant-select-selection-item{line-height:26px!important}.ant-btn{min-height:44px!important;height:auto!important;padding:10px 16px!important;font-size:16px!important}.ant-btn-sm{min-height:36px!important;padding:6px 12px!important;font-size:14px!important}.ant-btn-lg{min-height:52px!important;padding:14px 24px!important;font-size:18px!important}.ant-picker-input>input{height:38px!important;font-size:16px!important}.ant-input-textarea textarea{min-height:80px!important;font-size:16px!important;line-height:1.5!important}.ant-form-item{margin-bottom:20px!important}@media(max-width:768px){.ant-form-item{margin-bottom:16px!important}}@media(max-width:768px){.ant-modal{max-width:calc(100vw - 32px)!important;margin:16px auto!important}.ant-modal-content{max-height:calc(100vh - 32px)!important;display:flex!important;flex-direction:column!important}.ant-modal-header{flex-shrink:0!important;padding:16px!important;border-bottom:1px solid #f0f0f0!important}.ant-modal-body{flex:1!important;overflow-y:auto!important;padding:16px!important;-webkit-overflow-scrolling:touch!important}.ant-modal-footer{flex-shrink:0!important;padding:12px 16px!important;border-top:1px solid #f0f0f0!important}.ant-modal-footer .ant-btn{width:100%!important;margin:8px 0 0!important}.ant-modal-footer .ant-btn:first-child{margin-top:0!important}}.ant-modal-body{max-height:calc(100vh - 200px);overflow-y:auto}.ant-dropdown-menu-item,.ant-dropdown-menu-submenu-title{min-height:44px!important;padding:10px 12px!important;font-size:16px!important;line-height:24px!important}@media(max-width:768px){.ant-dropdown{min-width:calc(100vw - 32px)!important}.ant-dropdown-menu{max-width:calc(100vw - 32px)!important}}.ant-select-dropdown .ant-select-item{min-height:44px!important;padding:10px 12px!important;font-size:16px!important;line-height:24px!important}@media(max-width:768px){.ant-select-dropdown{max-width:calc(100vw - 32px)!important}}.ant-picker-dropdown{z-index:1050!important}@media(max-width:768px){.ant-picker-dropdown{position:fixed!important;top:50%!important;left:50%!important;transform:translate(-50%,-50%)!important;max-width:calc(100vw - 32px)!important;margin:0!important}.ant-picker-panel-container{max-width:100%!important}.ant-picker-cell{min-height:44px!important;padding:8px 0!important}.ant-picker-cell-inner{min-height:36px!important;line-height:36px!important;font-size:16px!important}.ant-picker-header-view button,.ant-picker-header-super-prev-btn,.ant-picker-header-prev-btn,.ant-picker-header-next-btn,.ant-picker-header-super-next-btn{min-height:44px!important;min-width:44px!important;font-size:18px!important}.ant-picker-footer{padding:12px!important}.ant-picker-footer .ant-btn{min-height:44px!important;font-size:16px!important}}.ant-form-item-explain-error{font-size:14px!important;margin-top:4px!important}.ant-input-search>.ant-input-group>.ant-input-group-addon:last-child .ant-input-search-button{min-height:40px!important;height:40px!important}.input{min-height:40px!important;padding:8px 12px!important;font-size:16px!important;border:1px solid #d9d9d9!important;border-radius:6px!important;transition:all .3s!important}.input:focus{border-color:#1890ff!important;outline:none!important;box-shadow:0 0 0 2px #1890ff1a!important}.btn{min-height:44px!important;padding:10px 16px!important;font-size:16px!important;border:1px solid #d9d9d9!important;border-radius:6px!important;background:#fff!important;cursor:pointer!important;transition:all .3s!important}.btn:hover{border-color:#1890ff!important;color:#1890ff!important}.btn.primary{background:#1890ff!important;color:#fff!important;border-color:#1890ff!important}.btn.primary:hover{background:#40a9ff!important;border-color:#40a9ff!important}.btn:disabled{opacity:.5!important;cursor:not-allowed!important}@media(max-width:768px){.ant-space-item{margin-bottom:12px!important}.mobile-full-width-btn{width:100%!important;margin-bottom:8px!important}.ant-btn-group{display:flex!important;flex-direction:column!important}.ant-btn-group>.ant-btn{width:100%!important;margin-bottom:8px!important}.ant-btn-group>.ant-btn:last-child{margin-bottom:0!important}}.ant-checkbox-wrapper,.ant-radio-wrapper{min-height:44px!important;display:flex!important;align-items:center!important;padding:8px 0!important}.ant-checkbox-inner,.ant-radio-inner{width:20px!important;height:20px!important}.ant-checkbox-wrapper span,.ant-radio-wrapper span{font-size:16px!important}.ant-btn-loading-icon{margin-right:8px!important}.login-form .ant-input,.login-form .ant-btn{min-height:48px!important}.warehouse-form .ant-input,.warehouse-form .ant-select-selector,.admin-form .ant-input,.admin-form .ant-select-selector,.harvest-form .ant-input,.harvest-form .ant-select-selector,.consignment-form .ant-input,.consignment-form .ant-select-selector{min-height:40px!important}@media print{.ant-input,.ant-btn,.ant-select-selector{min-height:auto!important;font-size:12px!important}}
