:root{--color-primary: #3B82F6;--color-primary-hover: #2563EB;--color-primary-light: #EFF6FF;--color-primary-50: #DBEAFE;--color-primary-100: #BFDBFE;--color-primary-700: #1D4ED8;--color-success: #10B981;--color-success-light: #ECFDF5;--color-warning: #F59E0B;--color-warning-light: #FFFBEB;--color-danger: #EF4444;--color-danger-light: #FEF2F2;--color-violet: #8B5CF6;--color-violet-light: #F5F3FF;--color-teal: #14B8A6;--color-teal-light: #F0FDFA;--color-white: #FFFFFF;--color-gray-50: #F8FAFC;--color-gray-100: #F1F5F9;--color-gray-200: #E2E8F0;--color-gray-300: #CBD5E1;--color-gray-400: #94A3B8;--color-gray-500: #64748B;--color-gray-600: #475569;--color-gray-700: #334155;--color-gray-800: #1E293B;--color-gray-900: #0F172A;--sidebar-width: 260px;--font-family: "Inter", system-ui, -apple-system, sans-serif;--font-size-2xs: .6875rem;--font-size-xs: .75rem;--font-size-sm: .8125rem;--font-size-base: .875rem;--font-size-lg: 1rem;--font-size-xl: 1.125rem;--font-size-2xl: 1.375rem;--font-size-3xl: 1.75rem;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-full: 9999px;--shadow-xs: 0 1px 2px rgba(0,0,0,.05);--shadow-sm: 0 1px 3px rgba(0,0,0,.08), 0 1px 2px rgba(0,0,0,.04);--shadow-md: 0 4px 12px -2px rgba(0,0,0,.08), 0 2px 6px -2px rgba(0,0,0,.05);--shadow-lg: 0 12px 32px -8px rgba(0,0,0,.14), 0 4px 8px -4px rgba(0,0,0,.06);--shadow-xl: 0 24px 64px -16px rgba(0,0,0,.22);--shadow-focus: 0 0 0 3px rgba(59,130,246,.2);--transition-fast: .15s ease;--transition-base: .2s ease}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}@keyframes toastIn{0%{opacity:0;transform:translateY(-12px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-family);font-size:var(--font-size-base);line-height:1.5;color:var(--color-gray-700);background:#eef1f6;min-height:100vh;-webkit-font-smoothing:antialiased}#root{min-height:100vh}h1{font-size:var(--font-size-2xl);color:var(--color-gray-900);font-weight:700;letter-spacing:-.02em}h2{font-size:var(--font-size-xl);color:var(--color-gray-900);font-weight:600}h3{font-size:var(--font-size-lg);color:var(--color-gray-900);font-weight:600}::selection{background:var(--color-primary-light);color:var(--color-primary-700)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.5625rem 1.1rem;font-size:var(--font-size-sm);font-weight:500;font-family:inherit;border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-base);white-space:nowrap}.btn:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;box-shadow:var(--shadow-xs)}.btn-primary:hover:not(:disabled){box-shadow:0 4px 16px #3b82f659;transform:translateY(-1px)}.btn-secondary{background:#fff;color:var(--color-gray-700);border-color:var(--color-gray-200);box-shadow:var(--shadow-xs)}.btn-secondary:hover:not(:disabled){background:var(--color-gray-50);border-color:var(--color-gray-300)}.btn-danger{background:var(--color-danger);color:#fff}.btn-danger:hover:not(:disabled){background:#dc2626}.btn-danger-ghost{background:transparent;color:var(--color-danger);border:1px solid var(--color-gray-200)}.btn-danger-ghost:hover:not(:disabled){background:var(--color-danger-light);border-color:var(--color-danger)}.btn-group{display:inline-flex;gap:.25rem}.btn-icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);background:transparent;color:var(--color-gray-400);flex-shrink:0}.btn-icon:hover{background:var(--color-gray-100);color:var(--color-gray-700)}.btn-icon-save{color:var(--color-primary)}.btn-icon-save:hover{background:var(--color-primary-light);color:var(--color-primary-700)}.btn-icon-danger:hover{background:var(--color-danger-light);color:var(--color-danger)}.app-shell{display:flex;min-height:100vh}.app-main{flex:1;margin-left:var(--sidebar-width);padding:2rem 2.5rem;max-width:1400px}.sidebar{position:fixed;top:0;left:0;bottom:0;width:var(--sidebar-width);background:linear-gradient(180deg,#1e3a5f,#0f172a);display:flex;flex-direction:column;z-index:50}.sidebar-brand{padding:1.25rem;border-bottom:1px solid rgba(255,255,255,.08);display:flex;align-items:center;justify-content:center}.sidebar-logo{max-width:180px;height:auto}.sidebar-section-label{font-size:var(--font-size-2xs);font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#94a3b8e6;padding:1.25rem 1rem .5rem}.sidebar-nav{flex:1;padding:.5rem .75rem;display:flex;flex-direction:column;gap:2px;overflow-y:auto}.nav-item{display:flex;align-items:center;gap:.75rem;padding:.625rem .75rem;font-size:var(--font-size-sm);font-weight:500;font-family:inherit;color:#94a3b8e6;background:none;border:none;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);width:100%;text-align:left}.nav-item:hover{background:#ffffff0f;color:#e2e8f0}.nav-item.active{background:#3b82f626;color:#fff;font-weight:600}.nav-icon-bg{width:28px;height:28px;border-radius:var(--radius-sm);background:#ffffff0f;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background var(--transition-fast)}.nav-item.active .nav-icon-bg{background:#3b82f640}.nav-icon{width:18px;height:18px;flex-shrink:0}.sidebar-footer{padding:1rem;border-top:1px solid rgba(255,255,255,.08)}.sidebar-logout{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.5rem .75rem;font-size:var(--font-size-xs);font-weight:500;font-family:inherit;color:#94a3b8e6;background:none;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.sidebar-logout:hover{color:#fca5a5;border-color:#ef44444d;background:#ef44441a}.page{animation:fadeInUp .25s ease}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.page-subtitle{color:var(--color-gray-500);font-size:var(--font-size-sm);margin-top:.25rem}.card{background:#fff;border:1px solid rgba(15,23,42,.06);border-radius:var(--radius-xl);padding:1.5rem;box-shadow:var(--shadow-sm)}.card-table{padding:.5rem}.card-section-header{margin-bottom:1.25rem;padding-bottom:.875rem;border-bottom:1px solid var(--color-gray-100)}.toolbar{display:flex;gap:.75rem;margin-bottom:1rem;flex-wrap:wrap;align-items:center}.toolbar select{height:40px;padding:0 .875rem;border:1px solid var(--color-gray-200);border-radius:var(--radius-md);background:#fff;color:var(--color-gray-700);font-family:inherit;font-size:var(--font-size-sm);cursor:pointer}.toolbar select:focus{outline:none;border-color:var(--color-primary);box-shadow:var(--shadow-focus)}.search-box{position:relative;flex:1;min-width:240px}.search-box .search-icon{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:var(--color-gray-400)}.search-box input{width:100%;height:40px;padding:0 .875rem 0 2.25rem;border:1px solid var(--color-gray-200);border-radius:var(--radius-md);background:#fff;font-family:inherit;font-size:var(--font-size-sm);color:var(--color-gray-800)}.search-box input:focus{outline:none;border-color:var(--color-primary);box-shadow:var(--shadow-focus)}.table{width:100%;border-collapse:separate;border-spacing:0;font-size:var(--font-size-sm)}.table th,.table td{padding:.75rem 1rem;text-align:left}.table th{font-weight:600;color:var(--color-gray-500);background:var(--color-gray-50);font-size:var(--font-size-2xs);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--color-gray-200)}.table th:first-child{border-radius:var(--radius-md) 0 0 0}.table th:last-child{border-radius:0 var(--radius-md) 0 0}.table td{border-bottom:1px solid var(--color-gray-100);color:var(--color-gray-700);vertical-align:middle}.table tbody tr{transition:background var(--transition-fast)}.table tbody tr:hover{background:var(--color-primary-light)}.table tbody tr:last-child td{border-bottom:none}.row-clickable{cursor:pointer}.col-actions{width:96px;text-align:right}.col-actions .btn-group{justify-content:flex-end}.table-select{padding:.25rem .5rem;border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);font-size:var(--font-size-xs);color:var(--color-gray-700);background:#fff;cursor:pointer}.table-select:focus{outline:none;border-color:var(--color-primary)}.table-select:disabled{opacity:.6;cursor:not-allowed}.cell-primary{font-weight:600;color:var(--color-gray-900)}.cell-plain{font-weight:400;color:var(--color-gray-700)}.th-sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:color var(--transition-fast)}.th-sortable:hover{color:var(--color-gray-700)}.sortable-inner{display:inline-flex;align-items:center;gap:4px}.sort-arrow{display:inline-flex;opacity:0;color:var(--color-gray-400);transition:opacity var(--transition-fast),transform var(--transition-fast)}.th-sortable:hover .sort-arrow{opacity:.45}.sort-arrow.is-active{opacity:1;color:var(--color-primary)}.sort-arrow.is-asc{transform:rotate(180deg)}.cell-secondary{font-size:var(--font-size-xs);color:var(--color-gray-400);margin-top:1px}.cell-with-avatar{display:flex;align-items:center;gap:.625rem}.mini-avatar{width:32px;height:32px;border-radius:var(--radius-full);flex-shrink:0;background:linear-gradient(135deg,var(--color-primary-50),var(--color-primary-100));color:var(--color-primary-700);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-2xs);font-weight:700}.self-tag{margin-left:.4rem;padding:1px 7px;font-size:var(--font-size-2xs);font-weight:600;background:var(--color-primary-light);color:var(--color-primary-700);border-radius:var(--radius-full)}.badge{display:inline-flex;align-items:center;gap:.375rem;padding:.1875rem .625rem;font-size:var(--font-size-xs);font-weight:600;border-radius:var(--radius-full);line-height:1.4;white-space:nowrap}.badge:before{content:"";width:6px;height:6px;border-radius:50%;flex-shrink:0;background:currentColor}.badge-soft{display:inline-flex;align-items:center;padding:.1875rem .625rem;font-size:var(--font-size-xs);font-weight:600;border-radius:var(--radius-full);white-space:nowrap}.status-in-use{background:var(--color-success-light);color:#047857}.status-in-storage{background:var(--color-primary-light);color:var(--color-primary-700)}.status-repair{background:var(--color-warning-light);color:#b45309}.status-ordered{background:var(--color-violet-light);color:#6d28d9}.status-retired{background:var(--color-gray-100);color:var(--color-gray-500)}.status-lost{background:var(--color-danger-light);color:#b91c1c}.cond-new{background:var(--color-success-light);color:#047857}.cond-good{background:var(--color-primary-light);color:var(--color-primary-700)}.cond-fair{background:var(--color-warning-light);color:#b45309}.cond-poor{background:#fff1e6;color:#c2410c}.cond-broken{background:var(--color-danger-light);color:#b91c1c}.cat-badge{background:var(--color-gray-100);color:var(--color-gray-600)}.type-hq{background:var(--color-violet-light);color:#6d28d9}.type-store{background:var(--color-teal-light);color:#0f766e}.badge-available{background:var(--color-success-light);color:#047857;font-size:var(--font-size-xs);font-weight:600;padding:.1875rem .625rem;border-radius:var(--radius-full)}.badge-muted{background:var(--color-gray-100);color:var(--color-gray-500);font-size:var(--font-size-xs);font-weight:600;padding:.1875rem .625rem;border-radius:var(--radius-full)}.count-badge{display:inline-flex;align-items:center;min-width:26px;justify-content:center;padding:2px 9px;font-size:var(--font-size-2xs);font-weight:700;color:var(--color-primary-700);background:var(--color-primary-light);border-radius:var(--radius-full)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-group{display:flex;flex-direction:column;gap:.3rem;margin-bottom:1rem}.form-row .form-group{margin-bottom:1rem}.form-group label{font-size:var(--font-size-sm);font-weight:500;color:var(--color-gray-700)}.form-group input,.form-group select,.form-group textarea{padding:.5625rem .875rem;font-size:var(--font-size-sm);font-family:inherit;border:1px solid var(--color-gray-300);border-radius:var(--radius-md);background:var(--color-gray-50);color:var(--color-gray-800);transition:all var(--transition-fast);outline:none;height:40px}.form-group textarea{height:auto;min-height:90px;resize:vertical}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--color-gray-400)}.form-group input:hover,.form-group select:hover,.form-group textarea:hover{border-color:var(--color-gray-400);background:#fff}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--color-primary);background:#fff;box-shadow:var(--shadow-focus)}.form-section-title{font-size:var(--font-size-xs);font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--color-gray-400);margin:1.25rem 0 .875rem;padding-bottom:.4rem;border-bottom:1px solid var(--color-gray-100)}.form-section-title:first-child{margin-top:0}.segmented{display:inline-flex;gap:.25rem;background:var(--color-gray-100);padding:4px;border-radius:var(--radius-lg);width:100%}.segmented button{flex:1;padding:.45rem .75rem;border:none;background:none;font-family:inherit;font-size:var(--font-size-sm);font-weight:500;color:var(--color-gray-500);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.segmented button:hover{color:var(--color-gray-700)}.segmented button.active{background:#fff;color:var(--color-primary);font-weight:600;box-shadow:var(--shadow-xs)}.segmented-wrap{flex-wrap:wrap}.segmented-wrap button{flex:1 1 auto;min-width:92px;white-space:nowrap}.alert-error{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;margin-top:1rem;background:var(--color-danger-light);color:var(--color-danger);border:1px solid rgba(239,68,68,.18);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:500}.modal-overlay{position:fixed;inset:0;background:#0f172a73;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:flex-start;justify-content:center;z-index:200;padding:3rem 1rem;overflow-y:auto;animation:fadeIn .15s ease}.modal{background:#fff;border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);width:100%;animation:scaleIn .15s ease;display:flex;flex-direction:column;max-height:calc(100vh - 6rem)}.modal-md{max-width:520px}.modal-lg{max-width:760px}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid var(--color-gray-100)}.modal-header h2{font-size:var(--font-size-xl)}.modal-body{padding:1.5rem;overflow-y:auto}.modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid var(--color-gray-100)}.confirm-overlay{position:fixed;inset:0;background:#0f172a73;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:300;animation:fadeIn .15s ease}.confirm-dialog{background:#fff;border-radius:var(--radius-xl);padding:1.5rem;box-shadow:var(--shadow-xl);max-width:420px;width:calc(100% - 2rem);animation:scaleIn .15s ease}.confirm-title{font-size:var(--font-size-lg);font-weight:600;color:var(--color-gray-900);margin-bottom:.5rem}.confirm-message{font-size:var(--font-size-sm);color:var(--color-gray-500);margin-bottom:1.5rem;line-height:1.6}.confirm-actions{display:flex;justify-content:flex-end;gap:.75rem}.toast-container{position:fixed;top:1.5rem;right:1.5rem;z-index:400;display:flex;flex-direction:column;gap:.5rem}.toast{display:flex;align-items:center;gap:.75rem;padding:.75rem 1.25rem;border-radius:var(--radius-lg);font-size:var(--font-size-sm);font-weight:500;box-shadow:var(--shadow-lg);background:#fff;animation:toastIn .25s ease}.toast-icon{display:inline-flex;flex-shrink:0}.toast-success{color:var(--color-success);border:1px solid var(--color-success-light)}.toast-error{color:var(--color-danger);border:1px solid var(--color-danger-light)}.empty-state{text-align:center;padding:3.5rem 1rem;color:var(--color-gray-400)}.empty-state-icon{display:inline-flex;margin-bottom:1rem;opacity:.4}.empty-state h3{color:var(--color-gray-600);font-size:var(--font-size-base)}.empty-state p{font-size:var(--font-size-sm);margin-top:.5rem;color:var(--color-gray-400)}.empty-state-action{margin-top:1.25rem}.spinner{width:18px;height:18px;border:2px solid var(--color-gray-200);border-top-color:var(--color-primary);border-radius:50%;animation:spin .6s linear infinite;display:inline-block}.spinner-lg{width:30px;height:30px;border-width:3px}.btn-spinner{border-color:#fff6;border-top-color:#fff}.page-spinner,.card-spinner{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;color:var(--color-gray-400);font-size:var(--font-size-sm)}.page-spinner{min-height:100vh}.card-spinner{padding:3rem 1rem}.login-page{display:flex;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(135deg,#1e3a8a,#2563eb 35%,#3b82f6 60%,#60a5fa);position:relative;overflow:hidden;padding:1.25rem}.login-page:before{content:"";position:absolute;top:-20%;left:-10%;width:500px;height:500px;background:radial-gradient(circle,rgba(96,165,250,.3) 0%,transparent 70%);pointer-events:none}.login-page:after{content:"";position:absolute;bottom:-15%;right:-5%;width:400px;height:400px;background:radial-gradient(circle,rgba(37,99,235,.25) 0%,transparent 70%);pointer-events:none}.login-glass{position:relative;z-index:1;width:100%;max-width:400px;background:#ffffff1f;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid rgba(255,255,255,.2);border-radius:1.25rem;padding:2.5rem 2rem;display:flex;flex-direction:column;align-items:center;animation:scaleIn .3s ease}.login-logo{width:180px;height:auto;margin-bottom:1.5rem}.login-title{font-size:var(--font-size-2xl);color:#fff;font-weight:700;margin-bottom:.4rem}.login-subtitle{font-size:var(--font-size-sm);color:#ffffffb3;margin-bottom:2rem;text-align:center}.login-form{width:100%;display:flex;flex-direction:column;gap:.75rem}.login-input{width:100%;height:46px;padding:0 1rem;font-family:inherit;font-size:var(--font-size-base);color:#fff;background:#ffffff1a;border:1px solid rgba(255,255,255,.22);border-radius:var(--radius-md);outline:none;transition:all var(--transition-fast)}.login-input::placeholder{color:#fff9}.login-input:hover{border-color:#ffffff59}.login-input:focus{border-color:#fff9;background:#ffffff29}.btn-login{width:100%;height:50px;margin-top:.25rem;display:flex;align-items:center;justify-content:center;font-family:inherit;font-size:var(--font-size-lg);font-weight:600;color:#2563eb;background:#fff;border:none;border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-base)}.btn-login:hover:not(:disabled){background:#eff6ff;transform:translateY(-1px)}.btn-login:active:not(:disabled){transform:translateY(0)}.btn-login:disabled{opacity:.7;cursor:not-allowed;transform:none}.login-switch{margin-top:1rem;background:none;border:none;font-family:inherit;color:#ffffffd1;font-size:var(--font-size-sm);cursor:pointer}.login-switch:hover{color:#fff;text-decoration:underline}.login-glass .alert-error{margin-top:1rem;width:100%;background:#ef444426;border-color:#ef44444d;color:#fca5a5}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin-bottom:1.5rem}.kpi-card{display:flex;align-items:center;gap:1rem;padding:1.25rem;background:#fff;border:1px solid rgba(15,23,42,.06);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);cursor:pointer;transition:all var(--transition-fast);font-family:inherit;text-align:left;width:100%}.kpi-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.kpi-card-static{cursor:default}.kpi-card-static:hover{transform:none;box-shadow:var(--shadow-sm)}.kpi-icon{width:46px;height:46px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;flex-shrink:0}.kpi-icon-blue{background:var(--color-primary-light);color:var(--color-primary)}.kpi-icon-violet{background:var(--color-violet-light);color:var(--color-violet)}.kpi-icon-teal{background:var(--color-teal-light);color:var(--color-teal)}.kpi-icon-green{background:var(--color-success-light);color:var(--color-success)}.kpi-value{font-size:var(--font-size-3xl);font-weight:700;color:var(--color-gray-900);line-height:1}.kpi-value-sm{font-size:var(--font-size-xl)}.kpi-label{font-size:var(--font-size-xs);color:var(--color-gray-500);font-weight:500;margin-top:.3rem}.alert-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;margin-bottom:1.5rem}.alert-tile{display:flex;align-items:center;gap:.75rem;padding:.875rem 1.125rem;border-radius:var(--radius-lg);font-size:var(--font-size-sm)}.alert-tile strong{font-weight:700}.alert-tile-warning{background:var(--color-warning-light);color:#b45309;border:1px solid rgba(245,158,11,.2)}.alert-tile-info{background:var(--color-primary-light);color:var(--color-primary-700);border:1px solid rgba(59,130,246,.18)}.breakdown-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1rem}.breakdown-list{display:flex;flex-direction:column;gap:.75rem}.breakdown-row{display:flex;align-items:center;gap:.75rem;font-size:var(--font-size-sm)}.breakdown-label{width:130px;flex-shrink:0;color:var(--color-gray-600)}.breakdown-bar{flex:1;height:8px;background:var(--color-gray-100);border-radius:var(--radius-full);overflow:hidden}.breakdown-bar-fill{height:100%;background:linear-gradient(90deg,#60a5fa,#2563eb);border-radius:var(--radius-full);transition:width .4s ease}.breakdown-bar-fill-alt{background:linear-gradient(90deg,#a78bfa,#7c3aed)}.breakdown-count{width:28px;text-align:right;font-weight:700;color:var(--color-gray-700);flex-shrink:0}.status-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0;background:var(--color-gray-400)}.status-dot.status-in-use{background:var(--color-success)}.status-dot.status-in-storage{background:var(--color-primary)}.status-dot.status-repair{background:var(--color-warning)}.status-dot.status-ordered{background:var(--color-violet)}.status-dot.status-retired{background:var(--color-gray-400)}.status-dot.status-lost{background:var(--color-danger)}.dd-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.25rem;flex-wrap:wrap}.dd-head-badges{display:flex;gap:.5rem;flex-wrap:wrap}.dd-asset-tag{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:var(--font-size-xs);background:var(--color-gray-100);color:var(--color-gray-600);padding:.25rem .625rem;border-radius:var(--radius-sm)}.dd-section{margin-bottom:1.25rem}.dd-section-title{font-size:var(--font-size-xs);font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--color-gray-400);margin-bottom:.5rem}.dd-card{background:var(--color-gray-50);border:1px solid var(--color-gray-100);border-radius:var(--radius-lg);overflow:hidden}.dd-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.625rem 1rem;border-bottom:1px solid var(--color-gray-100)}.dd-row:last-child{border-bottom:none}.dd-label{font-size:var(--font-size-sm);color:var(--color-gray-500);flex-shrink:0}.dd-value{font-size:var(--font-size-sm);font-weight:500;color:var(--color-gray-900);text-align:right;word-break:break-word}.dd-value-empty{color:var(--color-gray-300);font-weight:400}.dd-value .warranty-expired{color:var(--color-danger);display:inline-flex;align-items:center;gap:.25rem}.warranty-expired{color:var(--color-danger)}.dd-notes{padding:1rem;font-size:var(--font-size-sm);color:var(--color-gray-700);white-space:pre-wrap;line-height:1.7}.status-idle{background:var(--color-gray-100);color:var(--color-gray-500)}.toggle-track{display:inline-flex;align-items:center;width:38px;height:22px;padding:2px;border-radius:var(--radius-full);background:var(--color-gray-300);transition:background var(--transition-fast);flex-shrink:0}.toggle-thumb{width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #00000040;transition:transform var(--transition-fast)}.toggle-track.is-on{background:var(--color-success)}.toggle-track.is-on .toggle-thumb{transform:translate(16px)}.toggle-btn{border:none;cursor:pointer;padding:2px}.toggle-btn:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.checkbox-field{display:inline-flex;align-items:center;gap:.5rem;height:40px;cursor:pointer;-webkit-user-select:none;user-select:none;font-size:var(--font-size-sm);color:var(--color-gray-700);font-weight:500;text-transform:none;letter-spacing:normal}.checkbox-field input[type=checkbox]{appearance:auto;-webkit-appearance:auto;width:18px;height:18px;min-height:0;padding:0;margin:0;border:none;background:none;box-shadow:none;outline:none;accent-color:var(--color-primary);cursor:pointer;transition:none;flex-shrink:0}.checkbox-field input[type=checkbox]:hover,.checkbox-field input[type=checkbox]:focus{border:none;background:none;box-shadow:none}.form-section-title-row{display:flex;align-items:center;justify-content:space-between;gap:1rem}.form-section-title-row .checkbox-field{height:auto}.toggle-field{display:inline-flex;align-items:center;gap:.6rem;cursor:pointer;-webkit-user-select:none;user-select:none}.toggle-field input{position:absolute;opacity:0;width:0;height:0}.toggle-field input:checked+.toggle-track{background:var(--color-success)}.toggle-field input:checked+.toggle-track .toggle-thumb{transform:translate(16px)}.toggle-field input:focus-visible+.toggle-track{box-shadow:var(--shadow-focus)}.admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem;align-items:start}.admin-section .card-section-header{margin-bottom:1rem}.admin-section .card-section-header .page-subtitle{margin-top:.25rem}.admin-add{display:flex;gap:.5rem;margin-bottom:1rem;align-items:center}.admin-add-input{flex:1;min-width:0;height:40px;padding:0 .875rem;font-family:inherit;font-size:var(--font-size-sm);border:1px solid var(--color-gray-300);border-radius:var(--radius-md);background:var(--color-gray-50);color:var(--color-gray-800);outline:none;transition:all var(--transition-fast)}.admin-add-input:hover{border-color:var(--color-gray-400);background:#fff}.admin-add-input:focus{border-color:var(--color-primary);background:#fff;box-shadow:var(--shadow-focus)}.color-input{width:40px;height:40px;padding:2px;border:1px solid var(--color-gray-300);border-radius:var(--radius-md);background:#fff;cursor:pointer;flex-shrink:0}.admin-empty{padding:.5rem 0}.admin-list{list-style:none;display:flex;flex-direction:column;gap:.25rem}.admin-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.5rem .75rem;border-radius:var(--radius-md);transition:background var(--transition-fast)}.admin-row:hover,.admin-row-editing{background:var(--color-gray-50)}.admin-row-name{display:inline-flex;align-items:center;gap:.5rem;font-size:var(--font-size-sm);color:var(--color-gray-800);min-width:0}.form-group-action{justify-content:flex-end}.form-group-action .btn{height:40px}.btn-sm{padding:.375rem .75rem;font-size:var(--font-size-xs);border-radius:var(--radius-sm)}.text-muted{color:var(--color-gray-400)}.error-boundary{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:1rem}.error-boundary button{padding:.5rem 1.25rem;font-size:var(--font-size-base);font-weight:500;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:none;border-radius:var(--radius-lg);cursor:pointer}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-gray-300);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-gray-400)}@media(max-width:768px){.app-main{padding:1.25rem}.form-row{grid-template-columns:1fr}}
