@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";:root{--green-900: #1a2e13;--green-800: #2d4a22;--green-700: #3a5e2b;--green-600: #4a7535;--green-500: #5a8d40;--green-400: #76ad58;--green-200: #b5d4a0;--green-100: #ddecd4;--amber-500: #d4a017;--amber-400: #e0b230;--amber-300: #f0c84a;--amber-100: #fdf3cc;--cream-100: #f5f0e8;--cream-200: #ece4d4;--cream-300: #d8ccb8;--red-500: #c0392b;--red-400: #e04a3a;--red-100: #fde8e4;--surface-0: #111a0d;--surface-1: #1a2e13;--surface-2: #243b1b;--surface-3: #2d4a22;--border: rgba(255,255,255,.08);--border-strong: rgba(255,255,255,.15);--text-primary: #f0ebe0;--text-secondary: #b5d4a0;--text-muted: rgba(240,235,224,.5);--text-inverse: #1a2e13;--font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--text-xs: .72rem;--text-sm: .8125rem;--text-base: .9375rem;--text-lg: 1.0625rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-xl: 24px;--shadow-sm: 0 1px 3px rgba(0,0,0,.3), 0 1px 2px rgba(0,0,0,.2);--shadow-md: 0 4px 12px rgba(0,0,0,.4), 0 2px 6px rgba(0,0,0,.25);--shadow-lg: 0 12px 40px rgba(0,0,0,.5), 0 4px 16px rgba(0,0,0,.3);--transition: .15s ease;--transition-slow: .3s ease;--sidebar-width: 220px;--header-height: 56px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-text-size-adjust:100%}body{font-family:var(--font);font-size:var(--text-base);color:var(--text-primary);background:var(--surface-0);line-height:1.5;min-height:100dvh;-webkit-font-smoothing:antialiased}#root{min-height:100dvh;display:flex;flex-direction:column}img,svg{display:block;max-width:100%}button{cursor:pointer;font:inherit;border:none;background:none}a{color:inherit;text-decoration:none}input,select,textarea{font:inherit}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--green-600);border-radius:3px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.grow{flex:1}.btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-radius:var(--radius-sm);font-weight:500;font-size:var(--text-sm);transition:var(--transition);white-space:nowrap}.btn-primary{background:linear-gradient(135deg,var(--green-500),var(--green-700));color:#fff;box-shadow:var(--shadow-sm)}.btn-primary:hover{background:linear-gradient(135deg,var(--green-400),var(--green-600));transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-primary:active{transform:translateY(0)}.btn-secondary{background:var(--surface-3);color:var(--text-secondary);border:1px solid var(--border-strong)}.btn-secondary:hover{background:var(--surface-2);color:var(--text-primary)}.btn-danger{background:var(--red-500);color:#fff}.btn-danger:hover{background:var(--red-400)}.btn-ghost{background:transparent;color:var(--text-secondary);padding:var(--space-1) var(--space-2)}.btn-ghost:hover{background:var(--surface-3);color:var(--text-primary)}.btn-sm{padding:var(--space-1) var(--space-3);font-size:var(--text-xs)}.btn:disabled{opacity:.4;cursor:not-allowed;transform:none!important}.input{width:100%;padding:var(--space-2) var(--space-3);background:var(--surface-3);border:1px solid var(--border-strong);border-radius:var(--radius-sm);color:var(--text-primary);font-size:var(--text-sm);transition:var(--transition)}.input::placeholder{color:var(--text-muted)}.input:focus{outline:none;border-color:var(--green-400);box-shadow:0 0 0 3px #5a8d4040}.input-group{display:flex;flex-direction:column;gap:var(--space-1)}.input-label{font-size:var(--text-sm);color:var(--text-secondary);font-weight:500}.card{background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow-sm)}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-4)}.card-title{font-size:var(--text-lg);font-weight:600;color:var(--text-primary)}.table-wrap{overflow-x:auto;border-radius:var(--radius-md);border:1px solid var(--border)}table{width:100%;border-collapse:collapse}th{background:var(--surface-2);padding:var(--space-2) var(--space-4);text-align:left;font-size:var(--text-xs);font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}td{padding:var(--space-3) var(--space-4);font-size:var(--text-sm);border-bottom:1px solid var(--border);color:var(--text-primary)}tr:last-child td{border-bottom:none}tr:hover td{background:#ffffff08}.badge{display:inline-flex;align-items:center;padding:2px var(--space-2);border-radius:99px;font-size:var(--text-xs);font-weight:600}.badge-green{background:#5a8d4033;color:var(--green-400)}.badge-amber{background:#d4a01733;color:var(--amber-400)}.badge-red{background:#c0392b26;color:var(--red-400)}.badge-gray,.state-unwashed{background:#ffffff0f;color:var(--text-muted)}.state-washed{background:#5a8d4026;color:var(--green-400)}.state-store_ready{background:#5a8d4040;color:var(--green-200)}.state-old_stock{background:#d4a01733;color:var(--amber-400)}.state-pending_review{background:#d4a0174d;color:var(--amber-300)}.state-packed{background:#5a8d4059;color:#fff}.state-dispatched{background:#5a8d401a;color:var(--text-muted)}.state-donated{background:#d4a0171a;color:var(--text-muted)}.state-composted{background:#c0392b1a;color:var(--text-muted)}.page{padding:var(--space-6);max-width:1200px}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-6)}.page-title{font-size:var(--text-2xl);font-weight:700;color:var(--text-primary)}.page-subtitle{font-size:var(--text-sm);color:var(--text-muted);margin-top:var(--space-1)}.tab-bar{display:flex;gap:var(--space-1);border-bottom:1px solid var(--border);margin-bottom:var(--space-6);padding-bottom:0}.tab-btn{padding:var(--space-2) var(--space-4);font-size:var(--text-sm);font-weight:500;color:var(--text-muted);border-bottom:2px solid transparent;transition:var(--transition)}.tab-btn:hover{color:var(--text-primary)}.tab-btn.active{color:var(--green-400);border-bottom-color:var(--green-400)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:100;animation:fade-in var(--transition) forwards}.modal{background:var(--surface-1);border:1px solid var(--border-strong);border-radius:var(--radius-xl);padding:var(--space-8);width:min(480px,calc(100vw - 2rem));box-shadow:var(--shadow-lg);animation:slide-up var(--transition-slow) forwards}.modal-title{font-size:var(--text-xl);font-weight:700;margin-bottom:var(--space-6)}.modal-actions{display:flex;justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-6)}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-up{0%{transform:translateY(16px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:spin .8s linear infinite;display:inline-block}.empty-state{padding:var(--space-12) var(--space-6);text-align:center;color:var(--text-muted);font-size:var(--text-sm)}.error-msg{color:var(--red-400);font-size:var(--text-sm)}
