[data-theme=dark]{--bg-main:#000;--bg-gradient:radial-gradient(circle at 50% -20%,#1c1c1e 0%,#000 70%);--panel-bg:#1c1c1ea6;--panel-solid:#1c1c1e;--panel-hover:#2c2c2ebf;--border-color:#ffffff1f;--border-subtle:#ffffff14;--text-primary:#f5f5f7;--text-secondary:#86868b;--text-tertiary:#6e6e73;--accent-apple:#2997ff;--accent-apple-hover:#47a4ff;--accent-apple-glow:#2997ff40;--success-green:#30d158;--success-bg:#30d1581f;--success-border:#30d1584d;--danger-red:#ff453a;--danger-bg:#ff453a1f;--danger-border:#ff453a4d;--warning-amber:#ff9f0a;--warning-bg:#ff9f0a1f;--warning-border:#ff9f0a4d;--shadow-subtle:0 4px 24px #0006;--shadow-card:0 8px 32px #00000080;--shadow-modal:0 20px 60px #000c;--input-bg:#ffffff0f;--dropzone-bg:#ffffff08;--dropzone-hover:#ffffff12;--table-header-bg:#ffffff0a;--table-row-hover:#ffffff0a;--modal-overlay-bg:#000000bf}[data-theme=light]{--bg-main:#f5f5f7;--bg-gradient:radial-gradient(circle at 50% -20%,#fff 0%,#f5f5f7 70%);--panel-bg:#ffffffbf;--panel-solid:#fff;--panel-hover:#f0f0f5d9;--border-color:#00000014;--border-subtle:#0000000d;--text-primary:#1d1d1f;--text-secondary:#86868b;--text-tertiary:#a1a1a6;--accent-apple:#0071e3;--accent-apple-hover:#0077ed;--accent-apple-glow:#0071e333;--success-green:#34c759;--success-bg:#34c7591a;--success-border:#34c75940;--danger-red:#ff3b30;--danger-bg:#ff3b301a;--danger-border:#ff3b3040;--warning-amber:#ff9500;--warning-bg:#ff95001a;--warning-border:#ff950040;--shadow-subtle:0 4px 20px #0000000a;--shadow-card:0 8px 30px #0000000f;--shadow-modal:0 20px 50px #0000002e;--input-bg:rgba(0,0,0,.035);--dropzone-bg:#00000005;--dropzone-hover:#0000000d;--table-header-bg:rgba(0,0,0,.025);--table-row-hover:rgba(0,0,0,.025);--modal-overlay-bg:#0006}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.animate-spin{animation:spin 1.2s cubic-bezier(.4,0,.2,1) infinite}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes modalScale{0%{opacity:0;transform:scale(.96) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}*{box-sizing:border-box;transition:background-color .3s ease,border-color .3s ease,color .3s ease,box-shadow .3s ease}body{background-attachment:fixed;background-color:var(--bg-main);background-image:var(--bg-gradient);color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,SF Pro Text,Helvetica Neue,Helvetica,Inter,Arial,sans-serif;margin:0;min-height:100vh;padding:0}.app-container{animation:fadeIn .4s ease-out;display:flex;flex-direction:column;gap:28px;margin:0 auto;max-width:1360px;padding:32px 24px 64px}.header{backdrop-filter:blur(25px) saturate(180%);-webkit-backdrop-filter:blur(25px) saturate(180%);background:var(--panel-bg);border:1px solid var(--border-color);border-radius:22px;box-shadow:var(--shadow-card);justify-content:space-between;padding:18px 28px;position:-webkit-sticky;position:sticky;top:16px;z-index:100}.brand,.header{align-items:center;display:flex}.brand{gap:16px}.brand-icon-wrapper{align-items:center;background:linear-gradient(135deg,var(--accent-apple) 0,#0051a8 100%);border-radius:12px;box-shadow:0 4px 14px var(--accent-apple-glow);display:flex;height:44px;justify-content:center;width:44px}.brand-logo{color:#fff;height:24px;width:24px}.brand-title{color:var(--text-primary);font-size:20px;font-weight:700;letter-spacing:-.025em;margin:0}.brand-sub{color:var(--text-secondary);font-size:13px;font-weight:400;letter-spacing:-.01em;margin:3px 0 0}.header-status{gap:14px}.header-status,.status-badge{align-items:center;display:flex}.status-badge{border:1px solid;border-radius:9999px;font-size:12px;font-weight:600;gap:6px;letter-spacing:-.01em;padding:6px 14px}.status-badge-online{background:var(--success-bg);border-color:var(--success-border);color:var(--success-green)}.status-badge-offline{background:var(--danger-bg);border-color:var(--danger-border);color:var(--danger-red)}.theme-toggle-btn{align-items:center;background:var(--input-bg);border:1px solid var(--border-color);border-radius:9999px;color:var(--text-primary);cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:8px;padding:8px 12px;transition:all .2s cubic-bezier(.4,0,.2,1)}.theme-toggle-btn:hover{background:var(--panel-hover);border-color:var(--accent-apple);transform:translateY(-1px)}.theme-icon{color:var(--accent-apple);height:16px;width:16px}.btn-refresh{align-items:center;background:var(--input-bg);border:1px solid var(--border-color);border-radius:12px;color:var(--text-primary);cursor:pointer;display:flex;justify-content:center;padding:9px;transition:all .2s cubic-bezier(.4,0,.2,1)}.btn-refresh:hover:not(:disabled){background:var(--panel-hover);border-color:var(--border-color);color:var(--accent-apple);transform:scale(1.04)}.btn-refresh:disabled{cursor:not-allowed;opacity:.5}.btn-admin{align-items:center;background:var(--accent-apple-glow);border:1px solid var(--accent-apple);border-radius:9999px;color:var(--accent-apple);cursor:pointer;display:flex;font-size:13px;font-weight:600;gap:8px;letter-spacing:-.01em;padding:8px 16px;transition:all .2s cubic-bezier(.4,0,.2,1)}.btn-admin:hover{background:var(--accent-apple);box-shadow:0 4px 12px var(--accent-apple-glow);color:#fff;transform:translateY(-1px)}.btn-admin-logout{background:var(--danger-bg);border:1px solid var(--danger-border);color:var(--danger-red)}.btn-admin-logout:hover{background:var(--danger-red);box-shadow:0 4px 12px var(--danger-bg);color:#fff}.admin-badge{align-items:center;background:var(--accent-apple-glow);border:1px solid var(--accent-apple);border-radius:9999px;color:var(--accent-apple);display:inline-flex;font-size:12px;font-weight:600;gap:6px;padding:6px 14px}.stats-container{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.stat-card{align-items:center;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);background:var(--panel-bg);border:1px solid var(--border-color);border-radius:20px;box-shadow:var(--shadow-card);display:flex;justify-content:space-between;overflow:hidden;padding:24px;position:relative;transition:transform .25s cubic-bezier(.4,0,.2,1),box-shadow .25s cubic-bezier(.4,0,.2,1),border-color .25s ease}.stat-card:before{border-radius:4px 0 0 4px;content:"";height:100%;left:0;position:absolute;top:0;width:4px}.stat-card-blue:before{background:var(--accent-apple)}.stat-card-rose:before{background:var(--danger-red)}.stat-card-amber:before{background:var(--warning-amber)}.stat-card:hover{border-color:var(--border-color);box-shadow:var(--shadow-modal);transform:translateY(-4px)}.stat-title{color:var(--text-secondary);font-size:13px;font-weight:600;letter-spacing:.05em;margin:0 0 8px;text-transform:uppercase}.stat-value{color:var(--text-primary);font-size:32px;font-weight:700;letter-spacing:-.03em;margin:0}.stat-icon-container{align-items:center;background:var(--input-bg);border:1px solid var(--border-subtle);border-radius:16px;display:flex;justify-content:center;padding:14px}.stat-icon{height:24px;width:24px}.text-blue{color:var(--accent-apple)}.text-rose{color:var(--danger-red)}.text-amber{color:var(--warning-amber)}.dashboard-row{display:flex;flex-wrap:wrap;gap:24px}.dashboard-col{display:flex;flex-direction:column}.flex-40{flex:1 1 380px}.flex-60{flex:1.5 1 560px}.chart-container,.table-container,.upload-container{backdrop-filter:blur(25px) saturate(180%);-webkit-backdrop-filter:blur(25px) saturate(180%);background:var(--panel-bg);border:1px solid var(--border-color);border-radius:22px;box-shadow:var(--shadow-card);padding:28px}.card-title{color:var(--text-primary);font-size:19px;font-weight:700;letter-spacing:-.02em;margin:0 0 20px}.form-group{margin-bottom:20px}.form-label{color:var(--text-secondary);display:block;font-size:13px;font-weight:600;letter-spacing:-.01em;margin-bottom:8px}.form-input,.form-select{background:var(--input-bg);border:1px solid var(--border-color);border-radius:12px;box-sizing:border-box;color:var(--text-primary);cursor:pointer;font-family:inherit;font-size:14px;outline:none;padding:12px 16px;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.form-input:focus,.form-select:focus{border-color:var(--accent-apple);box-shadow:0 0 0 4px var(--accent-apple-glow)}.form-select option{background:var(--panel-solid);color:var(--text-primary)}.dropzone{background:var(--dropzone-bg);border:2px dashed var(--border-color);border-radius:16px;cursor:pointer;padding:32px 20px;position:relative;text-align:center;transition:all .25s cubic-bezier(.4,0,.2,1)}.dropzone:hover{background:var(--dropzone-hover);border-color:var(--accent-apple);transform:scale(1.005)}.dropzone-input{cursor:pointer;height:100%;left:0;opacity:0;position:absolute;top:0;width:100%}.dropzone-label{align-items:center;display:flex;flex-direction:column;justify-content:center;pointer-events:none}.upload-icon-style{color:var(--accent-apple);height:36px;margin-bottom:12px;width:36px}.dropzone-text{color:var(--text-primary);font-size:14px;font-weight:600;margin:0 0 4px}.dropzone-hint{color:var(--text-secondary);font-size:12px;margin:0}.preview-container{background:var(--input-bg);border:1px solid var(--border-color);border-radius:14px;margin:20px 0;padding:14px}.preview-header{color:var(--text-secondary);font-size:12px;font-weight:600;letter-spacing:.04em;margin:0 0 10px;text-transform:uppercase}.preview-box{align-items:center;background:#000;border:1px solid var(--border-subtle);border-radius:10px;display:flex;justify-content:center;max-height:220px;overflow:hidden}.preview-img{max-height:220px;object-fit:contain;width:100%}.btn-submit{align-items:center;background:var(--accent-apple);border:none;border-radius:14px;box-shadow:0 4px 16px var(--accent-apple-glow);color:#fff;cursor:pointer;display:flex;font-size:15px;font-weight:600;gap:10px;justify-content:center;letter-spacing:-.01em;padding:14px;transition:all .2s cubic-bezier(.4,0,.2,1);width:100%}.btn-submit:hover:not(:disabled){background:var(--accent-apple-hover);box-shadow:0 6px 20px var(--accent-apple-glow);transform:translateY(-1px)}.btn-submit:active:not(:disabled){transform:scale(.98)}.btn-submit:disabled{box-shadow:none;cursor:not-allowed;opacity:.6}.spinner{height:18px;width:18px}.alert{align-items:center;border:1px solid;border-radius:12px;display:flex;font-size:13px;font-weight:500;gap:12px;margin-bottom:20px;padding:12px 16px}.alert-error{background:var(--danger-bg);border-color:var(--danger-border);color:var(--danger-red)}.alert-success{background:var(--success-bg);border-color:var(--success-border);color:var(--success-green)}.chart-wrapper{height:310px;position:relative;width:100%}.table-responsive{border:1px solid var(--border-color);border-radius:14px;overflow-x:auto}.inspection-table{border-collapse:initial;border-spacing:0;font-size:13px;text-align:left;width:100%}.inspection-table th{background:var(--table-header-bg);border-bottom:1px solid var(--border-color);color:var(--text-secondary);font-size:11px;font-weight:600;letter-spacing:-.01em;padding:14px 18px;text-transform:uppercase}.inspection-table td{border-bottom:1px solid var(--border-subtle);color:var(--text-primary);padding:16px 18px;vertical-align:middle}.inspection-table tr:last-child td{border-bottom:none}.inspection-table tbody tr{transition:background-color .2s ease}.inspection-table tbody tr:hover{background:var(--table-row-hover)}.product-name{color:var(--text-primary);display:block;font-weight:600}.product-sku{color:var(--text-secondary);display:block;font-size:11px;margin-top:2px}.badge{align-items:center;border:1px solid;border-radius:9999px;display:inline-flex;font-size:12px;font-weight:600;gap:6px;padding:5px 12px}.badge-defective{background:var(--danger-bg);border-color:var(--danger-border);color:var(--danger-red)}.badge-clean{background:var(--success-bg);border-color:var(--success-border);color:var(--success-green)}.badge-icon{height:14px;width:14px}.defect-type-text{font-weight:500;text-transform:capitalize}.btn-view-image{align-items:center;background:var(--input-bg);border:1px solid var(--border-color);border-radius:9999px;color:var(--text-primary);cursor:pointer;display:inline-flex;font-size:12px;font-weight:500;gap:6px;padding:6px 14px;transition:all .2s ease}.btn-view-image:hover{background:var(--accent-apple);border-color:var(--accent-apple);box-shadow:0 2px 8px var(--accent-apple-glow);color:#fff}.view-icon{height:14px;width:14px}.empty-state{color:var(--text-secondary);font-size:14px;font-weight:500;padding:48px;text-align:center}.btn-delete{align-items:center;background:var(--danger-bg);border:1px solid var(--danger-border);border-radius:9999px;color:var(--danger-red);cursor:pointer;display:inline-flex;font-size:12px;font-weight:500;gap:4px;padding:6px 12px;transition:all .2s ease}.btn-delete:hover{background:var(--danger-red);border-color:var(--danger-red);box-shadow:0 2px 8px var(--danger-bg);color:#fff}.btn-clear-all{align-items:center;background:var(--danger-bg);border:1px solid var(--danger-border);border-radius:9999px;color:var(--danger-red);cursor:pointer;display:inline-flex;font-size:13px;font-weight:600;gap:6px;padding:8px 16px;transition:all .2s ease}.btn-clear-all:hover{background:var(--danger-red);border-color:var(--danger-red);box-shadow:0 4px 12px var(--danger-bg);color:#fff}.table-header-flex{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.table-header-flex .card-title{margin-bottom:0}.modal-overlay{align-items:center;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:var(--modal-overlay-bg);display:flex;height:100%;justify-content:center;left:0;padding:20px;position:fixed;top:0;width:100%;z-index:1000}.modal-content{animation:modalScale .25s cubic-bezier(.16,1,.3,1);background:var(--panel-solid);border:1px solid var(--border-color);border-radius:24px;box-shadow:var(--shadow-modal);max-width:680px;overflow:hidden;width:100%}.modal-header{align-items:center;background:var(--table-header-bg);border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:20px 24px}.modal-header h3{color:var(--text-primary);font-size:17px;font-weight:600;margin:0}.modal-close{align-items:center;background:var(--input-bg);border:1px solid var(--border-subtle);border-radius:9999px;color:var(--text-secondary);cursor:pointer;display:flex;justify-content:center;padding:6px;transition:all .2s ease}.modal-close:hover{background:var(--panel-hover);color:var(--text-primary)}.close-icon{height:18px;width:18px}.modal-body{align-items:center;background:var(--panel-solid);display:flex;justify-content:center;padding:24px}.modal-image{border:1px solid var(--border-color);border-radius:12px;box-shadow:var(--shadow-card);max-height:520px;max-width:100%;object-fit:contain}.login-screen-wrapper{align-items:center;display:flex;justify-content:center;min-height:100vh;overflow:hidden;padding:24px;position:relative}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:#0000}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:9999px}::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}@media (max-width:1024px){.dashboard-row{flex-direction:column}.flex-40,.flex-60{flex:1 1 100%;width:100%}.stats-container{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}}@media (max-width:768px){.app-container{gap:20px;padding:16px 12px 48px}.header{align-items:stretch;border-radius:18px;gap:16px;padding:16px 20px;position:relative;top:0}.brand,.header{flex-direction:column}.brand{gap:8px;justify-content:center;text-align:center}.header-status{gap:10px}.header-status,.user-controls-wrap{flex-wrap:wrap;justify-content:center}.table-header-flex{align-items:flex-start;flex-direction:column;gap:12px}.btn-clear-all{justify-content:center;width:100%}.inspection-table td,.inspection-table th{padding:12px 14px}}@media (max-width:480px){.brand-title{font-size:1.25rem!important}.brand-sub{font-size:.75rem}.stats-container{grid-template-columns:1fr}.stat-card{padding:18px}.stat-value{font-size:26px}.chart-container,.table-container,.upload-container{border-radius:18px;padding:20px 16px}.btn-submit{font-size:14px;padding:12px}.modal-content{border-radius:20px!important;padding:24px 18px!important}.admin-badge,.status-badge,.theme-toggle-btn{font-size:11px;padding:5px 10px}}
/*# sourceMappingURL=main.610f3363.css.map*/