@import "https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap";@import "https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap";@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500;600;700&display=swap";@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500;600;700&display=swap";@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500;600;700&display=swap";@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500;600;700&display=swap";@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500;600;700&display=swap";@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500;600;700&display=swap";@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500;600;700&display=swap";@import "https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap";@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500;600;700&display=swap";*{box-sizing:border-box;margin:0;padding:0}:root{--color-primary:#3b82f6;--color-primary-hover:#2563eb;--color-primary-light:#eff6ff;--color-secondary:#64748b;--color-success:#10b981;--color-warning:#f59e0b;--color-danger:#ef4444;--color-info:#06b6d4;--color-text-primary:#0f172a;--color-text-secondary:#475569;--color-text-tertiary:#94a3b8;--color-border:#e2e8f0;--color-border-light:#f1f5f9;--color-bg-primary:#fff;--color-bg-secondary:#f8fafc;--color-bg-tertiary:#f1f5f9;--color-bg-hover:#f8fafc;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;--shadow-xl:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--spacing-xs:4px;--spacing-sm:8px;--spacing-md:16px;--spacing-lg:24px;--spacing-xl:32px;--transition-fast:.15s cubic-bezier(.4,0,.2,1);--transition-base:.2s cubic-bezier(.4,0,.2,1);--transition-slow:.3s cubic-bezier(.4,0,.2,1);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--color-text-primary);background-color:var(--color-bg-secondary);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Microsoft YaHei,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-weight:400;line-height:1.6}body{background:var(--color-bg-secondary);width:100%;min-width:320px;height:100vh;min-height:100vh;margin:0;padding:0;overflow:hidden}#root{width:100%;height:100%}.sidebar{color:#fff;width:260px;height:100vh;transition:width var(--transition-base);box-shadow:var(--shadow-lg);z-index:1000;background:linear-gradient(#1e293b 0%,#0f172a 100%);border-right:1px solid #ffffff1a;flex-direction:column;display:flex;position:fixed;top:0;left:0}.sidebar.collapsed{width:72px}.sidebar-header{padding:var(--spacing-lg)var(--spacing-md);justify-content:space-between;align-items:center;gap:var(--spacing-md);border-bottom:1px solid #ffffff1a;min-height:72px;display:flex}.sidebar-brand{align-items:center;gap:var(--spacing-sm);flex:1;min-width:0;display:flex}.sidebar-brand-collapsed{justify-content:center;align-items:center;width:100%;display:flex}.brand-icon{color:var(--color-primary);flex-shrink:0}.sidebar-title{color:#fff;white-space:nowrap;letter-spacing:-.02em;margin:0;font-size:18px;font-weight:700;overflow:hidden}.sidebar-toggle{border-radius:var(--radius-md);color:#ffffffe6;cursor:pointer;width:36px;height:36px;transition:all var(--transition-base);background:#ffffff14;border:1px solid #ffffff26;flex-shrink:0;justify-content:center;align-items:center;display:flex}.sidebar-toggle:hover{background:#ffffff26;border-color:#ffffff40;transform:scale(1.05)}.sidebar-toggle:active{transform:scale(.95)}.sidebar-nav{padding:var(--spacing-md)var(--spacing-sm);gap:var(--spacing-xs);flex-direction:column;flex:1;display:flex;overflow:hidden auto}.nav-item{width:100%;padding:var(--spacing-md)var(--spacing-md);border-radius:var(--radius-md);color:#ffffffbf;cursor:pointer;align-items:center;gap:var(--spacing-md);transition:all var(--transition-base);text-align:left;background:0 0;border:none;font-size:14px;font-weight:500;display:flex;position:relative}.nav-item:hover{color:#fff;background:#ffffff14;transform:translate(2px)}.nav-item.active{color:#fff;background:linear-gradient(135deg,#3b82f633 0%,#2563eb26 100%);border:1px solid #3b82f64d;box-shadow:0 2px 8px #3b82f633}.nav-item.active:before{content:"";background:var(--color-primary);border-radius:0 2px 2px 0;width:3px;height:70%;position:absolute;top:50%;left:0;transform:translateY(-50%);box-shadow:0 0 8px #3b82f680}.nav-item.active .nav-icon{color:var(--color-primary)}.nav-icon{width:20px;height:20px;transition:color var(--transition-base);flex-shrink:0;justify-content:center;align-items:center;display:flex}.nav-label{white-space:nowrap;flex:1;overflow:hidden}.sidebar.collapsed .nav-item{padding:var(--spacing-md);justify-content:center}.sidebar-footer{padding:var(--spacing-md);gap:var(--spacing-sm);border-top:1px solid #ffffff1a;flex-direction:column;display:flex}.sidebar-user-info{padding:var(--spacing-sm)var(--spacing-md);border-radius:var(--radius-md);text-align:center;background:#ffffff0d}.user-name{color:#fff;margin-bottom:2px;font-size:14px;font-weight:600}.user-dept{color:#ffffff80;font-size:12px}.logout-button{color:#fff9!important}.logout-button:hover{color:#f87171!important;background:#ef444426!important}.logout-button:hover .nav-icon{color:#f87171}.sidebar-info{text-align:center;padding-top:var(--spacing-sm)}.info-text{color:#fff9;margin-bottom:var(--spacing-xs);letter-spacing:.5px;font-size:12px;font-weight:600}.info-version{color:#fff6;font-size:11px;font-weight:400}.sidebar-nav::-webkit-scrollbar{width:6px}.sidebar-nav::-webkit-scrollbar-track{background:0 0}.sidebar-nav::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:3px}.sidebar-nav::-webkit-scrollbar-thumb:hover{background:#ffffff40}@media (max-width:768px){.sidebar{width:72px}.sidebar.collapsed{width:0;overflow:hidden}}:root{--sc-primary:#fff;--sc-secondary:#a0a8b8;--sc-accent:#8b5cf6;--sc-accent-glow:#8b5cf64d;--sc-success:#10b981;--sc-danger:#ef4444;--sc-glass:#ffffff08;--sc-glass-border:#ffffff14;--sc-glass-hover:#ffffff0f;--sc-dark-bg:#0006}.supply-chain-widget{width:100%;height:100%;color:var(--sc-primary);box-sizing:border-box;background:0 0;flex-direction:column;gap:12px;padding:16px;font-family:Outfit,system-ui,sans-serif;font-size:13px;display:flex;overflow:hidden}.filter-action-group{background:var(--sc-glass);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--sc-glass-border);border-radius:10px;flex-shrink:0;justify-content:flex-start;align-items:center;gap:8px;padding:12px 16px;display:flex}.filter-buttons{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.filter-btn{border:1px solid var(--sc-glass-border);background:var(--sc-dark-bg);height:34px;color:var(--sc-secondary);cursor:pointer;white-space:nowrap;border-radius:8px;padding:0 16px;font-family:inherit;font-size:13px;font-weight:500;transition:all .2s}.filter-btn:hover{background:var(--sc-glass-hover);color:var(--sc-primary);border-color:#8b5cf666}.filter-btn.active{background:var(--sc-accent);color:#fff;box-shadow:0 2px 8px var(--sc-accent-glow);border-color:#0000;font-weight:600}.toolbar{background:var(--sc-glass);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--sc-glass-border);border-radius:10px;flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;display:flex}.toolbar-left,.toolbar-right{align-items:center;gap:10px;display:flex}.page-title{color:#fff;white-space:nowrap;align-items:center;gap:8px;margin:0;font-size:15px;font-weight:600;display:flex}.page-title svg{color:var(--sc-accent)}.filter-chip{border:1px solid var(--sc-glass-border);background:var(--sc-dark-bg);height:28px;color:var(--sc-secondary);cursor:pointer;border-radius:14px;padding:0 12px;font-family:inherit;font-size:12px;font-weight:500;transition:all .2s}.filter-chip:hover{background:var(--sc-glass-hover);color:var(--sc-primary)}.filter-chip.active{background:var(--sc-accent);border-color:#0000;font-weight:600;color:#fff!important}.filter-chip.filter-material.active{background:#8b5cf6;color:#fff!important}.filter-chip.filter-accessory.active{background:#f59e0b;color:#1a1a1a!important}.filter-chip.filter-shipping.active{background:#06b6d4;color:#1a1a1a!important}.filter-chip.filter-service.active{background:#10b981;color:#1a1a1a!important}.search-box{background:var(--sc-dark-bg);border:1px solid var(--sc-glass-border);border-radius:8px;align-items:center;gap:8px;min-width:160px;height:32px;padding:0 10px;display:flex}.search-box:focus-within{border-color:var(--sc-accent);box-shadow:0 0 0 2px var(--sc-accent-glow)}.search-box input{color:var(--sc-primary);background:0 0;border:none;outline:none;flex:1;min-width:80px;font-family:inherit;font-size:13px}.search-box input::placeholder{color:var(--sc-secondary);opacity:.5}.search-clear{cursor:pointer;color:var(--sc-secondary);background:0 0;border:none;border-radius:3px;padding:2px;display:flex}.search-clear:hover{color:var(--sc-primary)}.btn{border:1px solid var(--sc-glass-border);background:var(--sc-glass);height:32px;color:var(--sc-secondary);cursor:pointer;white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-family:inherit;font-size:12px;font-weight:600;transition:all .2s;display:inline-flex}.btn:hover:not(:disabled){background:var(--sc-glass-hover);color:var(--sc-primary)}.btn-primary{background:var(--sc-accent);color:#fff;border:none}.btn-primary:hover:not(:disabled){color:#fff;background:#7c3aed}.btn-icon{background:0 0;border:none;width:32px;padding:0}.btn-icon:hover{background:var(--sc-glass-hover)}.main-content{flex:1;gap:12px;min-height:0;display:flex}.table-panel{flex-direction:column;flex:1;gap:10px;min-width:0;display:flex}.table-container{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--sc-glass-border);background:linear-gradient(#00000040 0%,#00000026 100%);border-radius:10px;flex:1;min-height:0;overflow:auto}.loading-state,.empty-state{color:var(--sc-secondary);flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:200px;padding:40px;display:flex}.loading-state svg{color:var(--sc-accent)}.empty-state svg{opacity:.3}.supply-chain-widget .data-table{border-collapse:separate;border-spacing:0;table-layout:fixed;width:100%}.supply-chain-widget .data-table thead{z-index:10;position:sticky;top:0}.supply-chain-widget .data-table th{text-align:center;color:#c4b5fd;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;background:linear-gradient(#1e1b2df2 0%,#181626fa 100%);border-bottom:2px solid #8b5cf666;padding:10px 6px;font-size:13px;font-weight:600}.supply-chain-widget .data-table th:first-child{border-radius:8px 0 0}.supply-chain-widget .data-table th:last-child{border-radius:0 8px 0 0}.supply-chain-widget .data-table tbody tr{cursor:pointer;transition:background .15s}.supply-chain-widget .data-table tbody tr:hover:not(.selected){background:#37305ae6}.supply-chain-widget .data-table tbody tr:hover:not(.selected) td{color:#fff;background:0 0}.supply-chain-widget .data-table tbody tr:hover:not(.selected) .cell-id{color:#e0dff0}.supply-chain-widget .data-table tbody tr:hover:not(.selected) .cell-unit{color:#fff}.supply-chain-widget .data-table tbody tr:hover:not(.selected) .cell-rate,.supply-chain-widget .data-table tbody tr:hover:not(.selected) .cell-origin{color:#f0eeff}.supply-chain-widget .data-table tbody tr:hover:not(.selected) .cell-date{color:#dddcf0}.supply-chain-widget .data-table tbody tr:hover:not(.selected) .cell-money.profit{color:#4ade80}.supply-chain-widget .data-table tbody tr.selected{background:#6450a0f2;box-shadow:inset 4px 0 #c4b5fd}.supply-chain-widget .data-table tbody tr.selected td{color:#fff;background:0 0}.supply-chain-widget .data-table tbody tr.selected .cell-id{color:#e8e6f8}.supply-chain-widget .data-table tbody tr.selected .cell-unit,.supply-chain-widget .data-table tbody tr.selected .cell-rate,.supply-chain-widget .data-table tbody tr.selected .cell-origin{color:#fff}.supply-chain-widget .data-table tbody tr.selected .cell-date{color:#e8e6f8}.supply-chain-widget .data-table tbody tr.selected .cell-money.profit{color:#4ade80}.supply-chain-widget .data-table tbody tr.selected:hover{background:#c8bef0f2;box-shadow:inset 4px 0 #8b5cf6}.supply-chain-widget .data-table tbody tr.selected:hover td{color:#1a1625;background:0 0}.supply-chain-widget .data-table tbody tr.selected:hover .cell-id{color:#3d3654}.supply-chain-widget .data-table tbody tr.selected:hover .cell-name{color:#1a1625}.supply-chain-widget .data-table tbody tr.selected:hover .cell-unit{color:#2d2445}.supply-chain-widget .data-table tbody tr.selected:hover .cell-money{color:#1a1625}.supply-chain-widget .data-table tbody tr.selected:hover .cell-rate,.supply-chain-widget .data-table tbody tr.selected:hover .cell-origin{color:#2d2445}.supply-chain-widget .data-table tbody tr.selected:hover .cell-date{color:#4a4068}.supply-chain-widget .data-table tbody tr.selected:hover .cell-money.profit{color:#059669}.supply-chain-widget .data-table td{text-align:center;color:#e2e0eb;white-space:nowrap;text-overflow:ellipsis;background:#141220b3;border-bottom:1px solid #8b5cf659;padding:10px 8px;font-size:14px;overflow:hidden}.supply-chain-widget .cell-id{color:#b0afc0;font-family:JetBrains Mono,monospace;font-size:12px}.supply-chain-widget .cell-name{text-align:center;color:#fff;font-size:14px;font-weight:600}.supply-chain-widget .cell-unit{color:#ddd6fe;font-size:12px;font-weight:500}.supply-chain-widget .cell-money{color:#fff;font-family:JetBrains Mono,monospace;font-size:13px;font-weight:600}.supply-chain-widget .cell-money.profit{color:#6ee7b7}.supply-chain-widget .cell-rate{color:#c8c6d8;font-family:JetBrains Mono,monospace;font-size:12px}.supply-chain-widget .cell-origin{color:#c8c6d8;font-size:13px}.supply-chain-widget .cell-date{color:#9e9cb0;font-family:JetBrains Mono,monospace;font-size:12px}.supply-chain-widget .cell-stock{color:#10b981;font-family:JetBrains Mono,monospace;font-size:13px;font-weight:600}.supply-chain-widget .cell-stock.low-stock{color:#f59e0b;background:#f59e0b1a}.supply-chain-widget .cell-actions{justify-content:center;align-items:center;gap:2px;display:flex}.supply-chain-widget .type-tag{letter-spacing:.02em;border-radius:4px;align-items:center;padding:3px 8px;font-size:12px;font-weight:600;display:inline-flex}.supply-chain-widget .type-tag.type-material{text-shadow:0 0 1px #0000004d;background:#a78bfa59;border:1px solid #a78bfa99;color:#f0ebff!important}.supply-chain-widget .type-tag.type-accessory{text-shadow:0 0 1px #0000004d;background:#fbbf2459;border:1px solid #fbbf2499;color:#fffbeb!important}.supply-chain-widget .type-tag.type-service{text-shadow:0 0 1px #0000004d;background:#34d39959;border:1px solid #34d39999;color:#ecfdf5!important}.supply-chain-widget .type-tag.type-shipping{text-shadow:0 0 1px #0000004d;background:#22d3ee59;border:1px solid #22d3ee99;color:#ecfeff!important}.supply-chain-widget .data-table tbody tr:hover .type-tag.type-material,.supply-chain-widget .data-table tbody tr.selected .type-tag.type-material{background:#a78bfa80;color:#fff!important}.supply-chain-widget .data-table tbody tr:hover .type-tag.type-accessory,.supply-chain-widget .data-table tbody tr.selected .type-tag.type-accessory{background:#fbbf2480;color:#fff!important}.supply-chain-widget .data-table tbody tr:hover .type-tag.type-service,.supply-chain-widget .data-table tbody tr.selected .type-tag.type-service{background:#34d39980;color:#fff!important}.supply-chain-widget .data-table tbody tr:hover .type-tag.type-shipping,.supply-chain-widget .data-table tbody tr.selected .type-tag.type-shipping{background:#22d3ee80;color:#fff!important}.supply-chain-widget .icon-btn{color:#8b8a97;cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;width:24px;height:24px;transition:all .15s;display:flex}.supply-chain-widget .icon-btn.edit:hover{color:#818cf8;background:#6366f133}.supply-chain-widget .icon-btn.delete:hover{color:#fb7185;background:#f43f5e33}.pagination{background:var(--sc-glass);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--sc-glass-border);border-radius:8px;flex-shrink:0;justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.pagination-left,.pagination-right{align-items:center;gap:8px;display:flex}.page-btn{border:1px solid var(--sc-glass-border);background:var(--sc-dark-bg);width:28px;height:28px;color:var(--sc-secondary);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;transition:all .15s;display:flex}.page-btn:hover:not(:disabled){background:var(--sc-glass-hover);color:var(--sc-primary)}.page-info{color:var(--sc-secondary);padding:0 6px;font-size:12px}.page-total{color:var(--sc-secondary);font-size:11px}.page-size-select{border:1px solid var(--sc-glass-border);height:28px;color:var(--sc-primary);background:var(--sc-dark-bg);cursor:pointer;border-radius:6px;padding:0 8px;font-family:inherit;font-size:11px}.page-size-select:focus{border-color:var(--sc-accent);outline:none}.page-size-select option{color:var(--sc-primary);background:#1a1a2e}.form-panel{background:var(--sc-glass);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--sc-glass-border);border-radius:10px;flex-direction:column;flex-shrink:0;width:300px;animation:.2s ease-out slideIn;display:flex}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.form-header{border-bottom:1px solid var(--sc-glass-border);background:#8b5cf60d;align-items:center;gap:8px;padding:12px 14px;display:flex}.form-header h3{color:#fff;flex:1;margin:0;font-size:14px;font-weight:600}.form-id{color:var(--sc-secondary);background:var(--sc-dark-bg);border-radius:4px;padding:2px 8px;font-family:JetBrains Mono,monospace;font-size:10px}.form-close{cursor:pointer;color:var(--sc-secondary);background:0 0;border:none;border-radius:6px;padding:4px;display:flex}.form-close:hover{background:var(--sc-glass-hover);color:var(--sc-primary)}.form-body{flex-direction:column;flex:1;gap:10px;padding:14px;display:flex;overflow-y:auto}.form-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.supply-chain-widget .form-field{flex-direction:column;gap:4px;min-width:0;display:flex}.supply-chain-widget .form-field label{color:#e879f9;text-transform:uppercase;letter-spacing:.03em;text-shadow:0 0 6px #e879f940;font-size:10px;font-weight:600}.supply-chain-widget .form-field .required{color:var(--sc-danger)}.form-field input,.form-field select,.form-field textarea{border:1px solid var(--sc-glass-border);background:var(--sc-dark-bg);width:100%;height:34px;color:var(--sc-primary);box-sizing:border-box;border-radius:6px;min-width:0;max-width:100%;padding:0 10px;font-family:inherit;font-size:13px;transition:border-color .15s}.form-field textarea{resize:vertical;height:auto;min-height:50px;padding:8px 10px}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--sc-accent);outline:none}.form-field input::placeholder,.form-field textarea::placeholder{color:var(--sc-secondary);opacity:.4}.form-field select option{color:var(--sc-primary);background:#1a1a2e}.form-section{background:#8b5cf60d;border:1px dashed #8b5cf633;border-radius:8px;margin:4px 0;padding:10px}.section-title{color:var(--sc-accent);text-transform:uppercase;align-items:center;gap:6px;margin-bottom:8px;font-size:10px;font-weight:600;display:flex}.form-footer{border-top:1px solid var(--sc-glass-border);gap:8px;padding:12px 14px;display:flex}.form-footer .btn{flex:1}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.table-container::-webkit-scrollbar{width:6px;height:6px}.form-body::-webkit-scrollbar{width:6px;height:6px}.table-container::-webkit-scrollbar-track{background:#0000001a;border-radius:3px}.form-body::-webkit-scrollbar-track{background:#0000001a;border-radius:3px}.table-container::-webkit-scrollbar-thumb{background:#8b5cf640;border-radius:3px}.form-body::-webkit-scrollbar-thumb{background:#8b5cf640;border-radius:3px}.table-container::-webkit-scrollbar-thumb:hover{background:#8b5cf666}.form-body::-webkit-scrollbar-thumb:hover{background:#8b5cf666}@media (max-width:1200px){.main-content{flex-direction:column}.form-panel{width:100%;max-height:350px}}@media (max-width:768px){.supply-chain-widget{gap:10px;padding:12px}.toolbar{flex-direction:column;align-items:stretch;gap:10px}.toolbar-left,.toolbar-right{flex-wrap:wrap;justify-content:center}.search-box{min-width:100%}}:root{--pb-primary:#fff;--pb-secondary:#a0a8b8;--pb-accent:#8b5cf6;--pb-accent-glow:#8b5cf64d;--pb-success:#10b981;--pb-danger:#ef4444;--pb-warning:#f59e0b;--pb-cyan:#06b6d4;--pb-glass:#ffffff08;--pb-glass-border:#ffffff14;--pb-glass-hover:#ffffff0f;--pb-dark-bg:#0006}.packing-box-widget{width:100%;height:100%;color:var(--pb-primary);box-sizing:border-box;background:0 0;flex-direction:column;gap:12px;padding:16px;font-family:Outfit,system-ui,sans-serif;font-size:13px;display:flex;overflow:hidden}.packing-box-widget .toolbar{background:var(--pb-glass);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--pb-glass-border);border-radius:10px;flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;display:flex}.packing-box-widget .toolbar-left,.packing-box-widget .toolbar-right{align-items:center;gap:10px;display:flex}.packing-box-widget .page-title{color:#fff;white-space:nowrap;align-items:center;gap:8px;margin:0;font-size:15px;font-weight:600;display:flex}.packing-box-widget .page-title svg{color:var(--pb-accent)}.packing-box-widget .filter-group{gap:6px;display:flex}.packing-box-widget .filter-chip{border:1px solid var(--pb-glass-border);background:var(--pb-dark-bg);height:28px;color:var(--pb-secondary);cursor:pointer;border-radius:14px;padding:0 12px;font-family:inherit;font-size:12px;font-weight:500;transition:all .2s}.packing-box-widget .filter-chip:hover{background:var(--pb-glass-hover);color:var(--pb-primary)}.packing-box-widget .filter-chip.active{background:var(--pb-accent);color:#fff;border-color:#0000}.packing-box-widget .filter-chip.filter-airplane.active{background:#8b5cf6}.packing-box-widget .filter-chip.filter-foam.active{background:#f59e0b}.packing-box-widget .filter-chip.filter-carton.active{background:#06b6d4}.packing-box-widget .search-box{background:var(--pb-dark-bg);border:1px solid var(--pb-glass-border);border-radius:8px;align-items:center;gap:8px;min-width:160px;height:32px;padding:0 10px;display:flex}.packing-box-widget .search-box:focus-within{border-color:var(--pb-accent);box-shadow:0 0 0 2px var(--pb-accent-glow)}.packing-box-widget .search-box svg{color:var(--pb-secondary);opacity:.6;flex-shrink:0}.packing-box-widget .search-box input{color:var(--pb-primary);background:0 0;border:none;outline:none;flex:1;min-width:80px;font-family:inherit;font-size:13px}.packing-box-widget .search-box input::placeholder{color:var(--pb-secondary);opacity:.5}.packing-box-widget .search-clear{cursor:pointer;color:var(--pb-secondary);background:0 0;border:none;border-radius:3px;padding:2px;display:flex}.packing-box-widget .search-clear:hover{color:var(--pb-primary)}.packing-box-widget .btn{border:1px solid var(--pb-glass-border);background:var(--pb-glass);height:32px;color:var(--pb-secondary);cursor:pointer;white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-family:inherit;font-size:12px;font-weight:600;transition:all .2s;display:inline-flex}.packing-box-widget .btn:hover:not(:disabled){background:var(--pb-glass-hover);color:var(--pb-primary)}.packing-box-widget .btn:disabled{opacity:.5;cursor:not-allowed}.packing-box-widget .btn-primary{background:var(--pb-accent);color:#fff;border:none}.packing-box-widget .btn-primary:hover:not(:disabled){color:#fff;background:#7c3aed}.packing-box-widget .btn-icon{background:0 0;border:none;width:32px;padding:0}.packing-box-widget .btn-icon:hover{background:var(--pb-glass-hover)}.packing-box-widget .main-content{flex:1;gap:12px;min-height:0;display:flex}.packing-box-widget .table-panel{flex-direction:column;flex:1;gap:10px;min-width:0;display:flex}.packing-box-widget .table-container{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--pb-glass-border);background:linear-gradient(#00000040 0%,#00000026 100%);border-radius:10px;flex:1;min-height:0;overflow:auto}.packing-box-widget .loading-state,.packing-box-widget .empty-state{color:var(--pb-secondary);flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:200px;padding:40px;display:flex}.packing-box-widget .loading-state svg{color:var(--pb-accent)}.packing-box-widget .empty-state svg{opacity:.3}.packing-box-widget .data-table{border-collapse:separate;border-spacing:0;table-layout:fixed;width:100%}.packing-box-widget .data-table thead{z-index:10;position:sticky;top:0}.packing-box-widget .data-table th{text-align:center;color:#c4b5fd;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;background:linear-gradient(#1e1b2df2 0%,#181626fa 100%);border-bottom:2px solid #8b5cf666;padding:12px 8px;font-size:11px;font-weight:600}.packing-box-widget .data-table th:first-child{border-radius:8px 0 0}.packing-box-widget .data-table th:last-child{border-radius:0 8px 0 0}.packing-box-widget .data-table tbody tr{cursor:pointer;transition:background .15s}.packing-box-widget .data-table tbody tr:hover:not(.selected){background:#8b5cf61f}.packing-box-widget .data-table tbody tr.selected{background:#8b5cf633;box-shadow:inset 3px 0 #a78bfa}.packing-box-widget .data-table td{text-align:center;color:#e2e0eb;white-space:nowrap;text-overflow:ellipsis;background:#141220b3;border-bottom:1px solid #8b5cf659;padding:12px 10px;font-size:13px;overflow:hidden}.packing-box-widget .cell-id{color:#8b8a97;font-family:JetBrains Mono,monospace;font-size:11px}.packing-box-widget .cell-name{text-align:center;color:#f0eeff;font-size:13px;font-weight:600}.packing-box-widget .cell-dimension{color:#a5a3b3;font-family:JetBrains Mono,monospace;font-size:12px}.packing-box-widget .cell-money{color:#f0eeff;font-family:JetBrains Mono,monospace;font-size:12px;font-weight:600}.packing-box-widget .cell-money.total{color:#a78bfa;font-weight:700}.packing-box-widget .cell-sort{color:#7c7a8a;font-family:JetBrains Mono,monospace;font-size:11px}.packing-box-widget .cell-stock{color:#10b981;font-family:JetBrains Mono,monospace;font-size:13px;font-weight:600}.packing-box-widget .cell-stock.low-stock{color:#f59e0b;background:#f59e0b1a}.packing-box-widget .cell-actions{justify-content:center;align-items:center;gap:2px;display:flex}.packing-box-widget .type-tag{letter-spacing:.02em;border-radius:4px;align-items:center;padding:4px 10px;font-size:11px;font-weight:600;display:inline-flex}.packing-box-widget .type-tag.type-airplane{color:#c4b5fd;background:#a78bfa26;border:1px solid #a78bfa4d}.packing-box-widget .type-tag.type-foam{color:#fcd34d;background:#fbbf2426;border:1px solid #fbbf244d}.packing-box-widget .type-tag.type-carton{color:#67e8f9;background:#22d3ee26;border:1px solid #22d3ee4d}.packing-box-widget .size-tag{color:#a5a3b3;background:#ffffff14;border:1px solid #ffffff1a;border-radius:4px;align-items:center;padding:3px 8px;font-size:10px;font-weight:600;display:inline-flex}.packing-box-widget .status-tag{letter-spacing:.02em;border-radius:4px;align-items:center;padding:4px 10px;font-size:10px;font-weight:600;display:inline-flex}.packing-box-widget .status-tag.active{color:#6ee7b7;background:#34d39926;border:1px solid #34d3994d}.packing-box-widget .status-tag.inactive{color:#fb7185;background:#f43f5e26;border:1px solid #f43f5e4d}.packing-box-widget .icon-btn{color:#8b8a97;cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;width:26px;height:26px;transition:all .15s;display:flex}.packing-box-widget .icon-btn.edit:hover{color:#818cf8;background:#6366f133}.packing-box-widget .icon-btn.toggle:hover{color:#6ee7b7;background:#34d39933}.packing-box-widget .icon-btn.delete:hover{color:#fb7185;background:#f43f5e33}.packing-box-widget .pagination{background:var(--pb-glass);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--pb-glass-border);border-radius:8px;flex-shrink:0;justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.packing-box-widget .pagination-left,.packing-box-widget .pagination-right{align-items:center;gap:8px;display:flex}.packing-box-widget .page-btn{border:1px solid var(--pb-glass-border);background:var(--pb-dark-bg);width:28px;height:28px;color:var(--pb-secondary);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;transition:all .15s;display:flex}.packing-box-widget .page-btn:hover:not(:disabled){background:var(--pb-glass-hover);color:var(--pb-primary)}.packing-box-widget .page-btn:disabled{opacity:.3;cursor:not-allowed}.packing-box-widget .page-info{color:var(--pb-secondary);padding:0 6px;font-size:12px}.packing-box-widget .page-total{color:var(--pb-secondary);font-size:11px}.packing-box-widget .page-size-select{border:1px solid var(--pb-glass-border);height:28px;color:var(--pb-primary);background:var(--pb-dark-bg);cursor:pointer;border-radius:6px;padding:0 8px;font-family:inherit;font-size:11px}.packing-box-widget .page-size-select:focus{border-color:var(--pb-accent);outline:none}.packing-box-widget .page-size-select option{color:var(--pb-primary);background:#1a1a2e}.packing-box-widget .form-panel{background:var(--pb-glass);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--pb-glass-border);border-radius:10px;flex-direction:column;flex-shrink:0;width:300px;animation:.2s ease-out pbSlideIn;display:flex}@keyframes pbSlideIn{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.packing-box-widget .form-header{border-bottom:1px solid var(--pb-glass-border);background:#8b5cf60d;align-items:center;gap:8px;padding:12px 14px;display:flex}.packing-box-widget .form-header h3{color:#fff;flex:1;margin:0;font-size:14px;font-weight:600}.packing-box-widget .form-id{color:var(--pb-secondary);background:var(--pb-dark-bg);border-radius:4px;padding:2px 8px;font-family:JetBrains Mono,monospace;font-size:10px}.packing-box-widget .form-close{cursor:pointer;color:var(--pb-secondary);background:0 0;border:none;border-radius:6px;padding:4px;display:flex}.packing-box-widget .form-close:hover{background:var(--pb-glass-hover);color:var(--pb-primary)}.packing-box-widget .form-body{flex-direction:column;flex:1;gap:10px;padding:14px;display:flex;overflow-y:auto}.packing-box-widget .form-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.packing-box-widget .form-field{flex-direction:column;gap:4px;display:flex}.packing-box-widget .form-field label{color:#e879f9;text-transform:uppercase;letter-spacing:.03em;text-shadow:0 0 6px #e879f940;font-size:10px;font-weight:600}.packing-box-widget .form-field .required{color:var(--pb-danger)}.packing-box-widget .form-field .hint{color:var(--pb-secondary);opacity:.7;text-transform:none;font-size:9px;font-weight:400}.packing-box-widget .form-field input,.packing-box-widget .form-field select,.packing-box-widget .form-field textarea{border:1px solid var(--pb-glass-border);background:var(--pb-dark-bg);width:100%;height:34px;color:var(--pb-primary);box-sizing:border-box;border-radius:6px;padding:0 10px;font-family:inherit;font-size:13px;transition:border-color .15s}.packing-box-widget .form-field textarea{resize:vertical;height:auto;min-height:50px;padding:8px 10px}.packing-box-widget .form-field input:focus,.packing-box-widget .form-field select:focus,.packing-box-widget .form-field textarea:focus{border-color:var(--pb-accent);color:#fff;box-shadow:0 0 0 2px var(--pb-accent-glow);background:#1e293bf2;outline:none}.packing-box-widget .form-field input::placeholder,.packing-box-widget .form-field textarea::placeholder{color:#a0a8b8;opacity:.6}.packing-box-widget .form-field select option{color:var(--pb-primary);background:#1a1a2e}.packing-box-widget .form-section{background:#8b5cf60d;border:1px dashed #8b5cf633;border-radius:8px;margin:4px 0;padding:10px}.packing-box-widget .section-title{color:#c4b5fd;text-transform:uppercase;text-shadow:0 0 6px #c4b5fd4d;align-items:center;gap:6px;margin-bottom:8px;font-size:10px;font-weight:600;display:flex}.packing-box-widget .switch-group{background:var(--pb-dark-bg);border:1px solid var(--pb-glass-border);border-radius:6px;align-items:center;gap:8px;height:34px;padding:0 10px;display:flex}.packing-box-widget .switch-group input[type=checkbox]{width:16px;height:16px;accent-color:var(--pb-accent);cursor:pointer}.packing-box-widget .switch-label{color:#d8b4fe;cursor:pointer;font-size:12px;font-weight:500}.packing-box-widget .form-footer{border-top:1px solid var(--pb-glass-border);gap:8px;padding:12px 14px;display:flex}.packing-box-widget .form-footer .btn{flex:1}.packing-box-widget .spinning{animation:.8s linear infinite pbSpin}@keyframes pbSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.packing-box-widget .table-container::-webkit-scrollbar{width:6px;height:6px}.packing-box-widget .form-body::-webkit-scrollbar{width:6px;height:6px}.packing-box-widget .table-container::-webkit-scrollbar-track{background:#0000001a;border-radius:3px}.packing-box-widget .form-body::-webkit-scrollbar-track{background:#0000001a;border-radius:3px}.packing-box-widget .table-container::-webkit-scrollbar-thumb{background:#8b5cf640;border-radius:3px}.packing-box-widget .form-body::-webkit-scrollbar-thumb{background:#8b5cf640;border-radius:3px}.packing-box-widget .table-container::-webkit-scrollbar-thumb:hover{background:#8b5cf666}.packing-box-widget .form-body::-webkit-scrollbar-thumb:hover{background:#8b5cf666}@media (max-width:1200px){.packing-box-widget .main-content{flex-direction:column}.packing-box-widget .form-panel{width:100%;max-height:350px}}@media (max-width:768px){.packing-box-widget{gap:10px;padding:12px}.packing-box-widget .toolbar{flex-direction:column;align-items:stretch;gap:10px}.packing-box-widget .toolbar-left,.packing-box-widget .toolbar-right{flex-wrap:wrap;justify-content:center}.packing-box-widget .search-box{min-width:100%}}:root{--pp-primary:#fff;--pp-secondary:#e0e4eb;--pp-accent:#3b82f6;--pp-accent-glow:#3b82f666;--pp-success:#10b981;--pp-success-glow:#10b98166;--pp-warning:#f59e0b;--pp-warning-glow:#f59e0b4d;--pp-danger:#ef4444;--pp-danger-glow:#ef44444d;--pp-purple:#8b5cf6;--pp-purple-glow:#8b5cf64d;--pp-cyan:#06b6d4;--pp-cyan-glow:#06b6d44d;--pp-glass:#ffffff08;--pp-glass-border:#ffffff14;--pp-glass-hover:#ffffff0f;--pp-dark-bg:#0006}.price-prediction-widget{background:0 0;flex-direction:column;width:100%;height:100%;font-family:Outfit,system-ui,-apple-system,sans-serif;display:flex;position:relative;overflow:hidden}.price-prediction-widget:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(circle,#3b82f626 0%,#0000 70%);width:400px;height:400px;position:absolute;top:-150px;right:-150px}.price-prediction-widget:after{content:"";pointer-events:none;z-index:0;background:radial-gradient(circle,#10b9811a 0%,#0000 70%);width:300px;height:300px;position:absolute;bottom:-100px;left:-100px}.prediction-header{background:var(--pp-glass);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--pp-glass-border);z-index:1;flex-shrink:0;justify-content:space-between;align-items:center;padding:18px 24px;display:flex;position:relative}.prediction-title{color:#fff;letter-spacing:-.02em;align-items:center;gap:12px;font-size:20px;font-weight:700;display:flex}.prediction-title svg{color:var(--pp-accent);filter:drop-shadow(0 0 8px var(--pp-accent-glow))}.prediction-title:after{content:"BETA";color:#fff;background:linear-gradient(135deg,var(--pp-warning)0%,#d97706 100%);letter-spacing:.5px;box-shadow:0 2px 10px var(--pp-warning-glow);border-radius:12px;padding:3px 10px;font-size:10px;font-weight:600}.refresh-btn{border:1px solid var(--pp-glass-border);background:var(--pp-glass);color:var(--pp-secondary);cursor:pointer;border-radius:10px;align-items:center;gap:8px;padding:10px 18px;font-family:Outfit,sans-serif;font-size:13px;font-weight:500;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex}.refresh-btn:hover:not(:disabled){background:var(--pp-glass-hover);color:var(--pp-accent);border-color:#3b82f666;transform:translateY(-2px);box-shadow:0 4px 15px #3b82f626}.refresh-btn:active:not(:disabled){transform:translateY(0)}.refresh-btn svg.spinning{animation:.8s linear infinite spin}.status-message{border-bottom:1px solid var(--pp-glass-border);z-index:1;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);align-items:center;gap:12px;padding:14px 24px;font-size:13px;font-weight:500;animation:.3s ease-out slideDown;display:flex;position:relative}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.status-message.success{color:#34d399;border-left:3px solid var(--pp-success);background:linear-gradient(90deg,#10b98126 0%,#10b9810d 100%)}.status-message.error{color:#f87171;border-left:3px solid var(--pp-danger);background:linear-gradient(90deg,#ef444426 0%,#ef44440d 100%)}.status-message.info{color:#60a5fa;border-left:3px solid var(--pp-accent);background:linear-gradient(90deg,#3b82f626 0%,#3b82f60d 100%)}.prediction-content{z-index:1;flex:1;grid-template-columns:400px 1fr;gap:0;min-height:0;display:grid;position:relative;overflow:hidden}.prediction-form-panel{background:var(--pp-glass);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-right:1px solid var(--pp-glass-border);flex-direction:column;gap:20px;padding:24px;display:flex;overflow-y:auto}.prediction-form-panel::-webkit-scrollbar{width:8px}.prediction-form-panel::-webkit-scrollbar-track{background:#0003;border-radius:4px}.prediction-form-panel::-webkit-scrollbar-thumb{background:#3b82f64d;border-radius:4px}.prediction-form-panel::-webkit-scrollbar-thumb:hover{background:#3b82f680}.price-prediction-widget .form-section{background:var(--pp-dark-bg);border:1px solid var(--pp-glass-border);border-radius:16px;padding:18px;transition:all .25s}.price-prediction-widget .form-section:hover{border-color:#3b82f633;box-shadow:0 4px 25px #0003}.price-prediction-widget .section-title{color:#fff;border-bottom:1px solid var(--pp-glass-border);text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:10px;margin-bottom:16px;padding-bottom:12px;font-size:13px;font-weight:700;display:flex}.price-prediction-widget .section-title svg{color:var(--pp-accent);background:#3b82f626;border-radius:8px;padding:6px;box-shadow:0 0 10px #3b82f633}.price-prediction-widget .form-row{grid-template-columns:1fr 1fr;gap:14px;display:grid}.price-prediction-widget .form-field{flex-direction:column;gap:6px;margin-bottom:12px;display:flex}.price-prediction-widget .form-field label{text-transform:uppercase;letter-spacing:.05em;text-shadow:0 0 8px #e879f94d;font-size:11px;font-weight:600;color:#e879f9!important}.price-prediction-widget .form-field input,.price-prediction-widget .form-field select{border:1px solid var(--pp-glass-border);background:#0000004d;border-radius:10px;padding:12px 16px;font-family:Outfit,sans-serif;font-size:14px;line-height:1.5;transition:all .2s;color:#fff!important}.price-prediction-widget .form-field select option{color:#fff;background:#1a1a2e;padding:10px 14px;line-height:1.5}.price-prediction-widget .form-field input:hover,.price-prediction-widget .form-field select:hover{border-color:#3b82f666}.price-prediction-widget .form-field input:focus,.price-prediction-widget .form-field select:focus{border-color:var(--pp-accent);box-shadow:0 0 0 3px var(--pp-accent-glow);outline:none;color:#fff!important;background:#1e293bf2!important}.price-prediction-widget .form-field input:-webkit-autofill{caret-color:#fff;-webkit-text-fill-color:#fff!important;-webkit-box-shadow:inset 0 0 0 1000px #1e293bf2!important}.price-prediction-widget .form-field input:-webkit-autofill:hover{caret-color:#fff;-webkit-text-fill-color:#fff!important;-webkit-box-shadow:inset 0 0 0 1000px #1e293bf2!important}.price-prediction-widget .form-field input:-webkit-autofill:focus{caret-color:#fff;-webkit-text-fill-color:#fff!important;-webkit-box-shadow:inset 0 0 0 1000px #1e293bf2!important}.price-prediction-widget .form-field select:-webkit-autofill{caret-color:#fff;-webkit-text-fill-color:#fff!important;-webkit-box-shadow:inset 0 0 0 1000px #1e293bf2!important}.price-prediction-widget .form-field select:-webkit-autofill:hover{caret-color:#fff;-webkit-text-fill-color:#fff!important;-webkit-box-shadow:inset 0 0 0 1000px #1e293bf2!important}.price-prediction-widget .form-field select:-webkit-autofill:focus{caret-color:#fff;-webkit-text-fill-color:#fff!important;-webkit-box-shadow:inset 0 0 0 1000px #1e293bf2!important}.price-prediction-widget .form-field input[type=number]{font-family:JetBrains Mono,monospace;font-weight:500}.price-prediction-widget .form-field input::placeholder{color:#a0a8b8;opacity:.7}.price-prediction-widget .form-field select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23e879f9' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;height:46px;min-height:46px;padding-right:36px}.price-prediction-widget .dimension-preview{background:linear-gradient(135deg,#3b82f61f 0%,#3b82f60a 100%);border:1px dashed #3b82f659;border-radius:12px;align-items:center;gap:12px;margin-top:4px;padding:14px 16px;display:flex}.price-prediction-widget .preview-label{font-size:12px;font-weight:500;color:#c4b5fd!important}.preview-value{color:var(--pp-accent);text-shadow:0 0 10px var(--pp-accent-glow);background:#3b82f626;border-radius:8px;padding:6px 14px;font-family:JetBrains Mono,monospace;font-size:16px;font-weight:700}.price-prediction-widget .material-info{border:1px solid var(--pp-glass-border);background:#0000004d;border-radius:12px;margin-top:10px;padding:14px;animation:.3s fadeIn}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.price-prediction-widget .info-item{border-bottom:1px solid #ffffff0d;justify-content:space-between;padding:10px 0;font-size:12px;display:flex}.price-prediction-widget .info-item:last-child{border-bottom:none}.price-prediction-widget .info-item span:first-child{color:#d8b4fe!important}.price-prediction-widget .info-item span:last-child{color:#fff;font-family:JetBrains Mono,monospace;font-weight:600}.price-prediction-widget .tax-input-wrapper{align-items:center;display:flex}.price-prediction-widget .tax-input-wrapper input{border-right:none;border-radius:10px 0 0 10px;flex:1}.price-prediction-widget .tax-suffix{border:1px solid var(--pp-glass-border);color:#c4b5fd;background:#00000080;border-left:none;border-radius:0 10px 10px 0;padding:12px 18px;font-size:14px;font-weight:600}.price-prediction-widget .tax-hint{margin-top:8px;font-family:JetBrains Mono,monospace;font-size:11px;color:#a5b4fc!important}.calculate-btn{color:#fff;cursor:pointer;width:100%;box-shadow:0 6px 25px var(--pp-accent-glow);letter-spacing:.02em;background:linear-gradient(135deg,#3b82f6 0%,#2563eb 50%,#1d4ed8 100%);border:none;border-radius:14px;justify-content:center;align-items:center;gap:12px;padding:18px;font-family:Outfit,sans-serif;font-size:16px;font-weight:700;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.calculate-btn:before{content:"";background:linear-gradient(90deg,#0000,#fff3,#0000);width:100%;height:100%;transition:left .5s;position:absolute;top:0;left:-100%}.calculate-btn:hover:not(:disabled):before{left:100%}.calculate-btn:hover:not(:disabled){box-shadow:0 10px 40px var(--pp-accent-glow);transform:translateY(-3px)}.calculate-btn:active:not(:disabled){transform:translateY(-1px)}.calculate-btn:disabled{opacity:.6;cursor:not-allowed;box-shadow:none;transform:none}.calculate-btn svg.spinning{animation:.8s linear infinite spin}.prediction-result-panel{background:0 0;flex-direction:column;gap:24px;padding:24px;display:flex;overflow-y:auto}.prediction-result-panel::-webkit-scrollbar{width:8px}.prediction-result-panel::-webkit-scrollbar-track{background:#0003;border-radius:4px}.prediction-result-panel::-webkit-scrollbar-thumb{background:#10b9814d;border-radius:4px}.prediction-result-panel::-webkit-scrollbar-thumb:hover{background:#10b98180}.result-header{border-bottom:2px solid;border-image:linear-gradient(90deg,var(--pp-warning)0%,#d97706 50%,transparent 100%)1;align-items:center;gap:14px;padding-bottom:16px;animation:.4s ease-out slideIn;display:flex}.result-header svg{color:var(--pp-warning);filter:drop-shadow(0 0 8px var(--pp-warning-glow))}.result-header span{color:#fff;letter-spacing:-.02em;font-size:22px;font-weight:700}.result-summary{background:var(--pp-glass);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--pp-glass-border);border-radius:16px;grid-template-columns:repeat(2,1fr);gap:14px;padding:18px;animation:.4s ease-out .1s both fadeIn;display:grid}.summary-item{background:var(--pp-dark-bg);border-radius:12px;flex-direction:column;gap:6px;padding:14px;transition:all .2s;display:flex}.summary-item:hover{background:linear-gradient(135deg,#3b82f614 0%,#3b82f605 100%);transform:translateY(-2px)}.summary-value{color:#fff;font-family:JetBrains Mono,monospace;font-size:15px;font-weight:600}.cost-breakdown{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--pp-glass-border);background:linear-gradient(#00000059 0%,#0003 100%);border-radius:18px;padding:22px;animation:.4s ease-out .2s both fadeIn;box-shadow:0 4px 24px #0000004d,inset 0 1px #ffffff08}.breakdown-title{color:#fff;border-bottom:1px solid var(--pp-glass-border);letter-spacing:.02em;text-transform:uppercase;margin-bottom:20px;padding-bottom:14px;font-size:14px;font-weight:700;position:relative}.breakdown-title:after{content:"";background:linear-gradient(90deg,var(--pp-accent),transparent);border-radius:2px;width:60px;height:2px;position:absolute;bottom:-1px;left:0}.cost-item{border-bottom:1px solid #ffffff0a;border-radius:14px;align-items:center;gap:16px;margin:0 -6px;padding:16px 12px;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex}.cost-item:last-of-type{border-bottom:none}.cost-item:hover{background:linear-gradient(90deg,#3b82f614 0%,#3b82f605 100%);border-bottom-color:#3b82f61a;transform:translate(4px)}.cost-icon{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;transition:all .25s;display:flex}.cost-item:hover .cost-icon{transform:scale(1.15)rotate(3deg)}.cost-icon.material{color:#fb923c;background:linear-gradient(135deg,#f9731633 0%,#f9731614 100%);box-shadow:0 0 15px #f9731626}.cost-icon.shipping{color:#60a5fa;background:linear-gradient(135deg,#3b82f633 0%,#3b82f614 100%);box-shadow:0 0 15px #3b82f626}.cost-icon.design{color:#c084fc;background:linear-gradient(135deg,#a855f733 0%,#a855f714 100%);box-shadow:0 0 15px #a855f726}.cost-icon.cutting{color:#f472b6;background:linear-gradient(135deg,#ec489933 0%,#ec489914 100%);box-shadow:0 0 15px #ec489926}.cost-icon.box{color:#2dd4bf;background:linear-gradient(135deg,#14b8a633 0%,#14b8a614 100%);box-shadow:0 0 15px #14b8a626}.cost-icon.packing{color:#facc15;background:linear-gradient(135deg,#eab30833 0%,#eab30814 100%);box-shadow:0 0 15px #eab30826}.cost-icon.accessory{color:#818cf8;background:linear-gradient(135deg,#6366f133 0%,#6366f114 100%);box-shadow:0 0 15px #6366f126}.cost-label{color:var(--pp-secondary);flex:1;font-size:13px;font-weight:500}.cost-label-group{flex-direction:column;flex:1;gap:4px;display:flex}.cost-label-group .cost-label{flex:none}.cost-detail{color:var(--pp-secondary);background:var(--pp-dark-bg);opacity:.8;border-radius:6px;padding:4px 10px;font-family:JetBrains Mono,monospace;font-size:11px;display:inline-block}.cost-item-with-detail{align-items:flex-start}.cost-item-with-detail .cost-icon{margin-top:2px}.cost-value{color:#fff;text-align:right;min-width:95px;font-family:JetBrains Mono,monospace;font-size:17px;font-weight:700;transition:all .2s}.cost-item:hover .cost-value{color:var(--pp-accent);text-shadow:0 0 10px var(--pp-accent-glow)}.cost-subtotal{background:linear-gradient(90deg,#3b82f614 0%,#3b82f605 100%);border-top:2px dashed #3b82f633;border-radius:0 0 14px 14px;justify-content:space-between;align-items:center;margin-top:14px;padding:20px 16px;display:flex;position:relative}.cost-subtotal:before{content:"";background:linear-gradient(90deg,transparent,var(--pp-accent),transparent);opacity:.5;height:2px;position:absolute;top:-1px;left:20%;right:20%}.subtotal-label{color:var(--pp-secondary);text-transform:uppercase;letter-spacing:.05em;font-size:14px;font-weight:600}.subtotal-value{color:var(--pp-accent);text-shadow:0 0 20px var(--pp-accent-glow);font-family:JetBrains Mono,monospace;font-size:24px;font-weight:700}.cost-tax{color:#fbbf24;background:linear-gradient(135deg,#f59e0b26 0%,#f59e0b0d 100%);border:1px solid #f59e0b40;border-radius:12px;justify-content:center;align-items:center;gap:12px;margin-top:12px;padding:14px 20px;font-size:14px;font-weight:600;display:flex}.cost-tax svg{animation:1s infinite bounce}@keyframes bounce{0%,to{transform:translate(0)}50%{transform:translate(5px)}}.final-cost{background:linear-gradient(135deg,#10b98126 0%,#10b9810d 100%);border:2px solid #10b98159;border-radius:20px;align-items:center;gap:24px;min-height:90px;padding:24px 28px;animation:.4s ease-out .3s both fadeIn;display:flex;position:relative;overflow:hidden}.final-cost:before{content:"";pointer-events:none;background:radial-gradient(circle,#10b98126 0%,#0000 60%);width:100%;height:200%;position:absolute;top:-50%;right:-50%}.final-cost svg{color:var(--pp-success);filter:drop-shadow(0 0 10px var(--pp-success-glow));background:#10b98126;border-radius:16px;flex-shrink:0;padding:14px}.final-cost-info{flex-direction:row;align-items:baseline;gap:16px;display:flex;position:relative}.final-label{color:var(--pp-secondary);text-transform:uppercase;letter-spacing:.1em;white-space:nowrap;font-size:12px;font-weight:600;line-height:1.2}.final-value{color:#34d399;letter-spacing:-.02em;text-shadow:0 0 30px var(--pp-success-glow);white-space:nowrap;align-items:center;font-family:JetBrains Mono,monospace;font-size:42px;font-weight:800;line-height:1;display:flex}.recommended-price{background:linear-gradient(135deg,#8b5cf626 0%,#8b5cf60d 100%);border:2px solid #8b5cf659;border-radius:20px;align-items:center;gap:24px;min-height:90px;padding:24px 28px;animation:.4s ease-out .35s both fadeIn;display:flex;position:relative;overflow:hidden}.recommended-price:before{content:"";pointer-events:none;background:radial-gradient(circle,#8b5cf626 0%,#0000 60%);width:100%;height:200%;position:absolute;top:-50%;right:-50%}.recommended-price svg{color:var(--pp-purple);filter:drop-shadow(0 0 10px var(--pp-purple-glow));background:#8b5cf626;border-radius:16px;flex-shrink:0;padding:14px}.recommended-price-info{flex-direction:row;align-items:baseline;gap:16px;display:flex;position:relative}.recommended-label{color:var(--pp-secondary);text-transform:uppercase;letter-spacing:.1em;white-space:nowrap;font-size:12px;font-weight:600;line-height:1.2}.recommended-value{color:#c084fc;letter-spacing:-.02em;text-shadow:0 0 30px var(--pp-purple-glow);white-space:nowrap;align-items:center;font-family:JetBrains Mono,monospace;font-size:42px;font-weight:800;line-height:1;display:flex}@media (max-width:1024px){.recommended-value{font-size:32px}}@media (max-width:600px){.recommended-price{justify-content:center;min-height:80px;padding:20px 18px}.recommended-price-info{flex-direction:column;align-items:center;gap:6px}.recommended-value{font-size:28px}}.packing-box-info{background:var(--pp-glass);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--pp-glass-border);border-radius:16px;padding:20px;animation:.4s ease-out .4s both fadeIn}.packing-box-info h4{color:var(--pp-secondary);text-transform:uppercase;letter-spacing:.08em;margin-bottom:12px;font-size:12px;font-weight:700}.box-details{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.box-name{color:var(--pp-accent);font-size:17px;font-weight:700}.box-size{color:var(--pp-secondary);background:var(--pp-dark-bg);border-radius:10px;padding:8px 14px;font-family:JetBrains Mono,monospace;font-size:13px;font-weight:500}.box-category{color:#22d3ee;background:linear-gradient(135deg,#06b6d433 0%,#06b6d414 100%);border:1px solid #06b6d440;border-radius:20px;padding:8px 16px;font-size:12px;font-weight:600}.box-details.box-unmatched{flex-direction:column;gap:8px}.box-name.unmatched{color:var(--pp-warning)}.box-description{color:var(--pp-secondary);background:linear-gradient(135deg,#f59e0b1f 0%,#f59e0b0a 100%);border:1px dashed #f59e0b59;border-radius:10px;padding:8px 14px;font-family:JetBrains Mono,monospace;font-size:12px;line-height:1.5}.no-result{color:var(--pp-secondary);text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:24px;padding:40px;display:flex}.no-result svg{opacity:.2;animation:3s ease-in-out infinite float}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-15px)}}.no-result p{color:var(--pp-secondary);font-size:17px;font-weight:500}.no-result .hint{color:var(--pp-secondary);opacity:.6;max-width:280px;font-size:14px;line-height:1.5}@media (max-width:1024px){.prediction-content{grid-template-columns:1fr}.prediction-form-panel{border-right:none;border-bottom:1px solid var(--pp-glass-border);max-height:50vh}.final-value{font-size:32px}}@media (max-width:600px){.prediction-header{flex-direction:column;align-items:flex-start;gap:12px;padding:16px}.form-row,.result-summary{grid-template-columns:1fr}.final-cost{justify-content:center;min-height:80px;padding:20px 18px}.final-cost-info{flex-direction:column;align-items:center;gap:6px}.final-value{font-size:28px}.box-details{flex-direction:column;align-items:flex-start}}.price-prediction-widget .section-hint{margin-left:4px;font-size:11px;font-weight:400;color:#c4b5fd!important}.price-prediction-widget .selected-accessories-list{flex-direction:column;gap:10px;margin-bottom:14px;display:flex}.price-prediction-widget .selected-accessory-item{background:linear-gradient(135deg,#6366f11f 0%,#6366f10a 100%);border:1px solid #6366f140;border-radius:12px;align-items:center;gap:12px;padding:14px 16px;transition:all .2s;display:flex}.price-prediction-widget .selected-accessory-item:hover{border-color:#6366f166;box-shadow:0 4px 15px #6366f11a}.price-prediction-widget .accessory-info{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.price-prediction-widget .accessory-name{color:#fff;white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.price-prediction-widget .accessory-price{color:#818cf8;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:500}.price-prediction-widget .accessory-quantity-control{align-items:center;gap:8px;display:flex}.price-prediction-widget .accessory-quantity-control label{white-space:nowrap;text-shadow:0 0 6px #e879f940;font-size:11px;color:#e879f9!important}.price-prediction-widget .accessory-quantity-control input{border:1px solid var(--pp-glass-border);text-align:center;background:#0000004d;border-radius:8px;width:56px;padding:8px 10px;font-family:JetBrains Mono,monospace;font-size:13px;color:#fff!important}.price-prediction-widget .accessory-quantity-control input:focus{border-color:#6366f1;outline:none;box-shadow:0 0 0 3px #6366f133;color:#fff!important;background:#1e293bf2!important}.price-prediction-widget .remove-accessory-btn{width:30px;height:30px;color:var(--pp-secondary);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;transition:all .2s;display:flex}.price-prediction-widget .remove-accessory-btn:hover{color:#f87171;background:#ef444426;border-color:#ef44444d}.price-prediction-widget .add-accessory-row{margin-bottom:10px}.price-prediction-widget .accessory-select{border:1.5px dashed var(--pp-glass-border);color:#c4b5fd;cursor:pointer;appearance:none;background:#0003 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236366f1' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 5v14M5 12h14'/%3E%3C/svg%3E") right 14px center no-repeat;border-radius:12px;width:100%;padding:12px 44px 12px 16px;font-family:Outfit,sans-serif;font-size:13px;transition:all .2s}.price-prediction-widget .accessory-select:hover{background-color:#6366f10d;border-color:#6366f180}.price-prediction-widget .accessory-select:focus{border-style:solid;border-color:#6366f1;outline:none;box-shadow:0 0 0 3px #6366f126;color:#fff!important;background:#1e293bf2!important}.price-prediction-widget .accessory-select option{color:#fff;background:#1a1a2e;padding:10px}.price-prediction-widget .accessory-select option:disabled{color:var(--pp-secondary);opacity:.5}.price-prediction-widget .accessory-summary{background:linear-gradient(90deg,#6366f11a 0%,#6366f10a 100%);border-left:3px solid #6366f1;border-radius:10px;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.price-prediction-widget .accessory-summary .summary-label{color:#c4b5fd;font-size:12px;font-weight:500}.price-prediction-widget .accessory-summary .summary-total{color:#818cf8;font-family:JetBrains Mono,monospace;font-size:14px;font-weight:700}.shipping-rule-widget{background:#1a1a2e;border-radius:12px;min-height:500px;max-height:calc(100vh - 100px);padding:20px;overflow-y:auto}.shipping-rule-widget::-webkit-scrollbar{width:8px}.shipping-rule-widget::-webkit-scrollbar-track{background:#ffffff0d;border-radius:4px}.shipping-rule-widget::-webkit-scrollbar-thumb{background:#fff3;border-radius:4px}.shipping-rule-widget::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.widget-header{border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;display:flex}.widget-title{color:#fff;align-items:center;gap:10px;font-size:18px;font-weight:600;display:flex}.widget-actions{gap:10px;display:flex}.btn-refresh,.btn-save{cursor:pointer;border:none;border-radius:8px;align-items:center;gap:6px;padding:8px 16px;font-size:14px;transition:all .2s;display:flex}.btn-refresh{color:#fff;background:#ffffff1a}.btn-refresh:hover{background:#fff3}.btn-save{color:#60a5fa;background:#3b82f633}.btn-save:hover:not(:disabled){background:#3b82f64d}.btn-save.has-changes{color:#fff;background:#3b82f6}.error-message{color:#f87171;background:#ef44441a;border:1px solid #ef44444d;border-radius:8px;align-items:center;gap:8px;margin-bottom:16px;padding:12px 16px;display:flex}.origin-tabs{gap:8px;margin-bottom:20px;display:flex}.origin-tab{color:#fff9;cursor:pointer;background:#ffffff0d;border:none;border-radius:8px;padding:10px 24px;font-size:14px;font-weight:500;transition:all .2s}.origin-tab:hover{color:#fff;background:#ffffff1a}.origin-tab.active{color:#fff;background:linear-gradient(135deg,#6366f1,#8b5cf6)}.rules-content{background:#ffffff08;border-radius:10px;padding:20px}.origin-rules{flex-direction:column;gap:24px;display:flex}.origin-header h3{color:#fff;margin:0 0 8px;font-size:16px;font-weight:600}.origin-desc{color:#ffffff80;margin:0;font-size:13px}.region-section{background:#ffffff08;border:1px solid #ffffff0d;border-radius:10px;padding:16px}.region-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.region-label{color:#a78bfa;font-size:14px;font-weight:600}.btn-init,.btn-init-inline{color:#a78bfa;cursor:pointer;background:0 0;border:1px dashed #8b5cf680;border-radius:6px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;transition:all .2s;display:flex}.btn-init:hover,.btn-init-inline:hover{background:#8b5cf61a;border-color:#a78bfa}.rules-table{border-collapse:collapse;width:100%}.rules-table th,.rules-table td{text-align:left;border-bottom:1px solid #ffffff0d;padding:10px 12px}.rules-table th{color:#ffffff80;text-transform:uppercase;font-size:12px;font-weight:500}.rules-table td{color:#fffc;font-size:14px}.rules-table input[type=number]{color:#fff;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:6px;width:100px;padding:8px 12px;font-size:14px;transition:all .2s}.rules-table input[type=number]:focus{background:#8b5cf61a;border-color:#8b5cf6;outline:none}.bengbu-table{margin-top:8px}.bengbu-table td:last-child{text-align:center;width:60px}.btn-delete{color:#f87171;cursor:pointer;background:#ef44441a;border:none;border-radius:6px;justify-content:center;align-items:center;padding:6px;transition:all .2s;display:inline-flex}.btn-delete:hover{background:#ef444433}.btn-add-tier{color:#10b981;cursor:pointer;background:0 0;border:1px dashed #10b98180;border-radius:6px;align-items:center;gap:6px;margin-top:12px;padding:8px 16px;font-size:13px;transition:all .2s;display:flex}.btn-add-tier:hover{background:#10b9811a;border-color:#10b981}.first-weight-section{border-top:1px dashed #ffffff1a;margin-top:16px;padding-top:16px}.first-weight-label{color:#fff9;margin-bottom:12px;font-size:13px}.first-weight-inputs{flex-wrap:wrap;gap:20px;display:flex}.input-group{flex-direction:column;gap:6px;display:flex}.input-group label{color:#ffffff80;font-size:12px}.input-with-unit{align-items:center;gap:8px;display:flex}.input-with-unit input{color:#fff;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:6px;width:80px;padding:8px 12px;font-size:14px}.input-with-unit input:focus{background:#8b5cf61a;border-color:#8b5cf6;outline:none}.input-with-unit span{color:#ffffff80;font-size:13px}.bengbu-note{color:#fbbf24;background:#fbbf241a;border-radius:8px;align-items:center;gap:8px;margin-top:16px;padding:10px 14px;font-size:13px;display:flex}.region-legend{background:#ffffff08;border-radius:10px;margin-top:24px;padding:16px}.legend-title{color:#fff9;margin-bottom:12px;font-size:13px;font-weight:500}.legend-item{color:#ffffffb3;align-items:center;gap:10px;margin-bottom:8px;font-size:13px;display:flex}.legend-item:last-child{margin-bottom:0}.legend-dot{border-radius:50%;width:10px;height:10px}.legend-dot.normal{background:#10b981}.legend-dot.remote{background:#f59e0b}.legend-dot.xinjiang{background:#ef4444}.loading{color:#fff9;flex-direction:column;justify-content:center;align-items:center;gap:12px;height:300px;display:flex}.spin{animation:1s linear infinite spin}@media (max-width:768px){.first-weight-inputs{flex-direction:column;gap:12px}.rules-table input[type=number]{width:80px}}.price-management-widget{background:radial-gradient(80% 50% at 50% -20%,#8b5cf61f 0%,#0000 50%),radial-gradient(60% 40% at 90% 80%,#10b98114 0%,#0000 40%),radial-gradient(50% 30% at 10% 60%,#3b82f60f 0%,#0000 40%),linear-gradient(#0a0a1a 0%,#0f0f24 50%,#0a0a1a 100%);flex-direction:column;width:100%;height:100%;font-family:Outfit,system-ui,-apple-system,sans-serif;display:flex;position:relative;overflow:hidden}.price-management-widget:before{content:"";pointer-events:none;z-index:0;background-image:linear-gradient(#8b5cf608 1px,#0000 1px),linear-gradient(90deg,#8b5cf608 1px,#0000 1px);background-size:60px 60px;position:absolute;inset:0}.price-management-widget>*{z-index:1;position:relative}.price-management-header{-webkit-backdrop-filter:blur(20px);background:#ffffff08;border-bottom:1px solid #ffffff14;flex-shrink:0;justify-content:flex-start;align-items:center;gap:16px;padding:16px 24px;display:flex;box-shadow:0 4px 24px #0003}.price-management-title{display:none}.price-management-tabs{background:#0000004d;border:1px solid #ffffff0f;border-radius:16px;flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:8px;padding:6px;display:flex}.price-tab{color:#ffffff80;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;align-items:center;gap:8px;height:38px;padding:0 18px;font-family:Outfit,sans-serif;font-size:14px;font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1);display:inline-flex;position:relative}.price-tab svg{opacity:.7;transition:all .3s}.price-tab:hover{color:#fffc;background:#ffffff0d;border-color:#ffffff1a}.price-tab:hover svg{opacity:1;transform:scale(1.1)}.price-tab.active{color:#a78bfa;background:linear-gradient(135deg,#8b5cf640 0%,#8b5cf61a 100%);border-color:#8b5cf666;box-shadow:0 0 20px #8b5cf633,inset 0 1px #ffffff0d}.price-tab.active svg{opacity:1;filter:drop-shadow(0 0 4px #a78bfa80)}.price-tab.active:after{content:"";background:linear-gradient(90deg,#0000,#a78bfa,#0000);border-radius:3px;width:20px;height:3px;position:absolute;bottom:-1px;left:50%;transform:translate(-50%)}.price-management-content{flex:1;min-height:0;overflow:hidden}@media (max-width:768px){.price-management-header{padding:12px 16px}.price-management-tabs{gap:4px;padding:4px}.price-tab{height:34px;padding:0 14px;font-size:13px}.price-tab span{display:none}.price-tab svg{margin:0}}.product-style-widget{gap:var(--spacing-md);width:100%;height:100vh;padding:var(--spacing-lg);background-color:var(--color-bg-secondary);box-sizing:border-box;display:flex;position:relative;overflow:hidden}.product-list-panel{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-lg);width:320px;box-shadow:var(--shadow-sm);flex-direction:column;flex-shrink:0;display:flex;overflow:hidden}.panel-header{padding:var(--spacing-md)var(--spacing-lg);border-bottom:1px solid var(--color-border);background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);justify-content:space-between;align-items:center;display:flex}.panel-header h3{align-items:center;gap:var(--spacing-sm);color:#fff;margin:0;font-size:15px;font-weight:600;display:flex}.panel-header .btn{color:#fff;background:#fff3;border:1px solid #ffffff4d}.panel-header .btn:hover{background:#ffffff4d}.product-list-content{padding:var(--spacing-sm);flex:1;overflow-y:auto}.product-list{gap:var(--spacing-xs);flex-direction:column;display:flex}.product-item{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm)var(--spacing-md);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);border:2px solid #0000;display:flex}.product-item:hover{background:var(--color-bg-hover)}.product-item.selected{background:var(--color-primary-light);border-color:var(--color-primary)}.product-thumb{border-radius:var(--radius-sm);background:var(--color-bg-tertiary);flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex;overflow:hidden}.product-thumb img{object-fit:cover;width:100%;height:100%}.product-thumb svg{color:var(--color-text-tertiary)}.product-info{flex:1;min-width:0}.product-title{color:var(--color-text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:500;overflow:hidden}.product-id{color:var(--color-text-tertiary);margin-top:2px;font-size:11px}.product-pagination{justify-content:center;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm)var(--spacing-md);border-top:1px solid var(--color-border);background:var(--color-bg-secondary);display:flex}.product-pagination button{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-primary);cursor:pointer;transition:all var(--transition-fast);padding:4px 12px;font-size:12px}.product-pagination button:disabled{opacity:.5;cursor:not-allowed}.product-pagination button:not(:disabled):hover{background:var(--color-bg-hover);border-color:var(--color-primary)}.product-pagination span{color:var(--color-text-secondary);font-size:12px}.style-management-panel{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;flex:1;display:flex;overflow:hidden}.no-selection{justify-content:center;align-items:center;gap:var(--spacing-md);color:var(--color-text-tertiary);flex-direction:column;flex:1;display:flex}.no-selection svg{opacity:.5}.no-selection h3{color:var(--color-text-secondary);margin:0;font-size:18px}.no-selection p{margin:0;font-size:14px}.selected-product-header{padding:var(--spacing-md)var(--spacing-lg);border-bottom:1px solid var(--color-border);background:linear-gradient(135deg,#11998e 0%,#38ef7d 100%);justify-content:space-between;align-items:center;display:flex}.selected-product-info{align-items:center;gap:var(--spacing-md);display:flex}.selected-product-thumb{border-radius:var(--radius-md);object-fit:cover;border:2px solid #ffffff80;width:56px;height:56px}.selected-product-info h3{color:#fff;margin:0;font-size:16px;font-weight:600}.product-id-badge{color:#ffffffe6;background:#fff3;border-radius:999px;margin-top:4px;padding:2px 8px;font-size:11px;display:inline-block}.selected-product-header .btn{color:#fff;background:#fff3;border:1px solid #ffffff4d}.selected-product-header .btn:hover{background:#ffffff4d}.create-style-form{padding:var(--spacing-md)var(--spacing-lg);background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border)}.create-style-form h4{align-items:center;gap:var(--spacing-sm);margin:0 0 var(--spacing-md)0;color:var(--color-text-primary);font-size:14px;font-weight:600;display:flex}.form-row{align-items:flex-end;gap:var(--spacing-md);flex-wrap:wrap;display:flex}.form-row>.btn{height:36px;margin-bottom:0}.form-field{flex-direction:column;flex:1;gap:4px;min-width:180px;display:flex}.form-field.form-field-sm{flex:none;min-width:120px;max-width:140px}.form-field.form-field-lg{flex:2;min-width:300px}.form-field input,.form-field select{height:36px;padding:0 var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-primary);transition:all var(--transition-fast);font-size:13px}.form-field input[type=file]{padding:6px var(--spacing-sm);height:auto}.field-hint{color:var(--color-warning);margin-top:2px;font-size:11px}.file-input-wrapper{flex-direction:column;gap:4px;display:flex}.file-name{color:var(--color-text-secondary);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.form-buttons{gap:var(--spacing-sm);flex-shrink:0;align-items:center;display:flex}.form-buttons .btn{min-width:70px}.styles-section{padding:var(--spacing-md)var(--spacing-lg);flex-direction:column;flex:1;display:flex;overflow:hidden}.styles-section h4{align-items:center;gap:var(--spacing-sm);margin:0 0 var(--spacing-md)0;color:var(--color-text-primary);font-size:14px;font-weight:600;display:flex}.styles-list{gap:var(--spacing-sm);flex-direction:column;flex:1;padding-right:4px;display:flex;overflow-y:auto}.styles-list::-webkit-scrollbar{width:6px}.styles-list::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}.style-card{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-primary);transition:all var(--transition-fast);overflow:hidden}.style-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-sm)}.style-header{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm)var(--spacing-md);cursor:pointer;transition:background var(--transition-fast);display:flex}.style-header:hover{background:var(--color-bg-hover)}.style-expand-icon{color:var(--color-text-tertiary);flex-shrink:0}.style-thumb{border-radius:var(--radius-sm);background:var(--color-bg-tertiary);cursor:pointer;width:48px;height:48px;transition:all var(--transition-fast);border:2px solid #0000;flex-shrink:0;justify-content:center;align-items:center;display:flex;overflow:hidden}.style-thumb:hover{border-color:var(--color-primary)}.style-thumb img{object-fit:cover;width:100%;height:100%}.style-info{flex:1;min-width:0}.style-name{color:var(--color-text-primary);font-size:14px;font-weight:600}.style-meta{gap:var(--spacing-md);color:var(--color-text-tertiary);margin-top:2px;font-size:11px;display:flex}.path-type-badge{border:1px solid var(--color-border-light);background:var(--color-bg-tertiary);color:var(--color-text-secondary);white-space:nowrap;font-size:inherit;border-radius:999px;align-items:center;gap:4px;padding:2px 8px;font-family:inherit;display:inline-flex}.path-type-badge.clickable{cursor:pointer;transition:all var(--transition-fast)}.path-type-badge.clickable:hover{transform:scale(1.05);box-shadow:0 2px 8px #00000026}.path-type-badge.clickable:active{transform:scale(.98)}.path-type-badge.local{color:#059669;background:#10b9811f;border-color:#10b98159}.path-type-badge.local.clickable:hover{background:#10b98133;border-color:#10b98180}.path-type-badge.server{color:#b45309;background:#f59e0b1f;border-color:#f59e0b59}.path-type-badge.server.clickable:hover{background:#f59e0b33;border-color:#f59e0b80}.path-type-badge.unknown{opacity:.85}.path-type-badge.unknown.clickable:hover{background:var(--color-bg-hover)}.style-actions{gap:var(--spacing-xs);display:flex}.style-content{border-top:1px solid var(--color-border);padding:var(--spacing-md);background:var(--color-bg-secondary)}.cut-files-section{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.cut-files-header{padding:var(--spacing-sm)var(--spacing-md);background:var(--color-bg-tertiary);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;display:flex}.cut-files-header h5{align-items:center;gap:var(--spacing-xs);color:var(--color-text-primary);margin:0;font-size:13px;font-weight:600;display:flex}.cut-file-upload-form{padding:var(--spacing-sm)var(--spacing-md);border-bottom:1px solid var(--color-border);background:linear-gradient(135deg,#667eea14 0%,#764ba214 100%)}.cut-file-upload-form .form-row{align-items:flex-end;gap:var(--spacing-sm)}.cut-file-upload-form .form-field{flex:1;min-width:120px}.cut-file-upload-form .form-field.form-field-sm{flex:0 0 100px;min-width:100px}.cut-file-upload-form .form-field.form-field-lg{flex:2;min-width:200px}.cut-file-upload-form .form-field label{font-size:11px}.cut-file-upload-form .form-field input,.cut-file-upload-form .form-field select{height:32px;font-size:12px}.cut-files-list{flex-direction:column;display:flex}.cut-file-item{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm)var(--spacing-md);border-bottom:1px solid var(--color-border-light);transition:background var(--transition-fast);display:flex}.cut-file-item:last-child{border-bottom:none}.cut-file-item:hover{background:var(--color-bg-hover)}.cut-file-icon{border-radius:var(--radius-sm);color:#fff;background:linear-gradient(135deg,#f093fb 0%,#f5576c 100%);flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.cut-file-info{flex:1;min-width:0}.cut-file-size{color:var(--color-text-primary);font-size:13px;font-weight:500}.cut-file-meta{color:var(--color-text-tertiary);gap:var(--spacing-xs);flex-wrap:wrap;margin-top:2px;font-size:11px;display:flex}.cut-file-actions{gap:var(--spacing-xs);display:flex}.cut-file-actions a.btn-icon{text-decoration:none}.empty-cut-files{justify-content:center;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-lg);color:var(--color-text-tertiary);font-size:13px;display:flex}.no-size-hint{align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm)var(--spacing-md);border-bottom:1px solid var(--color-border);color:#b45309;background:#f59e0b1a;font-size:12px;display:flex}.loading-state,.empty-state{justify-content:center;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-xl);color:var(--color-text-tertiary);flex-direction:column;font-size:14px;display:flex}.loading-state svg,.empty-state svg{opacity:.5}.btn{justify-content:center;align-items:center;gap:var(--spacing-xs);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-primary);color:var(--color-text-primary);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;flex-shrink:0;padding:8px 16px;font-size:13px;font-weight:500;display:inline-flex}.btn:hover:not(:disabled){background:var(--color-bg-hover);border-color:var(--color-primary)}.btn-primary{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.btn-sm{min-width:fit-content;padding:6px 12px;font-size:12px}.btn-icon{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;padding:0;display:inline-flex}.btn-icon:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.btn-icon.btn-danger:hover{color:var(--color-danger);background:#ef44441a}.status-bar{bottom:var(--spacing-lg);align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm)var(--spacing-lg);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:1000;font-size:13px;font-weight:500;animation:.3s ease-out slideUp;display:flex;position:fixed;left:50%;transform:translate(-50%)}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.status-info{background:var(--color-bg-primary);border:1px solid var(--color-border);color:var(--color-text-primary)}.status-success{color:#059669;background:#ecfdf5;border:1px solid #10b981}.status-error{color:#dc2626;background:#fef2f2;border:1px solid #ef4444}.image-preview-overlay{z-index:2000;background:#000c;justify-content:center;align-items:center;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.image-preview-container{max-width:90vw;max-height:90vh;position:relative}.image-preview-container img{border-radius:var(--radius-lg);max-width:100%;max-height:90vh;box-shadow:var(--shadow-xl)}.preview-close-btn{background:var(--color-bg-primary);width:40px;height:40px;color:var(--color-text-primary);cursor:pointer;box-shadow:var(--shadow-md);transition:all var(--transition-fast);border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:-16px;right:-16px}.preview-close-btn:hover{background:var(--color-danger);color:#fff}@media (max-width:1024px){.product-style-widget{flex-direction:column}.product-list-panel{width:100%;max-height:300px}.product-list-content{max-height:200px}}@media (max-width:768px){.form-row{flex-direction:column;align-items:stretch}.form-field{min-width:100%}.style-meta{gap:var(--spacing-xs);flex-wrap:wrap}}.image-select-dialog-overlay{z-index:1000;background-color:#0009;justify-content:center;align-items:center;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.image-select-dialog{background-color:#fff;border-radius:12px;flex-direction:column;width:850px;max-width:90vw;height:600px;max-height:80vh;animation:.25s ease-out slideIn;display:flex;overflow:hidden;box-shadow:0 20px 60px #0000004d}.dialog-header{background-color:#f8fafc;border-bottom:1px solid #e2e8f0;flex-shrink:0;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.dialog-title{color:#1e293b;margin:0;font-size:18px;font-weight:700}.dialog-close-btn{color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;width:32px;height:32px;font-size:20px;transition:all .2s;display:flex}.dialog-close-btn:hover{color:#1e293b;background-color:#e2e8f0}.dialog-content{flex-direction:column;flex:1 1 0;width:100%;min-height:0;display:flex;overflow:hidden}.dialog-browser{border-bottom:1px solid #e2e8f0;flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.browser-toolbar{background-color:#f8fafc;border-bottom:1px solid #e2e8f0;flex-shrink:0;align-items:center;gap:10px;padding:12px 16px;display:flex}.path-display{color:#3b82f6;white-space:nowrap;text-overflow:ellipsis;background-color:#eff6ff;border-radius:6px;flex:1;padding:8px 12px;font-family:Microsoft YaHei,sans-serif;font-size:13px;overflow:hidden}.toolbar-btn{color:#475569;cursor:pointer;white-space:nowrap;background-color:#fff;border:1px solid #cbd5e1;border-radius:6px;padding:8px 14px;font-size:13px;font-weight:600;transition:all .2s}.toolbar-btn:hover:not(:disabled){background-color:#f1f5f9;border-color:#94a3b8}.toolbar-btn:disabled{opacity:.5;cursor:not-allowed}.toolbar-btn.primary{color:#fff;background-color:#3b82f6;border-color:#2563eb}.toolbar-btn.primary:hover:not(:disabled){background-color:#2563eb}.browser-grid-container{background-color:#fff;flex:1;min-height:0;padding:12px 16px;overflow:auto}.browser-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.browser-item{cursor:pointer;background-color:#f8fafc;border:2px solid #0000;border-radius:8px;flex-direction:column;align-items:center;padding:8px;transition:all .15s;display:flex}.browser-item:hover{background-color:#f1f5f9;border-color:#cbd5e1;transform:translateY(-1px);box-shadow:0 2px 8px #0000000f}.browser-item.folder{background-color:#fffbeb}.browser-item.folder:hover{background-color:#fef3c7;border-color:#f59e0b}.browser-item.selected{background-color:#dbeafe;border-color:#3b82f6}.browser-item-thumb{background-color:#fff;border-radius:6px;justify-content:center;align-items:center;width:90px;height:90px;margin-bottom:6px;display:flex;overflow:hidden}.browser-item-thumb img{object-fit:contain;max-width:100%;max-height:100%}.browser-item-thumb .folder-icon{font-size:56px}.browser-item-name{color:#475569;text-align:center;word-break:break-all;-webkit-line-clamp:2;-webkit-box-orient:vertical;width:100%;max-height:2.6em;font-size:11px;font-weight:500;line-height:1.3;display:-webkit-box;overflow:hidden}.browser-loading,.browser-empty{color:#94a3b8;justify-content:center;align-items:center;height:200px;font-size:14px;display:flex}.dialog-selected{background-color:#f8fafc;border-top:1px solid #e2e8f0;flex-direction:column;flex:0 0 170px;width:100%;height:170px;display:flex}.selected-header{background-color:#fff;border-bottom:1px solid #e2e8f0;flex-shrink:0;padding:10px 12px}.selected-title{color:#1e293b;align-items:center;margin:0;font-size:13px;font-weight:700;display:flex}.selected-count{color:#3b82f6;margin-left:6px;font-size:11px;font-weight:600}.selected-list{flex-direction:row;flex:1;align-items:flex-start;gap:10px;min-height:0;padding:8px;display:flex;overflow:auto hidden}.selected-item{cursor:grab;-webkit-user-select:none;user-select:none;background-color:#fff;border:1px solid #e2e8f0;border-radius:4px;flex-direction:column;justify-content:flex-start;align-items:center;gap:6px;width:96px;margin-bottom:0;padding:8px 6px;transition:all .15s;display:flex;position:relative}.selected-item:active{cursor:grabbing}.selected-item:hover{background-color:#f8fafc;border-color:#3b82f6}.selected-item.dragging{opacity:.5;transform:scale(.95)}.selected-item.drag-over{background-color:#eff6ff;border-width:2px;border-color:#3b82f6}.selected-item-index{color:#fff;background-color:#3b82f6;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;font-size:10px;font-weight:700;display:flex;position:absolute;top:6px;left:6px}.selected-item-thumb{background-color:#f1f5f9;border-radius:3px;flex-shrink:0;width:80px;height:80px;overflow:hidden}.selected-item-thumb img{object-fit:cover;width:100%;height:100%}.selected-item-info{flex:1;min-width:0;display:none}.selected-item-name{color:#475569;white-space:nowrap;text-overflow:ellipsis;font-size:10px;overflow:hidden}.selected-item-remove{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;font-size:12px;transition:all .15s;display:flex;position:absolute;top:4px;right:4px}.selected-item-remove:hover{color:#ef4444;background-color:#fef2f2}.dialog-footer{background-color:#f8fafc;border-top:1px solid #e2e8f0;flex-shrink:0;justify-content:flex-end;gap:12px;padding:16px 20px;display:flex}.dialog-btn{color:#475569;cursor:pointer;background-color:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:10px 20px;font-size:14px;font-weight:600;transition:all .2s}.dialog-btn:hover{background-color:#f1f5f9;border-color:#94a3b8}.dialog-btn.primary{color:#fff;background-color:#3b82f6;border-color:#2563eb}.dialog-btn.primary:hover{background-color:#2563eb}.dialog-btn.primary:disabled{cursor:not-allowed;background-color:#93c5fd;border-color:#93c5fd}@media (max-width:800px){.browser-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.browser-item-thumb{width:70px;height:70px}.browser-item-thumb .folder-icon{font-size:44px}}@media (max-width:600px){.image-select-dialog{width:95vw;height:90vh;max-height:none}.dialog-content{flex-direction:column}.dialog-browser{border-bottom:1px solid #e2e8f0;flex:1;min-height:0}.dialog-selected{border-top:1px solid #e2e8f0;flex:0 0 120px;height:120px;width:100%!important;min-width:100%!important;max-width:100%!important}.selected-list{flex-flow:row;gap:6px;padding:6px;display:flex;overflow-x:auto}.selected-item{flex-shrink:0;width:auto;margin-bottom:0}.browser-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}}.category-settings-widget .category-list-header{justify-content:space-between;align-items:center}.category-settings-widget .category-list-info{color:var(--color-text-tertiary);-webkit-user-select:none;user-select:none;padding:0 8px;font-size:12px;font-weight:600}.category-settings-widget .category-table th:first-child,.category-settings-widget .category-table td:first-child{width:60%}.category-settings-widget .category-name-cell{align-items:center;gap:6px;min-height:28px;display:inline-flex}.category-settings-widget .category-indent{color:var(--color-text-tertiary);flex-shrink:0;font-weight:700}.category-settings-widget .category-name-text{font-weight:650}.category-settings-widget .category-id-tag{color:var(--color-text-tertiary);margin-left:6px;font-size:11px;font-weight:600}.category-settings-widget .row-hidden{opacity:.6}.category-settings-widget .category-icon-cell{justify-content:center;align-items:center;display:flex}.category-settings-widget .category-icon-img{object-fit:cover;border:1px solid var(--color-border-light);border-radius:6px;width:28px;height:28px}.category-settings-widget .category-icon-empty{color:var(--color-text-tertiary)}.category-settings-widget .category-icon-input-row{align-items:center;gap:8px;display:flex}.category-settings-widget .category-icon-btn{height:32px;padding:6px 10px}.category-settings-widget .category-icon-preview{border:1px solid var(--color-border);background:var(--color-bg-secondary);border-radius:10px;justify-content:center;align-items:center;width:76px;height:76px;margin-top:8px;display:flex;overflow:hidden}.category-settings-widget .category-icon-preview img{object-fit:cover;width:100%;height:100%}.category-settings-widget .category-help-text{color:var(--color-text-tertiary);margin-top:6px;font-size:12px;line-height:1.4}.image-manager-widget{color:#334155;box-sizing:border-box;background-color:#f8fafc;flex-direction:column;gap:15px;width:100%;height:100%;padding:15px;font-family:Microsoft YaHei,SimHei,sans-serif;font-size:13px;display:flex;overflow:hidden}.action-group{background-color:#fff;border:1px solid #e2e8f0;border-radius:8px;min-height:80px;padding:15px 25px}.action-buttons{flex-wrap:wrap;gap:10px;display:flex}.status-message{color:#1e40af;background-color:#eff6ff;border-radius:4px;margin-top:10px;padding:8px 12px;font-size:12px}.image-manager-content-splitter{box-sizing:border-box;flex:1;align-items:stretch;gap:15px;width:100%;min-height:0;display:flex;overflow:hidden}.image-manager-list-section{flex-direction:column;flex:0 0 60%;gap:0;min-width:820px;height:100%;padding:0;display:flex;overflow:hidden}.image-manager-widget .list-header{margin-bottom:10px;padding:5px}.list-title{color:#64748b;margin:0;font-size:14px;font-weight:700}.path-section{align-items:center;gap:10px;margin-bottom:10px;display:flex}.path-label{color:#3b82f6;word-wrap:break-word;background-color:#eff6ff;border-radius:4px;flex:1;padding:5px;font-family:Microsoft YaHei,SimHei,sans-serif;font-size:12px}.image-list-container{background-color:#fff;border:1px solid #cbd5e1;border-radius:4px;flex:1;padding:10px;overflow:auto}.loading-message,.empty-message{text-align:center;color:#94a3b8;padding:40px;font-size:14px}.image-grid{grid-template-columns:repeat(auto-fill,150px);justify-content:start;gap:12px;padding:8px;display:grid}.image-item{cursor:pointer;text-align:center;box-sizing:border-box;background-color:#fff;border:1px solid #e2e8f0;border-radius:8px;flex-direction:column;justify-content:flex-start;align-items:center;width:150px;height:190px;padding:10px;transition:all .2s;display:flex;position:relative;overflow:hidden}.image-item:hover{background-color:#f1f5f9;border-color:#94a3b8;transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.image-item.selected{background-color:#eff6ff;border:2px solid #3b82f6}.image-item.selected:hover{background-color:#dbeafe;border:2px solid #3b82f6}.image-item.folder{justify-content:flex-start}.thumbnail-container{background-color:#f8fafc;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:128px;height:128px;display:flex;overflow:hidden}.item-icon{justify-content:center;align-items:center;font-size:56px;line-height:1;display:flex}.item-icon-fallback{background-color:#f1f5f9;justify-content:center;align-items:center;width:100%;height:100%;font-size:48px;display:flex}.item-icon-fallback.hidden{display:none}.item-thumbnail{object-fit:contain;border-radius:4px;width:auto;max-width:100%;height:auto;max-height:100%}.item-name{color:#334155;word-break:break-all;text-overflow:ellipsis;-webkit-line-clamp:2;box-sizing:border-box;-webkit-box-orient:vertical;flex-shrink:0;width:100%;min-height:30px;padding:0 2px;font-size:11px;line-height:1.35;display:-webkit-box;overflow:hidden}.image-item.selected .item-name{color:#1e293b}.image-manager-preview-section{flex-direction:column;flex:1;gap:10px;min-width:0;padding-left:10px;display:flex;overflow:hidden}.preview-title{color:#64748b;margin:0;padding:5px;font-size:14px;font-weight:700}.preview-container{background-color:#fff;border:1px solid #cbd5e1;border-radius:4px;flex:1;justify-content:center;align-items:center;min-height:300px;display:flex;overflow:auto}.preview-placeholder{color:#94a3b8;text-align:center;padding:20px;font-size:13px}.preview-image{object-fit:contain;max-width:100%;max-height:100%;padding:20px}.selected-info{background-color:#fff;border:1px solid #cbd5e1;border-radius:4px;grid-template-columns:auto 1fr;gap:8px 12px;padding:12px;font-size:12px;display:grid}.info-label{color:#64748b;font-weight:600}.info-value{color:#334155;word-break:break-all}.btn-primary,.btn-danger,.btn-success,.btn-warning,.btn-default,.btn-back{color:#475569;cursor:pointer;background-color:#fff;border:1px solid #cbd5e1;border-radius:6px;padding:6px 14px;font-family:inherit;font-size:13px;font-weight:600;transition:all .2s}.btn-primary{color:#fff;background-color:#3b82f6;border:1px solid #2563eb}.btn-primary:hover{background-color:#2563eb}.btn-success{color:#fff;background-color:#10b981;border:1px solid #059669}.btn-success:hover{background-color:#059669}.btn-warning{color:#fff;background-color:#f59e0b;border:1px solid #d97706}.btn-warning:hover{background-color:#d97706}.btn-warning:disabled{cursor:not-allowed;opacity:.6;background-color:#fcd34d;border-color:#fcd34d}.btn-danger:hover{background-color:#fef2f2;border-color:#ef4444}.btn-danger:disabled{opacity:.5;cursor:not-allowed}.btn-default:hover,.btn-back:hover{color:#1e293b;background-color:#f1f5f9;border-color:#94a3b8}.btn-back:disabled{opacity:.5;cursor:not-allowed}.context-menu{z-index:1000;background-color:#fff;border:1px solid #e2e8f0;border-radius:8px;min-width:160px;padding:6px 0;animation:.15s ease-out fadeIn;position:fixed;box-shadow:0 4px 12px #00000026}.context-menu-item{cursor:pointer;align-items:center;gap:8px;padding:10px 16px;font-size:13px;transition:background-color .15s;display:flex}.context-menu-item:hover{background-color:#f1f5f9}.context-menu-item.danger{color:#ef4444}.context-menu-item.danger:hover{background-color:#fef2f2}.modal-overlay{z-index:1001;background-color:#00000080;justify-content:center;align-items:center;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.modal-content{background-color:#fff;border-radius:12px;min-width:360px;max-width:90%;padding:24px;animation:.2s ease-out slideIn;box-shadow:0 20px 40px #0003}.modal-title{color:#1e293b;margin:0 0 20px;font-size:18px;font-weight:600}.modal-input{color:#334155;box-sizing:border-box;border:1px solid #cbd5e1;border-radius:8px;width:100%;padding:12px 14px;font-family:inherit;font-size:14px;transition:border-color .2s,box-shadow .2s}.modal-input:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 3px #3b82f633}.modal-input::placeholder{color:#94a3b8}.modal-buttons{justify-content:flex-end;gap:10px;margin-top:20px;display:flex}@media (max-width:1400px){.image-manager-list-section{min-width:600px}.image-grid{grid-template-columns:repeat(auto-fill,140px)}.image-item{width:140px;height:175px}.thumbnail-container{width:118px;height:118px}}@media (max-width:1024px){.image-manager-content-splitter{flex-direction:column}.image-manager-list-section{flex:50%;min-width:0}.image-manager-preview-section{flex:50%;padding-top:10px;padding-left:0}.action-buttons{flex-wrap:wrap}}@media (max-width:768px){.image-grid{grid-template-columns:repeat(auto-fill,130px)}.image-item{width:130px;height:165px;padding:8px}.thumbnail-container{width:112px;height:112px}.item-icon{font-size:48px}.modal-content{min-width:280px;padding:20px}}.image-group-widget{background-color:var(--color-bg-secondary);width:100%;height:100%;min-height:0;color:var(--color-text-primary);gap:var(--spacing-md);box-sizing:border-box;flex-direction:column;padding:0;font-family:inherit;font-size:14px;display:flex;overflow:hidden}.action-group{background-color:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-md)}.action-buttons{gap:var(--spacing-sm);flex-wrap:wrap;display:flex}.image-group-content-splitter{gap:var(--spacing-md);box-sizing:border-box;flex:1;align-items:stretch;width:100%;min-height:0;display:flex;overflow:hidden}.image-group-list-section{flex-direction:column;flex:0 0 40%;gap:0;min-width:0;height:100%;padding:0;display:flex;overflow:hidden}.image-group-form-section{flex-direction:column;flex:1;min-width:0;height:100%;display:flex;overflow:hidden}.table-container{background-color:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-md);flex:1;overflow:auto}.data-table thead{background-color:var(--color-bg-tertiary);z-index:10;position:sticky;top:0}.data-table th{padding:var(--spacing-sm)var(--spacing-md);text-align:left;color:var(--color-text-secondary);border-bottom:1px solid var(--color-border);text-transform:uppercase;letter-spacing:.5px;font-size:12px;font-weight:600}.data-table td{padding:var(--spacing-sm)var(--spacing-md);border-bottom:1px solid var(--color-border-light);color:var(--color-text-primary)}.data-table tbody tr{cursor:pointer;transition:background-color var(--transition-base)}.data-table tbody tr:hover{background-color:var(--color-bg-hover)}.data-table tbody tr.selected{background-color:var(--color-primary-light)}.loading-cell,.empty-cell{padding:var(--spacing-xl);text-align:center;color:var(--color-text-tertiary);font-size:14px}.form-group-box{background-color:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-lg);gap:var(--spacing-md);flex-direction:column;height:100%;min-height:0;display:flex;overflow:hidden}.form-field{gap:var(--spacing-xs);flex-direction:column;display:flex}.form-field label{color:var(--color-text-secondary);font-size:13px;font-weight:600}.form-field input,.form-field select{padding:var(--spacing-sm)var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-sm);transition:all var(--transition-base);background-color:var(--color-bg-primary);color:var(--color-text-primary);font-family:inherit;font-size:13px}.form-field input:focus,.form-field select:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light);outline:none}.form-field input:disabled,.form-field select:disabled{background-color:var(--color-bg-tertiary);color:var(--color-text-tertiary);cursor:not-allowed}.images-group{margin-top:var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-md);background-color:var(--color-bg-primary)}.images-header{margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;display:flex}.images-header h4{color:var(--color-text-primary);margin:0;font-size:14px;font-weight:700}.images-buttons{gap:var(--spacing-xs);display:flex}.images-list{max-height:400px;overflow-y:auto}.images-grid{gap:var(--spacing-md);padding:var(--spacing-sm);grid-template-columns:repeat(auto-fill,minmax(130px,1fr));display:grid}.image-item{border:1px solid var(--color-border);border-radius:var(--radius-sm);background-color:var(--color-bg-secondary);cursor:grab;transition:all var(--transition-base);-webkit-user-select:none;user-select:none;position:relative;overflow:hidden}.image-item:active{cursor:grabbing}.image-item:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md)}.image-item.dragging{opacity:.5;cursor:grabbing;transform:scale(.95)}.image-item.drag-over{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light);border-width:2px;transform:scale(1.05)}.image-item img{object-fit:cover;pointer-events:none;width:100%;height:130px;display:block}.image-overlay{padding:var(--spacing-xs);pointer-events:none;background:linear-gradient(#0009,#0000);justify-content:space-between;align-items:flex-start;display:flex;position:absolute;top:0;left:0;right:0}.image-index{background-color:var(--color-primary);color:#fff;border-radius:var(--radius-sm);text-align:center;min-width:20px;padding:3px 8px;font-size:12px;font-weight:700}.image-delete-btn{color:#fff;cursor:pointer;opacity:0;pointer-events:auto;z-index:5;background:#ef4444;border:none;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;padding:0;font-size:14px;transition:all .2s;display:flex;position:absolute;bottom:28px;right:6px;box-shadow:0 2px 6px #0000004d}.image-delete-btn:hover{background:#dc2626;transform:scale(1.1)}.image-item:hover .image-delete-btn{opacity:1}.image-url{padding:var(--spacing-xs);color:var(--color-text-secondary);background-color:var(--color-bg-primary);border-top:1px solid var(--color-border-light);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.empty-images{padding:var(--spacing-lg);text-align:center;color:var(--color-text-tertiary);font-size:13px;font-style:italic}.drag-hint{justify-content:center;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm)var(--spacing-md);border-radius:var(--radius-sm);color:#3b82f6;margin-top:var(--spacing-sm);background-color:#eff6ff;font-size:12px;display:flex}.drag-hint-icon{font-size:14px}.btn{padding:var(--spacing-sm)var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-sm);background-color:var(--color-bg-primary);color:var(--color-text-primary);cursor:pointer;transition:all var(--transition-base);font-family:inherit;font-size:13px;font-weight:600}.btn:hover:not(:disabled){background-color:var(--color-bg-hover);border-color:var(--color-primary);color:var(--color-primary)}.btn-primary{background-color:var(--color-primary);color:#fff;border-color:var(--color-primary)}.btn-primary:hover:not(:disabled){background-color:var(--color-primary-hover);border-color:var(--color-primary-hover);color:#fff}.btn-sm{padding:var(--spacing-xs)var(--spacing-sm);font-size:12px}.form-actions{gap:var(--spacing-sm);padding:var(--spacing-md)0 0 0;border-top:1px solid var(--color-border);background-color:var(--color-bg-primary);flex-shrink:0;justify-content:flex-end;margin-top:auto;display:flex}.form-disabled-hint{padding:var(--spacing-sm)var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:#1d4ed8;background:#eff6ff;font-size:12px;line-height:1.4}@media (max-width:1024px){.image-group-content-splitter{flex-direction:column}.image-group-list-section,.image-group-form-section{flex:50%}}@media (max-width:768px){.images-header{align-items:stretch;gap:var(--spacing-sm);flex-direction:column}.images-buttons{flex-wrap:wrap}.images-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}}.attribute-dialog{max-width:500px}.attribute-dialog .form-field{flex-direction:column;gap:6px;display:flex}.attribute-dialog .form-field label{color:var(--color-text-secondary);letter-spacing:.2px;font-size:12px;font-weight:600}.attribute-dialog .form-field input,.attribute-dialog .form-field select{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:8px var(--spacing-sm);background-color:var(--color-bg-primary);min-height:32px;color:var(--color-text-primary);transition:all var(--transition-base);font-family:inherit;font-size:13px}.attribute-dialog .form-field input:focus,.attribute-dialog .form-field select:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #3b82f61a}.attribute-dialog .checkbox-label{align-items:center;gap:var(--spacing-sm);cursor:pointer;display:flex;flex-direction:row!important}.attribute-dialog .checkbox-label input[type=checkbox]{cursor:pointer;width:18px;height:18px;min-height:18px}.attribute-dialog .checkbox-label span{color:var(--color-text-primary);font-weight:500}.confirm-dialog{max-width:400px}.confirm-message{align-items:flex-start;gap:var(--spacing-md);padding:var(--spacing-md)0;display:flex}.confirm-icon{flex-shrink:0;font-size:32px}.confirm-message p{color:var(--color-text-primary);flex:1;margin:0;font-size:14px;line-height:1.6}.template-widget{width:100%;height:100vh;padding:var(--spacing-lg);background-color:var(--color-bg-secondary);color:var(--color-text-primary);gap:var(--spacing-md);box-sizing:border-box;flex-direction:column;font-family:inherit;font-size:14px;display:flex;overflow:hidden}.template-content-splitter{gap:var(--spacing-md);box-sizing:border-box;flex:1;align-items:stretch;width:100%;min-height:0;display:flex;overflow:hidden}.template-list-section{flex-direction:column;flex:0 0 40%;gap:0;min-width:0;height:100%;padding:0;display:flex;overflow:hidden}.template-form-section{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex;overflow:hidden}.form-group-box{background-color:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-md);min-height:0;padding:var(--spacing-lg);box-shadow:var(--shadow-sm);flex-direction:column;flex:1;display:flex;overflow:hidden}.form-fields{gap:var(--spacing-md);min-height:0;padding-right:4px;padding-bottom:calc(var(--spacing-lg)*2);flex-direction:column;flex:1;display:flex;overflow-y:auto}.template-form-titlebar{justify-content:space-between;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md)var(--spacing-sm);background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border);flex-shrink:0;display:flex}.template-form-titlebar .form-group-title{margin:0}.template-form-titlebar-actions{gap:var(--spacing-sm);flex-shrink:0;align-items:center;display:flex}.form-fields::-webkit-scrollbar{width:6px}.form-fields::-webkit-scrollbar-thumb{background-color:var(--color-border);border-radius:3px}.attributes-group{margin-top:var(--spacing-md);margin-bottom:var(--spacing-lg);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-md);background-color:var(--color-bg-primary)}.attributes-header{margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;display:flex}.attributes-header h4{color:var(--color-text-primary);margin:0;font-size:14px;font-weight:700}.attributes-buttons{gap:var(--spacing-xs);display:flex}.attributes-tree{gap:var(--spacing-sm);flex-direction:column;display:flex}.attribute-item{border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg-secondary);overflow:hidden}.attribute-header{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm)var(--spacing-md);background-color:var(--color-bg-primary);cursor:pointer;transition:background-color var(--transition-base);display:flex}.attribute-header:hover{background-color:var(--color-bg-hover)}.attribute-header.selected{background-color:var(--color-primary-light);border-left:3px solid var(--color-primary)}.attribute-icon{font-size:16px}.attribute-label{color:var(--color-text-primary);flex:1;font-size:13px;font-weight:600}.btn-icon{width:24px;height:24px;color:var(--color-text-secondary);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-base);background:0 0;border:none;justify-content:center;align-items:center;padding:0;font-size:12px;display:flex}.btn-icon:hover:not(:disabled){background-color:var(--color-bg-hover);color:var(--color-text-primary)}.btn-icon:disabled{opacity:.5;cursor:not-allowed}.btn-icon.btn-danger:hover:not(:disabled){color:var(--color-danger);background-color:#ef44441a}.attribute-values{padding:var(--spacing-sm);gap:var(--spacing-xs);flex-direction:column;display:flex}.value-item{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-xs)var(--spacing-sm);background-color:var(--color-bg-primary);border-radius:var(--radius-sm);border:1px solid var(--color-border-light);display:flex}.value-main{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.value-icon{font-size:14px}.value-label{color:var(--color-text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.value-meta{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.value-tag{background:var(--color-bg-secondary);border:1px solid var(--color-border-light);color:var(--color-text-secondary);white-space:nowrap;border-radius:999px;padding:2px 6px;font-size:11px;line-height:1}.value-tag-price{color:var(--color-primary);background:#3b82f614;border-color:#3b82f659}.value-tag-sc{color:#059669;background:#10b98114;border-color:#10b98159}.empty-values{padding:var(--spacing-sm);text-align:center;color:var(--color-text-tertiary);font-size:12px;font-style:italic}.empty-attributes{padding:var(--spacing-lg);text-align:center;color:var(--color-text-tertiary);font-size:13px;font-style:italic}.btn-add-value{padding:var(--spacing-xs)var(--spacing-sm);border:1px dashed var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-base);text-align:center;background-color:#0000;font-size:12px}.btn-add-value:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary);background-color:var(--color-primary-light)}.btn-add-value:disabled{opacity:.5;cursor:not-allowed}@media (max-width:1024px){.template-content-splitter{flex-direction:column}.template-list-section,.template-form-section{flex:50%}}@media (max-width:768px){.attributes-header{align-items:stretch;gap:var(--spacing-sm);flex-direction:column}.attributes-buttons{flex-wrap:wrap}}.shop-management-widget{width:100%;height:100%;padding:var(--spacing-lg);background-color:var(--color-bg-secondary);color:var(--color-text-primary);gap:var(--spacing-md);box-sizing:border-box;flex-direction:column;font-family:inherit;font-size:14px;display:flex;overflow:hidden}.tab-container{background-color:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-lg);min-height:0;box-shadow:var(--shadow-sm);flex-direction:column;flex:1;display:flex;overflow:hidden}.tab-header{padding:var(--spacing-sm);border-bottom:1px solid var(--color-border);background-color:var(--color-bg-secondary);gap:2px;display:flex}.tab-button{padding:var(--spacing-sm)var(--spacing-lg);border:1px solid var(--color-border);border-top-left-radius:var(--radius-md);border-top-right-radius:var(--radius-md);background-color:var(--color-bg-secondary);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-base);border-bottom:none;margin-right:2px;font-weight:600}.tab-button:hover{background-color:var(--color-bg-hover);color:var(--color-text-primary)}.tab-button.active{background-color:var(--color-bg-primary);color:var(--color-text-primary);border-bottom:2px solid var(--color-primary);font-weight:700}.tab-content{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.shop-list-widget{width:100%;height:100%;padding:var(--spacing-lg);gap:var(--spacing-md);box-sizing:border-box;flex-direction:column;min-height:0;display:flex;overflow:hidden}.action-group{background-color:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-md)var(--spacing-lg);box-sizing:border-box;min-height:60px;box-shadow:var(--shadow-sm);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.action-buttons{gap:var(--spacing-sm);flex-wrap:wrap;align-items:center;display:flex}.btn-danger{color:var(--color-danger);border-color:#ef44444d}.btn-danger:hover:not(:disabled){border-color:var(--color-danger);background-color:#ef44441a}.btn-success{background-color:var(--color-success);color:#fff;border:1px solid #059669}.btn-success:hover:not(:disabled){background-color:#059669}.btn-sm{height:32px;padding:var(--spacing-xs)var(--spacing-sm);font-size:12px}.shop-content-splitter{gap:var(--spacing-md);box-sizing:border-box;flex:1;align-items:stretch;width:100%;min-height:0;display:flex;overflow:hidden}.shop-list-section{flex-direction:column;flex:1;gap:0;min-width:0;min-height:0;padding:0;display:flex;overflow:hidden}.shop-form-section{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex;overflow:hidden}.filter-section{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm)var(--spacing-sm)var(--spacing-sm)0;box-sizing:border-box;width:100%;margin-bottom:var(--spacing-sm);flex-shrink:0;display:flex}.table-container{border:1px solid var(--color-border);border-radius:var(--radius-lg);min-height:200px;max-height:100%;box-shadow:var(--shadow-sm);background-color:var(--color-bg-primary);flex:auto;width:100%;margin-bottom:0;position:relative;overflow:auto}.data-table{border-collapse:collapse;background-color:var(--color-bg-primary);table-layout:auto;width:100%;margin:0;display:table}.data-table th:first-child,.data-table td:first-child{width:60px;min-width:60px}.data-table th:nth-child(3),.data-table td:nth-child(3){width:100px;min-width:100px}.data-table th:nth-child(2),.data-table td:nth-child(2),.data-table th:nth-child(4),.data-table td:nth-child(4){min-width:120px}.data-table thead{z-index:10;position:sticky;top:0}.data-table th{padding:var(--spacing-md)var(--spacing-sm);text-align:center;color:var(--color-text-secondary);border-bottom:2px solid var(--color-border);border-right:1px solid var(--color-border);text-transform:uppercase;letter-spacing:.5px;background:linear-gradient(180deg,var(--color-bg-secondary)0%,var(--color-bg-tertiary)100%);z-index:5;font-size:12px;font-weight:700;position:sticky;top:0}.data-table td{padding:var(--spacing-md)var(--spacing-sm);text-align:center;border-right:1px solid var(--color-border-light);color:var(--color-text-primary);word-wrap:break-word;overflow-wrap:break-word;font-size:13px}.text-left{text-align:left!important}.platform-badge{font-size:12px;font-weight:600}.pagination-section{justify-content:center;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm)0;margin-top:var(--spacing-sm);background-color:#0000;flex-shrink:0;display:flex}.pagination-info{color:var(--color-text-secondary);white-space:nowrap;font-size:13px}.form-group-box{background-color:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);gap:var(--spacing-md);flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.form-group-title{color:var(--color-text-primary);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-border);flex-shrink:0;margin:0;font-size:16px;font-weight:700}.form-fields{gap:var(--spacing-md);min-height:0;padding-bottom:var(--spacing-sm);flex-direction:column;flex:1;display:flex;overflow-y:auto}.form-field input,.form-field select{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:8px var(--spacing-sm);background-color:var(--color-bg-primary);min-height:32px;color:var(--color-text-primary);transition:all var(--transition-base);font-family:inherit;font-size:13px}.form-field input:focus,.form-field select:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #3b82f61a}.form-field input:hover:not(:disabled),.form-field select:hover:not(:disabled){border-color:var(--color-text-tertiary)}.form-field input:disabled,.form-field select:disabled{background-color:var(--color-bg-tertiary);cursor:not-allowed;opacity:.6}.form-actions{gap:var(--spacing-sm);padding:var(--spacing-md)0;border-top:1px solid var(--color-border);flex-shrink:0;align-items:center;display:flex}.platform-checkboxes{gap:var(--spacing-sm);flex-direction:column;display:flex}.checkbox-label{align-items:center;gap:var(--spacing-sm);cursor:pointer;display:flex;flex-direction:row!important}.status-bar{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-md)var(--spacing-lg);box-sizing:border-box;align-items:center;gap:var(--spacing-sm);min-height:48px;box-shadow:var(--shadow-sm);transition:all var(--transition-base);flex-shrink:0;font-size:13px;display:flex}.table-container::-webkit-scrollbar{width:8px;height:8px}.form-group-box::-webkit-scrollbar{width:8px;height:8px}.dialog-body::-webkit-scrollbar{width:8px;height:8px}.table-container::-webkit-scrollbar-track{background:var(--color-bg-tertiary);border-radius:4px}.form-group-box::-webkit-scrollbar-track{background:var(--color-bg-tertiary);border-radius:4px}.dialog-body::-webkit-scrollbar-track{background:var(--color-bg-tertiary);border-radius:4px}.table-container::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:4px}.form-group-box::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:4px}.dialog-body::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:4px}.table-container::-webkit-scrollbar-thumb:hover{background:var(--color-text-tertiary)}.form-group-box::-webkit-scrollbar-thumb:hover{background:var(--color-text-tertiary)}.dialog-body::-webkit-scrollbar-thumb:hover{background:var(--color-text-tertiary)}@media (max-width:1024px){.shop-content-splitter{flex-direction:column}.shop-list-section,.shop-form-section{flex:100%}}@media (max-width:768px){.action-group{flex-direction:column;align-items:stretch}.action-buttons{flex-direction:column;width:100%}.action-buttons .btn{width:100%}.dialog-content{width:95%;max-height:95vh}}.shop-user-assignment-widget{width:100%;height:100%;padding:var(--spacing-lg);gap:var(--spacing-md);box-sizing:border-box;flex-direction:column;min-height:0;display:flex;overflow:hidden}.batch-assign-dialog{max-width:600px}.shop-checkboxes-container{border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg-primary);padding:var(--spacing-sm);max-height:300px;overflow-y:auto}.select-all-buttons{gap:var(--spacing-sm);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--color-border);margin-bottom:var(--spacing-sm);display:flex}.shop-checkboxes-list{gap:var(--spacing-xs);flex-direction:column;max-height:250px;display:flex;overflow-y:auto}.shop-checkboxes-list .checkbox-label{padding:var(--spacing-xs)var(--spacing-sm);border-radius:var(--radius-sm);transition:background-color var(--transition-base)}.shop-checkboxes-list .checkbox-label:hover{background-color:var(--color-bg-hover)}.service-credential-widget{width:100%;height:100vh;padding:var(--spacing-lg);background-color:var(--color-bg-secondary);color:var(--color-text-primary);gap:var(--spacing-md);box-sizing:border-box;flex-direction:column;font-family:inherit;font-size:14px;display:flex;overflow:hidden}.data-table tbody tr{cursor:pointer;height:52px;min-height:52px;max-height:52px;transition:all var(--transition-base);border-bottom:1px solid var(--color-border-light)}.platform-cell{color:var(--color-text-primary);font-weight:600}.description-cell{color:var(--color-text-secondary);text-overflow:ellipsis;white-space:nowrap;max-width:220px;overflow:hidden}.status-badge.active{color:#16a34a;background-color:#22c55e1a;border:1px solid #22c55e4d}.status-badge.inactive{color:var(--color-danger);background-color:#ef44441a;border:1px solid #ef44444d}.dialog-header{padding:var(--spacing-lg);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;display:flex}.dialog-footer{padding:var(--spacing-lg);border-top:1px solid var(--color-border);gap:var(--spacing-sm);justify-content:flex-end;display:flex}.password-input-wrapper{align-items:center;display:flex;position:relative}.password-input-wrapper input{flex:1;padding-right:40px}.password-toggle{width:28px;height:28px;color:var(--color-text-tertiary);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-base);background:0 0;border:none;justify-content:center;align-items:center;display:flex;position:absolute;right:8px}.password-toggle:hover{background-color:var(--color-bg-hover);color:var(--color-text-primary)}.table-container::-webkit-scrollbar{width:8px;height:8px}.dialog-body::-webkit-scrollbar{width:8px;height:8px}.table-container::-webkit-scrollbar-track{background:var(--color-bg-tertiary);border-radius:4px}.dialog-body::-webkit-scrollbar-track{background:var(--color-bg-tertiary);border-radius:4px}.table-container::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:4px}.dialog-body::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:4px}.table-container::-webkit-scrollbar-thumb:hover{background:var(--color-text-tertiary)}.dialog-body::-webkit-scrollbar-thumb:hover{background:var(--color-text-tertiary)}@media (max-width:768px){.filter-action-group,.filter-section{flex-direction:column;align-items:stretch}.dialog-content{width:95%;max-height:95vh}}:root{--em-primary:#e8ecf4;--em-secondary:#8b95a8;--em-accent:#6c5ce7;--em-accent-glow:#6c5ce766;--em-success:#00d9a5;--em-success-glow:#00d9a54d;--em-warning:#ffc048;--em-warning-glow:#ffc0484d;--em-danger:#ff6b8a;--em-danger-glow:#ff6b8a4d;--em-info:#00b4d8;--em-info-glow:#00b4d84d;--em-glass:#ffffff08;--em-glass-border:#ffffff14;--em-glass-hover:#ffffff0f}.employee-management-widget{width:100%;height:100vh;color:var(--em-primary);background:radial-gradient(80% 50% at 50% -20%,#6c5ce726 0%,#0000 50%),radial-gradient(60% 40% at 90% 80%,#00d9a514 0%,#0000 40%),radial-gradient(50% 30% at 10% 60%,#ff6b8a0f 0%,#0000 40%),linear-gradient(#0a0a1a 0%,#0f0f24 50%,#0a0a1a 100%);flex-direction:column;font-family:Outfit,system-ui,-apple-system,sans-serif;font-size:14px;display:flex;position:relative;overflow:hidden}.employee-management-widget:before{content:"";pointer-events:none;z-index:0;background-image:linear-gradient(#6c5ce708 1px,#0000 1px),linear-gradient(90deg,#6c5ce708 1px,#0000 1px);background-size:60px 60px;position:fixed;inset:0}.employee-management-widget>*{z-index:1;position:relative}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes countUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes glowPulse{0%,to{box-shadow:0 0 20px var(--em-accent-glow)}50%{box-shadow:0 0 40px var(--em-accent-glow),0 0 60px var(--em-accent-glow)}}.skeleton-avatar,.skeleton-avatar-lg{background:linear-gradient(90deg,#ffffff08 0%,#ffffff14 50%,#ffffff08 100%) 0 0/200% 100%;border-radius:50%;animation:1.5s infinite shimmer}.skeleton-avatar{width:44px;height:44px}.skeleton-avatar-lg{width:72px;height:72px}.employee-list-skeleton{flex-direction:column;gap:12px;padding:16px;display:flex}.employee-card-skeleton{background:var(--em-glass);border:1px solid var(--em-glass-border);border-radius:16px;align-items:center;gap:16px;padding:20px;display:flex}.skeleton-content{flex:1}.skeleton-stats{width:60px}.detail-skeleton{padding:28px}.skeleton-header{align-items:center;gap:20px;margin-bottom:32px;display:flex}.skeleton-info{flex:1}.skeleton-stats-grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.skeleton-stat-card{background:var(--em-glass);border:1px solid var(--em-glass-border);border-radius:16px;padding:20px}.control-bar{background:var(--em-glass);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--em-glass-border);flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:16px;padding:18px 24px;display:flex;box-shadow:0 4px 24px #0003,inset 0 1px #ffffff0d}.control-left{flex-wrap:wrap;flex:1;align-items:center;gap:16px;display:flex}.control-right{flex-shrink:0;align-items:center;gap:12px;display:flex}.search-box{border:1px solid var(--em-glass-border);background:#0006;border-radius:12px;align-items:center;gap:10px;min-width:280px;padding:10px 16px;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex}.search-box:focus-within{border-color:var(--em-accent);box-shadow:0 0 0 3px var(--em-accent-glow);background:#00000080}.search-box input{color:var(--em-primary);background:0 0;border:none;outline:none;flex:1;padding:2px 0;font-family:Outfit,sans-serif;font-size:14px;font-weight:500}.search-box svg{color:var(--em-secondary);opacity:.7;flex-shrink:0}.clear-btn{color:#fff;cursor:pointer;opacity:.8;background:#ff6b8a4d;border:none;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;transition:all .2s;display:flex}.clear-btn:hover{opacity:1;background:var(--em-danger);transform:scale(1.1)}.quick-date-group{border:1px solid var(--em-glass-border);background:#0000004d;border-radius:12px;gap:4px;padding:4px;display:flex}.quick-date-btn{color:var(--em-secondary);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:8px;padding:8px 14px;font-family:Outfit,sans-serif;font-size:13px;font-weight:600;transition:all .25s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.quick-date-btn:before{content:"";background:linear-gradient(90deg,#0000,#ffffff1a,#0000);width:100%;height:100%;transition:left .5s;position:absolute;top:0;left:-100%}.quick-date-btn:hover{color:var(--em-primary);background:#ffffff0d}.quick-date-btn:hover:before{left:100%}.quick-date-btn.active{color:var(--em-accent);background:linear-gradient(135deg,#6c5ce74d 0%,#6c5ce726 100%);box-shadow:0 0 20px #6c5ce733,inset 0 1px #ffffff0d}.custom-date-range{border:1px solid var(--em-glass-border);background:#0000004d;border-radius:12px;align-items:center;gap:10px;padding:8px 14px;display:flex}.custom-date-range svg{color:var(--em-secondary);opacity:.7}.custom-date-range input{border:1px solid var(--em-glass-border);color:var(--em-primary);background:#0006;border-radius:8px;outline:none;padding:6px 10px;font-family:JetBrains Mono,monospace;font-size:13px;transition:all .2s}.custom-date-range input:focus{border-color:var(--em-accent);box-shadow:0 0 0 2px var(--em-accent-glow)}.date-separator{color:var(--em-secondary);font-size:13px;font-weight:500}.sort-group{border:1px solid var(--em-glass-border);background:#0000004d;border-radius:12px;align-items:center;gap:8px;padding:8px 14px;display:flex}.sort-group svg{color:var(--em-secondary);opacity:.7}.sort-group select{color:var(--em-primary);cursor:pointer;background:0 0;border:none;outline:none;padding:4px 8px;font-family:Outfit,sans-serif;font-size:13px;font-weight:500}.sort-group select option{color:var(--em-primary);background:#1a1a2e;padding:8px}.sort-order-btn{border:1px solid var(--em-glass-border);width:32px;height:32px;color:var(--em-secondary);cursor:pointer;background:#0000004d;border-radius:8px;justify-content:center;align-items:center;font-size:16px;font-weight:700;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex}.sort-order-btn:hover{background:linear-gradient(135deg,var(--em-accent)0%,#5b4cdb 100%);border-color:var(--em-accent);color:#fff;box-shadow:0 4px 15px var(--em-accent-glow)}.error-banner{color:var(--em-danger);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ff6b8a14;border-bottom:1px solid #ff6b8a33;align-items:center;gap:12px;padding:14px 24px;font-size:14px;font-weight:500;animation:.3s ease-out slideUp;display:flex}.error-banner svg{flex-shrink:0;animation:2s ease-in-out infinite pulse}.error-banner button{color:inherit;cursor:pointer;background:#ff6b8a33;border:none;border-radius:6px;justify-content:center;align-items:center;margin-left:auto;padding:6px;transition:all .2s;display:flex}.error-banner button:hover{background:#ff6b8a4d;transform:scale(1.1)}.main-container{flex:1;min-height:0;display:flex;overflow:hidden}.employee-list-panel{background:var(--em-glass);-webkit-backdrop-filter:blur(20px);border-right:1px solid var(--em-glass-border);flex-direction:column;width:400px;min-width:340px;transition:all .35s cubic-bezier(.4,0,.2,1);display:flex;overflow:hidden}.employee-list-panel.collapsed{width:340px;min-width:300px}.panel-header{border-bottom:1px solid var(--em-glass-border);background:#0003;flex-shrink:0;justify-content:space-between;align-items:center;padding:18px 24px;display:flex}.panel-header h3{color:var(--em-primary);letter-spacing:.3px;margin:0;font-size:16px;font-weight:700}.count-badge{color:var(--em-accent);background:linear-gradient(135deg,#6c5ce733 0%,#6c5ce71a 100%);border:1px solid #6c5ce74d;border-radius:20px;padding:4px 12px;font-family:JetBrains Mono,monospace;font-size:13px;font-weight:600}.employee-list{flex:1;padding:16px;overflow-y:auto}.employee-list::-webkit-scrollbar{width:8px}.employee-list::-webkit-scrollbar-track{background:#0003;border-radius:4px}.employee-list::-webkit-scrollbar-thumb{background:#6c5ce74d;border-radius:4px;transition:background .2s}.employee-list::-webkit-scrollbar-thumb:hover{background:#6c5ce780}.employee-card{border:1px solid var(--em-glass-border);cursor:pointer;background:#00000040;border-radius:16px;align-items:center;gap:16px;margin-bottom:10px;padding:18px 20px;transition:all .3s cubic-bezier(.4,0,.2,1);animation:.4s ease-out backwards slideUp;display:flex;position:relative;overflow:hidden}.employee-card:before{content:"";background:linear-gradient(90deg,transparent,var(--em-accent),transparent);opacity:0;height:2px;transition:opacity .3s;position:absolute;top:0;left:0;right:0}.employee-card:hover{background:#00000059;border-color:#6c5ce766;transform:translate(4px);box-shadow:0 8px 32px #0000004d,0 0 30px #6c5ce71a}.employee-card:hover:before{opacity:1}.employee-card.selected{border-color:var(--em-accent);background:linear-gradient(135deg,#6c5ce726 0%,#6c5ce70d 100%);box-shadow:0 0 30px #6c5ce733,inset 0 1px #ffffff0d}.employee-card.selected:before{opacity:1}.card-avatar{width:48px;height:48px;color:var(--em-accent);background:linear-gradient(135deg,#6c5ce740 0%,#6c5ce71a 100%);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex;box-shadow:inset 0 0 20px #6c5ce726}.card-info{flex:1;min-width:0}.card-name{color:#fff;align-items:center;gap:10px;margin-bottom:6px;font-size:15px;font-weight:700;display:flex}.department-tag{color:var(--em-success);text-transform:uppercase;letter-spacing:.5px;background:linear-gradient(135deg,#00d9a526 0%,#00d9a514 100%);border:1px solid #00d9a533;border-radius:6px;padding:3px 8px;font-size:11px;font-weight:600}.card-stats{flex-wrap:wrap;gap:12px;display:flex}.stat-item{color:var(--em-secondary);background:#0000004d;border-radius:6px;align-items:center;gap:4px;padding:3px 8px;font-family:JetBrains Mono,monospace;font-size:12px;font-weight:600;transition:all .2s;display:inline-flex}.stat-item svg{opacity:.7}.stat-item.error{color:var(--em-danger);background:#ff6b8a26;border:1px solid #ff6b8a33}.card-summary{text-align:center;background:linear-gradient(135deg,#6c5ce733 0%,#6c5ce714 100%);border:1px solid #6c5ce733;border-radius:12px;flex-shrink:0;padding:10px 16px}.total-tasks{background:linear-gradient(135deg,var(--em-accent)0%,#8b7cf7 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-family:JetBrains Mono,monospace;font-size:24px;font-weight:800;line-height:1}.total-label{color:var(--em-secondary);text-transform:uppercase;letter-spacing:.5px;margin-top:4px;font-size:11px;font-weight:600}.card-arrow{color:var(--em-secondary);opacity:0;flex-shrink:0;transition:all .3s}.employee-card:hover .card-arrow,.employee-card.selected .card-arrow{opacity:1;color:var(--em-accent);transform:translate(4px)}.empty-state{color:var(--em-secondary);text-align:center;flex-direction:column;justify-content:center;align-items:center;height:100%;padding:48px 24px;display:flex}.empty-state svg{opacity:.3;color:var(--em-accent);margin-bottom:20px}.empty-state p{color:var(--em-primary);margin:0 0 8px;font-size:16px;font-weight:600}.detail-panel{background:0 0;flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.detail-panel:not(.visible){justify-content:center;align-items:center;display:flex}.no-selection{text-align:center;padding:48px;animation:.5s ease-out fadeIn}.no-selection-icon{width:140px;height:140px;color:var(--em-accent);background:linear-gradient(135deg,#6c5ce726 0%,#6c5ce70d 100%);border:1px solid #6c5ce733;border-radius:50%;justify-content:center;align-items:center;margin:0 auto 28px;animation:3s ease-in-out infinite glowPulse;display:flex;box-shadow:0 0 40px #6c5ce71a}.no-selection h3{color:var(--em-primary);margin-bottom:12px;font-size:22px;font-weight:700}.no-selection p{color:var(--em-secondary);max-width:320px;margin:0 auto;font-size:15px;line-height:1.6}.detail-content{flex:1;padding:28px;overflow-y:auto}.detail-content::-webkit-scrollbar{width:8px}.detail-content::-webkit-scrollbar-track{background:#0003;border-radius:4px}.detail-content::-webkit-scrollbar-thumb{background:#6c5ce74d;border-radius:4px}.detail-content::-webkit-scrollbar-thumb:hover{background:#6c5ce780}.detail-header{background:var(--em-glass);-webkit-backdrop-filter:blur(20px);border:1px solid var(--em-glass-border);border-radius:20px;margin-bottom:24px;padding:28px;animation:.4s ease-out slideUp;position:relative;overflow:hidden;box-shadow:0 4px 30px #0003,inset 0 1px #ffffff0d}.detail-header:before{content:"";background:linear-gradient(90deg,var(--em-accent),var(--em-success),var(--em-accent));background-size:200% 100%;height:3px;animation:3s linear infinite shimmer;position:absolute;top:0;left:0;right:0}.close-btn{border:1px solid var(--em-glass-border);width:36px;height:36px;color:var(--em-secondary);cursor:pointer;background:#0000004d;border-radius:10px;justify-content:center;align-items:center;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex;position:absolute;top:18px;right:18px}.close-btn:hover{background:var(--em-danger);border-color:var(--em-danger);color:#fff;box-shadow:0 4px 15px var(--em-danger-glow);transform:rotate(90deg)}.profile-section{align-items:center;gap:20px;display:flex}.profile-avatar{background:linear-gradient(135deg,var(--em-accent)0%,#5b4cdb 100%);color:#fff;width:72px;height:72px;box-shadow:0 8px 24px var(--em-accent-glow),inset 0 0 20px #ffffff1a;border-radius:50%;justify-content:center;align-items:center;display:flex}.profile-info h2{color:#fff;letter-spacing:.3px;margin:0 0 12px;font-size:26px;font-weight:800}.profile-meta{align-items:center;gap:16px;display:flex}.date-range{color:var(--em-secondary);background:#0000004d;border-radius:8px;align-items:center;gap:8px;padding:6px 12px;font-family:JetBrains Mono,monospace;font-size:13px;display:inline-flex}.performance-badge{color:#fff;text-transform:uppercase;letter-spacing:.5px;border-radius:20px;align-items:center;gap:6px;padding:6px 14px;font-size:12px;font-weight:700;display:inline-flex;box-shadow:0 4px 12px #0003}.kpi-grid{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px;display:grid}.kpi-card{background:var(--em-glass);-webkit-backdrop-filter:blur(20px);border:1px solid var(--em-glass-border);border-radius:18px;align-items:center;gap:16px;padding:22px;transition:all .35s cubic-bezier(.4,0,.2,1);animation:.5s ease-out backwards slideUp;display:flex;position:relative;overflow:hidden}.kpi-card:first-child{animation-delay:.1s}.kpi-card:nth-child(2){animation-delay:.15s}.kpi-card:nth-child(3){animation-delay:.2s}.kpi-card:nth-child(4){animation-delay:.25s}.kpi-card:before{content:"";background:linear-gradient(90deg,transparent,var(--kpi-color,var(--em-accent)),transparent);opacity:0;height:2px;transition:opacity .3s;position:absolute;top:0;left:0;right:0}.kpi-card:hover{box-shadow:0 12px 40px #0000004d,0 0 40px var(--kpi-glow,var(--em-accent-glow));border-color:#ffffff1f;transform:translateY(-4px)}.kpi-card:hover:before{opacity:1}.kpi-icon{border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;display:flex;position:relative}.kpi-icon:after{content:"";border-radius:inherit;box-shadow:0 0 20px var(--icon-glow,transparent);opacity:.5;position:absolute;inset:0}.kpi-icon.blue{--kpi-color:var(--em-info);--kpi-glow:var(--em-info-glow);--icon-glow:var(--em-info-glow);color:var(--em-info);background:linear-gradient(135deg,#00b4d833 0%,#00b4d814 100%);box-shadow:inset 0 0 20px #00b4d81a}.kpi-icon.green{--kpi-color:var(--em-success);--kpi-glow:var(--em-success-glow);--icon-glow:var(--em-success-glow);color:var(--em-success);background:linear-gradient(135deg,#00d9a533 0%,#00d9a514 100%);box-shadow:inset 0 0 20px #00d9a51a}.kpi-icon.purple{--kpi-color:var(--em-accent);--kpi-glow:var(--em-accent-glow);--icon-glow:var(--em-accent-glow);color:var(--em-accent);background:linear-gradient(135deg,#6c5ce740 0%,#6c5ce71a 100%);box-shadow:inset 0 0 20px #6c5ce726}.kpi-icon.orange{--kpi-color:var(--em-warning);--kpi-glow:var(--em-warning-glow);--icon-glow:var(--em-warning-glow);color:var(--em-warning);background:linear-gradient(135deg,#ffc04833 0%,#ffc04814 100%);box-shadow:inset 0 0 20px #ffc0481a}.kpi-content{flex:1;min-width:0}.kpi-value{color:#fff;letter-spacing:-.5px;font-family:JetBrains Mono,monospace;font-size:28px;font-weight:700;line-height:1.2;animation:.6s ease-out .3s backwards countUp}.kpi-label{color:var(--em-secondary);text-transform:uppercase;letter-spacing:.5px;margin-top:4px;font-size:12px;font-weight:600}.section{background:var(--em-glass);-webkit-backdrop-filter:blur(20px);border:1px solid var(--em-glass-border);border-radius:20px;margin-bottom:24px;padding:28px;animation:.5s ease-out backwards slideUp;box-shadow:0 4px 30px #00000026}.section-title{color:var(--em-primary);border-bottom:1px solid var(--em-glass-border);align-items:center;gap:12px;margin:0 0 22px;padding-bottom:14px;font-size:17px;font-weight:700;display:flex;position:relative}.error-overview{grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:24px;display:grid}.error-stat-card{text-align:center;background:#ff6b8a0d;border:1px solid #ff6b8a26;border-radius:16px;padding:22px;transition:all .3s}.error-stat-card:hover{border-color:#ff6b8a4d;transform:translateY(-2px)}.error-stat-card.loss{background:linear-gradient(135deg,#ff6b8a1f 0%,#ff6b8a0d 100%);border-color:#ff6b8a40;box-shadow:0 0 30px #ff6b8a1a}.error-value{color:var(--em-danger);text-shadow:0 0 20px var(--em-danger-glow);font-family:JetBrains Mono,monospace;font-size:26px;font-weight:700;line-height:1.2}.error-label{color:var(--em-secondary);text-transform:uppercase;letter-spacing:.5px;margin-top:8px;font-size:12px;font-weight:600}.error-breakdown{border-top:1px dashed var(--em-glass-border);margin-top:24px;padding-top:24px}.error-breakdown h4{color:var(--em-secondary);text-transform:uppercase;letter-spacing:.5px;margin:0 0 18px;font-size:14px;font-weight:600}.error-type-list{flex-direction:column;gap:14px;display:flex}.error-type-row{border:1px solid var(--em-glass-border);background:#00000040;border-radius:12px;align-items:center;gap:16px;padding:14px 18px;transition:all .25s;display:flex}.error-type-row:hover{background:#00000059;border-color:#ff6b8a33;transform:translate(4px)}.error-type-info{flex-shrink:0;justify-content:space-between;align-items:center;width:180px;display:flex}.error-type-name{color:var(--em-primary);font-size:14px;font-weight:600}.error-type-count{color:var(--em-secondary);font-family:JetBrains Mono,monospace;font-size:12px}.error-type-bar{background:#ffffff0f;border-radius:4px;flex:1;height:8px;overflow:hidden}.error-type-fill{background:linear-gradient(90deg,var(--em-danger)0%,#ff8fa3 100%);height:100%;box-shadow:0 0 10px var(--em-danger-glow);border-radius:4px;transition:width .8s cubic-bezier(.4,0,.2,1)}.error-type-percent{width:60px;color:var(--em-secondary);text-align:right;flex-shrink:0;font-family:JetBrains Mono,monospace;font-size:13px;font-weight:600}.materials-grid{flex-wrap:wrap;gap:10px;display:flex}.material-chip{border:1px solid var(--em-glass-border);background:#00000040;border-radius:24px;align-items:center;gap:8px;padding:10px 16px;font-size:14px;transition:all .25s cubic-bezier(.4,0,.2,1);display:inline-flex}.material-chip:hover{background:linear-gradient(135deg,#6c5ce726 0%,#6c5ce70d 100%);border-color:#6c5ce766;transform:translateY(-2px);box-shadow:0 4px 20px #6c5ce726}.material-name{color:var(--em-primary);font-weight:500}.material-count{color:var(--em-accent);background:#6c5ce726;border-radius:12px;padding:4px 10px;font-family:JetBrains Mono,monospace;font-size:13px;font-weight:700}.daily-table-wrapper{border:1px solid var(--em-glass-border);background:#0003;border-radius:14px;max-height:420px;overflow-y:auto}.daily-table{border-collapse:collapse;width:100%;font-size:14px}.daily-table thead{z-index:1;background:#0006;position:sticky;top:0}.daily-table th{text-align:left;color:var(--em-secondary);text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid var(--em-glass-border);padding:14px 18px;font-size:12px;font-weight:700}.daily-table th:first-child{border-radius:14px 0 0}.daily-table th:last-child{border-radius:0 14px 0 0}.daily-table td{border-bottom:1px solid var(--em-glass-border);padding:14px 18px}.daily-table tbody tr{transition:background .2s}.daily-table tbody tr:hover td{background:#6c5ce70d}.daily-table tbody tr:last-child td{border-bottom:none}.daily-table tbody tr.has-error{background:#ff6b8a0d}.daily-table tbody tr.has-error:hover td{background:#ff6b8a1a}.daily-table .date-cell{color:var(--em-secondary);font-family:JetBrains Mono,monospace;font-weight:500}.daily-table .task-cell{color:#fff;font-family:JetBrains Mono,monospace;font-size:16px;font-weight:700}.daily-table .error-cell{color:var(--em-secondary);font-family:JetBrains Mono,monospace}.daily-table .error-cell.error{color:var(--em-danger);text-shadow:0 0 10px var(--em-danger-glow);font-weight:700}.status-badge{text-transform:uppercase;letter-spacing:.5px;border-radius:20px;padding:5px 12px;font-size:11px;font-weight:700;display:inline-flex}.status-badge.success{color:var(--em-success);background:linear-gradient(135deg,#00d9a533 0%,#00d9a514 100%);border:1px solid #00d9a54d;box-shadow:0 0 10px #00d9a51a}.status-badge.warning{color:var(--em-danger);background:linear-gradient(135deg,#ff6b8a33 0%,#ff6b8a14 100%);border:1px solid #ff6b8a4d;box-shadow:0 0 10px #ff6b8a1a}.status-badge.idle{color:var(--em-secondary);border:1px solid var(--em-glass-border);background:#ffffff0d}.empty-detail{color:var(--em-secondary);text-align:center;flex-direction:column;justify-content:center;align-items:center;height:100%;padding:48px;display:flex}.empty-detail svg{opacity:.3;color:var(--em-danger);margin-bottom:20px}.empty-detail p{color:var(--em-primary);font-size:16px;font-weight:600}.trend-badge{border-radius:8px;align-items:center;gap:4px;padding:4px 10px;font-family:JetBrains Mono,monospace;font-size:12px;font-weight:600;display:inline-flex}.trend-badge.up{color:var(--em-danger);background:#ff6b8a1f;box-shadow:0 0 10px #ff6b8a1a}.trend-badge.down{color:var(--em-success);background:#00d9a51f;box-shadow:0 0 10px #00d9a51a}@media (max-width:1400px){.kpi-grid,.error-overview{grid-template-columns:repeat(2,1fr)}}@media (max-width:1200px){.employee-list-panel{width:360px;min-width:320px}.employee-list-panel.collapsed{width:320px;min-width:280px}}@media (max-width:992px){.employee-list-panel{width:320px;min-width:280px}.employee-list-panel.collapsed{width:280px;min-width:260px}.quick-date-group{flex-wrap:wrap}.control-left{flex-direction:column;align-items:flex-start}.search-box{min-width:100%}}@media (max-width:768px){.employee-management-widget{height:auto;min-height:100vh}.employee-management-widget:before{background-size:40px 40px}.main-container{flex-direction:column}.employee-list-panel,.employee-list-panel.collapsed{border-right:none;border-bottom:1px solid var(--em-glass-border);width:100%;max-height:45vh}.detail-panel{border-top:1px solid var(--em-glass-border);min-height:55vh}.kpi-grid{grid-template-columns:repeat(2,1fr);gap:12px}.kpi-card{padding:18px}.kpi-value{font-size:22px}.error-overview{grid-template-columns:1fr;gap:12px}.error-type-info{width:140px}.control-bar{flex-direction:column;gap:12px;padding:14px 16px}.control-left,.control-right{width:100%}.control-right{justify-content:flex-end}.detail-content{padding:20px}.section,.detail-header{border-radius:16px;padding:20px}.profile-section{text-align:center;flex-direction:column}.profile-meta{flex-direction:column;gap:10px}}@media (max-width:480px){.employee-management-widget{padding:0}.control-bar{padding:12px}.quick-date-btn{padding:6px 10px;font-size:11px}.kpi-grid{grid-template-columns:1fr}.employee-card{padding:14px 16px}.card-summary{padding:8px 12px}.total-tasks{font-size:20px}.profile-info h2{font-size:22px}.no-selection-icon{width:100px;height:100px}.no-selection h3{font-size:18px}}.employee-management-widget ::-webkit-scrollbar{width:8px;height:8px}.employee-management-widget ::-webkit-scrollbar-track{background:#0003;border-radius:4px}.employee-management-widget ::-webkit-scrollbar-thumb{background:#6c5ce74d;border-radius:4px;transition:background .2s}.employee-management-widget ::-webkit-scrollbar-thumb:hover{background:#6c5ce780}.employee-management-widget ::selection{color:#fff;background:#6c5ce766}:root{--sm-primary:#e8ecf4;--sm-secondary:#8b95a8;--sm-accent:#00d9a5;--sm-accent-glow:#00d9a566;--sm-success:#00d9a5;--sm-success-glow:#00d9a54d;--sm-warning:#ffc048;--sm-warning-glow:#ffc0484d;--sm-danger:#ff6b8a;--sm-danger-glow:#ff6b8a4d;--sm-info:#00b4d8;--sm-info-glow:#00b4d84d;--sm-purple:#a78bfa;--sm-purple-glow:#a78bfa4d;--sm-glass:#ffffff08;--sm-glass-border:#ffffff14;--sm-glass-hover:#ffffff0f}.salary-management-widget{width:100%;height:100vh;color:var(--sm-primary);background:radial-gradient(80% 50% at 50% -20%,#00d9a51f 0%,#0000 50%),radial-gradient(60% 40% at 90% 80%,#a78bfa14 0%,#0000 40%),radial-gradient(50% 30% at 10% 60%,#00b4d80f 0%,#0000 40%),linear-gradient(#0a0f14 0%,#0d1219 50%,#0a0f14 100%);flex-direction:column;font-family:Outfit,system-ui,-apple-system,sans-serif;font-size:14px;display:flex;position:relative;overflow:hidden}.salary-management-widget:before{content:"";pointer-events:none;z-index:0;background-image:linear-gradient(#00d9a505 1px,#0000 1px),linear-gradient(90deg,#00d9a505 1px,#0000 1px);background-size:60px 60px;position:fixed;inset:0}.salary-management-widget>*{z-index:1;position:relative}.sm-skeleton{background:linear-gradient(90deg,#ffffff08 0%,#ffffff14 50%,#ffffff08 100%) 0 0/200% 100%;border-radius:6px;animation:1.5s infinite shimmer}.sm-table-skeleton{padding:20px}.sm-row-skeleton{border-bottom:1px solid var(--sm-glass-border);gap:24px;padding:16px 0;display:flex}.sm-control-bar{background:var(--sm-glass);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--sm-glass-border);flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:16px;padding:18px 24px;display:flex;box-shadow:0 4px 24px #0003,inset 0 1px #ffffff0d}.sm-control-left{flex-wrap:wrap;flex:1;align-items:center;gap:16px;display:flex}.sm-control-right{flex-shrink:0;align-items:center;gap:12px;display:flex}.sm-month-navigator{border:1px solid var(--sm-glass-border);background:#0000004d;border-radius:12px;align-items:center;gap:8px;padding:6px;display:flex}.sm-nav-btn{width:36px;height:36px;color:var(--sm-secondary);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;transition:all .25s;display:flex}.sm-nav-btn:hover{background:var(--sm-accent);color:#0a0f14}.sm-month-display{align-items:center;gap:8px;padding:0 12px;display:flex}.sm-month-display svg{color:var(--sm-accent)}.sm-month-display input{color:var(--sm-primary);cursor:pointer;background:0 0;border:none;outline:none;width:120px;font-family:JetBrains Mono,monospace;font-size:15px;font-weight:600}.sm-month-display input::-webkit-calendar-picker-indicator{display:none}.sm-search-box{border:1px solid var(--sm-glass-border);background:#0006;border-radius:12px;align-items:center;gap:10px;min-width:240px;padding:10px 16px;transition:all .25s;display:flex}.sm-search-box:focus-within{border-color:var(--sm-accent);box-shadow:0 0 0 3px var(--sm-accent-glow)}.sm-search-box input{color:var(--sm-primary);background:0 0;border:none;outline:none;flex:1;font-family:Outfit,sans-serif;font-size:14px}.sm-search-box input::placeholder{color:var(--sm-secondary)}.sm-search-box svg{color:var(--sm-secondary);opacity:.7}.sm-clear-btn{color:#fff;cursor:pointer;background:#ff6b8a4d;border:none;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;transition:all .2s;display:flex}.sm-clear-btn:hover{background:var(--sm-danger);transform:scale(1.1)}.sm-filter-group{border:1px solid var(--sm-glass-border);background:#0000004d;border-radius:12px;align-items:center;gap:8px;padding:10px 14px;display:flex}.sm-filter-group svg{color:var(--sm-secondary);opacity:.7}.sm-filter-group select{color:var(--sm-primary);cursor:pointer;background:0 0;border:none;outline:none;font-family:Outfit,sans-serif;font-size:13px;font-weight:500}.sm-filter-group select option{color:var(--sm-primary);background:#1a1f26}.sm-btn{cursor:pointer;border:none;border-radius:10px;align-items:center;gap:8px;padding:11px 20px;font-family:Outfit,sans-serif;font-size:14px;font-weight:600;transition:all .25s;display:inline-flex;position:relative;overflow:hidden}.sm-btn:before{content:"";background:linear-gradient(90deg,#0000,#ffffff1a,#0000);width:100%;height:100%;transition:left .5s;position:absolute;top:0;left:-100%}.sm-btn:hover:before{left:100%}.sm-btn-primary{background:linear-gradient(135deg,var(--sm-accent)0%,#00b389 100%);color:#0a0f14;box-shadow:0 4px 15px var(--sm-accent-glow)}.sm-btn-primary:hover:not(:disabled){box-shadow:0 6px 25px var(--sm-accent-glow);transform:translateY(-2px)}.sm-btn-success{background:linear-gradient(135deg,var(--sm-purple)0%,#8b5cf6 100%);color:#fff;box-shadow:0 4px 15px var(--sm-purple-glow)}.sm-btn-success:hover:not(:disabled){box-shadow:0 6px 25px var(--sm-purple-glow);transform:translateY(-2px)}.sm-btn-secondary{color:var(--sm-primary);border:1px solid var(--sm-glass-border);background:#ffffff14}.sm-btn-secondary:hover{background:#ffffff1f;border-color:#fff3}.sm-btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.sm-message{align-items:center;gap:12px;padding:14px 24px;font-size:14px;font-weight:500;animation:.3s ease-out slideUp;display:flex}.sm-message.sm-error{color:var(--sm-danger);background:#ff6b8a14;border-bottom:1px solid #ff6b8a33}.sm-message.sm-success{color:var(--sm-success);background:#00d9a514;border-bottom:1px solid #00d9a533}.sm-message button{color:inherit;cursor:pointer;background:0 0;border:none;border-radius:4px;margin-left:auto;padding:4px;transition:background .2s}.sm-message button:hover{background:#ffffff1a}.sm-stats-grid{flex-shrink:0;grid-template-columns:repeat(4,1fr);gap:16px;padding:20px 24px;display:grid}.sm-stat-card{background:var(--sm-glass);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--sm-glass-border);border-radius:16px;align-items:center;gap:16px;padding:22px;transition:all .3s;animation:.5s ease-out backwards slideUp;display:flex}.sm-stat-card:first-child{animation-delay:.1s}.sm-stat-card:nth-child(2){animation-delay:.15s}.sm-stat-card:nth-child(3){animation-delay:.2s}.sm-stat-card:nth-child(4){animation-delay:.25s}.sm-stat-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px #0000004d}.sm-stat-icon{border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;display:flex}.sm-stat-icon.blue{color:var(--sm-info);background:linear-gradient(135deg,#00b4d833 0%,#00b4d814 100%);box-shadow:inset 0 0 20px #00b4d81a}.sm-stat-icon.orange{color:var(--sm-warning);background:linear-gradient(135deg,#ffc04833 0%,#ffc04814 100%);box-shadow:inset 0 0 20px #ffc0481a}.sm-stat-icon.green{color:var(--sm-success);background:linear-gradient(135deg,#00d9a533 0%,#00d9a514 100%);box-shadow:inset 0 0 20px #00d9a51a}.sm-stat-icon.purple{color:var(--sm-purple);background:linear-gradient(135deg,#a78bfa33 0%,#a78bfa14 100%);box-shadow:inset 0 0 20px #a78bfa1a}.sm-stat-content{flex:1;min-width:0}.sm-stat-value{color:#fff;font-family:JetBrains Mono,monospace;font-size:26px;font-weight:700;line-height:1.2}.sm-stat-label{color:var(--sm-secondary);text-transform:uppercase;letter-spacing:.5px;margin-top:4px;font-size:12px;font-weight:600}.sm-table-container{background:var(--sm-glass);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--sm-glass-border);border-radius:20px;flex-direction:column;flex:1;margin:0 24px 24px;animation:.5s ease-out .3s backwards slideUp;display:flex;overflow:hidden}.sm-table-header{border-bottom:1px solid var(--sm-glass-border);background:#0003;justify-content:space-between;align-items:center;padding:18px 24px;display:flex}.sm-table-header h3{color:var(--sm-primary);align-items:center;gap:10px;margin:0;font-size:16px;font-weight:700;display:flex}.sm-table-header h3 svg{color:var(--sm-accent)}.sm-record-count{color:var(--sm-secondary);background:#0000004d;border-radius:20px;padding:4px 12px;font-family:JetBrains Mono,monospace;font-size:13px}.sm-table-wrapper{flex:1;overflow-y:auto}.sm-table{border-collapse:collapse;width:100%}.sm-table thead{z-index:1;background:#0006;position:sticky;top:0}.sm-table th{text-align:left;color:var(--sm-secondary);text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid var(--sm-glass-border);white-space:nowrap;padding:14px 16px;font-size:12px;font-weight:700}.sm-table td{border-bottom:1px solid var(--sm-glass-border);vertical-align:middle;padding:14px 16px}.sm-table tbody tr{transition:background .2s}.sm-table tbody tr:hover td{background:#00d9a50d}.sm-employee-cell{align-items:center;gap:10px;display:flex}.sm-employee-avatar{width:32px;height:32px;color:var(--sm-accent);background:linear-gradient(135deg,#00d9a533 0%,#00d9a514 100%);border-radius:50%;justify-content:center;align-items:center;display:flex}.sm-month-cell{color:var(--sm-secondary);font-family:JetBrains Mono,monospace}.sm-money-cell{color:var(--sm-primary);font-family:JetBrains Mono,monospace;font-weight:600}.sm-money-cell.danger{color:var(--sm-danger)}.sm-money-cell.success{color:var(--sm-success)}.sm-money-cell.highlight{color:#fff;font-size:15px}.sm-status-badge{text-transform:uppercase;letter-spacing:.5px;border-radius:20px;padding:5px 12px;font-size:11px;font-weight:700;display:inline-flex}.sm-action-btns{gap:6px;display:flex}.sm-action-btn{border:1px solid var(--sm-glass-border);width:30px;height:30px;color:var(--sm-secondary);cursor:pointer;background:#0000004d;border-radius:8px;justify-content:center;align-items:center;transition:all .2s;display:flex}.sm-action-btn:hover{transform:scale(1.1)}.sm-action-btn.view:hover{background:var(--sm-info);border-color:var(--sm-info);color:#fff}.sm-action-btn.pay:hover{background:var(--sm-success);border-color:var(--sm-success);color:#0a0f14}.sm-action-btn.delete:hover{background:var(--sm-danger);border-color:var(--sm-danger);color:#fff}.sm-empty-state{color:var(--sm-secondary);text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:60px 24px;display:flex}.sm-empty-state svg{opacity:.3;color:var(--sm-accent);margin-bottom:20px}.sm-empty-state p{color:var(--sm-primary);margin:0 0 8px;font-size:16px;font-weight:600}.sm-empty-state span{opacity:.7;font-size:13px}.sm-pagination{border-top:1px solid var(--sm-glass-border);background:#0003;justify-content:center;align-items:center;gap:16px;padding:16px 24px;display:flex}.sm-page-btn{border:1px solid var(--sm-glass-border);color:var(--sm-secondary);cursor:pointer;background:#0000004d;border-radius:8px;align-items:center;gap:6px;padding:8px 16px;font-family:Outfit,sans-serif;font-size:13px;font-weight:600;transition:all .2s;display:inline-flex}.sm-page-btn:hover:not(:disabled){background:var(--sm-accent);border-color:var(--sm-accent);color:#0a0f14}.sm-page-btn:disabled{opacity:.4;cursor:not-allowed}.sm-page-info{color:var(--sm-secondary);font-family:JetBrains Mono,monospace;font-size:13px}.sm-dialog-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;background:#000000b3;justify-content:center;align-items:center;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.sm-dialog{border:1px solid var(--sm-glass-border);background:linear-gradient(#141a22 0%,#0d1219 100%);border-radius:20px;flex-direction:column;width:90%;max-width:560px;max-height:90vh;animation:.3s ease-out slideUp;display:flex;overflow:hidden;box-shadow:0 25px 80px #00000080}.sm-dialog.sm-dialog-detail{max-width:680px}.sm-dialog-header{border-bottom:1px solid var(--sm-glass-border);background:#0000004d;justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.sm-dialog-header h3{color:var(--sm-primary);margin:0;font-size:18px;font-weight:700}.sm-dialog-close{border:1px solid var(--sm-glass-border);width:36px;height:36px;color:var(--sm-secondary);cursor:pointer;background:#0000004d;border-radius:10px;justify-content:center;align-items:center;transition:all .2s;display:flex}.sm-dialog-close:hover{background:var(--sm-danger);border-color:var(--sm-danger);color:#fff;transform:rotate(90deg)}.sm-dialog-content{flex:1;padding:24px;overflow-y:auto}.sm-dialog-footer{border-top:1px solid var(--sm-glass-border);background:#0003;justify-content:flex-end;gap:12px;padding:20px 24px;display:flex}.sm-pay-info-grid{grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:24px;display:grid}.sm-pay-info-item{border:1px solid var(--sm-glass-border);background:#0000004d;border-radius:12px;padding:14px 16px}.sm-pay-info-item.highlight{background:linear-gradient(135deg,#00d9a51a 0%,#00d9a50d 100%);border-color:#00d9a54d}.sm-pay-label{color:var(--sm-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px;font-size:11px;font-weight:600;display:block}.sm-pay-value{color:var(--sm-primary);font-family:JetBrains Mono,monospace;font-size:15px;font-weight:700}.sm-pay-value.danger{color:var(--sm-danger)}.sm-pay-value.success{color:var(--sm-success)}.sm-pay-inputs{flex-direction:column;gap:16px;margin-bottom:24px;display:flex}.sm-input-group label{color:var(--sm-secondary);margin-bottom:8px;font-size:13px;font-weight:600;display:block}.sm-input-group input,.sm-input-group textarea{border:1px solid var(--sm-glass-border);width:100%;color:var(--sm-primary);box-sizing:border-box;background:#0006;border-radius:10px;outline:none;padding:12px 14px;font-family:Outfit,sans-serif;font-size:14px;transition:all .2s}.sm-input-group input:focus,.sm-input-group textarea:focus{border-color:var(--sm-accent);box-shadow:0 0 0 3px var(--sm-accent-glow)}.sm-input-group input::placeholder,.sm-input-group textarea::placeholder{color:var(--sm-secondary);opacity:.6}.sm-input-group textarea{resize:vertical;min-height:80px}.sm-pay-summary{border:1px solid var(--sm-glass-border);background:#0000004d;border-radius:12px;padding:16px}.sm-summary-row{color:var(--sm-secondary);border-bottom:1px dashed var(--sm-glass-border);justify-content:space-between;padding:10px 0;font-size:14px;display:flex}.sm-summary-row:last-child{border-bottom:none}.sm-summary-row.success{color:var(--sm-success)}.sm-summary-row.total{color:var(--sm-primary);border-top:2px solid var(--sm-accent);border-bottom:none;margin-top:4px;padding-top:14px;font-size:18px;font-weight:700}.sm-detail-section{margin-bottom:24px}.sm-detail-section:last-child{margin-bottom:0}.sm-detail-section h4{color:var(--sm-accent);border-bottom:1px solid var(--sm-glass-border);align-items:center;gap:10px;margin:0 0 16px;padding-bottom:10px;font-size:14px;font-weight:700;display:flex}.sm-detail-grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.sm-detail-item{border:1px solid var(--sm-glass-border);background:#00000040;border-radius:10px;padding:12px 14px}.sm-detail-item.highlight{background:linear-gradient(135deg,#00d9a51a 0%,#00d9a50d 100%);border-color:#00d9a54d}.sm-detail-label{color:var(--sm-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px;font-size:11px;font-weight:600;display:block}.sm-detail-value{color:var(--sm-primary);font-family:JetBrains Mono,monospace;font-size:14px;font-weight:600}.sm-detail-value.danger{color:var(--sm-danger)}.sm-detail-value.success{color:var(--sm-success)}.sm-detail-remark{border:1px solid var(--sm-glass-border);background:#00000040;border-radius:10px;margin-top:16px;padding:14px}.sm-detail-remark p{color:var(--sm-primary);margin:8px 0 0;font-size:14px;line-height:1.6}@media (max-width:1200px){.sm-stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.salary-management-widget{height:auto;min-height:100vh}.sm-control-bar{flex-direction:column;padding:14px 16px}.sm-control-left,.sm-control-right{width:100%}.sm-control-left{flex-direction:column;align-items:stretch}.sm-search-box{min-width:100%}.sm-stats-grid{grid-template-columns:1fr;padding:16px}.sm-table-container{border-radius:16px;margin:0 16px 16px}.sm-table{font-size:13px}.sm-table th,.sm-table td{padding:10px 12px}.sm-dialog{border-radius:16px;width:95%;max-height:85vh}.sm-pay-info-grid,.sm-detail-grid{grid-template-columns:1fr}}.salary-management-widget ::-webkit-scrollbar{width:8px;height:8px}.salary-management-widget ::-webkit-scrollbar-track{background:#0003;border-radius:4px}.salary-management-widget ::-webkit-scrollbar-thumb{background:#00d9a54d;border-radius:4px}.salary-management-widget ::-webkit-scrollbar-thumb:hover{background:#00d9a580}:root{--lr-primary:#e8ecf4;--lr-secondary:#8b95a8;--lr-accent:#ff7e5f;--lr-accent-glow:#ff7e5f66;--lr-success:#10b981;--lr-success-glow:#10b9814d;--lr-warning:#f59e0b;--lr-warning-glow:#f59e0b4d;--lr-danger:#ef4444;--lr-danger-glow:#ef44444d;--lr-info:#3b82f6;--lr-info-glow:#3b82f64d;--lr-glass:#ffffff08;--lr-glass-border:#ffffff14}.leave-request-widget{width:100%;height:100vh;color:var(--lr-primary);background:radial-gradient(80% 50% at 50% -20%,#ff7e5f1f 0%,#0000 50%),radial-gradient(60% 40% at 90% 80%,#10b98114 0%,#0000 40%),radial-gradient(50% 30% at 10% 60%,#3b82f60f 0%,#0000 40%),linear-gradient(#0f0f1a 0%,#141420 50%,#0f0f1a 100%);flex-direction:column;font-family:Outfit,system-ui,-apple-system,sans-serif;font-size:14px;display:flex;position:relative;overflow:hidden}.leave-request-widget:before{content:"";pointer-events:none;z-index:0;background-image:linear-gradient(#ff7e5f04 1px,#0000 1px),linear-gradient(90deg,#ff7e5f04 1px,#0000 1px);background-size:50px 50px;position:fixed;inset:0}.leave-request-widget>*{z-index:1;position:relative}@keyframes scaleIn{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}.lr-skeleton{background:linear-gradient(90deg,#ffffff08 0%,#ffffff14 50%,#ffffff08 100%) 0 0/200% 100%;border-radius:8px;animation:1.5s infinite shimmer}.lr-card-skeleton{grid-template-columns:repeat(4,1fr);gap:16px;padding:20px;display:grid}.lr-card-skeleton-item{border-radius:16px;overflow:hidden}.lr-control-bar{background:var(--lr-glass);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid var(--lr-glass-border);flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:16px;padding:18px 24px;display:flex;box-shadow:0 4px 24px #0003}.lr-control-left{flex-wrap:wrap;flex:1;align-items:center;gap:12px;display:flex}.lr-control-right{flex-shrink:0;align-items:center;gap:12px;display:flex}.lr-search-box{border:1px solid var(--lr-glass-border);background:#0006;border-radius:12px;align-items:center;gap:10px;min-width:220px;padding:10px 16px;transition:all .25s;display:flex}.lr-search-box:focus-within{border-color:var(--lr-accent);box-shadow:0 0 0 3px var(--lr-accent-glow)}.lr-search-box input{color:var(--lr-primary);background:0 0;border:none;outline:none;flex:1;font-family:Outfit,sans-serif;font-size:14px}.lr-search-box input::placeholder{color:var(--lr-secondary)}.lr-search-box svg{color:var(--lr-secondary);opacity:.7}.lr-clear-btn{color:#fff;cursor:pointer;background:#ef44444d;border:none;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;transition:all .2s;display:flex}.lr-clear-btn:hover{background:var(--lr-danger);transform:scale(1.1)}.lr-filter-group{border:1px solid var(--lr-glass-border);background:#0000004d;border-radius:12px;align-items:center;gap:8px;padding:10px 14px;display:flex}.lr-filter-group svg{color:var(--lr-secondary);opacity:.7}.lr-filter-group select{color:var(--lr-primary);cursor:pointer;background:0 0;border:none;outline:none;font-family:Outfit,sans-serif;font-size:13px;font-weight:500}.lr-filter-group select option{color:var(--lr-primary);background:#1a1a28}.lr-btn{cursor:pointer;border:none;border-radius:10px;align-items:center;gap:8px;padding:11px 20px;font-family:Outfit,sans-serif;font-size:14px;font-weight:600;transition:all .25s;display:inline-flex}.lr-btn-primary{background:linear-gradient(135deg,var(--lr-accent)0%,tomato 100%);color:#fff;box-shadow:0 4px 15px var(--lr-accent-glow)}.lr-btn-primary:hover:not(:disabled){box-shadow:0 6px 25px var(--lr-accent-glow);transform:translateY(-2px)}.lr-btn-success{background:linear-gradient(135deg,var(--lr-success)0%,#059669 100%);color:#fff;box-shadow:0 4px 15px var(--lr-success-glow)}.lr-btn-success:hover:not(:disabled){box-shadow:0 6px 25px var(--lr-success-glow);transform:translateY(-2px)}.lr-btn-danger{background:linear-gradient(135deg,var(--lr-danger)0%,#dc2626 100%);color:#fff;box-shadow:0 4px 15px var(--lr-danger-glow)}.lr-btn-danger:hover:not(:disabled){transform:translateY(-2px)}.lr-btn-danger-outline{color:var(--lr-danger);border:2px solid var(--lr-danger);background:0 0}.lr-btn-danger-outline:hover{background:var(--lr-danger);color:#fff}.lr-btn-secondary{color:var(--lr-primary);border:1px solid var(--lr-glass-border);background:#ffffff14}.lr-btn-secondary:hover{background:#ffffff1f}.lr-btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.lr-message{align-items:center;gap:12px;padding:14px 24px;font-size:14px;font-weight:500;animation:.3s ease-out slideUp;display:flex}.lr-message.lr-error{color:var(--lr-danger);background:#ef444414;border-bottom:1px solid #ef444433}.lr-message.lr-success{color:var(--lr-success);background:#10b98114;border-bottom:1px solid #10b98133}.lr-message button{color:inherit;cursor:pointer;background:0 0;border:none;border-radius:4px;margin-left:auto;padding:4px}.lr-stats-grid{flex-shrink:0;grid-template-columns:repeat(4,1fr);gap:16px;padding:20px 24px;display:grid}.lr-stat-card{background:var(--lr-glass);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--lr-glass-border);border-radius:16px;align-items:center;gap:16px;padding:20px;transition:all .3s;animation:.5s ease-out backwards slideUp;display:flex}.lr-stat-card:first-child{animation-delay:.1s}.lr-stat-card:nth-child(2){animation-delay:.15s}.lr-stat-card:nth-child(3){animation-delay:.2s}.lr-stat-card:nth-child(4){animation-delay:.25s}.lr-stat-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px #0000004d}.lr-stat-card.pending .lr-stat-icon{color:var(--lr-warning);background:linear-gradient(135deg,#f59e0b33 0%,#f59e0b14 100%)}.lr-stat-card.approved .lr-stat-icon{color:var(--lr-success);background:linear-gradient(135deg,#10b98133 0%,#10b98114 100%)}.lr-stat-card.rejected .lr-stat-icon{color:var(--lr-danger);background:linear-gradient(135deg,#ef444433 0%,#ef444414 100%)}.lr-stat-card.total .lr-stat-icon{color:var(--lr-info);background:linear-gradient(135deg,#3b82f633 0%,#3b82f614 100%)}.lr-stat-icon{border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;display:flex}.lr-stat-content{flex:1;min-width:0}.lr-stat-value{color:#fff;font-family:JetBrains Mono,monospace;font-size:28px;font-weight:700;line-height:1.2}.lr-stat-label{color:var(--lr-secondary);text-transform:uppercase;letter-spacing:.5px;margin-top:4px;font-size:12px;font-weight:600}.lr-main-content{background:var(--lr-glass);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--lr-glass-border);border-radius:20px;flex-direction:column;flex:1;margin:0 24px 24px;animation:.5s ease-out .3s backwards slideUp;display:flex;overflow:hidden}.lr-content-header{border-bottom:1px solid var(--lr-glass-border);background:#0003;justify-content:space-between;align-items:center;padding:18px 24px;display:flex}.lr-content-header h3{color:var(--lr-primary);align-items:center;gap:10px;margin:0;font-size:16px;font-weight:700;display:flex}.lr-content-header h3 svg{color:var(--lr-accent)}.lr-record-count{color:var(--lr-secondary);background:#0000004d;border-radius:20px;padding:4px 12px;font-family:JetBrains Mono,monospace;font-size:13px}.lr-card-grid{flex:1;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));align-content:start;gap:16px;padding:20px;display:grid;overflow-y:auto}.lr-leave-card{border:1px solid var(--lr-glass-border);cursor:pointer;background:#00000040;border-radius:16px;padding:18px;transition:all .3s;animation:.4s ease-out backwards scaleIn;position:relative;overflow:hidden}.lr-leave-card:before{content:"";opacity:0;height:3px;transition:opacity .3s;position:absolute;top:0;left:0;right:0}.lr-leave-card.pending:before{background:var(--lr-warning)}.lr-leave-card.approved:before{background:var(--lr-success)}.lr-leave-card.rejected:before{background:var(--lr-danger)}.lr-leave-card.cancelled:before{background:#6b7280}.lr-leave-card:hover{border-color:#ffffff26;transform:translateY(-4px);box-shadow:0 12px 40px #0000004d}.lr-leave-card:hover:before{opacity:1}.lr-card-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.lr-card-user{align-items:center;gap:10px;display:flex}.lr-user-avatar{width:32px;height:32px;color:var(--lr-accent);background:linear-gradient(135deg,#ff7e5f33 0%,#ff7e5f14 100%);border-radius:50%;justify-content:center;align-items:center;display:flex}.lr-user-name{color:#fff;font-size:15px;font-weight:700}.lr-card-status{text-transform:uppercase;letter-spacing:.5px;border-radius:20px;align-items:center;gap:4px;padding:4px 10px;font-size:11px;font-weight:700;display:inline-flex}.lr-card-type{align-items:center;gap:8px;margin-bottom:12px;display:flex}.lr-type-tag{border:1px solid;border-radius:6px;padding:4px 10px;font-size:12px;font-weight:600}.lr-deduct-tag{color:var(--lr-danger);text-transform:uppercase;background:#ef444426;border-radius:4px;padding:3px 8px;font-size:10px;font-weight:700}.lr-card-date{color:var(--lr-secondary);align-items:center;gap:8px;margin-bottom:12px;font-family:JetBrains Mono,monospace;font-size:13px;display:flex}.lr-card-days{background:linear-gradient(135deg,#ff7e5f26 0%,#ff7e5f0d 100%);border:1px solid #ff7e5f4d;border-radius:8px;align-items:baseline;gap:4px;margin-bottom:12px;padding:6px 12px;display:inline-flex}.lr-days-value{color:var(--lr-accent);font-family:JetBrains Mono,monospace;font-size:20px;font-weight:700}.lr-days-label{color:var(--lr-secondary);font-size:12px;font-weight:600}.lr-card-reason{margin-bottom:12px}.lr-card-reason p{color:var(--lr-secondary);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:13px;line-height:1.5;display:-webkit-box;overflow:hidden}.lr-card-actions{border-top:1px solid var(--lr-glass-border);gap:8px;padding-top:12px;display:flex}.lr-card-btn{border:1px solid var(--lr-glass-border);color:var(--lr-secondary);cursor:pointer;background:#0000004d;border-radius:8px;flex:1;justify-content:center;align-items:center;padding:8px;transition:all .2s;display:flex}.lr-card-btn:hover{transform:scale(1.05)}.lr-card-btn.approve:hover{background:var(--lr-success);border-color:var(--lr-success);color:#fff}.lr-card-btn.cancel:hover{background:var(--lr-danger);border-color:var(--lr-danger);color:#fff}.lr-card-btn.detail:hover{background:var(--lr-accent);border-color:var(--lr-accent);color:#fff}.lr-empty-state{color:var(--lr-secondary);text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:60px 24px;display:flex}.lr-empty-state svg{opacity:.3;color:var(--lr-accent);margin-bottom:20px}.lr-empty-state p{color:var(--lr-primary);margin:0 0 8px;font-size:16px;font-weight:600}.lr-empty-state span{opacity:.7;font-size:13px}.lr-pagination{border-top:1px solid var(--lr-glass-border);background:#0003;justify-content:center;align-items:center;gap:16px;padding:16px 24px;display:flex}.lr-page-btn{border:1px solid var(--lr-glass-border);color:var(--lr-secondary);cursor:pointer;background:#0000004d;border-radius:8px;align-items:center;gap:6px;padding:8px 16px;font-family:Outfit,sans-serif;font-size:13px;font-weight:600;transition:all .2s;display:inline-flex}.lr-page-btn:hover:not(:disabled){background:var(--lr-accent);border-color:var(--lr-accent);color:#fff}.lr-page-btn:disabled{opacity:.4;cursor:not-allowed}.lr-page-info{color:var(--lr-secondary);font-family:JetBrains Mono,monospace;font-size:13px}.lr-dialog-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;background:#000000b3;justify-content:center;align-items:center;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.lr-dialog{border:1px solid var(--lr-glass-border);background:linear-gradient(#1a1a28 0%,#141420 100%);border-radius:20px;flex-direction:column;width:90%;max-width:520px;max-height:90vh;animation:.3s ease-out slideUp;display:flex;overflow:hidden;box-shadow:0 25px 80px #00000080}.lr-dialog.lr-dialog-detail{max-width:600px}.lr-dialog-header{border-bottom:1px solid var(--lr-glass-border);background:#0000004d;justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.lr-dialog-header h3{color:var(--lr-primary);align-items:center;gap:10px;margin:0;font-size:18px;font-weight:700;display:flex}.lr-dialog-header h3 svg{color:var(--lr-accent)}.lr-dialog-close{border:1px solid var(--lr-glass-border);width:36px;height:36px;color:var(--lr-secondary);cursor:pointer;background:#0000004d;border-radius:10px;justify-content:center;align-items:center;transition:all .2s;display:flex}.lr-dialog-close:hover{background:var(--lr-danger);border-color:var(--lr-danger);color:#fff;transform:rotate(90deg)}.lr-dialog-content{flex:1;padding:24px;overflow-y:auto}.lr-dialog-footer{border-top:1px solid var(--lr-glass-border);background:#0003;justify-content:flex-end;gap:12px;padding:20px 24px;display:flex}.lr-form-grid{grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:16px;display:grid}.lr-form-group{flex-direction:column;gap:8px;display:flex}.lr-form-group.full{grid-column:1/-1}.lr-form-group label{color:var(--lr-secondary);font-size:13px;font-weight:600}.lr-form-group input,.lr-form-group select,.lr-form-group textarea{border:1px solid var(--lr-glass-border);color:var(--lr-primary);background:#0006;border-radius:10px;outline:none;padding:12px 14px;font-family:Outfit,sans-serif;font-size:14px;transition:all .2s}.lr-form-group input:focus,.lr-form-group select:focus,.lr-form-group textarea:focus{border-color:var(--lr-accent);box-shadow:0 0 0 3px var(--lr-accent-glow)}.lr-form-group input::placeholder,.lr-form-group textarea::placeholder{color:var(--lr-secondary);opacity:.6}.lr-form-group select option{color:var(--lr-primary);background:#1a1a28}.lr-form-group textarea{resize:vertical;min-height:100px}.lr-approve-info{margin-bottom:20px}.lr-approve-row{border-bottom:1px solid var(--lr-glass-border);justify-content:space-between;align-items:center;padding:14px 0;display:flex}.lr-approve-row:last-child{border-bottom:none}.lr-approve-label{color:var(--lr-secondary);font-size:14px}.lr-approve-value{color:var(--lr-primary);font-size:14px;font-weight:600}.lr-type-badge{border-radius:6px;padding:4px 12px;font-size:12px;font-weight:700;display:inline-flex}.lr-deduct-badge{border-radius:6px;padding:4px 10px;font-size:11px;font-weight:700;display:inline-flex}.lr-deduct-badge.danger{color:var(--lr-danger);background:#ef444426}.lr-deduct-badge.success{color:var(--lr-success);background:#10b98126}.lr-reject-form{background:#ef44440d;border:1px solid #ef444433;border-radius:12px;padding:16px}.lr-reject-form label{color:var(--lr-danger);margin-bottom:8px;font-size:13px;font-weight:600;display:block}.lr-reject-form textarea{width:100%;color:var(--lr-primary);resize:vertical;box-sizing:border-box;background:#0000004d;border:1px solid #ef44444d;border-radius:8px;outline:none;padding:12px;font-family:Outfit,sans-serif;font-size:14px}.lr-reject-form textarea:focus{border-color:var(--lr-danger)}.lr-detail-status-card{border:1px solid var(--lr-glass-border);background:#0000004d;border-radius:14px;align-items:center;gap:16px;margin-bottom:24px;padding:20px;display:flex}.lr-status-icon-lg{border-radius:14px;justify-content:center;align-items:center;width:60px;height:60px;display:flex}.lr-status-info{flex:1}.lr-status-text{margin-bottom:4px;font-size:20px;font-weight:700;display:block}.lr-status-time{color:var(--lr-secondary);font-size:13px}.lr-detail-section{margin-bottom:24px}.lr-detail-section:last-child{margin-bottom:0}.lr-detail-section h4{color:var(--lr-accent);border-bottom:1px solid var(--lr-glass-border);align-items:center;gap:10px;margin:0 0 16px;padding-bottom:10px;font-size:14px;font-weight:700;display:flex}.lr-detail-grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.lr-detail-item{border:1px solid var(--lr-glass-border);background:#00000040;border-radius:10px;padding:12px 14px}.lr-detail-label{color:var(--lr-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px;font-size:11px;font-weight:600;display:block}.lr-detail-value{color:var(--lr-primary);font-size:14px;font-weight:600}.lr-detail-reason{border:1px solid var(--lr-glass-border);background:#00000040;border-radius:10px;margin-top:16px;padding:14px}.lr-detail-reason.reject{background:#ef44440d;border-color:#ef444433}.lr-detail-reason p{color:var(--lr-primary);margin:8px 0 0;font-size:14px;line-height:1.6}@media (max-width:1200px){.lr-stats-grid,.lr-card-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.leave-request-widget{height:auto;min-height:100vh}.lr-control-bar{flex-direction:column;padding:14px 16px}.lr-control-left,.lr-control-right{width:100%}.lr-control-left{flex-direction:column;align-items:stretch}.lr-search-box{min-width:100%}.lr-stats-grid{grid-template-columns:repeat(2,1fr);padding:16px}.lr-main-content{border-radius:16px;margin:0 16px 16px}.lr-card-grid{grid-template-columns:1fr;padding:16px}.lr-dialog{border-radius:16px;width:95%;max-height:85vh}.lr-form-grid,.lr-detail-grid{grid-template-columns:1fr}}.leave-request-widget ::-webkit-scrollbar{width:8px;height:8px}.leave-request-widget ::-webkit-scrollbar-track{background:#0003;border-radius:4px}.leave-request-widget ::-webkit-scrollbar-thumb{background:#ff7e5f4d;border-radius:4px}.leave-request-widget ::-webkit-scrollbar-thumb:hover{background:#ff7e5f80}:root{--fs-primary:#e8ecf4;--fs-secondary:#8b95a8;--fs-accent:#6c5ce7;--fs-accent-glow:#6c5ce766;--fs-success:#00d9a5;--fs-success-glow:#00d9a54d;--fs-warning:#ffc048;--fs-warning-glow:#ffc0484d;--fs-danger:#ff6b8a;--fs-danger-glow:#ff6b8a4d;--fs-glass:#ffffff08;--fs-glass-border:#ffffff14;--fs-glass-hover:#ffffff0f}.finance-statistics-widget{height:100%;min-height:100%;color:var(--fs-primary);box-sizing:border-box;background:radial-gradient(80% 50% at 50% -20%,#6c5ce726 0%,#0000 50%),radial-gradient(60% 40% at 90% 80%,#00d9a514 0%,#0000 40%),radial-gradient(50% 30% at 10% 60%,#ff6b8a0f 0%,#0000 40%),linear-gradient(#0a0a1a 0%,#0f0f24 50%,#0a0a1a 100%);padding:32px;font-family:Outfit,system-ui,-apple-system,sans-serif;position:relative;overflow:hidden auto}.finance-statistics-widget:before{content:"";pointer-events:none;z-index:0;background-image:linear-gradient(#6c5ce708 1px,#0000 1px),linear-gradient(90deg,#6c5ce708 1px,#0000 1px);background-size:60px 60px;position:fixed;inset:0}.finance-statistics-widget>*{z-index:1;position:relative}.control-bar{background:var(--fs-glass);-webkit-backdrop-filter:blur(20px);border:1px solid var(--fs-glass-border);border-radius:16px;justify-content:space-between;align-items:center;margin-bottom:28px;padding:18px 24px;display:flex;box-shadow:0 4px 24px #0003,inset 0 1px #ffffff0d}.filters{align-items:center;gap:16px;display:flex}.filter-item{color:var(--fs-secondary);align-items:center;gap:10px;transition:color .2s;display:flex}.filter-item:hover{color:var(--fs-primary)}.filter-item svg{opacity:.7}.month-picker,.shop-select{border:1px solid var(--fs-glass-border);color:var(--fs-primary);cursor:pointer;background:#0006;border-radius:10px;outline:none;padding:10px 14px;font-family:Outfit,sans-serif;font-size:14px;font-weight:500;transition:all .25s cubic-bezier(.4,0,.2,1)}.month-picker:hover,.shop-select:hover{background:#00000080;border-color:#6c5ce766}.month-picker:focus,.shop-select:focus{border-color:var(--fs-accent);box-shadow:0 0 0 3px var(--fs-accent-glow)}.shop-select{min-width:180px}.shop-select option{color:var(--fs-primary);background:#1a1a2e;padding:8px}.actions{gap:12px;display:flex}.btn{cursor:pointer;border:none;border-radius:10px;align-items:center;gap:8px;padding:11px 20px;font-family:Outfit,sans-serif;font-size:14px;font-weight:600;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.btn:before{content:"";background:linear-gradient(90deg,#0000,#ffffff1a,#0000);width:100%;height:100%;transition:left .5s;position:absolute;top:0;left:-100%}.btn:hover:before{left:100%}.btn-primary:hover{box-shadow:0 6px 25px var(--fs-accent-glow);transform:translateY(-2px)}.btn-primary:active{transform:translateY(0)}.btn-primary:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.btn-secondary{background:var(--fs-glass);color:var(--fs-secondary);border:1px solid var(--fs-glass-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.btn-secondary:hover{background:var(--fs-glass-hover);color:var(--fs-primary);border-color:#ffffff26}.error-message{color:var(--fs-danger);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ff6b8a14;border:1px solid #ff6b8a33;border-radius:12px;align-items:center;gap:12px;margin-bottom:24px;padding:14px 18px;font-size:14px;font-weight:500;animation:.3s ease-out slideUp;display:flex}.error-message svg{flex-shrink:0;animation:2s ease-in-out infinite pulse}.stat-cards{grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:28px;display:grid}.stat-card{background:var(--fs-glass);-webkit-backdrop-filter:blur(20px);border:none;border-radius:20px;align-items:flex-start;gap:18px;padding:26px;transition:all .35s cubic-bezier(.4,0,.2,1);animation:.5s ease-out backwards slideUp;display:flex;position:relative;overflow:hidden}.stat-card:after{content:"";-webkit-mask-composite:xor;pointer-events:none;opacity:.6;background:linear-gradient(135deg,#6c5ce7 0%,#a855f7 50%,#ff6b8a 100%);border-radius:20px;padding:1.5px;transition:opacity .35s;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.stat-card:hover:after{opacity:1}.stat-card:first-child{animation-delay:.1s}.stat-card:nth-child(2){animation-delay:.15s}.stat-card:nth-child(3){animation-delay:.2s}.stat-card:nth-child(4){animation-delay:.25s}.stat-card:before{content:"";background:linear-gradient(90deg,transparent,var(--card-accent,var(--fs-accent)),transparent);opacity:0;height:2px;transition:opacity .3s;position:absolute;top:0;left:0;right:0}.stat-card:hover:before{opacity:1}.stat-icon{border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;display:flex;position:relative}.stat-icon:after{content:"";border-radius:inherit;box-shadow:0 0 20px var(--icon-glow,transparent);opacity:.5;position:absolute;inset:0}.stat-card.revenue{--card-accent:var(--fs-success);--card-glow:var(--fs-success-glow)}.stat-card.revenue .stat-icon{--icon-glow:var(--fs-success-glow);color:var(--fs-success);background:linear-gradient(135deg,#00d9a533 0%,#00d9a514 100%);box-shadow:inset 0 0 20px #00d9a51a}.stat-card.cost{--card-accent:var(--fs-warning);--card-glow:var(--fs-warning-glow)}.stat-card.cost .stat-icon{--icon-glow:var(--fs-warning-glow);color:var(--fs-warning);background:linear-gradient(135deg,#ffc04833 0%,#ffc04814 100%);box-shadow:inset 0 0 20px #ffc0481a}.stat-card.profit{--card-accent:var(--fs-accent);--card-glow:var(--fs-accent-glow)}.stat-card.profit .stat-icon{--icon-glow:var(--fs-accent-glow);color:var(--fs-accent);background:linear-gradient(135deg,#6c5ce740 0%,#6c5ce71a 100%);box-shadow:inset 0 0 20px #6c5ce726}.stat-card.after-sales{--card-accent:var(--fs-danger);--card-glow:var(--fs-danger-glow)}.stat-card.after-sales .stat-icon{--icon-glow:var(--fs-danger-glow);color:var(--fs-danger);background:linear-gradient(135deg,#ff6b8a33 0%,#ff6b8a14 100%);box-shadow:inset 0 0 20px #ff6b8a1a}.stat-label{color:var(--fs-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;font-size:13px;font-weight:500}.stat-value{color:#fff;letter-spacing:-.5px;margin-bottom:10px;font-family:JetBrains Mono,monospace;font-size:28px;font-weight:700;animation:.6s ease-out .3s backwards countUp}.stat-trend{color:var(--fs-secondary);align-items:center;gap:8px;font-size:13px;display:flex}.trend-indicator{border-radius:6px;align-items:center;gap:3px;padding:3px 8px;font-family:JetBrains Mono,monospace;font-size:12px;font-weight:600;display:inline-flex}.trend-indicator.positive{color:var(--fs-success);background:#00d9a51f;box-shadow:0 0 10px #00d9a51a}.trend-indicator.negative{color:var(--fs-danger);background:#ff6b8a1f;box-shadow:0 0 10px #ff6b8a1a}.alerts-section{flex-direction:column;gap:10px;margin-bottom:28px;animation:.4s ease-out .3s backwards slideUp;display:flex}.alert-item{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:12px;align-items:center;gap:12px;padding:14px 18px;font-size:14px;font-weight:500;transition:transform .2s,box-shadow .2s;display:flex}.alert-item:hover{transform:translate(4px)}.alert-item svg{flex-shrink:0}.alert-item.warning{color:var(--fs-warning);background:#ffc04814;border:1px solid #ffc04833;box-shadow:0 0 20px #ffc0480d}.alert-item.error{color:var(--fs-danger);background:#ff6b8a14;border:1px solid #ff6b8a33;box-shadow:0 0 20px #ff6b8a0d}.alert-item.info{color:var(--fs-accent);background:#6c5ce714;border:1px solid #6c5ce733;box-shadow:0 0 20px #6c5ce70d}.tab-nav{background:var(--fs-glass);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--fs-glass-border);border-radius:16px;gap:6px;margin-bottom:28px;padding:6px;animation:.5s ease-out .35s backwards slideUp;display:flex}.tab-btn{color:var(--fs-secondary);cursor:pointer;background:0 0;border:none;border-radius:10px;align-items:center;gap:10px;padding:14px 24px;font-family:Outfit,sans-serif;font-size:14px;font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.tab-btn svg{transition:transform .3s}.tab-btn:hover{color:var(--fs-primary);background:#ffffff0a}.tab-btn:hover svg{transform:scale(1.1)}.tab-btn.active{color:var(--fs-accent);background:linear-gradient(135deg,#6c5ce733 0%,#6c5ce71a 100%);box-shadow:0 0 20px #6c5ce726,inset 0 1px #ffffff0d}.tab-btn.active:before{content:"";background:var(--fs-accent);width:24px;height:3px;box-shadow:0 0 10px var(--fs-accent-glow);border-radius:3px 3px 0 0;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.tab-panel{background:var(--fs-glass);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--fs-glass-border);border-radius:20px;min-height:400px;animation:.4s ease-out .4s backwards fadeIn;box-shadow:0 4px 30px #00000026}.tab-content{padding:28px}.loading-state{min-height:400px;color:var(--fs-secondary);flex-direction:column;justify-content:center;align-items:center;gap:20px;display:flex}.loading-state svg{color:var(--fs-accent);filter:drop-shadow(0 0 10px var(--fs-accent-glow))}.loading-state span{letter-spacing:.5px;font-size:15px;font-weight:500}.section{margin-bottom:36px;animation:.5s ease-out backwards slideUp}.section:first-child{animation-delay:.1s}.section:nth-child(2){animation-delay:.2s}.section:nth-child(3){animation-delay:.3s}.section:nth-child(4){animation-delay:.4s}.section:last-child{margin-bottom:0}.section-title{color:var(--fs-primary);border-bottom:1px solid var(--fs-glass-border);align-items:center;gap:12px;margin-bottom:22px;padding-bottom:14px;font-size:17px;font-weight:600;display:flex;position:relative}.section-title:after{content:"";background:linear-gradient(90deg,var(--fs-accent),transparent);border-radius:2px;width:60px;height:2px;position:absolute;bottom:-1px;left:0}.section-title svg{color:var(--fs-accent);opacity:.8}.detail-item{border:1px solid var(--fs-glass-border);background:#00000040;border-radius:14px;flex-direction:column;gap:8px;padding:18px;transition:all .25s;display:flex}.detail-item:hover{background:#00000059;border-color:#ffffff1a;transform:translateY(-2px)}.detail-label{color:var(--fs-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:12px;font-weight:500}.detail-value{color:#fff;font-family:JetBrains Mono,monospace;font-size:20px;font-weight:600}.profit-summary{background:#00000040;border-radius:16px;justify-content:center;align-items:center;gap:24px;padding:28px;display:flex;position:relative;overflow:hidden}.profit-summary:before{content:"";background:linear-gradient(90deg,#0000,#6c5ce74d,#0000);height:1px;position:absolute;top:0;left:0;right:0}.profit-item{text-align:center;background:var(--fs-glass);border:1px solid var(--fs-glass-border);border-radius:16px;padding:24px 36px;transition:all .3s;position:relative}.profit-item:hover{transform:scale(1.02)}.profit-item.gross{border-color:#6c5ce74d;box-shadow:0 0 30px #6c5ce71a}.profit-item.gross:before{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,#6c5ce71a 0%,#0000 50%);position:absolute;inset:0}.profit-item.loss{border-color:#ff6b8a4d;box-shadow:0 0 30px #ff6b8a1a}.profit-item.loss:before{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,#ff6b8a1a 0%,#0000 50%);position:absolute;inset:0}.profit-item.net{border-color:#00d9a54d;box-shadow:0 0 30px #00d9a51a}.profit-item.net:before{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,#00d9a51a 0%,#0000 50%);position:absolute;inset:0}.profit-label{color:var(--fs-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:10px;font-size:13px;font-weight:500}.profit-value{color:#fff;margin-bottom:8px;font-family:JetBrains Mono,monospace;font-size:26px;font-weight:700}.profit-value.negative{color:var(--fs-danger)}.profit-rate{color:var(--fs-secondary);font-family:JetBrains Mono,monospace;font-size:13px}.profit-arrow{color:var(--fs-secondary);opacity:.5;font-size:24px;animation:2s ease-in-out infinite pulse}.table-wrapper{border:1px solid var(--fs-glass-border);background:#0003;border-radius:14px;overflow-x:auto}.data-table{border-collapse:collapse;width:100%;font-size:14px}.data-table th,.data-table td{text-align:left;border-bottom:1px solid var(--fs-glass-border);padding:14px 18px}.data-table th{text-transform:uppercase;letter-spacing:.5px;color:var(--fs-secondary);background:#0000004d;font-size:12px;font-weight:600}.data-table th:first-child{border-radius:14px 0 0}.data-table th:last-child{border-radius:0 14px 0 0}.data-table tbody tr{transition:background .2s}.data-table tbody tr:hover td{background:#6c5ce70d}.data-table td.loss{color:var(--fs-danger);font-family:JetBrains Mono,monospace;font-weight:600}.data-table td.earnings{color:var(--fs-success);font-family:JetBrains Mono,monospace;font-weight:600}.data-table td.rank{color:var(--fs-accent);font-family:JetBrains Mono,monospace;font-size:16px;font-weight:700}.total-cost{color:#fff;background:linear-gradient(135deg,#ffc0481a 0%,#ffc0480d 100%);border:1px solid #ffc04833;border-radius:14px;align-items:center;gap:12px;margin-bottom:24px;padding:20px;font-family:JetBrains Mono,monospace;font-size:20px;font-weight:600;display:flex}.total-cost:before{content:"💰";font-size:24px}.cost-categories{flex-direction:column;gap:14px;display:flex}.cost-category{border:1px solid var(--fs-glass-border);background:#00000040;border-radius:14px;padding:18px;transition:all .25s}.cost-category:hover{background:#00000059;border-color:#6c5ce74d;transform:translate(4px)}.category-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.category-name{color:var(--fs-primary);font-weight:600}.category-amount{color:#fff;font-family:JetBrains Mono,monospace;font-size:16px;font-weight:700}.category-bar{background:#ffffff0f;border-radius:4px;height:8px;margin-bottom:10px;overflow:hidden}.category-fill{background:linear-gradient(90deg,var(--fs-accent)0%,#8b7cf7 100%);height:100%;box-shadow:0 0 10px var(--fs-accent-glow);border-radius:4px;transition:width .8s cubic-bezier(.4,0,.2,1)}.category-footer{color:var(--fs-secondary);justify-content:space-between;font-size:13px;display:flex}.category-percent{font-family:JetBrains Mono,monospace}.category-change{font-family:JetBrains Mono,monospace;font-weight:600}.category-change.up{color:var(--fs-danger)}.category-change.down{color:var(--fs-success)}.cost-alerts{flex-direction:column;gap:10px;display:flex}.cost-alert{background:#ffc04814;border:1px solid #ffc04833;border-radius:12px;align-items:center;gap:14px;padding:14px 18px;transition:all .2s;display:flex}.cost-alert:hover{background:#ffc0481f;transform:translate(4px)}.alert-category{color:var(--fs-warning);text-transform:uppercase;letter-spacing:.5px;background:#ffc04826;border-radius:6px;padding:4px 10px;font-size:12px;font-weight:700}.alert-message{color:var(--fs-primary);font-size:14px;font-weight:500}.labor-detail{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.labor-item{border:1px solid var(--fs-glass-border);background:#00000040;border-radius:14px;flex-direction:column;gap:8px;padding:18px;transition:all .25s;display:flex}.labor-item:hover{background:#00000059;transform:translateY(-2px)}.labor-item.total{background:linear-gradient(135deg,#6c5ce726 0%,#6c5ce70d 100%);border:1px solid #6c5ce74d;box-shadow:0 0 30px #6c5ce71a}.labor-label{color:var(--fs-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:12px;font-weight:500}.labor-value{color:#fff;font-family:JetBrains Mono,monospace;font-size:20px;font-weight:600}.summary-cards{grid-template-columns:repeat(5,1fr);gap:16px;margin-bottom:12px;display:grid}.summary-card{text-align:center;background:#00000040;border:none;border-radius:16px;padding:22px;transition:all .3s;position:relative;overflow:visible}.summary-card:after{content:"";-webkit-mask-composite:xor;pointer-events:none;opacity:.4;z-index:0;background:linear-gradient(135deg,#6c5ce7 0%,#a855f7 50%,#ff6b8a 100%);border-radius:16px;padding:1.5px;transition:opacity .3s;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.summary-card>*{z-index:1;position:relative}.summary-card:hover:after{opacity:.8}.summary-card:before{content:"";background:var(--fs-accent);opacity:0;border-radius:0 0 3px 3px;width:40px;height:3px;transition:opacity .3s;position:absolute;top:0;left:50%;transform:translate(-50%)}.summary-card:hover{border-color:#ffffff1a;transform:translateY(-3px)}.summary-card:hover:before{opacity:1}.summary-card.danger{background:linear-gradient(135deg,#ff6b8a1f 0%,#ff6b8a0d 100%)}.summary-card.danger:after{opacity:.6;background:linear-gradient(135deg,#ff6b8a 0%,#ff8fa3 50%,#ffb3c1 100%)}.summary-card.danger:before{background:var(--fs-danger)}.summary-card.danger .summary-value{color:var(--fs-danger);text-shadow:0 0 20px #ff6b8a4d}.summary-card.highlight{background:linear-gradient(135deg,#6c5ce71f 0%,#6c5ce70d 100%)}.summary-card.highlight:after{opacity:.8;background:linear-gradient(135deg,#6c5ce7 0%,#a855f7 50%,#ff6b8a 100%)}.summary-card.highlight:before{background:var(--fs-accent);opacity:1}.summary-card.highlight .summary-value{color:var(--fs-accent);text-shadow:0 0 20px var(--fs-accent-glow)}.summary-value{color:#fff;margin-bottom:8px;font-family:JetBrains Mono,monospace;font-size:24px;font-weight:700}.summary-label{color:var(--fs-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:12px;font-weight:500}.distribution-list{flex-direction:column;gap:14px;display:flex}.distribution-item{border:1px solid var(--fs-glass-border);background:#00000040;border-radius:14px;padding:18px;transition:all .25s}.distribution-item:hover{background:#00000059;border-color:#ff6b8a33;transform:translate(4px)}.dist-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.dist-name{color:var(--fs-primary);font-weight:600}.dist-count{color:var(--fs-secondary);font-family:JetBrains Mono,monospace;font-size:13px}.dist-bar{background:#ffffff0f;border-radius:4px;height:8px;margin-bottom:10px;overflow:hidden}.dist-bar .dist-fill{background:linear-gradient(90deg,var(--fs-danger)0%,#ff8fa3 100%);height:100%;box-shadow:0 0 10px var(--fs-danger-glow);border-radius:4px;transition:width .8s cubic-bezier(.4,0,.2,1)}.dist-bar.responsibility .dist-fill{background:linear-gradient(90deg,var(--fs-warning)0%,#ffd06a 100%);box-shadow:0 0 10px var(--fs-warning-glow)}.dist-footer{color:var(--fs-secondary);justify-content:space-between;font-size:13px;display:flex}.dist-loss{color:var(--fs-danger);font-family:JetBrains Mono,monospace;font-weight:600}.dist-percent{font-family:JetBrains Mono,monospace}.payroll-summary{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.payroll-item{border:1px solid var(--fs-glass-border);background:#00000040;border-radius:14px;flex-direction:column;gap:8px;padding:18px;transition:all .25s;display:flex}.payroll-item:hover{background:#00000059;transform:translateY(-2px)}.payroll-label{color:var(--fs-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:12px;font-weight:500}.payroll-value{color:#fff;font-family:JetBrains Mono,monospace;font-size:20px;font-weight:600}.task-type-list{flex-direction:column;gap:14px;display:flex}.task-type-item{border:1px solid var(--fs-glass-border);background:#00000040;border-radius:14px;padding:18px;transition:all .25s}.task-type-item:hover{background:#00000059;border-color:#00d9a533;transform:translate(4px)}.task-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.task-name{color:var(--fs-primary);font-weight:600}.task-cost{color:var(--fs-success);font-family:JetBrains Mono,monospace;font-size:16px;font-weight:700}.task-bar{background:#ffffff0f;border-radius:4px;height:8px;margin-bottom:10px;overflow:hidden}.task-fill{background:linear-gradient(90deg,var(--fs-success)0%,#4aedc4 100%);height:100%;box-shadow:0 0 10px var(--fs-success-glow);border-radius:4px;transition:width .8s cubic-bezier(.4,0,.2,1)}.task-footer{color:var(--fs-secondary);justify-content:space-between;font-size:13px;display:flex}.task-footer span{font-family:JetBrains Mono,monospace}.shop-comparison-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px;display:grid}.shop-card{animation:.5s ease-out backwards slideUp;animation-delay:calc(var(--card-index,0)*80ms);background:#0000004d;border:none;border-radius:18px;transition:all .35s cubic-bezier(.4,0,.2,1);position:relative;overflow:visible}.shop-card>*{z-index:1;position:relative}.shop-card:after{content:"";-webkit-mask-composite:xor;pointer-events:none;opacity:.5;z-index:0;background:linear-gradient(135deg,#6c5ce7 0%,#a855f7 50%,#ff6b8a 100%);border-radius:18px;padding:1.5px;transition:opacity .35s;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.shop-card:hover:after{opacity:1}.shop-card:before{content:"";background:linear-gradient(90deg,var(--fs-accent),var(--fs-success));opacity:0;height:3px;transition:opacity .3s;position:absolute;top:0;left:0;right:0}.shop-card:hover{border-color:#6c5ce766;transform:translateY(-6px);box-shadow:0 20px 50px #0006,0 0 40px #6c5ce726}.shop-card:hover:before{opacity:1}.shop-card-header{border-bottom:1px solid var(--fs-glass-border);background:linear-gradient(135deg,#6c5ce714 0%,#0000 60%);justify-content:space-between;align-items:flex-start;padding:20px 22px 16px;display:flex}.shop-info{flex-direction:column;gap:10px;display:flex}.shop-name{color:#fff;letter-spacing:.3px;font-size:17px;font-weight:700}.platform-badge{letter-spacing:.5px;border-radius:20px;align-items:center;gap:6px;width:fit-content;padding:5px 12px;font-size:12px;font-weight:600;display:inline-flex}.platform-badge.taobao,.platform-badge.tmall{color:#f60;background:linear-gradient(135deg,#f603 0%,#ff660014 100%);border:1px solid #ff66004d}.platform-badge.jd{color:#e22323;background:linear-gradient(135deg,#e2232333 0%,#e2232314 100%);border:1px solid #e223234d}.platform-badge.pdd,.platform-badge.pinduoduo{color:#e02424;background:linear-gradient(135deg,#e0242433 0%,#e0242414 100%);border:1px solid #e024244d}.platform-badge.douyin{color:#fe2c55;background:linear-gradient(135deg,#0006 0%,#fe2c5526 100%);border:1px solid #fe2c554d}.platform-badge.doudian{color:#375bff;background:linear-gradient(135deg,#375bff33 0%,#375bff14 100%);border:1px solid #375bff4d}.platform-badge.kuaishou{color:#f60;background:linear-gradient(135deg,#f603 0%,#ff660014 100%);border:1px solid #ff66004d}.platform-badge.wechat{color:#07c160;background:linear-gradient(135deg,#07c16033 0%,#07c16014 100%);border:1px solid #07c1604d}.platform-badge.xiaohongshu{color:#ff2d55;background:linear-gradient(135deg,#ff2d5533 0%,#ff2d5514 100%);border:1px solid #ff2d554d}.shop-rank{background:linear-gradient(135deg,var(--fs-accent)0%,#8b7cf7 100%);-webkit-text-fill-color:transparent;text-shadow:0 0 30px var(--fs-accent-glow);-webkit-background-clip:text;background-clip:text;font-family:JetBrains Mono,monospace;font-size:22px;font-weight:800}.shop-card-body{background:var(--fs-glass-border);grid-template-columns:repeat(2,1fr);gap:2px;padding:2px;display:grid}.shop-metric{text-align:center;background:#0006;flex-direction:column;gap:6px;padding:16px 18px;transition:background .2s;display:flex}.shop-metric:hover{background:#00000080}.metric-label{color:var(--fs-secondary);text-transform:uppercase;letter-spacing:1px;font-size:11px;font-weight:600}.metric-value{color:#fff;font-family:JetBrains Mono,monospace;font-size:18px;font-weight:700}.metric-value.orders{color:var(--fs-primary)}.metric-value.revenue{color:var(--fs-success)}.metric-value.profit{color:var(--fs-accent)}.metric-value.rate{color:var(--fs-warning)}.shop-card-footer{background:#0003;padding:18px 22px}.revenue-share{align-items:center;gap:14px;display:flex}.share-label{color:var(--fs-secondary);white-space:nowrap;font-size:12px;font-weight:500}.share-bar{background:#ffffff0f;border-radius:4px;flex:1;height:8px;overflow:hidden}.share-fill{background:linear-gradient(90deg,var(--fs-accent)0%,var(--fs-success)100%);height:100%;box-shadow:0 0 12px var(--fs-accent-glow);border-radius:4px;transition:width .8s cubic-bezier(.4,0,.2,1)}.share-value{color:#fff;text-align:right;min-width:60px;font-family:JetBrains Mono,monospace;font-size:14px;font-weight:700}@media (max-width:1400px){.stat-cards{grid-template-columns:repeat(2,1fr)}.summary-cards,.detail-grid{grid-template-columns:repeat(3,1fr)}.labor-detail{grid-template-columns:repeat(2,1fr)}}@media (max-width:1024px){.finance-statistics-widget{padding:20px}.control-bar{flex-direction:column;gap:16px;padding:16px}.filters{flex-wrap:wrap;width:100%}.filter-item{flex:1;min-width:200px}.month-picker,.shop-select{flex:1}.actions{justify-content:flex-end;width:100%}.profit-summary{flex-direction:column;gap:16px}.profit-item{width:100%;max-width:280px}.profit-arrow{transform:rotate(90deg)}.payroll-summary{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.finance-statistics-widget{padding:16px}.finance-statistics-widget:before{background-size:40px 40px}.control-bar{border-radius:12px;padding:14px}.stat-cards{grid-template-columns:1fr;gap:14px}.stat-card{border-radius:16px;padding:20px}.stat-value{font-size:24px}.summary-cards{grid-template-columns:repeat(2,1fr);gap:12px}.summary-card{padding:16px}.summary-value{font-size:20px}.detail-grid{grid-template-columns:repeat(2,1fr);gap:12px}.tab-nav{border-radius:12px;gap:4px;padding:4px}.tab-btn{flex:1;justify-content:center;padding:12px 16px;font-size:13px}.tab-btn svg{display:none}.tab-content{padding:20px}.section-title{font-size:15px}.data-table th,.data-table td{padding:10px 12px;font-size:13px}.labor-detail,.payroll-summary{grid-template-columns:1fr}.shop-comparison-grid{grid-template-columns:1fr;gap:16px}.shop-card-header{padding:16px 18px 14px}.shop-name{font-size:15px}.metric-value{font-size:16px}.shop-card-footer{padding:14px 18px}.revenue-share{flex-wrap:wrap;gap:10px}.share-bar{flex:none;order:3;width:100%}}@media (max-width:480px){.finance-statistics-widget{padding:12px}.summary-cards,.detail-grid{grid-template-columns:1fr}.filter-item{width:100%}.tab-btn{padding:10px 12px;font-size:12px}.profit-item{padding:18px 24px}.profit-value{font-size:22px}}.finance-statistics-widget ::-webkit-scrollbar{width:8px;height:8px}.finance-statistics-widget ::-webkit-scrollbar-track{background:#0003;border-radius:4px}.finance-statistics-widget ::-webkit-scrollbar-thumb{background:#6c5ce74d;border-radius:4px;transition:background .2s}.finance-statistics-widget ::-webkit-scrollbar-thumb:hover{background:#6c5ce780}.finance-statistics-widget ::selection{color:#fff;background:#6c5ce766}:root{--um-primary:#e8ecf4;--um-secondary:#8b95a8;--um-accent:#6c5ce7;--um-accent-glow:#6c5ce766;--um-success:#00d9a5;--um-success-glow:#00d9a54d;--um-warning:#ffc048;--um-warning-glow:#ffc0484d;--um-danger:#ff6b8a;--um-danger-glow:#ff6b8a4d;--um-info:#00b4d8;--um-info-glow:#00b4d84d;--um-glass:#ffffff08;--um-glass-border:#ffffff14;--um-glass-hover:#ffffff0f}.user-management-widget{width:100%;height:100vh;color:var(--um-primary);background:radial-gradient(80% 50% at 50% -20%,#6c5ce726 0%,#0000 50%),radial-gradient(60% 40% at 90% 80%,#00d9a514 0%,#0000 40%),radial-gradient(50% 30% at 10% 60%,#ff6b8a0f 0%,#0000 40%),linear-gradient(#0a0a1a 0%,#0f0f24 50%,#0a0a1a 100%);flex-direction:column;font-family:Outfit,system-ui,-apple-system,sans-serif;font-size:14px;display:flex;position:relative;overflow:hidden}.user-management-widget:before{content:"";pointer-events:none;z-index:0;background-image:linear-gradient(#6c5ce708 1px,#0000 1px),linear-gradient(90deg,#6c5ce708 1px,#0000 1px);background-size:60px 60px;position:fixed;inset:0}.user-management-widget>*{z-index:1;position:relative}@keyframes rowFadeIn{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}.user-card,.role-card{animation:.3s ease-out backwards rowFadeIn}.user-card:first-child{animation-delay:20ms}.user-card:nth-child(2){animation-delay:40ms}.user-card:nth-child(3){animation-delay:60ms}.user-card:nth-child(4){animation-delay:80ms}.user-card:nth-child(5){animation-delay:.1s}.user-card:nth-child(6){animation-delay:.12s}.user-card:nth-child(7){animation-delay:.14s}.user-card:nth-child(8){animation-delay:.16s}.user-card:nth-child(9){animation-delay:.18s}.user-card:nth-child(10){animation-delay:.2s}.role-card:first-child{animation-delay:20ms}.role-card:nth-child(2){animation-delay:40ms}.role-card:nth-child(3){animation-delay:60ms}.role-card:nth-child(4){animation-delay:80ms}.role-card:nth-child(5){animation-delay:.1s}.skeleton-avatar{background:linear-gradient(90deg,#ffffff08 0%,#ffffff14 50%,#ffffff08 100%) 0 0/200% 100%;border-radius:50%;width:44px;height:44px;animation:1.5s infinite shimmer}.user-list-skeleton{flex-direction:column;gap:2px;padding:8px 0;display:flex}.user-card-skeleton{background:#ffffff03;border-bottom:1px solid #ffffff08;align-items:center;gap:12px;padding:14px 20px;display:flex}.user-card-skeleton:nth-child(2n){background:#0000001a}.skeleton-content{flex-direction:column;flex:1;gap:6px;display:flex}.skeleton-actions{gap:6px;display:flex}.user-management-widget .control-bar{background:var(--um-glass);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--um-glass-border);flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:16px;padding:18px 24px;display:flex;box-shadow:0 4px 24px #0003,inset 0 1px #ffffff0d}.user-management-widget .control-left{flex:1;align-items:center;gap:24px;display:flex}.user-management-widget .page-title{align-items:center;gap:12px;display:flex}.user-management-widget .page-title svg{color:var(--um-accent)}.user-management-widget .page-title h2{color:var(--um-primary);margin:0;font-size:20px;font-weight:700}.user-management-widget .control-right{flex-shrink:0;align-items:center;gap:12px;display:flex}.user-management-widget .search-box{border:1px solid var(--um-glass-border);background:#0006;border-radius:12px;align-items:center;gap:10px;min-width:280px;padding:10px 16px;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex}.user-management-widget .search-box:focus-within{border-color:var(--um-accent);box-shadow:0 0 0 3px var(--um-accent-glow);background:#00000080}.user-management-widget .search-box input{color:var(--um-primary);background:0 0;border:none;outline:none;flex:1;padding:2px 0;font-family:Outfit,sans-serif;font-size:14px;font-weight:500}.user-management-widget .search-box input::placeholder{color:var(--um-secondary)}.user-management-widget .search-box svg{color:var(--um-secondary);opacity:.7;flex-shrink:0}.user-management-widget .clear-btn{color:#fff;cursor:pointer;opacity:.8;background:#ff6b8a4d;border:none;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;transition:all .2s;display:flex}.user-management-widget .clear-btn:hover{opacity:1;background:var(--um-danger);transform:scale(1.1)}.user-management-widget .btn{cursor:pointer;border:none;border-radius:10px;align-items:center;gap:8px;padding:11px 20px;font-family:Outfit,sans-serif;font-size:14px;font-weight:600;transition:all .25s cubic-bezier(.4,0,.2,1);display:inline-flex;position:relative;overflow:hidden}.user-management-widget .btn:before{content:"";background:linear-gradient(90deg,#0000,#ffffff1a,#0000);width:100%;height:100%;transition:left .5s;position:absolute;top:0;left:-100%}.user-management-widget .btn:hover:before{left:100%}.user-management-widget .btn-primary{background:linear-gradient(135deg,var(--um-accent)0%,#5b4cdb 100%);color:#fff;box-shadow:0 4px 15px var(--um-accent-glow)}.user-management-widget .btn-primary:hover:not(:disabled){box-shadow:0 6px 25px var(--um-accent-glow);transform:translateY(-2px)}.user-management-widget .btn-primary:active{transform:translateY(0)}.user-management-widget .btn-primary:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.user-management-widget .btn-secondary{border:1px solid var(--um-glass-border);color:var(--um-primary);background:#ffffff0d}.user-management-widget .btn-secondary:hover:not(:disabled){background:#ffffff1a;border-color:#ffffff26}.user-management-widget .btn-danger{background:linear-gradient(135deg,var(--um-danger)0%,#e55c75 100%);color:#fff;box-shadow:0 4px 15px var(--um-danger-glow)}.user-management-widget .btn-danger:hover:not(:disabled){box-shadow:0 6px 25px var(--um-danger-glow);transform:translateY(-2px)}.user-management-widget .error-banner{color:var(--um-danger);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ff6b8a14;border-bottom:1px solid #ff6b8a33;align-items:center;gap:12px;padding:14px 24px;font-size:14px;font-weight:500;animation:.3s ease-out slideUp;display:flex}.user-management-widget .error-banner svg{flex-shrink:0}.user-management-widget .error-banner button{color:inherit;cursor:pointer;background:#ff6b8a33;border:none;border-radius:6px;justify-content:center;align-items:center;margin-left:auto;padding:6px;transition:all .2s;display:flex}.user-management-widget .error-banner button:hover{background:#ff6b8a4d;transform:scale(1.1)}.user-list-container{flex-direction:column;flex:1;padding:20px 24px;display:flex;overflow:auto}.table-wrapper{background:linear-gradient(#141428b3 0%,#0a0a1ad9 100%);border:1px solid #6c5ce71f;border-radius:14px;flex-direction:column;flex:1;display:flex;overflow:auto;box-shadow:0 4px 24px #00000059,0 0 40px #6c5ce70d,inset 0 1px #ffffff0a}.user-list-container .list-header,.user-list-container .user-card{width:100%;grid-template-columns:minmax(140px,1.8fr) minmax(70px,1fr) minmax(70px,1fr) minmax(100px,1.2fr) minmax(100px,1.3fr) minmax(90px,1fr) minmax(60px,.8fr) minmax(70px,.9fr) minmax(80px,1fr) 60px!important;align-items:center!important;display:grid!important}.user-list-container .list-header{color:var(--um-accent);text-transform:uppercase;letter-spacing:.5px;z-index:10;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:linear-gradient(#6c5ce733 0%,#6c5ce71a 100%);border-bottom:2px solid #6c5ce766;font-size:11px;font-weight:700;position:sticky;top:0}.user-list-container .list-header>span{white-space:nowrap;box-sizing:border-box;border-right:1px solid #6c5ce740;height:100%;padding:12px 4px;text-align:center!important;justify-content:center!important;align-items:center!important;display:flex!important}.user-list-container .list-header>span.col-user{padding-left:8px;justify-content:flex-start!important}.user-list-container .list-header>span:last-child{border-right:none}.user-list-container .list-header>span:hover{background:#6c5ce726}.user-list-container .list-header span.sortable{cursor:pointer}.user-list{flex:1;min-width:max-content;overflow:hidden auto}.user-list::-webkit-scrollbar{width:5px}.user-list::-webkit-scrollbar-track{background:#00000026;border-radius:3px}.user-list::-webkit-scrollbar-thumb{background:#6c5ce74d;border-radius:3px}.user-list::-webkit-scrollbar-thumb:hover{background:#6c5ce780}.user-list-container .user-card{cursor:pointer;border-bottom:1px solid #ffffff14;transition:all .15s;position:relative}.user-list-container .user-card:hover{background:#6c5ce71a}.user-list-container .user-card>div{box-sizing:border-box;border-right:1px solid #ffffff14;min-height:48px;padding:10px 4px;overflow:hidden;text-align:center!important;justify-content:center!important;align-items:center!important;display:flex!important}.user-list-container .user-card>div:last-child{border-right:none}.user-list-container .user-card>div.col-user{padding-left:8px;justify-content:flex-start!important}.user-card:nth-child(odd){background:#ffffff02}.user-card:nth-child(2n){background:#00000014}.user-card:last-child{border-bottom:none}.user-card:hover{background:#6c5ce71a;box-shadow:inset 0 0 0 1px #6c5ce726}.user-card:hover>div{border-right-color:#6c5ce71f}.user-card:before{content:"";z-index:1;background:0 0;width:3px;transition:all .2s;position:absolute;top:0;bottom:0;left:0}.user-card:hover:before{background:linear-gradient(180deg,var(--um-accent)0%,#6c5ce74d 100%)}.user-card.selected{background:#6c5ce726;box-shadow:inset 0 0 0 1px #6c5ce740}.user-card.selected:before{background:var(--um-accent);box-shadow:0 0 8px var(--um-accent-glow)}.user-card.disabled{opacity:.5}.user-card.disabled:hover{box-shadow:none;background:#ffffff05}.col-user{gap:10px;min-width:0}.user-avatar{width:34px;height:34px;color:var(--um-accent);background:linear-gradient(135deg,#6c5ce740 0%,#6c5ce714 100%);border:1px solid #6c5ce72e;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;transition:all .2s;display:flex}.user-card:hover .user-avatar{border-color:#6c5ce766;transform:scale(1.08);box-shadow:0 0 12px #6c5ce733}.user-info{flex:1;min-width:0}.user-name{color:#fff;white-space:nowrap;text-overflow:ellipsis;letter-spacing:.2px;margin-bottom:1px;font-size:13px;font-weight:600;overflow:hidden}.user-id{color:var(--um-secondary);opacity:.6;font-family:JetBrains Mono,monospace;font-size:10px}.col-department{min-width:0}.department-badge{color:var(--um-success);white-space:nowrap;text-overflow:ellipsis;background:#00d9a51a;border:1px solid #00d9a526;border-radius:5px;align-items:center;gap:4px;max-width:100%;padding:4px 8px;font-size:11px;font-weight:500;display:inline-flex;overflow:hidden}.department-badge svg{opacity:.75;flex-shrink:0;width:12px;height:12px}.no-department{color:var(--um-secondary);opacity:.35;font-size:11px}.col-supervisor{min-width:0}.supervisor-badge{color:var(--um-accent);white-space:nowrap;text-overflow:ellipsis;background:#6c5ce71a;border:1px solid #6c5ce726;border-radius:5px;align-items:center;gap:4px;max-width:100%;padding:4px 8px;font-size:11px;font-weight:500;display:inline-flex;overflow:hidden}.supervisor-badge svg{opacity:.75;flex-shrink:0;width:12px;height:12px}.no-supervisor{color:var(--um-secondary);opacity:.35;font-size:11px}.supervisor-badge.top-level{color:var(--um-warning);background:#ffc0481a;border:1px dashed #ffc04859}.permission-badge{text-transform:uppercase;letter-spacing:.4px;white-space:nowrap;border-radius:5px;align-items:center;gap:4px;padding:4px 8px;font-size:10px;font-weight:600;display:inline-flex}.permission-badge svg{opacity:.75;width:11px;height:11px}.permission-badge.level-admin{color:var(--um-danger);background:#ff6b8a1f;border:1px solid #ff6b8a33}.permission-badge.level-manager{color:var(--um-accent);background:#6c5ce71f;border:1px solid #6c5ce733}.permission-badge.level-staff{color:var(--um-info);background:#00b4d81f;border:1px solid #00b4d833}.salary-badge{color:var(--um-warning);white-space:nowrap;background:#ffc04814;border:1px solid #ffc04826;border-radius:5px;align-items:center;gap:3px;padding:4px 8px;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:600;display:inline-flex}.salary-badge svg{opacity:.65;width:12px;height:12px}.restday-badge{color:var(--um-info);white-space:nowrap;background:#00b4d81a;border:1px solid #00b4d826;border-radius:5px;align-items:center;gap:3px;padding:4px 8px;font-size:11px;font-weight:500;display:inline-flex}.restday-badge svg{opacity:.7;width:12px;height:12px}.col-time{align-items:center;display:flex}.time-text{color:var(--um-secondary);font-family:JetBrains Mono,monospace;font-size:13px}.status-badge{cursor:pointer;white-space:nowrap;text-transform:uppercase;letter-spacing:.3px;border:none;border-radius:12px;align-items:center;gap:4px;padding:4px 10px;font-size:10px;font-weight:600;transition:all .2s;display:inline-flex}.status-badge svg{opacity:.85;width:12px;height:12px}.status-badge.active{color:var(--um-success);background:#00d9a51f;box-shadow:inset 0 0 0 1px #00d9a533}.status-badge.active:hover{background:#00d9a533;transform:scale(1.04);box-shadow:0 2px 8px #00d9a540}.status-badge.inactive{color:var(--um-secondary);background:#ffffff0a;box-shadow:inset 0 0 0 1px #ffffff14}.status-badge.inactive:hover{color:var(--um-success);background:#00d9a51a;transform:scale(1.04)}.col-actions{gap:5px;position:sticky;right:0;background:linear-gradient(90deg,#0000 0%,#0f0f24fa 25%)!important;border-right:none!important;padding-left:12px!important}.action-btn{width:28px;height:28px;color:var(--um-secondary);cursor:pointer;background:#ffffff0a;border:1px solid #ffffff1a;border-radius:6px;justify-content:center;align-items:center;transition:all .2s;display:flex}.action-btn svg{width:14px;height:14px}.action-btn:hover{transform:translateY(-2px)scale(1.05)}.action-btn.edit:hover{background:var(--um-info);border-color:var(--um-info);color:#fff;box-shadow:0 4px 12px var(--um-info-glow)}.action-btn.delete:hover{background:var(--um-danger);border-color:var(--um-danger);color:#fff;box-shadow:0 4px 12px var(--um-danger-glow)}.user-management-widget .empty-state{color:var(--um-secondary);text-align:center;background:linear-gradient(#6c5ce705 0%,#0000 100%);border-radius:0 0 16px 16px;flex-direction:column;justify-content:center;align-items:center;padding:60px 24px;display:flex}.user-management-widget .empty-state svg{opacity:.25;color:var(--um-accent);margin-bottom:16px}.user-management-widget .empty-state p{color:var(--um-primary);margin:0 0 6px;font-size:16px;font-weight:600}.user-management-widget .empty-state span{opacity:.6;font-size:13px}.dialog{border:1px solid var(--um-glass-border);background:linear-gradient(#1a1a2e 0%,#0f0f24 100%);border-radius:20px;flex-direction:column;max-height:90vh;animation:.25s ease-out scaleIn;display:flex;overflow:hidden;box-shadow:0 24px 80px #00000080,0 0 80px #6c5ce71a}.user-form-dialog{width:600px;max-width:95vw}.confirm-dialog{width:420px;max-width:95vw}.dialog-header{border-bottom:1px solid var(--um-glass-border);background:#0003;justify-content:space-between;align-items:center;padding:24px 28px;display:flex}.dialog-header svg.danger{color:var(--um-danger)}.dialog-title-info{align-items:center;gap:14px;display:flex}.dialog-title-info svg{color:var(--um-accent)}.dialog-subtitle{color:var(--um-secondary);margin:4px 0 0;font-size:13px}.dialog-header .close-btn{border:1px solid var(--um-glass-border);width:36px;height:36px;color:var(--um-secondary);cursor:pointer;background:#0000004d;border-radius:10px;justify-content:center;align-items:center;transition:all .25s;display:flex}.dialog-header .close-btn:hover{background:var(--um-danger);border-color:var(--um-danger);color:#fff;transform:rotate(90deg)}.dialog-footer{border-top:1px solid var(--um-glass-border);background:#0003;justify-content:flex-end;align-items:center;gap:12px;padding:20px 28px;display:flex}.form-error{color:var(--um-danger);background:#ff6b8a1a;border:1px solid #ff6b8a33;border-radius:10px;align-items:center;gap:10px;margin-bottom:20px;padding:12px 16px;font-size:14px;display:flex}.form-group label{color:var(--um-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:13px;font-weight:600}.form-group label .required{color:var(--um-danger)}.form-group input,.form-group select{border:1px solid var(--um-glass-border);color:var(--um-primary);background:#0006;border-radius:10px;outline:none;padding:12px 16px;font-family:Outfit,sans-serif;font-size:14px;transition:all .25s}.form-group input:focus,.form-group select:focus{border-color:var(--um-accent);box-shadow:0 0 0 3px var(--um-accent-glow)}.form-group input::placeholder{color:var(--um-secondary);opacity:.6}.form-group select{cursor:pointer}.password-input{position:relative}.password-input input{width:100%;padding-right:50px}.toggle-password{color:var(--um-secondary);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:4px;transition:color .2s;display:flex;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.toggle-password:hover{color:var(--um-primary)}.toggle-switch-wrapper{align-items:center;gap:12px;padding-top:4px;display:flex}.toggle-switch{border:1px solid var(--um-glass-border);cursor:pointer;background:#ffffff1a;border-radius:14px;width:52px;height:28px;transition:all .3s;position:relative}.toggle-switch.active{background:linear-gradient(135deg,var(--um-success)0%,#00b88d 100%);border-color:var(--um-success)}.toggle-slider{background:#fff;border-radius:50%;width:20px;height:20px;transition:all .3s cubic-bezier(.4,0,.2,1);position:absolute;top:3px;left:3px;box-shadow:0 2px 6px #0003}.toggle-switch.active .toggle-slider{left:27px}.toggle-label{color:var(--um-secondary);font-size:14px}.confirm-dialog .dialog-header{gap:12px}.confirm-dialog .dialog-body p{color:var(--um-secondary);margin:0;font-size:15px;line-height:1.6}.form-row.single{grid-template-columns:1fr}.form-section{background:#ffc0480d;border:1px dashed #ffc04833;border-radius:12px;margin-top:8px;padding:16px}.form-section.salary-section{background:#ffc0480d;border-color:#ffc04833}.section-title svg{opacity:.9}@media (max-width:992px){.user-management-widget .control-left{flex-direction:column;align-items:flex-start;gap:12px}.user-management-widget .search-box{width:100%;min-width:auto}}@media (max-width:768px){.user-management-widget .control-bar{flex-direction:column;gap:12px;padding:14px 16px}.user-management-widget .control-left,.user-management-widget .control-right{width:100%}.user-management-widget .control-right{justify-content:flex-end}.user-list-container{padding:12px}.table-wrapper{border-radius:12px;overflow-x:auto}.user-list-container .list-header,.user-list-container .user-card{grid-template-columns:140px 70px 70px 100px 100px 90px 60px 70px 80px 60px!important;min-width:840px!important;display:grid!important}.form-row,.form-row.single{grid-template-columns:1fr}.dialog{border-radius:16px;max-height:calc(100vh - 24px);margin:12px}.module-permissions{grid-template-columns:1fr}}.user-management-widget ::-webkit-scrollbar{width:8px;height:8px}.user-management-widget ::-webkit-scrollbar-track{background:#0003;border-radius:4px}.user-management-widget ::-webkit-scrollbar-thumb{background:#6c5ce74d;border-radius:4px}.user-management-widget ::-webkit-scrollbar-thumb:hover{background:#6c5ce780}.user-management-widget ::selection{color:#fff;background:#6c5ce766}.tab-bar{border-bottom:1px solid var(--um-glass-border);background:#0000004d;flex-shrink:0;gap:4px;padding:16px 24px;display:flex}.tab-item{color:var(--um-secondary);cursor:pointer;background:0 0;border:none;border-radius:10px;align-items:center;gap:10px;padding:12px 24px;font-family:Outfit,sans-serif;font-size:14px;font-weight:600;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex;position:relative}.tab-item:hover{color:var(--um-primary);background:#ffffff0d}.tab-item.active{background:linear-gradient(135deg,var(--um-accent)0%,#5b4cdb 100%);color:#fff;box-shadow:0 4px 15px var(--um-accent-glow)}.tab-item svg{opacity:.8}.tab-item.active svg{opacity:1}.role-list-container{flex-direction:column;flex:1;padding:20px 24px;display:flex;overflow:hidden}.role-list-container .table-wrapper{background:linear-gradient(#141428b3 0%,#0a0a1ad9 100%);border:1px solid #6c5ce71f;border-radius:14px;flex-direction:column;flex:1;display:flex;overflow:hidden;box-shadow:0 4px 24px #00000059,0 0 40px #6c5ce70d,inset 0 1px #ffffff0a}.role-list-container .list-header{grid-template-columns:minmax(180px,2fr) minmax(100px,1fr) minmax(100px,1fr) minmax(80px,.9fr) 90px}.role-list{flex:1;overflow-y:auto}.role-list::-webkit-scrollbar{width:5px}.role-list::-webkit-scrollbar-track{background:#00000026;border-radius:3px}.role-list::-webkit-scrollbar-thumb{background:#6c5ce74d;border-radius:3px}.role-list::-webkit-scrollbar-thumb:hover{background:#6c5ce780}.role-card{border-bottom:1px solid #ffffff0a;grid-template-columns:minmax(180px,2fr) minmax(100px,1fr) minmax(100px,1fr) minmax(80px,.9fr) 90px;align-items:stretch;gap:0;padding:0;transition:all .15s;display:grid;position:relative}.role-card>div{border-right:1px solid #ffffff08;justify-content:center;align-items:center;min-height:52px;padding:10px 8px;transition:border-color .15s;display:flex}.role-card>div:first-child{justify-content:flex-start;padding-left:16px}.role-card>div:last-child{border-right:none}.role-card:nth-child(odd){background:#ffffff02}.role-card:nth-child(2n){background:#00000014}.role-card:last-child{border-bottom:none}.role-card:hover{background:#6c5ce71a;box-shadow:inset 0 0 0 1px #6c5ce726}.role-card:hover>div{border-right-color:#6c5ce71f}.role-card:before{content:"";z-index:1;background:0 0;width:3px;transition:all .2s;position:absolute;top:0;bottom:0;left:0}.role-card:hover:before{background:linear-gradient(180deg,var(--um-accent)0%,#6c5ce74d 100%)}.col-role-info{gap:10px;min-width:0}.role-avatar{width:34px;height:34px;color:var(--um-accent);background:linear-gradient(135deg,#6c5ce740 0%,#6c5ce714 100%);border:1px solid #6c5ce72e;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;transition:all .2s;display:flex}.role-card:hover .role-avatar{border-color:#6c5ce766;transform:scale(1.08);box-shadow:0 0 12px #6c5ce733}.role-details{flex:1;min-width:0}.role-details .role-name{color:#fff;letter-spacing:.2px;margin-bottom:1px;font-size:13px;font-weight:600}.role-desc{color:var(--um-secondary);white-space:nowrap;text-overflow:ellipsis;opacity:.6;font-size:10px;overflow:hidden}.code-badge{color:var(--um-info);background:#00b4d81a;border:1px solid #00b4d826;border-radius:5px;padding:4px 8px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:500;display:inline-flex}.perm-count-badge{color:var(--um-accent);background:#6c5ce71a;border:1px solid #6c5ce726;border-radius:5px;align-items:center;gap:4px;padding:4px 8px;font-size:11px;font-weight:500;display:inline-flex}.perm-count-badge svg{opacity:.7;width:11px;height:11px}.type-badge{text-transform:uppercase;letter-spacing:.3px;border-radius:5px;padding:4px 10px;font-size:10px;font-weight:600;display:inline-flex}.type-badge.system{color:var(--um-warning);background:#ffc0481f;border:1px solid #ffc04833}.type-badge.custom{color:var(--um-success);background:#00d9a51f;border:1px solid #00d9a533}.role-form-dialog{width:720px;max-width:95vw;max-height:90vh}.form-group.full-width{grid-column:1/-1}.field-hint{color:var(--um-warning);margin-top:4px;font-size:11px;font-weight:400}.form-section.permission-section{background:#6c5ce70d;border-color:#6c5ce733;flex-direction:column;max-height:400px;display:flex;overflow:hidden}.form-section.permission-section .section-title{color:var(--um-accent);flex-shrink:0}.selected-count{color:var(--um-secondary);background:#0000004d;border-radius:12px;margin-left:auto;padding:4px 10px;font-size:11px}.permission-groups{flex:1;overflow-y:auto}.permission-group{margin-bottom:8px}.permission-group:last-child{margin-bottom:0}.group-header{cursor:pointer;-webkit-user-select:none;user-select:none;background:#0003;border-radius:8px;align-items:center;gap:8px;padding:10px 12px;transition:all .2s;display:flex}.group-header:hover{background:#0000004d}.expand-icon{color:var(--um-secondary);align-items:center;transition:transform .2s;display:flex}.group-name{color:var(--um-primary);font-size:13px;font-weight:600}.group-count{color:var(--um-secondary);font-size:12px}.select-all-btn{border:1px solid var(--um-glass-border);color:var(--um-secondary);cursor:pointer;background:#0000004d;border-radius:6px;margin-left:auto;padding:4px 10px;font-size:11px;font-weight:500;transition:all .2s}.select-all-btn:hover,.select-all-btn.selected{border-color:var(--um-accent);color:var(--um-accent);background:#6c5ce733}.select-all-btn.partial{color:var(--um-warning);background:#ffc04826;border-color:#ffc0484d}.permission-list{grid-template-columns:repeat(2,1fr);gap:6px;padding:8px 0 8px 28px;display:grid}.permission-item{cursor:pointer;border-radius:8px;align-items:center;gap:8px;padding:8px 12px;transition:all .2s;display:flex}.permission-item:hover{background:#ffffff08}.permission-item input[type=checkbox]{display:none}.permission-item .checkbox-icon{color:var(--um-secondary);align-items:center;transition:color .2s;display:flex}.permission-item input:checked+.checkbox-icon{color:var(--um-success)}.permission-item .perm-name{color:var(--um-primary);font-size:13px;font-weight:500}.permission-item .perm-code{color:var(--um-secondary);opacity:.7;margin-left:auto;font-family:JetBrains Mono,monospace;font-size:11px}.form-section.role-section{background:#6c5ce70d;border-color:#6c5ce733}.form-section.role-section .section-title{color:var(--um-accent)}.role-checkbox-list{flex-direction:column;gap:8px;display:flex}.no-roles{text-align:center;color:var(--um-secondary);padding:16px;font-size:13px}.role-checkbox-item{cursor:pointer;background:#0003;border-radius:10px;align-items:center;gap:10px;padding:12px 14px;transition:all .2s;display:flex}.role-checkbox-item:hover{background:#0000004d}.role-checkbox-item input[type=checkbox]{display:none}.role-checkbox-item .checkbox-icon{color:var(--um-secondary);align-items:center;transition:color .2s;display:flex}.role-checkbox-item input:checked+.checkbox-icon{color:var(--um-success)}.role-checkbox-item .role-name{color:var(--um-primary);font-size:14px;font-weight:600}.role-checkbox-item .role-code{color:var(--um-secondary);font-family:JetBrains Mono,monospace;font-size:12px}.role-checkbox-item .system-badge{color:var(--um-warning);text-transform:uppercase;background:#ffc04826;border:1px solid #ffc04840;border-radius:4px;margin-left:auto;padding:3px 8px;font-size:10px;font-weight:600}.col-roles{align-items:center;min-width:0;display:flex}.role-tags{flex-wrap:nowrap;gap:3px;display:flex;overflow:hidden}.role-tag{color:var(--um-accent);white-space:nowrap;background:#6c5ce71a;border:1px solid #6c5ce726;border-radius:4px;padding:3px 6px;font-family:JetBrains Mono,monospace;font-size:9px;font-weight:600;display:inline-flex}.role-tag.more{color:var(--um-secondary);background:#ffffff0f;border-color:#ffffff1a}.no-roles{color:var(--um-secondary);opacity:.35;font-size:11px}@media (max-width:768px){.tab-bar{padding:12px 16px}.tab-item{padding:10px 16px;font-size:13px}.tab-item span{display:none}.permission-list{grid-template-columns:1fr}.role-list-container{padding:12px}.role-list-container .table-wrapper{border-radius:12px}.role-list-container .list-header{display:none}.role-list{padding:8px}.role-card{border:1px solid var(--um-glass-border);background:#ffffff05;border-radius:12px;flex-direction:column;gap:10px;margin-bottom:8px;padding:16px;display:flex}.role-card:before{display:none}.role-card:nth-child(odd),.role-card:nth-child(2n){background:#ffffff05}.role-card:hover{background:#6c5ce714}.col-role-info,.col-role-code,.col-role-perms,.col-role-type,.role-card .col-actions{width:100%}.role-card .col-actions{justify-content:flex-start;margin-right:0;padding-left:0;padding-right:0;position:static;background:0 0!important}.user-card>div,.role-card>div{border-right:none;justify-content:flex-start;min-height:auto;padding:8px 0}}.col-consumer{justify-content:center;align-items:center;min-width:0;display:flex}.consumer-badge{letter-spacing:.02em;white-space:nowrap;border-radius:10px;align-items:center;gap:3px;padding:4px 8px;font-size:10px;font-weight:600;display:inline-flex}.consumer-badge svg{opacity:.8;width:11px;height:11px}.consumer-badge.bound{color:var(--um-success);background:#00d9a51a;border:1px solid #00d9a533}.consumer-badge.unbound{color:var(--um-secondary);opacity:.7;background:#8b95a814;border:1px solid #8b95a826}.action-btn.bind{color:var(--um-info);background:#00b4d814;border:1px solid #00b4d82e}.action-btn.bind:hover{background:var(--um-info);border-color:var(--um-info);color:#fff;box-shadow:0 4px 12px var(--um-info-glow)}.bind-consumer-dialog{max-width:420px}.bind-consumer-dialog .dialog-header{align-items:center;gap:10px;display:flex}.bind-consumer-dialog .dialog-header svg{color:var(--um-info)}.bind-consumer-dialog .dialog-header .close-btn{margin-left:auto}.bind-info{background:#00b4d814;border:1px solid #00b4d826;border-radius:10px;margin-bottom:16px;padding:14px 16px}.bind-info p{color:var(--um-primary);margin:0;font-size:13px}.bind-info p strong{color:var(--um-info)}.bind-info .hint{color:var(--um-secondary);margin-top:6px;font-size:12px}.input-with-icon{align-items:center;display:flex;position:relative}.input-with-icon svg{color:var(--um-secondary);pointer-events:none;position:absolute;left:14px}.input-with-icon input{padding-left:42px!important}:root{--vm-primary:#fff;--vm-secondary:#a0a8b8;--vm-accent:#8b5cf6;--vm-accent-glow:#8b5cf64d;--vm-success:#10b981;--vm-danger:#ef4444;--vm-warning:#f59e0b;--vm-cyan:#06b6d4;--vm-glass:#ffffff08;--vm-glass-border:#ffffff14;--vm-glass-hover:#ffffff0f;--vm-dark-bg:#0006}.version-widget{width:100%;height:100%;color:var(--vm-primary);box-sizing:border-box;background:0 0;flex-direction:column;gap:12px;padding:16px;font-family:Outfit,system-ui,sans-serif;font-size:13px;display:flex;overflow:hidden}.version-widget .toolbar{background:var(--vm-glass);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--vm-glass-border);border-radius:10px;flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;display:flex}.version-widget .toolbar-left,.version-widget .toolbar-right{align-items:center;gap:10px;display:flex}.version-widget .page-title{color:#fff;white-space:nowrap;align-items:center;gap:8px;margin:0;font-size:15px;font-weight:600;display:flex}.version-widget .page-title svg{color:var(--vm-accent)}.version-widget .filter-group{gap:6px;display:flex}.version-widget .filter-chip{border:1px solid var(--vm-glass-border);background:var(--vm-dark-bg);height:28px;color:var(--vm-secondary);cursor:pointer;border-radius:14px;padding:0 12px;font-family:inherit;font-size:12px;font-weight:500;transition:all .2s}.version-widget .filter-chip:hover{background:var(--vm-glass-hover);color:var(--vm-primary)}.version-widget .filter-chip.active{background:var(--vm-accent);color:#fff;border-color:#0000}.version-widget .filter-chip.filter-client.active{background:var(--vm-cyan)}.version-widget .filter-chip.filter-admin.active{background:var(--vm-warning)}.version-widget .search-box{background:var(--vm-dark-bg);border:1px solid var(--vm-glass-border);height:32px;color:var(--vm-secondary);border-radius:8px;align-items:center;gap:8px;padding:0 12px;display:flex}.version-widget .search-box input{width:140px;color:var(--vm-primary);background:0 0;border:none;outline:none;font-family:inherit;font-size:12px}.version-widget .search-box input::placeholder{color:var(--vm-secondary)}.version-widget .btn{border:1px solid var(--vm-glass-border);background:var(--vm-dark-bg);height:32px;color:var(--vm-primary);cursor:pointer;white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-family:inherit;font-size:12px;font-weight:500;transition:all .2s;display:inline-flex}.version-widget .btn:hover:not(:disabled){background:var(--vm-glass-hover)}.version-widget .btn:disabled{opacity:.5;cursor:not-allowed}.version-widget .btn-primary{background:var(--vm-accent);color:#fff;border-color:#0000}.version-widget .btn-primary:hover:not(:disabled){background:#7c3aed}.version-widget .btn-ghost{background:0 0;border-color:#0000}.version-widget .btn-icon{width:28px;height:28px;padding:0}.version-widget .btn-success{color:var(--vm-success)}.version-widget .btn-warning{color:var(--vm-warning)}.version-widget .btn-danger{color:var(--vm-danger)}.version-widget .btn-outline{border-color:var(--vm-glass-border);background:0 0}.version-widget .table-container{background:var(--vm-glass);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--vm-glass-border);border-radius:10px;flex:1;position:relative;overflow:auto}.version-widget .loading-overlay{z-index:10;background:#00000080;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.version-widget .data-table{border-collapse:collapse;width:100%}.version-widget .data-table th,.version-widget .data-table td{text-align:left;border-bottom:1px solid var(--vm-glass-border);padding:10px 12px}.version-widget .data-table th{color:var(--vm-secondary);text-transform:uppercase;letter-spacing:.5px;background:var(--vm-dark-bg);z-index:5;font-size:11px;font-weight:600;position:sticky;top:0}.version-widget .data-table tbody tr{cursor:pointer;transition:background .15s}.version-widget .data-table tbody tr:hover{background:var(--vm-glass-hover)}.version-widget .data-table tbody tr.selected{background:#8b5cf61a}.version-widget .empty-row{color:var(--vm-secondary);text-align:center!important;padding:40px!important}.version-widget .version-name{color:var(--vm-accent);font-weight:600}.version-widget .version-code{background:var(--vm-dark-bg);border-radius:4px;padding:2px 6px;font-family:JetBrains Mono,monospace;font-size:11px}.version-widget .type-badge{border-radius:10px;align-items:center;padding:2px 8px;font-size:11px;font-weight:500;display:inline-flex}.version-widget .type-badge.client{color:var(--vm-cyan);background:#06b6d426}.version-widget .type-badge.admin{color:var(--vm-warning);background:#f59e0b26}.version-widget .status-badge{border-radius:10px;align-items:center;gap:4px;padding:2px 8px;font-size:11px;font-weight:500;display:inline-flex}.version-widget .status-badge.published{color:var(--vm-success);background:#10b98126}.version-widget .status-badge.draft{color:var(--vm-secondary);background:#a0a8b826}.version-widget .file-info{color:var(--vm-cyan);align-items:center;gap:4px;font-size:11px;display:inline-flex}.version-widget .no-file{color:var(--vm-secondary);font-size:11px}.version-widget .icon-success{color:var(--vm-success)}.version-widget .icon-danger{color:var(--vm-danger)}.version-widget .action-buttons{gap:4px;display:flex}.version-widget .pagination{flex-shrink:0;justify-content:space-between;align-items:center;padding:8px 0;display:flex}.version-widget .page-info{color:var(--vm-secondary);font-size:12px}.version-widget .page-buttons{gap:4px;display:flex}.version-widget .modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;background:#000000b3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.version-widget .modal{border:1px solid var(--vm-glass-border);background:#1a1a2e;border-radius:16px;width:90%;max-width:560px;overflow:hidden}.version-widget .modal-header{border-bottom:1px solid var(--vm-glass-border);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.version-widget .modal-header h2{margin:0;font-size:16px;font-weight:600}.version-widget .modal-body{max-height:60vh;padding:20px;overflow-y:auto}.version-widget .modal-footer{border-top:1px solid var(--vm-glass-border);justify-content:flex-end;gap:10px;padding:16px 20px;display:flex}.version-widget .form-grid{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.version-widget .form-group{flex-direction:column;gap:6px;display:flex}.version-widget .form-group.full-width{grid-column:1/-1}.version-widget .form-group label{color:var(--vm-secondary);font-size:12px;font-weight:500}.version-widget .form-group input,.version-widget .form-group select,.version-widget .form-group textarea{background:var(--vm-dark-bg);border:1px solid var(--vm-glass-border);height:36px;color:var(--vm-primary);border-radius:8px;outline:none;padding:0 12px;font-family:inherit;font-size:13px;transition:border-color .2s}.version-widget .form-group textarea{resize:vertical;height:auto;padding:10px 12px}.version-widget .form-group input:focus,.version-widget .form-group select:focus,.version-widget .form-group textarea:focus{border-color:var(--vm-accent)}.version-widget .form-group input[readonly]{cursor:not-allowed;background:#0003}.version-widget .form-hint{color:var(--vm-secondary);font-size:11px}.version-widget .upload-modal{max-width:480px}.version-widget .upload-section{flex-direction:column;gap:16px;display:flex}.version-widget .upload-item{background:var(--vm-dark-bg);border:1px dashed var(--vm-glass-border);border-radius:10px;align-items:center;gap:12px;padding:16px;display:flex}.version-widget .upload-item svg{color:var(--vm-accent);flex-shrink:0}.version-widget .upload-info{flex:1}.version-widget .upload-info h3{margin:0 0 4px;font-size:13px;font-weight:600}.version-widget .upload-info p{color:var(--vm-secondary);margin:0;font-size:11px}.version-widget .upload-item input[type=file]{display:none}.version-widget .upload-item label{cursor:pointer;text-overflow:ellipsis;max-width:150px;overflow:hidden}.version-widget .upload-progress{align-items:center;gap:12px;margin-top:16px;display:flex}.version-widget .progress-bar{background:var(--vm-dark-bg);border-radius:3px;flex:1;height:6px;overflow:hidden}.version-widget .progress-fill{background:var(--vm-accent);height:100%;transition:width .3s}.version-widget .spinning{animation:1s linear infinite spin}.ai-provider-widget{width:100%;height:100vh;padding:var(--spacing-lg);background-color:var(--color-bg-secondary);color:var(--color-text-primary);gap:var(--spacing-md);box-sizing:border-box;flex-direction:column;font-family:inherit;font-size:14px;display:flex;overflow:hidden}.stats-cards{gap:var(--spacing-md);grid-template-columns:repeat(3,1fr);display:grid}.stat-card{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-lg);align-items:center;gap:var(--spacing-md);cursor:pointer;transition:all var(--transition-base);display:flex;position:relative;overflow:hidden}.stat-card:before{content:"";background:var(--accent-color,var(--color-primary));opacity:.6;width:4px;height:100%;transition:all var(--transition-base);position:absolute;top:0;left:0}.stat-card:hover{box-shadow:var(--shadow-md);border-color:var(--accent-color,var(--color-primary));transform:translateY(-2px)}.stat-card:hover:before{opacity:1;width:6px}.stat-card.active{background:linear-gradient(135deg,rgba(var(--accent-color-rgb,59,130,246),.08)0%,rgba(var(--accent-color-rgb,59,130,246),.02)100%);border-color:var(--accent-color,var(--color-primary));box-shadow:0 0 0 3px rgba(var(--accent-color-rgb,59,130,246),.1)}.stat-card.active:before{opacity:1;width:6px}.stat-icon{border-radius:var(--radius-md);background:linear-gradient(135deg,rgba(var(--accent-color-rgb,59,130,246),.15)0%,rgba(var(--accent-color-rgb,59,130,246),.05)100%);width:48px;height:48px;color:var(--accent-color,var(--color-primary));justify-content:center;align-items:center;display:flex}.stat-info{flex:1}.filter-action-group{background-color:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-sm)var(--spacing-lg);box-sizing:border-box;min-height:52px;box-shadow:var(--shadow-sm);transition:box-shadow var(--transition-base);justify-content:space-between;align-items:center;gap:var(--spacing-md);display:flex}.filter-action-group:hover{box-shadow:var(--shadow-md)}.filter-section{align-items:center;gap:var(--spacing-sm);flex-wrap:wrap;flex:1;display:flex}.filter-label{color:var(--color-text-secondary);white-space:nowrap;font-size:13px;font-weight:600}.filter-select{border:1px solid var(--color-border);border-radius:var(--radius-md);min-width:150px;height:36px;padding:0 var(--spacing-sm);background-color:var(--color-bg-primary);color:var(--color-text-primary);cursor:pointer;transition:all var(--transition-base);font-size:13px}.filter-select:hover{border-color:var(--color-text-tertiary)}.filter-select:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #3b82f61a}.action-buttons{gap:var(--spacing-sm);flex-shrink:0;align-items:center;display:flex}.btn{border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg-primary);padding:var(--spacing-sm)var(--spacing-md);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-base);justify-content:center;align-items:center;gap:var(--spacing-sm);white-space:nowrap;height:40px;font-size:13px;font-weight:600;display:inline-flex}.btn:hover:not(:disabled){background-color:var(--color-bg-hover);border-color:var(--color-text-tertiary);color:var(--color-text-primary);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.btn:active:not(:disabled){transform:translateY(0)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-primary{background:linear-gradient(135deg,var(--color-primary)0%,var(--color-primary-hover)100%);color:#fff;border:1px solid var(--color-primary-hover);box-shadow:0 2px 8px #3b82f633}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,var(--color-primary-hover)0%,#1d4ed8 100%);transform:translateY(-2px);box-shadow:0 4px 12px #3b82f64d}.btn-secondary{background-color:var(--color-bg-primary);color:var(--color-text-secondary)}.btn-secondary:hover:not(:disabled){background-color:var(--color-bg-hover);color:var(--color-text-primary)}.table-container{border:1px solid var(--color-border);border-radius:var(--radius-lg);min-height:0;box-shadow:var(--shadow-sm);background-color:var(--color-bg-primary);flex:1;overflow:auto}.table-container:hover{box-shadow:var(--shadow-md)}.data-table{border-collapse:collapse;background-color:var(--color-bg-primary);table-layout:auto;width:100%}.data-table thead{background:linear-gradient(180deg,var(--color-bg-secondary)0%,var(--color-bg-tertiary)100%);z-index:10;position:sticky;top:0}.data-table th{padding:var(--spacing-md)var(--spacing-sm);text-align:center;color:var(--color-text-secondary);border-bottom:2px solid var(--color-border);border-right:1px solid var(--color-border);text-transform:uppercase;letter-spacing:.5px;font-size:12px;font-weight:700}.data-table th:last-child{border-right:none}.data-table tbody tr{cursor:pointer;height:52px;transition:all var(--transition-base);border-bottom:1px solid var(--color-border-light)}.data-table tbody tr:hover:not(.selected){background-color:var(--color-bg-hover)}.data-table tbody tr.selected{background:linear-gradient(90deg,var(--color-primary-light)0%,#3b82f60d 100%);border-left:3px solid var(--color-primary);box-shadow:inset 0 0 0 1px #3b82f61a}.data-table tbody tr.selected:hover{background:linear-gradient(90deg,var(--color-primary-light)0%,#3b82f614 100%)}.data-table td{padding:var(--spacing-md)var(--spacing-sm);text-align:center;border-right:1px solid var(--color-border-light);color:var(--color-text-primary);font-size:13px}.data-table td:last-child{border-right:none}.data-table tbody tr:last-child td{border-bottom:none}.code-cell{color:var(--color-primary);border-radius:var(--radius-sm);background:#3b82f60d;font-family:Consolas,Monaco,monospace;font-size:12px;padding:4px 8px!important}.name-cell{color:var(--color-text-primary);font-weight:600;text-align:left!important;padding-left:var(--spacing-md)!important}.price-cell{color:var(--color-text-secondary);font-family:Consolas,Monaco,monospace;font-size:12px}.date-cell{color:var(--color-text-tertiary);font-size:12px}.type-badge{border-radius:var(--radius-sm);background:linear-gradient(135deg,rgba(var(--type-color-rgb,59,130,246),.15)0%,rgba(var(--type-color-rgb,59,130,246),.08)100%);color:var(--type-color,var(--color-primary));border:1px solid rgba(var(--type-color-rgb,59,130,246),.3);align-items:center;gap:4px;padding:4px 10px;font-size:11px;font-weight:600;display:inline-flex}.protocol-badge{border-radius:var(--radius-sm);background:var(--color-bg-tertiary);color:var(--color-text-secondary);border:1px solid var(--color-border);align-items:center;gap:4px;padding:3px 8px;font-size:10px;font-weight:500;display:inline-flex}.status-toggle{border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-base);border:1px solid #0000;padding:4px 12px;font-size:12px;font-weight:600}.status-toggle.active{color:#16a34a;background-color:#22c55e1a;border-color:#22c55e4d}.status-toggle.active:hover{background-color:#22c55e33;border-color:#22c55e80}.status-toggle.inactive{color:var(--color-danger);background-color:#ef44441a;border-color:#ef44444d}.status-toggle.inactive:hover{background-color:#ef444433;border-color:#ef444480}.loading-cell,.empty-cell{text-align:center;color:var(--color-text-tertiary);padding:var(--spacing-xl);justify-content:center;align-items:center;gap:var(--spacing-md);flex-direction:column;font-size:14px;display:flex}.loading-cell svg,.empty-cell svg{opacity:.5}.action-cell{text-align:center;white-space:nowrap;padding:var(--spacing-sm)!important}.action-btn{border:1px solid var(--color-border);border-radius:var(--radius-sm);background-color:var(--color-bg-primary);width:28px;height:28px;color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-base);justify-content:center;align-items:center;margin:0 2px;padding:0;display:inline-flex}.action-btn:hover{box-shadow:var(--shadow-sm);transform:translateY(-1px)}.edit-btn:hover{border-color:var(--color-primary);color:var(--color-primary);background-color:#3b82f61a}.delete-btn:hover{border-color:var(--color-danger);color:var(--color-danger);background-color:#ef44441a}.hint-text{padding:var(--spacing-sm)var(--spacing-md);color:var(--color-text-tertiary);text-align:center;font-size:11px}.dialog-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.dialog-content{background-color:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);flex-direction:column;width:90%;max-width:500px;max-height:90vh;display:flex;overflow:hidden}.ai-provider-dialog{max-width:650px}.dialog-header{padding:var(--spacing-lg);border-bottom:1px solid var(--color-border);background:linear-gradient(180deg,var(--color-bg-secondary)0%,var(--color-bg-primary)100%);justify-content:space-between;align-items:center;display:flex}.dialog-header h3{color:var(--color-text-primary);margin:0;font-size:18px;font-weight:700}.dialog-close{width:32px;height:32px;color:var(--color-text-tertiary);cursor:pointer;border-radius:var(--radius-md);transition:all var(--transition-base);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.dialog-close:hover{background-color:var(--color-bg-hover);color:var(--color-text-primary)}.dialog-body{padding:var(--spacing-lg);gap:var(--spacing-md);flex-direction:column;flex:1;display:flex;overflow-y:auto}.dialog-footer{padding:var(--spacing-lg);border-top:1px solid var(--color-border);gap:var(--spacing-sm);background:linear-gradient(0deg,var(--color-bg-secondary)0%,var(--color-bg-primary)100%);justify-content:flex-end;display:flex}.dialog-footer .btn{min-width:100px}.form-row{gap:var(--spacing-md);grid-template-columns:1fr 1fr;display:grid}.form-field{flex-direction:column;gap:6px;display:flex}.form-field label{color:var(--color-text-secondary);letter-spacing:.2px;font-size:12px;font-weight:600}.form-field input,.form-field select,.form-field textarea{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:8px var(--spacing-sm);background-color:var(--color-bg-primary);min-height:36px;color:var(--color-text-primary);transition:all var(--transition-base);font-family:inherit;font-size:13px}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #3b82f61a}.form-field input:hover,.form-field select:hover,.form-field textarea:hover{border-color:var(--color-text-tertiary)}.form-field textarea{resize:vertical;min-height:80px;font-family:Consolas,Monaco,monospace;font-size:12px}.checkbox-label{align-items:center;gap:var(--spacing-sm);cursor:pointer;flex-direction:row!important}.checkbox-label input[type=checkbox]{cursor:pointer;width:18px;height:18px;min-height:18px}.checkbox-label span{color:var(--color-text-primary);font-weight:500}.status-bar{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-md)var(--spacing-lg);box-sizing:border-box;align-items:center;gap:var(--spacing-sm);min-height:48px;box-shadow:var(--shadow-sm);transition:all var(--transition-base);font-size:13px;display:flex}.status-bar svg{flex-shrink:0}.status-info{color:var(--color-primary);background:linear-gradient(90deg,#3b82f61a 0%,#3b82f60d 100%);border-color:#3b82f64d}.status-info svg{color:var(--color-primary)}.status-success{color:#16a34a;background:linear-gradient(90deg,#22c55e1a 0%,#22c55e0d 100%);border-color:#22c55e4d}.status-success svg{color:#16a34a}.status-error{color:var(--color-danger);background:linear-gradient(90deg,#ef44441a 0%,#ef44440d 100%);border-color:#ef44444d}.status-error svg{color:var(--color-danger)}.table-container::-webkit-scrollbar{width:8px;height:8px}.dialog-body::-webkit-scrollbar{width:8px;height:8px}.table-container::-webkit-scrollbar-track{background:var(--color-bg-tertiary);border-radius:4px}.dialog-body::-webkit-scrollbar-track{background:var(--color-bg-tertiary);border-radius:4px}.table-container::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:4px}.dialog-body::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:4px}.table-container::-webkit-scrollbar-thumb:hover{background:var(--color-text-tertiary)}.dialog-body::-webkit-scrollbar-thumb:hover{background:var(--color-text-tertiary)}@media (max-width:900px){.stats-cards,.form-row{grid-template-columns:1fr}}@media (max-width:768px){.filter-action-group,.filter-section{flex-direction:column;align-items:stretch}.dialog-content{width:95%;max-height:95vh}}:root{--cm-primary:#e8ecf4;--cm-secondary:#8b95a8;--cm-accent:#6c5ce7;--cm-accent-glow:#6c5ce766;--cm-success:#00d9a5;--cm-success-glow:#00d9a54d;--cm-warning:#ffc048;--cm-warning-glow:#ffc0484d;--cm-danger:#ff6b8a;--cm-danger-glow:#ff6b8a4d;--cm-info:#00b4d8;--cm-info-glow:#00b4d84d;--cm-glass:#ffffff08;--cm-glass-border:#ffffff14;--cm-glass-hover:#ffffff0f;--cm-gold:gold;--cm-silver:silver;--cm-diamond:#b9f2ff}.consumer-management-widget{width:100%;height:100vh;color:var(--cm-primary);background:radial-gradient(80% 50% at 50% -20%,#6c5ce726 0%,#0000 50%),radial-gradient(60% 40% at 90% 80%,#00d9a514 0%,#0000 40%),radial-gradient(50% 30% at 10% 60%,#ff6b8a0f 0%,#0000 40%),linear-gradient(#0a0a1a 0%,#0f0f24 50%,#0a0a1a 100%);flex-direction:column;font-family:Outfit,system-ui,-apple-system,sans-serif;font-size:14px;display:flex;position:relative;overflow:hidden}.consumer-management-widget:before{content:"";pointer-events:none;z-index:0;background-image:linear-gradient(#6c5ce708 1px,#0000 1px),linear-gradient(90deg,#6c5ce708 1px,#0000 1px);background-size:60px 60px;position:fixed;inset:0}.consumer-management-widget>*{z-index:1;position:relative}.spinning{animation:1s linear infinite spin}.statistics-cards{flex-shrink:0;grid-template-columns:repeat(4,1fr);gap:16px;padding:20px 24px;display:grid}.stat-card{background:var(--cm-glass);border:1px solid var(--cm-glass-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;align-items:center;gap:16px;padding:20px;transition:all .3s;display:flex}.stat-card:hover{background:var(--cm-glass-hover);transform:translateY(-2px);box-shadow:0 8px 32px #0000004d}.stat-icon{border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;display:flex}.stat-total .stat-icon{color:var(--cm-accent);box-shadow:0 0 20px var(--cm-accent-glow);background:linear-gradient(135deg,#6c5ce733,#6c5ce71a)}.stat-active .stat-icon{color:var(--cm-success);box-shadow:0 0 20px var(--cm-success-glow);background:linear-gradient(135deg,#00d9a533,#00d9a51a)}.stat-consumption .stat-icon{color:var(--cm-warning);box-shadow:0 0 20px var(--cm-warning-glow);background:linear-gradient(135deg,#ffc04833,#ffc0481a)}.stat-points .stat-icon{color:var(--cm-info);box-shadow:0 0 20px var(--cm-info-glow);background:linear-gradient(135deg,#00b4d833,#00b4d81a)}.stat-content{flex:1;min-width:0}.stat-value{color:var(--cm-primary);white-space:nowrap;text-overflow:ellipsis;font-family:JetBrains Mono,monospace;font-size:24px;font-weight:700;line-height:1.2;overflow:hidden}.control-bar{flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:0 24px 16px;display:flex}.control-left{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.control-right{align-items:center;gap:8px;display:flex}.search-box{align-items:center;display:flex;position:relative}.search-box svg{color:var(--cm-secondary);pointer-events:none;position:absolute;left:14px}.search-box input{background:var(--cm-glass);border:1px solid var(--cm-glass-border);width:280px;height:40px;color:var(--cm-primary);border-radius:10px;padding:0 40px 0 44px;font-size:14px;transition:all .2s}.search-box input:focus{border-color:var(--cm-accent);box-shadow:0 0 0 3px var(--cm-accent-glow);background:var(--cm-glass-hover);outline:none}.search-box input::placeholder{color:var(--cm-secondary)}.search-box .clear-btn{color:var(--cm-secondary);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:4px;transition:all .2s;display:flex;position:absolute;right:10px}.search-box .clear-btn:hover{color:var(--cm-primary);background:var(--cm-glass-hover)}.filter-group{gap:8px;display:flex}.filter-select{background:var(--cm-glass);border:1px solid var(--cm-glass-border);height:40px;color:var(--cm-primary);cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238b95a8' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;border-radius:10px;padding:0 32px 0 12px;font-size:14px;transition:all .2s}.filter-select:focus{border-color:var(--cm-accent);box-shadow:0 0 0 3px var(--cm-accent-glow);outline:none}.filter-select option{color:var(--cm-primary);background:#1a1a2e}.btn{cursor:pointer;white-space:nowrap;border:none;border-radius:10px;justify-content:center;align-items:center;gap:6px;height:40px;padding:0 16px;font-size:14px;font-weight:500;transition:all .2s;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:linear-gradient(135deg,var(--cm-accent),#5a4ad1);color:#fff;box-shadow:0 4px 15px var(--cm-accent-glow)}.btn-primary:hover:not(:disabled){box-shadow:0 6px 20px var(--cm-accent-glow);transform:translateY(-1px)}.btn-secondary{background:var(--cm-glass);border:1px solid var(--cm-glass-border);color:var(--cm-primary)}.btn-secondary:hover:not(:disabled){background:var(--cm-glass-hover);border-color:var(--cm-accent)}.btn-danger{background:linear-gradient(135deg,var(--cm-danger),#e85a77);color:#fff;box-shadow:0 4px 15px var(--cm-danger-glow)}.btn-danger:hover:not(:disabled){box-shadow:0 6px 20px var(--cm-danger-glow);transform:translateY(-1px)}.error-banner{color:var(--cm-danger);background:#ff6b8a1a;border:1px solid #ff6b8a4d;border-radius:10px;align-items:center;gap:10px;margin:0 24px 16px;padding:12px 16px;animation:.3s slideUp;display:flex}.error-banner span{flex:1}.error-banner button{color:var(--cm-danger);cursor:pointer;opacity:.7;background:0 0;border:none;align-items:center;padding:4px;transition:opacity .2s;display:flex}.error-banner button:hover{opacity:1}.consumer-list-container{background:var(--cm-glass);border:1px solid var(--cm-glass-border);border-radius:16px;flex-direction:column;flex:1;min-height:0;margin:0 24px 24px;display:flex;overflow:hidden}.consumer-management-widget .list-header{border-bottom:1px solid var(--cm-glass-border);color:var(--cm-secondary);text-transform:uppercase;letter-spacing:.5px;text-align:center;background:#6c5ce70d;grid-template-columns:2fr 1.2fr 1fr 1fr 1fr .8fr .8fr 100px;gap:12px;padding:14px 20px;font-size:12px;font-weight:600;display:grid}.consumer-management-widget .list-header span{justify-content:center;align-items:center;display:flex}.consumer-list{flex:1;padding:8px;overflow-y:auto}.consumer-list::-webkit-scrollbar{width:6px}.consumer-list::-webkit-scrollbar-track{background:0 0}.consumer-list::-webkit-scrollbar-thumb{background:var(--cm-glass-border);border-radius:3px}.consumer-list::-webkit-scrollbar-thumb:hover{background:var(--cm-secondary)}.consumer-card{background:0 0;border-radius:12px;grid-template-columns:2fr 1.2fr 1fr 1fr 1fr .8fr .8fr 100px;align-items:center;gap:12px;margin-bottom:4px;padding:14px 12px;transition:all .2s;animation:.3s fadeIn;display:grid}.consumer-card:hover{background:var(--cm-glass-hover)}.consumer-card.disabled{opacity:.6}.col-consumer{justify-content:center;align-items:center;gap:12px;min-width:0;display:flex}.consumer-avatar{width:40px;height:40px;color:var(--cm-accent);background:linear-gradient(135deg,#6c5ce733,#6c5ce71a);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex;overflow:hidden}.consumer-avatar img{object-fit:cover;width:100%;height:100%}.consumer-info{min-width:0}.consumer-name{color:var(--cm-primary);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.consumer-id{color:var(--cm-secondary);font-family:JetBrains Mono,monospace;font-size:12px}.col-phone{justify-content:center;align-items:center;min-width:0;display:flex}.phone-badge{color:var(--cm-info);background:#00b4d81a;border-radius:6px;align-items:center;gap:6px;padding:4px 10px;font-family:JetBrains Mono,monospace;font-size:13px;display:inline-flex}.no-phone{color:var(--cm-secondary)}.col-level{justify-content:center;align-items:center;min-width:0;display:flex}.level-badge{border-radius:6px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:500;display:inline-flex}.level-normal{color:var(--cm-secondary);background:#8b95a81a}.level-silver{color:var(--cm-silver);background:#c0c0c026;box-shadow:0 0 10px #c0c0c033}.level-gold{color:var(--cm-gold);background:#ffd70026;box-shadow:0 0 10px #ffd70033}.level-diamond{color:var(--cm-diamond);background:#b9f2ff26;box-shadow:0 0 10px #b9f2ff33}.col-balance,.col-consumption{justify-content:center;align-items:center;min-width:0;display:flex}.balance-value,.consumption-value{color:var(--cm-primary);align-items:center;gap:6px;font-family:JetBrains Mono,monospace;font-size:13px;display:inline-flex}.balance-value{color:var(--cm-success)}.consumption-value{color:var(--cm-warning)}.col-points{justify-content:center;align-items:center;min-width:0;display:flex}.points-value{color:var(--cm-info);align-items:center;gap:6px;font-family:JetBrains Mono,monospace;font-size:13px;display:inline-flex}.col-status{justify-content:center;align-items:center;min-width:0;display:flex}.status-badge{cursor:pointer;border:none;border-radius:6px;align-items:center;gap:4px;padding:4px 10px;font-size:12px;font-weight:500;transition:all .2s;display:inline-flex}.status-badge.active{color:var(--cm-success);background:#00d9a526}.status-badge.active:hover{background:#00d9a540}.status-badge.inactive{color:var(--cm-danger);background:#ff6b8a26}.status-badge.inactive:hover{background:#ff6b8a40}.col-actions{justify-content:center;align-items:center;gap:6px;display:flex}.action-btn{background:var(--cm-glass);border:1px solid var(--cm-glass-border);width:32px;height:32px;color:var(--cm-secondary);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;transition:all .2s;display:flex}.action-btn:hover{background:var(--cm-glass-hover);color:var(--cm-primary)}.action-btn.view:hover{border-color:var(--cm-info);color:var(--cm-info)}.action-btn.edit:hover{border-color:var(--cm-accent);color:var(--cm-accent)}.empty-state{color:var(--cm-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;padding:60px 20px;display:flex}.empty-state p{margin-bottom:8px;font-size:16px;font-weight:500}.empty-state span{opacity:.7;font-size:13px}.skeleton{background:linear-gradient(90deg,var(--cm-glass)25%,var(--cm-glass-hover)50%,var(--cm-glass)75%);background-size:200% 100%;border-radius:6px;animation:1.5s infinite shimmer}.consumer-list-skeleton{padding:8px}.consumer-card-skeleton{align-items:center;gap:12px;margin-bottom:4px;padding:14px 12px;display:flex}.consumer-card-skeleton .skeleton-avatar{background:linear-gradient(90deg,var(--cm-glass)25%,var(--cm-glass-hover)50%,var(--cm-glass)75%);background-size:200% 100%;border-radius:10px;width:40px;height:40px;animation:1.5s infinite shimmer}.consumer-card-skeleton .skeleton-content{flex:1}.consumer-card-skeleton .skeleton-actions{gap:6px;display:flex}.pagination{border-top:1px solid var(--cm-glass-border);justify-content:center;align-items:center;gap:16px;padding:16px;display:flex}.page-btn{background:var(--cm-glass);border:1px solid var(--cm-glass-border);width:36px;height:36px;color:var(--cm-secondary);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;transition:all .2s;display:flex}.page-btn:hover:not(:disabled){background:var(--cm-glass-hover);color:var(--cm-primary);border-color:var(--cm-accent)}.page-btn:disabled{opacity:.4;cursor:not-allowed}.page-total{color:var(--cm-secondary);margin-left:8px}.dialog-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#000000b3;justify-content:center;align-items:center;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.dialog{border:1px solid var(--cm-glass-border);background:linear-gradient(#1a1a2e 0%,#16162a 100%);border-radius:20px;flex-direction:column;max-height:90vh;animation:.3s scaleIn;display:flex;box-shadow:0 25px 80px #00000080}.detail-dialog{width:600px}.edit-dialog{width:500px}.confirm-dialog{width:400px}.dialog-header{border-bottom:1px solid var(--cm-glass-border);align-items:center;gap:12px;padding:20px 24px;display:flex}.dialog-header h3{flex:1;margin:0;font-size:18px;font-weight:600}.dialog-header .danger{color:var(--cm-danger)}.close-btn{width:32px;height:32px;color:var(--cm-secondary);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;transition:all .2s;display:flex}.close-btn:hover{background:var(--cm-glass-hover);color:var(--cm-primary)}.dialog-body{flex:1;padding:24px;overflow-y:auto}.dialog-footer{border-top:1px solid var(--cm-glass-border);justify-content:flex-end;gap:12px;padding:16px 24px;display:flex}.detail-header{align-items:center;gap:16px;margin-bottom:20px;display:flex}.consumer-avatar-large{width:72px;height:72px;color:var(--cm-accent);background:linear-gradient(135deg,#6c5ce733,#6c5ce71a);border-radius:16px;flex-shrink:0;justify-content:center;align-items:center;display:flex;overflow:hidden}.consumer-avatar-large img{object-fit:cover;width:100%;height:100%}.consumer-header-info{flex:1;min-width:0}.consumer-name-row{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:6px;display:flex}.consumer-nickname{color:var(--cm-primary);font-size:20px;font-weight:600}.section-title{color:var(--cm-secondary);text-transform:uppercase;letter-spacing:.5px;align-items:center;gap:8px;margin-bottom:14px;font-size:13px;font-weight:600;display:flex}.detail-item{background:var(--cm-glass);border:1px solid var(--cm-glass-border);border-radius:10px;align-items:center;gap:10px;padding:12px 14px;display:flex}.detail-item svg{color:var(--cm-secondary);flex-shrink:0}.detail-label{color:var(--cm-secondary);white-space:nowrap;font-size:12px}.detail-value{text-align:right;color:var(--cm-primary);white-space:nowrap;text-overflow:ellipsis;flex:1;font-weight:500;overflow:hidden}.detail-value.currency{color:var(--cm-success);font-family:JetBrains Mono,monospace}.detail-item.highlight{background:#00d9a50d;border-color:#00d9a533}.form-error{color:var(--cm-danger);background:#ff6b8a1a;border:1px solid #ff6b8a4d;border-radius:10px;align-items:center;gap:8px;margin-bottom:20px;padding:12px 16px;animation:.3s slideUp;display:flex}.form-row:last-child{margin-bottom:0}.form-group input,.form-group select{background:var(--cm-glass);border:1px solid var(--cm-glass-border);height:42px;color:var(--cm-primary);border-radius:10px;padding:0 14px;font-size:14px;transition:all .2s}.form-group input:focus,.form-group select:focus{border-color:var(--cm-accent);box-shadow:0 0 0 3px var(--cm-accent-glow);background:var(--cm-glass-hover);outline:none}.form-group select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238b95a8' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:36px}.form-group select option{color:var(--cm-primary);background:#1a1a2e}.confirm-dialog .dialog-body{padding:20px 24px}.confirm-dialog .dialog-body p{color:var(--cm-primary);margin:0;line-height:1.6}@media (max-width:1200px){.statistics-cards{grid-template-columns:repeat(2,1fr)}.list-header,.consumer-card{grid-template-columns:2fr 1.2fr 1fr 1fr .8fr 100px}.col-consumption,.col-points{display:none}}@media (max-width:768px){.statistics-cards{grid-template-columns:1fr;padding:16px}.control-bar{padding:0 16px 16px}.search-box input{width:200px}.consumer-list-container{margin:0 16px 16px}.consumer-management-widget .list-header{display:none}.consumer-card{flex-wrap:wrap;gap:8px;padding:16px;display:flex}.col-consumer{width:100%}.col-phone,.col-level,.col-balance{flex:1;min-width:100px}.col-status{order:-1;position:absolute;top:16px;right:16px}.col-actions{border-top:1px solid var(--cm-glass-border);justify-content:flex-start;width:100%;margin-top:8px;padding-top:12px}.dialog{width:calc(100% - 32px);max-width:500px}.detail-grid,.form-row{grid-template-columns:1fr}}.device-management-widget{background:#f8fafc;min-height:100%;padding:24px}.refresh-btn:hover{background:#2563eb}.statistics-cards{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px;display:grid}.stat-card{background:#fff;border-radius:12px;align-items:center;gap:16px;padding:20px;display:flex;box-shadow:0 1px 3px #00000014}.stat-icon{color:#fff;border-radius:12px;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.stat-icon.total{background:linear-gradient(135deg,#3b82f6,#1d4ed8)}.stat-icon.enabled{background:linear-gradient(135deg,#10b981,#059669)}.stat-icon.bound{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.stat-icon.unbound{background:linear-gradient(135deg,#f59e0b,#d97706)}.stat-content{flex:1}.stat-value{color:#1e293b;font-size:28px;font-weight:700;line-height:1}.stat-label{color:#64748b;margin-top:4px;font-size:13px}.model-distribution{background:#fff;border-radius:12px;margin-bottom:24px;padding:20px;box-shadow:0 1px 3px #00000014}.model-distribution.empty{color:#94a3b8;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:40px;display:flex}.distribution-header{color:#1e293b;align-items:center;gap:8px;margin-bottom:16px;font-size:15px;font-weight:600;display:flex}.distribution-bars{flex-direction:column;gap:12px;display:flex}.distribution-item{flex-direction:column;gap:4px;display:flex}.item-label{justify-content:space-between;font-size:13px;display:flex}.model-name{color:#475569}.model-count{color:#94a3b8;font-weight:500}.item-bar-wrapper{background:#f1f5f9;border-radius:4px;height:8px;overflow:hidden}.item-bar{border-radius:4px;height:100%;transition:width .3s}.filter-bar{flex-wrap:wrap;gap:12px;margin-bottom:16px;display:flex}.search-input-wrapper{background:#fff;border:1px solid #e2e8f0;border-radius:8px;flex:1;align-items:center;gap:8px;min-width:200px;padding:8px 12px;display:flex}.search-input-wrapper svg{color:#94a3b8}.search-input-wrapper input{border:none;outline:none;flex:1;font-size:14px}.filter-bar select{cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:8px 12px;font-size:14px}.search-btn{color:#fff;cursor:pointer;background:#3b82f6;border:none;border-radius:8px;align-items:center;gap:6px;padding:8px 16px;font-size:14px;transition:all .2s;display:flex}.search-btn:hover{background:#2563eb}.device-table-wrapper{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #00000014}.device-table{border-collapse:collapse;width:100%}.device-table th{text-align:left;color:#64748b;background:#f8fafc;border-bottom:1px solid #e2e8f0;padding:14px 16px;font-size:13px;font-weight:600}.device-table td{color:#334155;border-bottom:1px solid #f1f5f9;padding:14px 16px;font-size:14px}.device-table tbody tr:hover{background:#f8fafc}.mono{font-family:SF Mono,Monaco,Consolas,monospace;font-size:13px}.sn-cell{color:#3b82f6;font-weight:500}.name-wrapper{flex-direction:column;display:flex}.device-name{font-weight:500}.model-badge{color:#0369a1;background:#e0f2fe;border-radius:6px;padding:4px 10px;font-size:12px;font-weight:500;display:inline-block}.status-badge{border-radius:6px;padding:4px 10px;font-size:12px;font-weight:500;display:inline-block}.status-badge.enabled{color:#166534;background:#dcfce7}.status-badge.disabled{color:#991b1b;background:#fee2e2}.online-indicator{border-radius:6px;align-items:center;gap:4px;padding:4px 8px;font-size:12px;display:inline-flex}.online-indicator.online{color:#166534;background:#dcfce7}.online-indicator.offline{color:#64748b;background:#f1f5f9}.user-badge{color:#475569;background:#f1f5f9;border-radius:6px;padding:4px 8px;font-size:12px;display:inline-block}.unbound{color:#94a3b8;font-style:italic}.time-cell{color:#64748b;font-size:13px}.action-buttons{gap:6px;display:flex}.action-btn.view{color:#0369a1;background:#e0f2fe}.action-btn.view:hover{background:#bae6fd}.action-btn.unbind{color:#7c3aed;background:#f3e8ff}.action-btn.unbind:hover{background:#e9d5ff}.empty-state{color:#94a3b8;flex-direction:column;justify-content:center;align-items:center;padding:60px 20px;display:flex}.pagination{justify-content:center;align-items:center;gap:16px;margin-top:20px;display:flex}.pagination button{cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;transition:all .2s;display:flex}.pagination button:hover:not(:disabled){background:#f1f5f9;border-color:#cbd5e1}.pagination button:disabled{opacity:.5;cursor:not-allowed}.page-info{color:#64748b;font-size:14px}.skeleton{background:linear-gradient(90deg,#f1f5f9 25%,#e2e8f0 50%,#f1f5f9 75%) 0 0/200% 100%;border-radius:4px;animation:1.5s infinite shimmer}.device-list-skeleton{padding:16px}.device-row-skeleton{border-bottom:1px solid #f1f5f9;gap:24px;padding:14px 0;display:flex}.detail-section{margin-bottom:24px}.detail-section:last-child{margin-bottom:0}.detail-section h4{color:#64748b;text-transform:uppercase;letter-spacing:.5px;margin:0 0 12px;font-size:14px;font-weight:600}.detail-grid{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.detail-item{flex-direction:column;gap:4px;display:flex}.detail-item .label{color:#94a3b8;font-size:12px}.detail-item .value{color:#1e293b;font-size:14px;font-weight:500}.detail-item .value.mono{font-family:SF Mono,Monaco,Consolas,monospace}@media (max-width:1024px){.statistics-cards{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.device-management-widget{padding:16px}.statistics-cards{grid-template-columns:1fr}.filter-bar{flex-direction:column}.search-input-wrapper{width:100%}.device-table-wrapper{overflow-x:auto}.device-table{min-width:800px}.detail-grid{grid-template-columns:1fr}}.product-model-widget{background:#f8fafc;min-height:100%;padding:24px}.widget-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.header-title{align-items:center;gap:12px;display:flex}.header-title h2{color:#1e293b;margin:0;font-size:24px;font-weight:700}.header-title svg{color:#8b5cf6}.total-badge{color:#6d28d9;background:#ede9fe;border-radius:16px;padding:4px 12px;font-size:13px;font-weight:500}.header-actions{gap:12px;display:flex}.refresh-btn{color:#64748b;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:8px;align-items:center;gap:6px;padding:8px 16px;font-size:14px;transition:all .2s;display:flex}.refresh-btn:hover{background:#f1f5f9;border-color:#cbd5e1}.refresh-btn:disabled{opacity:.6;cursor:not-allowed}.refresh-btn .spinning{animation:1s linear infinite spin}.add-btn{color:#fff;cursor:pointer;background:#8b5cf6;border:none;border-radius:8px;align-items:center;gap:6px;padding:8px 16px;font-size:14px;transition:all .2s;display:flex}.add-btn:hover{background:#7c3aed}.error-message{color:#dc2626;background:#fef2f2;border-radius:8px;align-items:center;gap:8px;margin-bottom:16px;padding:12px 16px;font-size:14px;display:flex}.model-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px;display:grid}.model-card{background:#fff;border-radius:16px;transition:all .3s;overflow:hidden;box-shadow:0 1px 3px #00000014}.model-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.model-card.disabled{opacity:.7}.card-header{justify-content:space-between;align-items:flex-start;padding:20px 20px 0;display:flex}.model-icon{background:linear-gradient(135deg,#f1f5f9,#e2e8f0);border-radius:16px;justify-content:center;align-items:center;width:64px;height:64px;font-size:32px;display:flex;overflow:hidden}.model-icon img{object-fit:cover;width:100%;height:100%}.model-status .status-badge{border-radius:6px;padding:4px 10px;font-size:12px;font-weight:500}.model-status .status-badge.enabled{color:#166534;background:#dcfce7}.model-status .status-badge.disabled{color:#64748b;background:#f1f5f9}.card-body{padding:16px 20px}.model-name{color:#1e293b;margin:0 0 4px;font-size:18px;font-weight:600}.model-code{color:#8b5cf6;background:#ede9fe;border-radius:4px;margin-bottom:12px;padding:2px 8px;font-family:SF Mono,Monaco,Consolas,monospace;font-size:12px;display:inline-block}.model-meta{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.meta-item{color:#64748b;background:#f1f5f9;border-radius:6px;align-items:center;gap:4px;padding:4px 8px;font-size:12px;display:inline-flex}.meta-item strong{color:#475569}.model-wakeword{color:#64748b;background:#f8fafc;border-radius:8px;padding:8px 12px;font-size:13px}.model-wakeword strong{color:#8b5cf6}.card-actions{border-top:1px solid #f1f5f9;justify-content:flex-end;gap:8px;padding:12px 20px 16px;display:flex}.action-btn{cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;transition:all .2s;display:flex}.action-btn.edit{color:#0369a1;background:#e0f2fe}.action-btn.edit:hover{background:#bae6fd}.action-btn.enable{color:#166534;background:#dcfce7}.action-btn.enable:hover{background:#bbf7d0}.action-btn.disable{color:#92400e;background:#fef3c7}.action-btn.disable:hover{background:#fde68a}.action-btn.delete{color:#dc2626;background:#fee2e2}.action-btn.delete:hover{background:#fecaca}.empty-state{color:#94a3b8;background:#fff;border-radius:16px;flex-direction:column;grid-column:1/-1;justify-content:center;align-items:center;padding:80px 20px;display:flex}.empty-state svg{opacity:.5;margin-bottom:16px}.empty-state p{margin:0 0 20px;font-size:15px}.skeleton-card{flex-direction:column;gap:16px;padding:20px;display:flex}.skeleton-icon{background:linear-gradient(90deg,#f1f5f9 25%,#e2e8f0 50%,#f1f5f9 75%) 0 0/200% 100%;border-radius:16px;width:64px;height:64px;animation:1.5s infinite shimmer}.skeleton-content{flex-direction:column;gap:8px;display:flex}.skeleton-line{background:linear-gradient(90deg,#f1f5f9 25%,#e2e8f0 50%,#f1f5f9 75%) 0 0/200% 100%;border-radius:4px;height:16px;animation:1.5s infinite shimmer}.modal-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{background:#fff;border-radius:16px;flex-direction:column;width:90%;max-width:640px;max-height:90vh;display:flex;overflow:hidden}.model-edit-modal .modal-body{max-height:calc(90vh - 140px)}.modal-header{border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.modal-header h3{color:#1e293b;align-items:center;gap:8px;margin:0;font-size:18px;font-weight:600;display:flex}.modal-header h3 svg{color:#8b5cf6}.modal-close{cursor:pointer;background:#f1f5f9;border:none;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;font-size:20px;transition:all .2s;display:flex}.modal-close:hover{background:#e2e8f0}.modal-body{padding:24px;overflow-y:auto}.modal-footer{border-top:1px solid #e2e8f0;justify-content:flex-end;gap:12px;padding:16px 24px;display:flex}.btn-cancel{color:#64748b;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:10px 20px;font-size:14px;transition:all .2s}.btn-cancel:hover{background:#f1f5f9}.btn-save{color:#fff;cursor:pointer;background:#8b5cf6;border:none;border-radius:8px;padding:10px 24px;font-size:14px;transition:all .2s}.btn-save:hover{background:#7c3aed}.btn-save:disabled{opacity:.6;cursor:not-allowed}.form-error{color:#dc2626;background:#fef2f2;border-radius:8px;align-items:center;gap:8px;margin-bottom:16px;padding:12px 16px;font-size:14px;display:flex}.form-row{grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:16px;display:grid}.form-group{flex-direction:column;gap:6px;margin-bottom:16px;display:flex}.form-row .form-group{margin-bottom:0}.form-group input,.form-group select,.form-group textarea{border:1px solid #e2e8f0;border-radius:8px;padding:10px 12px;font-size:14px;transition:all .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#8b5cf6;outline:none;box-shadow:0 0 0 3px #8b5cf61a}.form-group input:disabled{color:#64748b;background:#f1f5f9}.form-group textarea{resize:vertical;min-height:80px}.field-hint{color:#94a3b8;font-size:11px}@media (max-width:768px){.product-model-widget{padding:16px}.model-grid,.form-row{grid-template-columns:1fr}.header-actions{flex-direction:column}}.printer-client-widget{background:linear-gradient(135deg,#f0f4f8 0%,#e8f0f8 100%);min-height:100%;padding:24px}.printer-client-widget .widget-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.printer-client-widget .header-title{align-items:center;gap:12px;display:flex}.printer-client-widget .header-title h2{color:#1a365d;margin:0;font-family:Noto Serif SC,Source Han Serif SC,serif;font-size:24px;font-weight:700}.printer-client-widget .header-title svg{color:#2c5282}.printer-client-widget .total-badge{color:#fff;background:linear-gradient(135deg,#2c5282,#2a4365);border-radius:20px;padding:6px 14px;font-size:13px;font-weight:500;box-shadow:0 2px 8px #2c528240}.printer-client-widget .header-actions{gap:12px;display:flex}.printer-client-widget .add-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#38a169,#2f855a);border:none;border-radius:10px;align-items:center;gap:6px;padding:10px 18px;font-size:14px;font-weight:500;transition:all .3s;display:flex;box-shadow:0 2px 8px #38a1694d}.printer-client-widget .add-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #38a16966}.printer-client-widget .refresh-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#4299e1,#3182ce);border:none;border-radius:10px;align-items:center;gap:6px;padding:10px 18px;font-size:14px;font-weight:500;transition:all .3s;display:flex;box-shadow:0 2px 8px #4299e14d}.printer-client-widget .refresh-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #4299e166}.printer-client-widget .refresh-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.printer-client-widget .refresh-btn .spinning{animation:1s linear infinite spin}.printer-client-widget .error-message{color:#c53030;background:linear-gradient(135deg,#fed7d7,#feb2b2);border-left:4px solid #e53e3e;border-radius:10px;align-items:center;gap:8px;margin-bottom:20px;padding:14px 18px;font-size:14px;display:flex}.printer-statistics-cards{grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:24px;display:grid}.printer-stat-card{background:#fff;border-radius:16px;align-items:center;gap:18px;padding:24px;transition:all .3s;display:flex;box-shadow:0 4px 20px #0000000f}.printer-stat-card:hover{transform:translateY(-4px);box-shadow:0 8px 30px #0000001a}.printer-stat-icon{color:#fff;border-radius:14px;justify-content:center;align-items:center;width:56px;height:56px;display:flex}.printer-stat-icon.total{background:linear-gradient(135deg,#667eea,#5a67d8);box-shadow:0 4px 12px #667eea66}.printer-stat-icon.online{background:linear-gradient(135deg,#48bb78,#38a169);box-shadow:0 4px 12px #48bb7866}.printer-stat-icon.offline{background:linear-gradient(135deg,#a0aec0,#718096);box-shadow:0 4px 12px #a0aec066}.printer-stat-content{flex:1}.printer-stat-value{color:#1a365d;font-family:JetBrains Mono,Fira Code,monospace;font-size:32px;font-weight:700;line-height:1}.printer-stat-label{color:#718096;margin-top:6px;font-size:14px}.printer-client-widget .filter-bar{flex-wrap:wrap;gap:12px;margin-bottom:20px;display:flex}.printer-client-widget .search-input-wrapper{background:#fff;border:2px solid #e2e8f0;border-radius:12px;flex:1;align-items:center;gap:10px;min-width:280px;padding:10px 16px;transition:all .2s;display:flex}.printer-client-widget .search-input-wrapper:focus-within{border-color:#4299e1;box-shadow:0 0 0 3px #4299e126}.printer-client-widget .search-input-wrapper svg{color:#a0aec0}.printer-client-widget .search-input-wrapper input{color:#2d3748;border:none;outline:none;flex:1;font-size:14px}.printer-client-widget .search-input-wrapper input::placeholder{color:#a0aec0}.printer-client-widget .filter-bar select{cursor:pointer;color:#2d3748;background:#fff;border:2px solid #e2e8f0;border-radius:12px;padding:10px 16px;font-size:14px;transition:all .2s}.printer-client-widget .filter-bar select:focus{border-color:#4299e1;outline:none;box-shadow:0 0 0 3px #4299e126}.printer-table-wrapper{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 4px 20px #0000000f}.printer-table{border-collapse:collapse;width:100%}.printer-table th{text-align:left;color:#4a5568;text-transform:uppercase;letter-spacing:.5px;background:linear-gradient(135deg,#f7fafc,#edf2f7);border-bottom:2px solid #e2e8f0;padding:16px 18px;font-size:13px;font-weight:600}.printer-table td{color:#2d3748;border-bottom:1px solid #edf2f7;padding:16px 18px;font-size:14px}.printer-table tbody tr{transition:all .2s}.printer-table tbody tr:hover{background:linear-gradient(135deg,#f7fafc,#edf2f7)}.printer-table tbody tr:last-child td{border-bottom:none}.printer-client-widget .mono{font-family:JetBrains Mono,Fira Code,SF Mono,monospace;font-size:13px}.printer-client-widget .client-id-cell{color:#2c5282;font-weight:600}.printer-client-widget .name-cell{font-weight:500}.printer-client-widget .ip-cell{color:#718096}.printer-client-widget .time-cell{color:#718096;font-size:13px}.printer-client-widget .desc-cell{color:#718096;text-overflow:ellipsis;white-space:nowrap;max-width:200px;overflow:hidden}.printer-client-widget .online-indicator{border-radius:20px;align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:500;display:inline-flex}.printer-client-widget .online-indicator.online{color:#276749;background:linear-gradient(135deg,#c6f6d5,#9ae6b4)}.printer-client-widget .online-indicator.offline{color:#4a5568;background:linear-gradient(135deg,#e2e8f0,#cbd5e0)}.printer-client-widget .action-buttons{gap:8px;display:flex}.printer-client-widget .action-btn{cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;transition:all .2s;display:flex}.printer-client-widget .action-btn.view{color:#0369a1;background:linear-gradient(135deg,#e0f2fe,#bae6fd)}.printer-client-widget .action-btn.view:hover{transform:translateY(-2px);box-shadow:0 4px 8px #0369a133}.printer-client-widget .action-btn.edit{color:#7c3aed;background:linear-gradient(135deg,#e9d5ff,#d8b4fe)}.printer-client-widget .action-btn.edit:hover{transform:translateY(-2px);box-shadow:0 4px 8px #7c3aed33}.printer-client-widget .action-btn.key{color:#92400e;background:linear-gradient(135deg,#fef3c7,#fde68a)}.printer-client-widget .action-btn.key:hover{transform:translateY(-2px);box-shadow:0 4px 8px #92400e33}.printer-client-widget .action-btn.delete{color:#c53030;background:linear-gradient(135deg,#fed7d7,#feb2b2)}.printer-client-widget .action-btn.delete:hover{transform:translateY(-2px);box-shadow:0 4px 8px #c5303033}.printer-client-widget .empty-state{color:#a0aec0;flex-direction:column;justify-content:center;align-items:center;padding:80px 20px;display:flex}.printer-client-widget .empty-state svg{opacity:.4;margin-bottom:20px}.printer-client-widget .empty-state p{color:#718096;margin:0 0 24px;font-size:16px}.printer-client-widget .skeleton{background:linear-gradient(90deg,#edf2f7 25%,#e2e8f0 50%,#edf2f7 75%) 0 0/200% 100%;border-radius:6px;animation:1.5s infinite shimmer}.printer-list-skeleton{padding:20px}.printer-row-skeleton{border-bottom:1px solid #edf2f7;gap:24px;padding:16px 0;display:flex}.printer-client-widget .modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#0009;justify-content:center;align-items:center;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.printer-client-widget .modal-content{background:#fff;border-radius:20px;flex-direction:column;width:90%;max-width:520px;max-height:85vh;animation:.3s slideUp;display:flex;overflow:hidden;box-shadow:0 20px 60px #0000004d}.printer-client-widget .modal-header{background:linear-gradient(135deg,#f7fafc,#edf2f7);border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.printer-client-widget .modal-header h3{color:#1a365d;align-items:center;gap:10px;margin:0;font-size:18px;font-weight:600;display:flex}.printer-client-widget .modal-header h3 svg{color:#2c5282}.printer-client-widget .modal-close{cursor:pointer;color:#718096;background:#fff;border:none;border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;transition:all .2s;display:flex}.printer-client-widget .modal-close:hover{color:#2d3748;background:#e2e8f0}.printer-client-widget .modal-body{padding:24px;overflow-y:auto}.printer-client-widget .modal-footer{background:#f7fafc;border-top:1px solid #e2e8f0;justify-content:flex-end;gap:12px;padding:16px 24px;display:flex}.printer-client-widget .form-group{margin-bottom:20px}.printer-client-widget .form-group label{color:#2d3748;margin-bottom:8px;font-size:14px;font-weight:600;display:block}.printer-client-widget .form-group label .required{color:#e53e3e}.printer-client-widget .form-group input,.printer-client-widget .form-group textarea{color:#2d3748;box-sizing:border-box;border:2px solid #e2e8f0;border-radius:10px;width:100%;padding:12px 14px;font-size:14px;transition:all .2s}.printer-client-widget .form-group input:focus,.printer-client-widget .form-group textarea:focus{border-color:#4299e1;outline:none;box-shadow:0 0 0 3px #4299e126}.printer-client-widget .form-group input:disabled{color:#a0aec0;cursor:not-allowed;background:#f7fafc}.printer-client-widget .form-group textarea{resize:vertical;min-height:80px}.printer-client-widget .form-hint{color:#a0aec0;margin-top:6px;font-size:12px;display:block}.printer-client-widget .form-hint.warning{color:#d69e2e}.printer-client-widget .form-error{color:#c53030;background:linear-gradient(135deg,#fed7d7,#feb2b2);border-radius:10px;align-items:center;gap:8px;margin-bottom:20px;padding:12px 14px;font-size:14px;display:flex}.printer-client-widget .secret-key-input{gap:8px;display:flex}.printer-client-widget .secret-key-input input{flex:1}.printer-client-widget .key-action-btn{cursor:pointer;color:#718096;background:#fff;border:2px solid #e2e8f0;border-radius:10px;justify-content:center;align-items:center;width:42px;height:42px;transition:all .2s;display:flex}.printer-client-widget .key-action-btn:hover:not(:disabled){color:#4299e1;border-color:#4299e1}.printer-client-widget .key-action-btn:disabled{opacity:.5;cursor:not-allowed}.printer-client-widget .key-generate-btn{color:#fff;cursor:pointer;white-space:nowrap;background:linear-gradient(135deg,#667eea,#5a67d8);border:none;border-radius:10px;align-items:center;gap:6px;height:42px;padding:0 16px;font-size:13px;font-weight:500;transition:all .2s;display:flex}.printer-client-widget .key-generate-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.printer-client-widget .btn{cursor:pointer;border:none;border-radius:10px;align-items:center;gap:8px;padding:10px 20px;font-size:14px;font-weight:500;transition:all .2s;display:inline-flex}.printer-client-widget .btn-primary{color:#fff;background:linear-gradient(135deg,#4299e1,#3182ce);box-shadow:0 2px 8px #4299e14d}.printer-client-widget .btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #4299e166}.printer-client-widget .btn-secondary{color:#4a5568;background:#edf2f7}.printer-client-widget .btn-secondary:hover{background:#e2e8f0}.printer-client-widget .btn-danger{color:#fff;background:linear-gradient(135deg,#e53e3e,#c53030);box-shadow:0 2px 8px #e53e3e4d}.printer-client-widget .btn-danger:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #e53e3e66}.printer-client-widget .btn:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.printer-detail-modal .detail-section{margin-bottom:24px}.printer-detail-modal .detail-section:last-child{margin-bottom:0}.printer-detail-modal .detail-section h4{color:#718096;text-transform:uppercase;letter-spacing:.5px;margin:0 0 14px;font-size:13px;font-weight:600}.printer-detail-modal .detail-grid{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.printer-detail-modal .detail-item{flex-direction:column;gap:4px;display:flex}.printer-detail-modal .detail-item .label{color:#a0aec0;font-size:12px}.printer-detail-modal .detail-item .value{color:#1a365d;font-size:14px;font-weight:500}.printer-detail-modal .detail-item .value.mono{font-family:JetBrains Mono,Fira Code,monospace}.printer-detail-modal .online-badge{border-radius:6px;align-items:center;gap:6px;width:fit-content;padding:4px 10px;font-size:13px;display:inline-flex}.printer-detail-modal .online-badge.online{color:#276749;background:#c6f6d5}.printer-detail-modal .online-badge.offline{color:#4a5568;background:#e2e8f0}.reset-key-modal .reset-key-warning{text-align:center;padding:20px 0}.reset-key-modal .warning-icon{color:#d69e2e;margin-bottom:16px}.reset-key-modal .reset-key-warning p{color:#2d3748;margin:0 0 12px;font-size:16px}.reset-key-modal .warning-text{color:#c53030;background:#fed7d7;border-radius:8px;margin-top:16px;padding:12px 16px;font-size:14px}.reset-key-modal .new-key-display{text-align:center}.reset-key-modal .success-text{color:#276749;margin-bottom:20px;font-size:18px;font-weight:600}.reset-key-modal .new-key-display label{color:#718096;margin-bottom:8px;font-size:14px;display:block}.reset-key-modal .new-key-value{background:#edf2f7;border-radius:10px;align-items:center;gap:12px;margin-bottom:16px;padding:14px 16px;display:flex}.reset-key-modal .new-key-value code{color:#2c5282;word-break:break-all;flex:1;font-family:JetBrains Mono,Fira Code,monospace;font-size:14px}.reset-key-modal .copy-btn{color:#fff;cursor:pointer;background:#4299e1;border:none;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;transition:all .2s;display:flex}.reset-key-modal .copy-btn:hover{background:#3182ce}@media (max-width:1024px){.printer-statistics-cards{grid-template-columns:repeat(3,1fr)}}@media (max-width:768px){.printer-client-widget{padding:16px}.printer-client-widget .widget-header{flex-direction:column;align-items:flex-start;gap:16px}.printer-client-widget .header-actions{width:100%}.printer-client-widget .add-btn,.printer-client-widget .refresh-btn{flex:1;justify-content:center}.printer-statistics-cards{grid-template-columns:1fr}.printer-client-widget .filter-bar{flex-direction:column}.printer-client-widget .search-input-wrapper{width:100%;min-width:auto}.printer-table-wrapper{overflow-x:auto}.printer-table{min-width:700px}.printer-client-widget .modal-content{width:95%;max-height:90vh}.printer-detail-modal .detail-grid{grid-template-columns:1fr}}.layout{background:var(--color-bg-secondary);width:100%;height:100vh;display:flex;overflow:hidden}.main-content-area{transition:margin-left var(--transition-base);background-color:var(--color-bg-secondary);flex:1;height:100%;min-height:0;margin-left:260px;position:relative;overflow:hidden}.layout.collapsed .main-content-area{margin-left:72px}.empty-content{height:100%;color:var(--color-text-secondary);padding:var(--spacing-xl);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.empty-content h2{margin-bottom:var(--spacing-md);color:var(--color-text-primary);letter-spacing:-.02em;font-size:28px;font-weight:700}.empty-content p{color:var(--color-text-tertiary);font-size:16px;font-weight:400}@media (max-width:768px){.main-content-area{margin-left:72px}.layout.collapsed .main-content-area{margin-left:0}}.login-page{background:linear-gradient(135deg,#1a1a2e 0%,#16213e 50%,#0f3460 100%);justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.login-container{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:16px;width:100%;max-width:400px;padding:40px;box-shadow:0 25px 50px #0000004d}.login-header{text-align:center;margin-bottom:32px}.login-header h1{color:#fff;letter-spacing:1px;margin:0 0 8px;font-size:24px;font-weight:600}.login-header p{color:#ffffff80;margin:0;font-size:14px}.login-form{flex-direction:column;gap:20px;display:flex}.login-error{color:#f87171;cursor:pointer;background:#ef444433;border:1px solid #ef44444d;border-radius:8px;justify-content:space-between;align-items:center;padding:12px 16px;font-size:14px;display:flex}.form-group{flex-direction:column;gap:8px;display:flex}.form-group label{color:#ffffffb3;font-size:14px;font-weight:500}.form-group input{color:#fff;background:#ffffff14;border:1px solid #ffffff26;border-radius:8px;padding:12px 16px;font-size:15px;transition:all .3s}.form-group input::placeholder{color:#ffffff4d}.form-group input:focus{background:#ffffff1f;border-color:#3b82f6;outline:none;box-shadow:0 0 0 3px #3b82f633}.form-group input:disabled{opacity:.5;cursor:not-allowed}.login-button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#3b82f6 0%,#2563eb 100%);border:none;border-radius:8px;margin-top:8px;padding:14px;font-size:16px;font-weight:500;transition:all .3s}.login-button:hover:not(:disabled){background:linear-gradient(135deg,#2563eb 0%,#1d4ed8 100%);transform:translateY(-1px);box-shadow:0 4px 15px #3b82f666}.login-button:active:not(:disabled){transform:translateY(0)}.login-button:disabled{opacity:.5;cursor:not-allowed}.login-footer{text-align:center;border-top:1px solid #ffffff1a;margin-top:32px;padding-top:24px}.login-footer .switch-text{color:#ffffff80;margin:0 0 16px;font-size:14px}.login-footer .switch-link{color:#3b82f6;cursor:pointer;background:0 0;border:none;margin-left:4px;padding:0;font-size:14px;font-weight:500;transition:color .3s}.login-footer .switch-link:hover:not(:disabled){color:#60a5fa;text-decoration:underline}.login-footer .switch-link:disabled{opacity:.5;cursor:not-allowed}.login-footer .copyright{color:#ffffff4d;margin:0;font-size:12px}.register-page{background:linear-gradient(135deg,#1a1a2e 0%,#16213e 50%,#0f3460 100%);justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.register-container{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:16px;width:100%;max-width:400px;padding:40px;box-shadow:0 25px 50px #0000004d}.register-header{text-align:center;margin-bottom:32px}.register-header h1{color:#fff;letter-spacing:1px;margin:0 0 8px;font-size:24px;font-weight:600}.register-header p{color:#ffffff80;margin:0;font-size:14px}.register-form{flex-direction:column;gap:20px;display:flex}.register-error{color:#f87171;cursor:pointer;background:#ef444433;border:1px solid #ef44444d;border-radius:8px;justify-content:space-between;align-items:center;padding:12px 16px;font-size:14px;display:flex}.error-close{opacity:.7;font-size:18px}.error-close:hover{opacity:1}.register-form .form-group{flex-direction:column;gap:8px;display:flex}.register-form .form-group label{color:#ffffffb3;font-size:14px;font-weight:500}.register-form .form-group input{color:#fff;background:#ffffff14;border:1px solid #ffffff26;border-radius:8px;padding:12px 16px;font-size:15px;transition:all .3s}.register-form .form-group input::placeholder{color:#ffffff4d}.register-form .form-group input:focus{background:#ffffff1f;border-color:#10b981;outline:none;box-shadow:0 0 0 3px #10b98133}.register-form .form-group input:disabled{opacity:.5;cursor:not-allowed}.register-button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#10b981 0%,#059669 100%);border:none;border-radius:8px;margin-top:8px;padding:14px;font-size:16px;font-weight:500;transition:all .3s}.register-button:hover:not(:disabled){background:linear-gradient(135deg,#059669 0%,#047857 100%);transform:translateY(-1px);box-shadow:0 4px 15px #10b98166}.register-button:active:not(:disabled){transform:translateY(0)}.register-button:disabled{opacity:.5;cursor:not-allowed}.register-footer{text-align:center;border-top:1px solid #ffffff1a;margin-top:24px;padding-top:24px}.switch-text{color:#ffffff80;margin:0 0 16px;font-size:14px}.switch-link{color:#10b981;cursor:pointer;background:0 0;border:none;margin-left:4px;padding:0;font-size:14px;font-weight:500;transition:color .3s}.switch-link:hover:not(:disabled){color:#34d399;text-decoration:underline}.switch-link:disabled{opacity:.5;cursor:not-allowed}.copyright{color:#ffffff4d;margin:0;font-size:12px}.register-success{text-align:center;padding:40px 20px}.success-icon{color:#fff;background:linear-gradient(135deg,#10b981 0%,#059669 100%);border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;margin:0 auto 24px;font-size:40px;animation:.3s ease-out scaleIn;display:flex}.register-success h2{color:#fff;margin:0 0 12px;font-size:24px}.register-success p{color:#ffffff80;margin:0;font-size:14px}#root{width:100%;height:100vh;margin:0;padding:0;overflow:hidden}.app{background:var(--color-bg-secondary);width:100%;height:100vh;overflow:hidden}
