html{height:100%;--mat-sys-background: light-dark(#faf9fd, #121316);--mat-sys-error: light-dark(#ba1a1a, #ffb4ab);--mat-sys-error-container: light-dark(#ffdad6, #93000a);--mat-sys-inverse-on-surface: light-dark(#f2f0f4, #2f3033);--mat-sys-inverse-primary: light-dark(#abc7ff, #005cbb);--mat-sys-inverse-surface: light-dark(#2f3033, #e3e2e6);--mat-sys-on-background: light-dark(#1a1b1f, #e3e2e6);--mat-sys-on-error: light-dark(#ffffff, #690005);--mat-sys-on-error-container: light-dark(#93000a, #ffdad6);--mat-sys-on-primary: light-dark(#ffffff, #002f65);--mat-sys-on-primary-container: light-dark(#00458f, #d7e3ff);--mat-sys-on-primary-fixed: light-dark(#001b3f, #001b3f);--mat-sys-on-primary-fixed-variant: light-dark(#00458f, #00458f);--mat-sys-on-secondary: light-dark(#ffffff, #283041);--mat-sys-on-secondary-container: light-dark(#3e4759, #dae2f9);--mat-sys-on-secondary-fixed: light-dark(#131c2b, #131c2b);--mat-sys-on-secondary-fixed-variant: light-dark(#3e4759, #3e4759);--mat-sys-on-surface: light-dark(#1a1b1f, #e3e2e6);--mat-sys-on-surface-variant: light-dark(#44474e, #e0e2ec);--mat-sys-on-tertiary: light-dark(#ffffff, #42008a);--mat-sys-on-tertiary-container: light-dark(#5f00c0, #ecdcff);--mat-sys-on-tertiary-fixed: light-dark(#270057, #270057);--mat-sys-on-tertiary-fixed-variant: light-dark(#5f00c0, #5f00c0);--mat-sys-outline: light-dark(#74777f, #8e9099);--mat-sys-outline-variant: light-dark(#c4c6d0, #44474e);--mat-sys-primary: light-dark(#005cbb, #abc7ff);--mat-sys-primary-container: light-dark(#d7e3ff, #00458f);--mat-sys-primary-fixed: light-dark(#d7e3ff, #d7e3ff);--mat-sys-primary-fixed-dim: light-dark(#abc7ff, #abc7ff);--mat-sys-scrim: light-dark(#000000, #000000);--mat-sys-secondary: light-dark(#565e71, #bec6dc);--mat-sys-secondary-container: light-dark(#dae2f9, #3e4759);--mat-sys-secondary-fixed: light-dark(#dae2f9, #dae2f9);--mat-sys-secondary-fixed-dim: light-dark(#bec6dc, #bec6dc);--mat-sys-shadow: light-dark(#000000, #000000);--mat-sys-surface: light-dark(#faf9fd, #121316);--mat-sys-surface-bright: light-dark(#faf9fd, #38393c);--mat-sys-surface-container: light-dark(#efedf0, #1f2022);--mat-sys-surface-container-high: light-dark(#e9e7eb, #292a2c);--mat-sys-surface-container-highest: light-dark(#e3e2e6, #343537);--mat-sys-surface-container-low: light-dark(#f4f3f6, #1a1b1f);--mat-sys-surface-container-lowest: light-dark(#ffffff, #0d0e11);--mat-sys-surface-dim: light-dark(#dbd9dd, #121316);--mat-sys-surface-tint: light-dark(#005cbb, #abc7ff);--mat-sys-surface-variant: light-dark(#e0e2ec, #44474e);--mat-sys-tertiary: light-dark(#7d00fa, #d5baff);--mat-sys-tertiary-container: light-dark(#ecdcff, #5f00c0);--mat-sys-tertiary-fixed: light-dark(#ecdcff, #ecdcff);--mat-sys-tertiary-fixed-dim: light-dark(#d5baff, #d5baff);--mat-sys-neutral-variant20: #2d3038;--mat-sys-neutral10: #1a1b1f;--mat-sys-level0: 0px 0px 0px 0px rgba(0, 0, 0, .2), 0px 0px 0px 0px rgba(0, 0, 0, .14), 0px 0px 0px 0px rgba(0, 0, 0, .12);--mat-sys-level1: 0px 2px 1px -1px rgba(0, 0, 0, .2), 0px 1px 1px 0px rgba(0, 0, 0, .14), 0px 1px 3px 0px rgba(0, 0, 0, .12);--mat-sys-level2: 0px 3px 3px -2px rgba(0, 0, 0, .2), 0px 3px 4px 0px rgba(0, 0, 0, .14), 0px 1px 8px 0px rgba(0, 0, 0, .12);--mat-sys-level3: 0px 3px 5px -1px rgba(0, 0, 0, .2), 0px 6px 10px 0px rgba(0, 0, 0, .14), 0px 1px 18px 0px rgba(0, 0, 0, .12);--mat-sys-level4: 0px 5px 5px -3px rgba(0, 0, 0, .2), 0px 8px 10px 1px rgba(0, 0, 0, .14), 0px 3px 14px 2px rgba(0, 0, 0, .12);--mat-sys-level5: 0px 7px 8px -4px rgba(0, 0, 0, .2), 0px 12px 17px 2px rgba(0, 0, 0, .14), 0px 5px 22px 4px rgba(0, 0, 0, .12);--mat-sys-body-large: 400 1rem / 1.5rem Roboto;--mat-sys-body-large-font: Roboto;--mat-sys-body-large-line-height: 1.5rem;--mat-sys-body-large-size: 1rem;--mat-sys-body-large-tracking: .031rem;--mat-sys-body-large-weight: 400;--mat-sys-body-medium: 400 .875rem / 1.25rem Roboto;--mat-sys-body-medium-font: Roboto;--mat-sys-body-medium-line-height: 1.25rem;--mat-sys-body-medium-size: .875rem;--mat-sys-body-medium-tracking: .016rem;--mat-sys-body-medium-weight: 400;--mat-sys-body-small: 400 .75rem / 1rem Roboto;--mat-sys-body-small-font: Roboto;--mat-sys-body-small-line-height: 1rem;--mat-sys-body-small-size: .75rem;--mat-sys-body-small-tracking: .025rem;--mat-sys-body-small-weight: 400;--mat-sys-display-large: 400 3.562rem / 4rem Roboto;--mat-sys-display-large-font: Roboto;--mat-sys-display-large-line-height: 4rem;--mat-sys-display-large-size: 3.562rem;--mat-sys-display-large-tracking: -.016rem;--mat-sys-display-large-weight: 400;--mat-sys-display-medium: 400 2.812rem / 3.25rem Roboto;--mat-sys-display-medium-font: Roboto;--mat-sys-display-medium-line-height: 3.25rem;--mat-sys-display-medium-size: 2.812rem;--mat-sys-display-medium-tracking: 0;--mat-sys-display-medium-weight: 400;--mat-sys-display-small: 400 2.25rem / 2.75rem Roboto;--mat-sys-display-small-font: Roboto;--mat-sys-display-small-line-height: 2.75rem;--mat-sys-display-small-size: 2.25rem;--mat-sys-display-small-tracking: 0;--mat-sys-display-small-weight: 400;--mat-sys-headline-large: 400 2rem / 2.5rem Roboto;--mat-sys-headline-large-font: Roboto;--mat-sys-headline-large-line-height: 2.5rem;--mat-sys-headline-large-size: 2rem;--mat-sys-headline-large-tracking: 0;--mat-sys-headline-large-weight: 400;--mat-sys-headline-medium: 400 1.75rem / 2.25rem Roboto;--mat-sys-headline-medium-font: Roboto;--mat-sys-headline-medium-line-height: 2.25rem;--mat-sys-headline-medium-size: 1.75rem;--mat-sys-headline-medium-tracking: 0;--mat-sys-headline-medium-weight: 400;--mat-sys-headline-small: 400 1.5rem / 2rem Roboto;--mat-sys-headline-small-font: Roboto;--mat-sys-headline-small-line-height: 2rem;--mat-sys-headline-small-size: 1.5rem;--mat-sys-headline-small-tracking: 0;--mat-sys-headline-small-weight: 400;--mat-sys-label-large: 500 .875rem / 1.25rem Roboto;--mat-sys-label-large-font: Roboto;--mat-sys-label-large-line-height: 1.25rem;--mat-sys-label-large-size: .875rem;--mat-sys-label-large-tracking: .006rem;--mat-sys-label-large-weight: 500;--mat-sys-label-large-weight-prominent: 700;--mat-sys-label-medium: 500 .75rem / 1rem Roboto;--mat-sys-label-medium-font: Roboto;--mat-sys-label-medium-line-height: 1rem;--mat-sys-label-medium-size: .75rem;--mat-sys-label-medium-tracking: .031rem;--mat-sys-label-medium-weight: 500;--mat-sys-label-medium-weight-prominent: 700;--mat-sys-label-small: 500 .688rem / 1rem Roboto;--mat-sys-label-small-font: Roboto;--mat-sys-label-small-line-height: 1rem;--mat-sys-label-small-size: .688rem;--mat-sys-label-small-tracking: .031rem;--mat-sys-label-small-weight: 500;--mat-sys-title-large: 400 1.375rem / 1.75rem Roboto;--mat-sys-title-large-font: Roboto;--mat-sys-title-large-line-height: 1.75rem;--mat-sys-title-large-size: 1.375rem;--mat-sys-title-large-tracking: 0;--mat-sys-title-large-weight: 400;--mat-sys-title-medium: 500 1rem / 1.5rem Roboto;--mat-sys-title-medium-font: Roboto;--mat-sys-title-medium-line-height: 1.5rem;--mat-sys-title-medium-size: 1rem;--mat-sys-title-medium-tracking: .009rem;--mat-sys-title-medium-weight: 500;--mat-sys-title-small: 500 .875rem / 1.25rem Roboto;--mat-sys-title-small-font: Roboto;--mat-sys-title-small-line-height: 1.25rem;--mat-sys-title-small-size: .875rem;--mat-sys-title-small-tracking: .006rem;--mat-sys-title-small-weight: 500;--mat-sys-corner-extra-large: 28px;--mat-sys-corner-extra-large-top: 28px 28px 0 0;--mat-sys-corner-extra-small: 4px;--mat-sys-corner-extra-small-top: 4px 4px 0 0;--mat-sys-corner-full: 9999px;--mat-sys-corner-large: 16px;--mat-sys-corner-large-end: 0 16px 16px 0;--mat-sys-corner-large-start: 16px 0 0 16px;--mat-sys-corner-large-top: 16px 16px 0 0;--mat-sys-corner-medium: 12px;--mat-sys-corner-none: 0;--mat-sys-corner-small: 8px;--mat-sys-dragged-state-layer-opacity: .16;--mat-sys-focus-state-layer-opacity: .12;--mat-sys-hover-state-layer-opacity: .08;--mat-sys-pressed-state-layer-opacity: .12}body{color-scheme:light;background-color:var(--mat-sys-surface);color:var(--mat-sys-on-surface);font:var(--mat-sys-body-medium);margin:0;height:100%}:root{--color-primary-1: #6a11cb;--color-primary-2: #2575fc;--color-accent: #ffea00;--color-text: #333333;--color-muted: #555555;--color-surface: #ffffff;--sidebar-w: 280px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--shadow-1: 0 2px 6px rgba(0,0,0,.08);--shadow-2: 0 6px 16px rgba(0,0,0,.12);--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-8: 3rem}*,*:before,*:after{box-sizing:border-box}html,body{height:100%;margin:0}body{font-family:Poppins,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--color-text);line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img{max-width:100%;height:auto;display:block}a{text-decoration:none;color:inherit}button{font:inherit;cursor:pointer}:focus-visible{outline:3px solid var(--color-accent);outline-offset:2px}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.home-container{min-height:100dvh;padding-left:var(--sidebar-w);background-color:#fff}.navbar{position:fixed;inset:0 auto 0 0;width:var(--sidebar-w);display:flex;flex-direction:column;padding:var(--space-4);color:#fff;background:linear-gradient(180deg,var(--color-primary-1),var(--color-primary-2));box-shadow:var(--shadow-1);z-index:1000}.navbar .logo{display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-4);font-size:clamp(1.25rem,1.2vw + 1rem,1.8rem);font-weight:700}.nav-links{list-style:none;margin:0 0 var(--space-4) 0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.nav-links li a{display:block;padding:.6rem .8rem;border-radius:var(--radius-md);font-weight:500;transition:background-color .25s ease,transform .15s ease;will-change:transform}.nav-links li a:hover{background-color:#ffffff26;transform:translateY(-1px)}.nav-links li a.active,.nav-links li a.router-link-active{background-color:#ffffff38}.nav-buttons{margin-top:auto;display:flex;flex-direction:column;gap:var(--space-2)}.btn-login,.btn-logout{width:100%;padding:.55rem 1rem;background:var(--color-accent);color:#000;border:none;border-radius:var(--radius-sm);font-weight:700;box-shadow:var(--shadow-1);transition:background-color .25s ease,transform .15s ease,box-shadow .25s ease}.btn-login:hover,.btn-logout:hover{background-color:#f1c40f;transform:translateY(-1px);box-shadow:var(--shadow-2)}.hero{display:flex;gap:var(--space-6);align-items:center;justify-content:space-between;padding:var(--space-8) var(--space-6);background:linear-gradient(135deg,#f6d365,#fda085)}.hero-text h1{font-size:clamp(2rem,2.5vw + 1rem,3rem);margin:0 0 var(--space-3) 0;color:#fff;line-height:1.1}.hero-text p{font-size:clamp(1rem,.6vw + .8rem,1.25rem);margin:0 0 var(--space-5) 0;color:#fff}.btn-hero{display:inline-block;padding:.75rem 1.5rem;background-color:var(--color-primary-2);color:#fff;border-radius:var(--radius-md);font-weight:700;transition:background-color .25s ease,transform .15s ease,box-shadow .25s ease;box-shadow:var(--shadow-1)}.btn-hero:hover{background-color:var(--color-primary-1);transform:translateY(-1px);box-shadow:var(--shadow-2)}.hero-image img{width:400px;max-width:100%;border-radius:var(--radius-lg);box-shadow:var(--shadow-1)}.features{background-color:#f4f4f9;padding:var(--space-8) var(--space-6);text-align:center}.features h2{font-size:clamp(1.75rem,1.2vw + 1.2rem,2.5rem);margin:0 0 var(--space-6) 0;color:var(--color-primary-2)}.feature-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--space-6);max-width:1200px;margin:0 auto}.card{background:var(--color-surface);padding:var(--space-6);border-radius:15px;box-shadow:var(--shadow-1);transition:transform .25s ease,box-shadow .25s ease;will-change:transform}.card:hover{transform:translateY(-6px);box-shadow:var(--shadow-2)}.card h3{margin:0 0 var(--space-3) 0;color:var(--color-primary-1);font-size:1.25rem}.card p{margin:0;font-size:.95rem;color:var(--color-muted)}.footer{background-color:var(--color-primary-2);color:#fff;padding:var(--space-6);text-align:center}.footer .social-icons{margin-top:var(--space-3);display:flex;justify-content:center;gap:var(--space-3)}.footer .social-icons img{width:30px;transition:transform .25s ease}.footer .social-icons img:hover{transform:scale(1.12)}@media(max-width:768px){.home-container{padding-left:0}.navbar{position:static;width:100%;flex-direction:row;align-items:center;justify-content:space-between;padding:var(--space-4) calc(var(--space-4) * 2);background:linear-gradient(90deg,var(--color-primary-1),var(--color-primary-2))}.nav-links{flex-direction:row;align-items:center;gap:var(--space-4);margin:0}.nav-buttons{margin-top:0;flex-direction:row}}@media(max-width:1024px){:root{--sidebar-w: 240px}}.main-content{margin-top:60px;min-height:calc(100vh - 60px)}@media(min-width:1024px){.main-content{margin-left:280px}body:has(.sidebar.mini) .main-content{margin-left:72px}}.warehouse-form-container{max-width:1000px;margin:0 auto;padding:16px 20px 32px;background:#fafafa}.form-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}.form-header h2{margin:0;font-size:22px;font-weight:600}.subtitle{margin:4px 0 0;font-size:13px;color:#666}.section-title{margin-top:16px;margin-bottom:8px;font-size:14px;font-weight:600;color:#333;border-bottom:1px solid #eee;padding-bottom:4px}.form-container{display:flex;flex-direction:column;gap:1rem;background:#fff;padding:16px;border-radius:10px;box-shadow:0 6px 18px #0000000a}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}label>div{font-weight:600;margin-bottom:.25rem;font-size:13px}input,select,textarea{width:100%;padding:.55rem .75rem;border-radius:8px;border:1px solid #ddd;background:#fff;transition:border-color .2s,box-shadow .2s;font-size:.95rem}input:focus,select:focus,textarea:focus{border-color:#2575fc;box-shadow:0 0 0 3px #2575fc26}input.invalid,select.invalid,textarea.invalid,input.ng-invalid.ng-touched,select.ng-invalid.ng-touched,textarea.ng-invalid.ng-touched{border:1px solid #e74c3c!important;background:#fdecea!important}.required{color:#d32f2f}small.error,.error{color:#e74c3c;font-size:12px;margin-top:3px;display:block}.btn{border:1px solid #ccc;background:#f7f7f7;padding:6px 10px;font-size:13px;border-radius:4px;cursor:pointer}.btn.primary{background:#1460ad;border-color:#0b4987;color:#fff}.btn.secondary{background:#8d8d8d;border-color:#4d4c4c;color:#fff;transition:background .2s,transform .2s}.btn.secondary:hover{background:#484848;transform:translateY(-1px)}.btn:disabled{opacity:.6;cursor:not-allowed}.form-actions{margin-top:20px;display:flex;gap:8px}.search-input{width:100%;padding:7px;border:1px solid #ccc;border-radius:4px}.result-list{margin:6px 0 0;padding:0;list-style:none;border:1px solid #ccc;background:#fff;max-height:200px;overflow-y:auto;position:relative;width:100%;z-index:10;border-radius:4px}.result-list li{padding:8px;cursor:pointer;border-bottom:1px solid #f1f1f1}.result-list li:hover{background:#f0f8ff}.btn-clear{background:#f0f0f0;border:1px solid #bcbcbc;color:#333;padding:7px 14px;font-size:14px;border-radius:6px;cursor:pointer}.btn-clear:hover{background:#e4e4e4}.list-container{max-width:1100px;margin:2rem auto;background:#fff;padding:1.5rem 2rem;border-radius:12px;box-shadow:0 4px 12px #0000001a}.page-title{text-align:center;color:#222;margin-bottom:.5rem;font-size:1.8rem;font-weight:600}.page-subtitle{text-align:center;font-size:14px;color:#555;margin-bottom:1rem}.loading,.no-items{text-align:center;color:#444;margin-top:1rem}.error{text-align:center;color:#d62839;margin-top:1rem;font-weight:700}.back-btn-container{display:flex;justify-content:flex-end;margin-bottom:1rem;padding-right:10px}.btn-back{background:#6c5ce7;color:#fff;border:none;padding:.5rem 1rem;font-size:.9rem;border-radius:6px;cursor:pointer;transition:.3s ease}.btn-back:hover{background:#5a4bd6;transform:translate(-3px)}.search-box{margin-bottom:1rem;text-align:left}.search-box input{width:340px;padding:.7rem 1rem;border-radius:10px;border:1px solid #8c8f94;background:#f4f4f4;font-size:1rem;transition:.3s ease}.search-box input:focus{outline:none;border-color:#3498db;background:#fff;box-shadow:0 0 6px #3498db66}.search-box select{padding:.6rem;border-radius:8px;border:1px solid #8c8f94;background:#f4f4f4}.btn-refresh,.btn-add{padding:.55rem 1rem;border:none;border-radius:6px;cursor:pointer;margin-left:10px;color:#fff;transition:.2s ease}.btn-refresh{background-color:#3498db}.btn-refresh:hover{background-color:#2980b9}.btn-add{background-color:#2ecc71}.btn-add:hover{background-color:#27ae60}.table-container{overflow-x:auto}.styled-table{width:100%;border-collapse:collapse;background-color:#fff;font-size:1rem}.styled-table thead{background-color:#0f0f10;color:#fff}.styled-table th,.styled-table td{padding:.8rem 1rem;border-bottom:1px solid #d0d0d0}.styled-table tbody tr:hover{background-color:#eef1f5}.status-pill{padding:4px 10px;border-radius:20px;font-size:12px;font-weight:600}.status-pill.active{background:#e8f5e9;color:#2e7d32}.status-pill.inactive{background:#f5f5f5;color:#777}.action-buttons{display:flex;gap:.4rem}.btn-edit,.btn-delete,.btn-bins{padding:.35rem .8rem;border-radius:6px;font-size:.85rem;border:none;cursor:pointer;color:#fff;transition:.2s ease}.btn-edit{background-color:#3498db}.btn-edit:hover{background-color:#2980b9}.btn-delete{background-color:#e74c3c}.btn-delete:hover{background-color:#c0392b}.btn-bins{background-color:#8e44ad}.btn-bins:hover{background-color:#7d3c98}
