.auth-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background:linear-gradient(135deg,var(--bg-gradient-start) 0%,var(--bg-gradient-end) 100%);padding:1rem;transition:background var(--transition-normal)}.auth-card{background:var(--bg-secondary);padding:2rem;border-radius:16px;box-shadow:var(--shadow-lg);width:100%;max-width:500px;animation:fadeIn .3s ease-in;transition:background var(--transition-normal)}@keyframes fadeIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.auth-header{text-align:center;margin-bottom:1.5rem}.logo{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-bottom:.5rem}.logo-icon{font-size:2.5rem}.logo h1{font-size:2rem;color:var(--text-primary);margin:0}.subtitle{color:var(--text-secondary);font-size:.95rem;margin:0}.auth-tabs{display:flex;gap:.5rem;margin-bottom:1.5rem;background:var(--bg-tertiary);padding:.25rem;border-radius:10px}.tab{flex:1;padding:.75rem;background:transparent;border:none;border-radius:8px;font-size:1rem;font-weight:600;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-normal)}.tab:hover:not(:disabled){color:var(--text-primary)}.tab.active{background:var(--bg-secondary);color:var(--bg-gradient-start);box-shadow:var(--shadow-sm)}.tab:disabled{cursor:not-allowed;opacity:.5}.auth-form{display:flex;flex-direction:column;gap:1rem}.form-group label{font-size:.875rem;font-weight:500;color:var(--text-primary)}.form-group input,.form-group select{padding:.75rem;border:2px solid var(--border-color);border-radius:8px;font-size:1rem;transition:all var(--transition-normal);font-family:inherit;background:var(--bg-secondary);color:var(--text-primary)}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--bg-gradient-start);box-shadow:0 0 0 3px #667eea1a}.btn-primary{padding:.875rem;background:linear-gradient(135deg,var(--bg-gradient-start) 0%,var(--bg-gradient-end) 100%);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all var(--transition-normal);margin-top:.5rem}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.error-message{background:var(--error-bg);color:var(--error-text);padding:.75rem;border-radius:8px;font-size:.875rem;border-left:4px solid var(--error-border);animation:shake .5s}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-10px)}75%{transform:translate(10px)}}.success-message{background:var(--success-bg);color:var(--success-text);padding:.75rem;border-radius:8px;font-size:.875rem;border-left:4px solid var(--success-border);animation:slideIn .3s}.demo-credentials{margin-top:1.5rem;padding:1rem;background:var(--info-bg);border-radius:8px;border-left:4px solid var(--info-border)}.demo-title{font-weight:600;color:var(--info-text);margin-bottom:.5rem}.demo-credentials p{font-size:.875rem;color:var(--text-secondary);margin:.25rem 0}.info-text{margin-top:1rem;padding:.75rem;background:var(--info-bg);border-radius:8px;border-left:4px solid var(--info-border)}.info-text p{font-size:.875rem;color:var(--info-text);margin:0;line-height:1.5}@media (max-width: 768px){.auth-card{padding:1.5rem}.logo h1{font-size:1.75rem}.logo-icon{font-size:2rem}.auth-tabs{gap:.25rem}.tab{font-size:.875rem;padding:.625rem}}.sidebar{position:fixed;left:0;top:0;width:260px;height:100vh;background:var(--bg-primary);border-right:1px solid var(--border-color);display:flex;flex-direction:column;transition:all .3s cubic-bezier(.4,0,.2,1);z-index:1000;box-shadow:var(--shadow-xl)}[data-theme=dark] .sidebar{box-shadow:0 0 40px #00000080}.sidebar-header{padding:28px 20px;border-bottom:1px solid var(--border-light);background:var(--bg-secondary)}.sidebar-logo{text-align:center}.sidebar-logo h1{font-size:26px;font-weight:700;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-hover));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0;letter-spacing:-.5px}.logo-image{height:40px;width:auto;transition:transform var(--transition-normal);filter:drop-shadow(0 2px 8px rgba(59,130,246,.3))}.logo-image:hover{transform:scale(1.08) rotate(-2deg)}[data-theme=dark] .sidebar-header{background:var(--bg-secondary)}.sidebar-close{display:none;position:absolute;top:20px;right:20px;background:transparent;border:none;font-size:24px;color:var(--text-secondary);cursor:pointer;padding:8px;border-radius:var(--radius-md);transition:all var(--transition-fast)}.sidebar-close:hover{background:var(--bg-hover);color:var(--text-primary)}.sidebar-user{padding:20px 16px;border-bottom:1px solid var(--border-light);background:var(--bg-secondary)}.user-info-wrapper{display:flex;align-items:center;gap:12px;padding:12px;border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-normal);background:var(--bg-primary);border:1px solid transparent}.user-info-wrapper:hover{background:var(--bg-hover);border-color:var(--border-color);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.user-avatar{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-hover));color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:18px;flex-shrink:0;box-shadow:0 4px 12px #3b82f666;border:2px solid rgba(255,255,255,.2)}[data-theme=dark] .sidebar-user{background:var(--bg-secondary)}[data-theme=dark] .user-info-wrapper{background:var(--bg-tertiary)}[data-theme=dark] .user-avatar{box-shadow:0 4px 12px #60a5fa4d;border-color:#ffffff1a}.user-details{flex:1;min-width:0}.user-name{font-size:14px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-role{font-size:12px;color:var(--text-secondary);text-transform:capitalize}.dropdown-arrow{font-size:10px;color:var(--text-tertiary);transition:transform var(--transition-fast)}.dropdown-arrow.open{transform:rotate(180deg)}.profile-menu{margin-top:8px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden;animation:slideDown .2s ease;box-shadow:var(--shadow-md)}.profile-menu-item{width:100%;padding:12px 16px;background:transparent;border:none;text-align:left;font-size:14px;color:var(--text-primary);cursor:pointer;transition:background var(--transition-fast);display:flex;align-items:center;gap:10px}.profile-menu-item:hover{background:var(--bg-hover)}.profile-menu-item.logout{color:var(--color-danger)}.profile-menu-item.logout:hover{background:var(--error-bg)}.sidebar-nav{flex:1;padding:24px 14px;overflow-y:auto}.nav-section{margin-bottom:32px}.nav-section-title{font-size:11px;font-weight:700;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:1px;padding:0 14px 12px}.nav-item{width:100%;padding:13px 16px;background:transparent;border:none;border-radius:var(--radius-lg);display:flex;align-items:center;gap:14px;font-size:14px;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-normal);margin-bottom:6px;position:relative;text-align:left}.nav-item:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:0;height:70%;background:var(--color-primary);border-radius:0 4px 4px 0;transition:width var(--transition-fast)}.nav-item:hover{background:var(--bg-hover);color:var(--text-primary);transform:translate(4px)}.nav-item.active{background:linear-gradient(135deg,var(--color-primary),var(--color-primary-hover));color:#fff;font-weight:600;box-shadow:0 6px 16px #3b82f666;transform:translate(2px)}.nav-item.active:before{width:4px}.nav-icon{font-size:22px;width:26px;text-align:center;flex-shrink:0;transition:transform var(--transition-fast)}.nav-item:hover .nav-icon{transform:scale(1.1)}.nav-item.active .nav-icon{filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}.nav-label{flex:1}.sidebar-footer{padding:20px 16px 24px;border-top:1px solid var(--border-light);background:var(--bg-secondary)}.theme-toggle-btn{width:100%;padding:14px 16px;background:var(--bg-primary);border:1.5px solid var(--border-color);border-radius:var(--radius-lg);display:flex;align-items:center;gap:12px;font-size:14px;font-weight:500;color:var(--text-primary);cursor:pointer;transition:all var(--transition-normal);margin-bottom:14px;box-shadow:var(--shadow-xs)}.theme-toggle-btn:hover{background:var(--bg-hover);border-color:var(--border-dark);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.theme-toggle-btn:active{transform:translateY(0)}.theme-icon{font-size:20px;transition:transform var(--transition-normal)}.theme-toggle-btn:hover .theme-icon{transform:rotate(180deg)}.theme-label{flex:1}.system-status{display:flex;align-items:center;gap:10px;padding:12px 16px;font-size:12px;color:var(--text-secondary);background:var(--bg-primary);border-radius:var(--radius-md)}.status-dot{width:10px;height:10px;border-radius:50%;background:var(--text-tertiary);box-shadow:0 0 0 3px #94a3b833}.status-dot.active{background:var(--color-success);box-shadow:0 0 0 3px #10b98133,0 0 12px var(--color-success);animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}}[data-theme=dark] .sidebar-footer{background:var(--bg-secondary);border-top-color:var(--border-color)}[data-theme=dark] .theme-toggle-btn{background:var(--bg-tertiary);border-color:var(--border-color)}[data-theme=dark] .system-status{background:var(--bg-tertiary)}@media (max-width: 768px){.sidebar{transform:translate(-100%)}.sidebar.open{transform:translate(0)}.sidebar-overlay{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;z-index:999;animation:fadeIn .2s ease}.sidebar-overlay.active{display:block}.sidebar-close{display:flex;align-items:center;justify-content:center}}.users-management{display:flex;flex-direction:column;gap:1.5rem}.users-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.users-header h3{margin:0;font-size:1.25rem;color:var(--text-primary)}.users-actions{display:flex;gap:1rem}.search-input{padding:.75rem 1rem;border:2px solid var(--border-color);border-radius:8px;font-size:1rem;min-width:250px;transition:all var(--transition-normal);background:var(--bg-secondary);color:var(--text-primary)}.search-input:focus{outline:none;border-color:var(--bg-gradient-start);box-shadow:0 0 0 3px #667eea1a}.users-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;gap:1rem}.spinner{width:40px;height:40px;border:4px solid var(--border-color);border-top:4px solid var(--bg-gradient-start);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.error-message,.success-message,.warning-message{padding:1rem;border-radius:8px;display:flex;justify-content:space-between;align-items:center;animation:slideIn .3s ease-out}.error-message button,.success-message button{background:none;border:none;font-size:1.25rem;cursor:pointer;color:inherit;padding:0;width:24px;height:24px}.users-table-container{overflow-x:auto;border:2px solid var(--border-light);border-radius:12px}.users-table{width:100%;border-collapse:collapse;background:var(--bg-secondary)}.users-table th{background:var(--bg-tertiary);padding:1rem;text-align:left;font-weight:600;color:var(--text-primary);border-bottom:2px solid var(--border-color);white-space:nowrap}.users-table td{padding:1rem;border-bottom:1px solid var(--border-light);color:var(--text-secondary)}.users-table tbody tr:hover{background:var(--bg-tertiary)}.user-info{display:flex;align-items:center;gap:.75rem}.user-avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--bg-gradient-start) 0%,var(--bg-gradient-end) 100%);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1rem}.role-badge{display:inline-block;padding:.5rem 1rem;border-radius:20px;font-size:.875rem;font-weight:500;white-space:nowrap}.role-admin{background:var(--role-admin-bg);color:var(--role-admin-text)}.role-manager{background:var(--role-manager-bg);color:var(--role-manager-text)}.role-worker{background:var(--role-worker-bg);color:var(--role-worker-text)}.role-badge:not(.role-admin):not(.role-manager):not(.role-worker){background:linear-gradient(135deg,var(--bg-gradient-start) 0%,var(--bg-gradient-end) 100%);color:#fff}.action-buttons{display:flex;gap:.5rem;flex-wrap:wrap}.action-buttons button{padding:.5rem 1rem;border:none;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.btn-save{background:var(--success-bg);color:var(--success-text)}.btn-save:hover{opacity:.8;transform:translateY(-1px)}.btn-cancel:hover{opacity:.8;transform:translateY(-1px)}.edit-input,.edit-select{padding:.5rem;border:2px solid var(--bg-gradient-start);border-radius:6px;font-size:.875rem;width:100%;font-family:inherit;background:var(--bg-secondary);color:var(--text-primary)}.edit-input:focus,.edit-select:focus{outline:none;box-shadow:0 0 0 3px #667eea1a}.users-footer{display:flex;justify-content:space-between;padding:1rem;background:var(--bg-tertiary);border-radius:8px;color:var(--text-secondary);flex-wrap:wrap;gap:1rem}.users-footer p{margin:0}.users-footer strong{color:var(--text-primary)}@media (max-width: 768px){.users-header{flex-direction:column;align-items:stretch}.search-input{min-width:auto;width:100%}.users-table{font-size:.875rem}.users-table th,.users-table td{padding:.75rem .5rem}.action-buttons{flex-direction:column}.action-buttons button{width:100%}.users-footer{flex-direction:column;gap:.5rem}}.roles-management{display:flex;flex-direction:column;gap:1.5rem}.roles-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.roles-header h3{margin:0;font-size:1.25rem;color:var(--text-primary)}.btn-create{padding:.75rem 1.5rem;background:linear-gradient(135deg,var(--bg-gradient-start) 0%,var(--bg-gradient-end) 100%);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all var(--transition-normal)}.btn-create:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-create:disabled{opacity:.6;cursor:not-allowed}.roles-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;gap:1rem}.role-form{background:var(--bg-tertiary);padding:1.5rem;border-radius:12px;border:2px solid var(--border-color)}.role-form h4{margin:0 0 1rem;color:var(--text-primary)}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;margin-bottom:1rem}.form-group input,.form-group textarea{padding:.75rem;border:2px solid var(--border-color);border-radius:8px;font-size:1rem;font-family:inherit;transition:all var(--transition-normal);background:var(--bg-secondary);color:var(--text-primary)}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--bg-gradient-start);box-shadow:0 0 0 3px #667eea1a}.permissions-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.75rem;margin-top:.5rem}.permission-checkbox{display:flex;align-items:center;gap:.5rem;padding:.5rem;background:var(--bg-secondary);border-radius:6px;cursor:pointer;transition:all var(--transition-fast)}.permission-checkbox:hover{background:var(--bg-tertiary)}.permission-checkbox input[type=checkbox]{cursor:pointer}.permission-checkbox span{font-size:.875rem;color:var(--text-secondary)}.form-actions{display:flex;gap:1rem;margin-top:1rem}.btn-save,.btn-cancel{padding:.75rem 1.5rem;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.btn-save:hover{background:#45a049;transform:translateY(-1px)}.btn-cancel:hover{background:var(--border-color)}.roles-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.role-card{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:12px;padding:1.5rem;transition:all var(--transition-normal)}.role-card:hover{border-color:var(--bg-gradient-start);box-shadow:var(--shadow-md)}.role-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.role-header h4{margin:0;color:var(--text-primary)}.role-name-badge{background:var(--info-bg);color:var(--info-text);padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600}.role-description{color:var(--text-secondary);margin:0 0 1rem;line-height:1.5}.role-permissions{margin-bottom:1rem}.role-permissions strong{font-size:.875rem;color:var(--text-primary);display:block;margin-bottom:.5rem}.permissions-list{display:flex;flex-wrap:wrap;gap:.5rem}.permission-badge{background:var(--info-bg);color:var(--info-text);padding:.375rem .75rem;border-radius:12px;font-size:.75rem;font-weight:500}.role-meta{display:flex;justify-content:space-between;margin-bottom:1rem;padding-top:1rem;border-top:1px solid var(--border-light)}.role-meta small{color:var(--text-tertiary);font-size:.75rem}.role-actions{display:flex;gap:.5rem}.btn-edit,.btn-delete{flex:1;padding:.625rem;border:none;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.role-edit-form{display:flex;flex-direction:column;gap:1rem}.empty-state{text-align:center;padding:3rem;color:var(--text-secondary)}@media (max-width: 768px){.roles-header{flex-direction:column;align-items:stretch}.btn-create{width:100%}.roles-grid,.form-grid,.permissions-grid{grid-template-columns:1fr}.role-meta{flex-direction:column;gap:.25rem}}.status-management{display:flex;flex-direction:column;gap:1.5rem}.status-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.status-header h3{margin:0;font-size:1.25rem;color:var(--text-primary)}.status-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;gap:1rem}.status-form{background:var(--bg-tertiary);padding:1.5rem;border-radius:12px;border:2px solid var(--border-color)}.status-form h4{margin:0 0 1rem;color:var(--text-primary)}.color-picker{display:flex;gap:.5rem;align-items:center}.color-picker input[type=color]{width:50px;height:40px;border:2px solid var(--border-color);border-radius:6px;cursor:pointer}.color-picker input[type=text]{flex:1}.statuses-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.status-card{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:12px;padding:1.5rem;transition:all var(--transition-normal)}.status-card:hover{border-color:var(--bg-gradient-start);box-shadow:var(--shadow-md)}.status-preview{display:flex;align-items:center;gap:.75rem;padding:1rem;border-radius:8px;margin-bottom:1rem;color:#fff;font-weight:600}.status-icon{font-size:1.5rem}.status-name{font-size:1rem}.status-info{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.info-row{display:flex;justify-content:space-between;align-items:center}.info-label{font-size:.875rem;color:var(--text-secondary);font-weight:500}.info-value{font-size:.875rem;color:var(--text-primary)}.badge{padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600}.badge.active{background:var(--success-bg);color:var(--success-text)}.badge.inactive{background:var(--error-bg);color:var(--error-text)}.status-actions{display:flex;gap:.5rem}.status-edit-form{display:flex;flex-direction:column;gap:1rem}@media (max-width: 768px){.status-header{flex-direction:column;align-items:stretch}.statuses-grid{grid-template-columns:1fr}}.telegram-management{padding:24px}.management-header{margin-bottom:24px}.management-header h3{margin:0 0 8px;font-size:20px;font-weight:600}.management-header p{margin:0;font-size:14px;color:var(--text-secondary)}.bot-info-card{background:var(--color-primary-light);border:1px solid var(--color-primary);border-radius:var(--radius-lg);padding:20px;margin-bottom:24px}.bot-header{display:flex;align-items:center;gap:12px;margin-bottom:16px}.bot-icon{font-size:32px}.bot-header h4{margin:0;font-size:16px;font-weight:600}.bot-header p{margin:0;font-size:14px;color:var(--text-secondary)}.bot-instructions{font-size:13px;line-height:1.6}.bot-instructions strong{display:block;margin-bottom:8px}.bot-instructions ol{margin:8px 0;padding-left:24px}.bot-instructions li{margin:4px 0}.bot-instructions code{padding:2px 6px;background:#fff;border-radius:4px;font-family:var(--font-mono);font-size:12px}.bot-instructions a{color:var(--color-primary);font-weight:500}.section{margin-bottom:32px}.section h4{margin:0 0 16px;font-size:16px;font-weight:600}.telegram-users-list{display:flex;flex-direction:column;gap:12px}.telegram-user-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:16px;display:flex;justify-content:space-between;align-items:center;gap:16px}.telegram-user-card.pending{border-left:3px solid var(--color-warning)}.telegram-user-card.active{border-left:3px solid var(--color-success)}.user-info-left{display:flex;align-items:center;gap:12px;flex:1}.telegram-avatar{width:40px;height:40px;border-radius:50%;background:var(--bg-tertiary);display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0}.telegram-avatar.active{background:var(--success-bg)}.telegram-name{font-size:14px;font-weight:600;color:var(--text-primary)}.telegram-username{font-size:13px;color:var(--text-secondary);margin-top:2px}.telegram-id-small{font-size:11px;color:var(--text-tertiary);font-family:var(--font-mono);margin-top:2px}.user-actions{display:flex;align-items:center;gap:8px}.user-actions select{min-width:200px}.status-badge{padding:4px 12px;border-radius:var(--radius-full);font-size:12px;font-weight:600}.status-badge.active{background:var(--success-bg);color:var(--success-text)}.empty-state{text-align:center;padding:48px 24px}.empty-icon{font-size:48px;margin-bottom:16px;opacity:.5}.empty-state p{margin:0;font-size:14px;color:var(--text-secondary)}.admin-section{background:var(--color-primary-light);padding:16px;border-radius:var(--radius-lg);border:1px solid var(--color-primary)}.admin-section h4{color:var(--color-primary)}.info-box{background:#fff;padding:12px 16px;border-radius:var(--radius-md);margin-bottom:16px;font-size:13px;color:var(--text-secondary)}.telegram-user-card.admin{border-left:3px solid var(--color-primary)}.telegram-avatar.admin{background:var(--color-primary)}.telegram-role{font-size:11px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-top:2px}.status-badge.admin{background:var(--color-primary-light);color:var(--color-primary)}@media (max-width: 768px){.telegram-user-card{flex-direction:column;align-items:stretch}.user-actions{width:100%;flex-direction:column}.user-actions select{width:100%}}.task-templates-management{padding:2rem}.section-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;gap:1rem;flex-wrap:wrap}.section-header h2{margin:0 0 .5rem;color:var(--text-primary)}.section-header p{margin:0;color:var(--text-secondary);font-size:.95rem}.templates-categories{display:flex;flex-direction:column;gap:2rem}.category-section{background:var(--bg-secondary);border-radius:12px;padding:1.5rem;border:2px solid var(--border-color)}.category-title{margin:0 0 1rem;font-size:1.25rem;color:var(--text-primary);padding-bottom:.75rem;border-bottom:2px solid var(--border-light)}.templates-list{display:flex;flex-direction:column;gap:1rem}.template-card{background:var(--bg-primary);border-radius:8px;padding:1.25rem;border:2px solid var(--border-color);transition:all var(--transition-fast)}.template-card.inactive{opacity:.6;border-style:dashed}.template-card:hover{border-color:var(--bg-gradient-start);box-shadow:0 4px 12px #0000001a}.template-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem}.template-title{display:flex;align-items:center;gap:.75rem;flex:1}.template-step{font-size:1.25rem}.template-name{font-weight:600;font-size:1.05rem;color:var(--text-primary)}.template-order{background:var(--bg-gradient-start);color:#fff;padding:.25rem .75rem;border-radius:20px;font-size:.875rem;font-weight:600}.template-actions{display:flex;gap:.5rem}.template-actions button{padding:.5rem .75rem;border:none;border-radius:6px;cursor:pointer;transition:all var(--transition-fast);font-size:1rem;background:var(--bg-tertiary)}.template-actions button:hover{transform:translateY(-2px);box-shadow:0 4px 8px #00000026}.btn-toggle{font-size:1.25rem}.btn-toggle.active{background:#4caf50}.btn-edit{background:var(--bg-gradient-start);color:#fff}.template-details{display:flex;flex-wrap:wrap;gap:1rem;align-items:center}.template-info{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--bg-tertiary);border-radius:6px;font-size:.9rem}.info-label{color:var(--text-secondary);font-weight:500}.template-badge{padding:.5rem 1rem;border-radius:6px;font-size:.875rem;font-weight:500}.template-badge.parallel{background:#2196f326;color:#2196f3;border:1px solid #2196f3}.template-badge.depends{background:#ff980026;color:#ff9800;border:1px solid #ff9800}.template-badge.sizes{background:#9c27b026;color:#9c27b0;border:1px solid #9c27b0}.btn-create{padding:.75rem 1.5rem;background:linear-gradient(135deg,var(--bg-gradient-start) 0%,var(--bg-gradient-end) 100%);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.btn-create:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--text-primary)}.form-group small{display:block;margin-top:.25rem;color:var(--text-secondary);font-size:.875rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.75rem;border:2px solid var(--border-color);border-radius:8px;font-size:1rem;font-family:inherit;background:var(--bg-secondary);color:var(--text-primary);transition:all var(--transition-normal)}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.checkbox-label{display:flex;align-items:center;gap:.75rem;cursor:pointer;-webkit-user-select:none;user-select:none}.checkbox-label input[type=checkbox]{width:auto;cursor:pointer}.checkbox-label span{color:var(--text-primary)}.preview-section{margin-top:2rem;padding-top:2rem;border-top:2px solid var(--border-light)}.btn-preview{width:100%;padding:.75rem 1.5rem;background:var(--bg-tertiary);color:var(--text-primary);border:2px solid var(--border-color);border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.btn-preview:hover{background:var(--bg-secondary);border-color:var(--bg-gradient-start)}.task-preview{margin-top:1.5rem;padding:1.5rem;background:var(--bg-tertiary);border-radius:12px;border:2px solid var(--border-color)}.task-preview h4{margin:0 0 1rem;color:var(--text-secondary);font-size:.95rem;text-transform:uppercase;letter-spacing:.5px}.preview-task-card{background:var(--bg-primary);border-radius:8px;padding:1.25rem;border:2px solid var(--bg-gradient-start);box-shadow:0 4px 12px #0000001a}.preview-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.preview-step{font-size:1.5rem}.preview-level{background:var(--bg-gradient-start);color:#fff;padding:.25rem .75rem;border-radius:20px;font-size:.875rem;font-weight:600}.preview-title{font-size:1.125rem;font-weight:600;color:var(--text-primary);margin-bottom:.75rem}.preview-description{color:var(--text-secondary);font-size:.95rem;line-height:1.6;margin-bottom:1rem;white-space:pre-wrap}.preview-details{display:flex;flex-wrap:wrap;gap:.5rem}.preview-badge{padding:.4rem .75rem;background:var(--bg-tertiary);border-radius:6px;font-size:.875rem;color:var(--text-primary)}.preview-badge.parallel{background:#2196f326;color:#2196f3;border:1px solid #2196f3}.preview-badge.depends{background:#ff980026;color:#ff9800;border:1px solid #ff9800}@media (max-width: 768px){.task-templates-management{padding:1rem}.section-header{flex-direction:column;align-items:stretch}.btn-create{width:100%}.template-header{flex-direction:column;align-items:stretch}.template-actions{justify-content:flex-end}.form-row{grid-template-columns:1fr}}.process-builder-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:10003;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.process-builder-modal{background:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:0 20px 60px #0006;width:95%;max-width:1200px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.error-message{padding:16px;background:var(--color-danger-light);color:var(--color-danger);border-radius:var(--radius-md);margin:0 24px;font-size:14px}.empty-state{text-align:center;padding:60px 20px;color:var(--text-secondary)}.empty-state p{margin:0 0 16px;font-size:16px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-size:14px;font-weight:500;color:var(--text-secondary)}.form-group input[type=text],.form-group input[type=number],.form-group select,.form-group textarea{padding:10px 12px;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-primary);color:var(--text-primary);font-size:14px}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--color-primary)}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.form-hint{font-size:12px;color:var(--text-tertiary)}.btn-icon{background:transparent;border:none;font-size:16px;cursor:pointer;padding:6px;border-radius:6px;transition:all var(--transition-fast)}.btn-icon.btn-danger:hover{background:var(--color-danger-light);color:var(--color-danger)}.btn-primary{background:var(--color-primary);color:#fff;border:none;padding:10px 20px;border-radius:var(--radius-md);font-size:14px;font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.btn-primary:hover{background:var(--color-primary-hover);transform:translateY(-1px);box-shadow:0 4px 12px #3b82f64d}.btn-secondary{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color);padding:10px 20px;border-radius:var(--radius-md);font-size:14px;font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.btn-secondary:hover{background:var(--bg-hover)}@media (max-width: 768px){.process-builder-modal{width:100%;height:100vh;max-height:100vh;border-radius:0}.builder-tabs{overflow-x:auto}.tab-btn{white-space:nowrap}.form-row{grid-template-columns:1fr}.builder-footer{flex-direction:column;gap:12px}.builder-footer button{width:100%}}.processes-management{padding:24px}.processes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:20px}.process-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:20px;transition:all var(--transition-normal);display:flex;flex-direction:column;gap:12px}.process-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.process-card.inactive{opacity:.6;background:var(--bg-secondary)}.process-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.process-badges{display:flex;flex-direction:column;gap:6px;flex:1}.process-category{font-size:12px;padding:4px 8px;background:var(--color-primary-light);color:var(--color-primary);border-radius:4px;font-weight:500;align-self:flex-start}.template-badge{font-size:12px;padding:4px 8px;background:#8b5cf61a;color:#8b5cf6;border-radius:4px;font-weight:500;align-self:flex-start}.process-actions{display:flex;gap:4px}.process-name{font-size:18px;font-weight:600;color:var(--text-primary);margin:0}.process-description{font-size:14px;color:var(--text-secondary);margin:0;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.process-stats{display:flex;gap:16px;padding:12px 0;border-top:1px solid var(--border-light);border-bottom:1px solid var(--border-light)}.stat-item{display:flex;flex-direction:column;gap:4px}.stat-label{font-size:12px;color:var(--text-tertiary)}.stat-value{font-size:16px;font-weight:600;color:var(--text-primary)}.process-tags{display:flex;flex-wrap:wrap;gap:6px}.process-builder-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:10002;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.process-builder-modal{background:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:0 20px 60px #0006;width:95%;max-width:1200px;height:90vh;display:flex;flex-direction:column;overflow:hidden}.builder-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid var(--border-color);background:var(--bg-secondary)}.builder-header h2{margin:0;font-size:20px;font-weight:600;color:var(--text-primary)}.builder-tabs{display:flex;gap:4px;padding:12px 24px 0;border-bottom:2px solid var(--border-light);background:var(--bg-secondary)}.tab-btn{padding:12px 20px;background:transparent;border:none;border-bottom:3px solid transparent;font-size:14px;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast)}.tab-btn:hover{color:var(--text-primary);background:#00000005}.tab-btn.active{color:var(--color-primary);border-bottom-color:var(--color-primary);font-weight:600}.builder-content{flex:1;overflow-y:auto;padding:24px}.tab-content{display:flex;flex-direction:column;gap:16px}.tab-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:8px}.tab-description{flex:1;margin:0;font-size:14px;color:var(--text-secondary);line-height:1.5}.tab-description code{font-family:Courier New,monospace;background:var(--bg-secondary);padding:2px 6px;border-radius:4px;font-size:13px;color:var(--color-primary)}.parameters-list{display:flex;flex-direction:column;gap:12px}.parameter-card{padding:16px;border:2px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-secondary)}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.card-number{font-size:12px;font-weight:600;padding:4px 8px;background:var(--color-primary);color:#fff;border-radius:4px}.btn-remove-card{background:transparent;border:none;font-size:18px;color:var(--color-danger);cursor:pointer;width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.btn-remove-card:hover{background:var(--color-danger-light)}.steps-list{display:flex;flex-direction:column;gap:16px}.step-card{padding:20px;border:2px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-secondary);transition:all var(--transition-fast)}.step-card:hover{border-color:var(--color-primary-light)}.step-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.step-number{font-size:14px;font-weight:700;padding:6px 12px;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-hover));color:#fff;border-radius:6px}.step-controls{display:flex;gap:4px}.btn-move{background:var(--bg-primary);border:1px solid var(--border-color);width:32px;height:32px;border-radius:6px;font-size:16px;cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center}.btn-move:hover:not(:disabled){background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.btn-move:disabled{opacity:.3;cursor:not-allowed}.dependencies-list{display:flex;flex-direction:column;gap:8px;padding:12px;background:var(--bg-primary);border-radius:var(--radius-md);max-height:200px;overflow-y:auto}.dependency-checkbox{display:flex;align-items:center;gap:8px;padding:8px;border-radius:6px;cursor:pointer;transition:all var(--transition-fast)}.dependency-checkbox:hover{background:var(--bg-hover)}.dependency-checkbox span{font-size:14px;color:var(--text-primary)}.tags-input{display:flex;gap:8px;margin-bottom:12px}.tags-input input{flex:1}.tags-list{display:flex;flex-wrap:wrap;gap:8px;min-height:40px;padding:8px;background:var(--bg-secondary);border-radius:var(--radius-md)}.tag{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;background:var(--color-primary);color:#fff;border-radius:6px;font-size:13px}.tag button{background:#fff3;border:none;color:#fff;width:18px;height:18px;border-radius:50%;cursor:pointer;font-size:14px;line-height:1;padding:0;display:flex;align-items:center;justify-content:center;transition:background var(--transition-fast)}.tag button:hover{background:#ffffff4d}.builder-footer{display:flex;justify-content:space-between;padding:20px 24px;border-top:1px solid var(--border-color);background:var(--bg-secondary)}@media (max-width: 1024px){.processes-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.process-builder-modal{width:100%;height:100vh;border-radius:0}}@media (max-width: 768px){.processes-grid{grid-template-columns:1fr}.tab-header{flex-direction:column}.builder-tabs{overflow-x:auto}.tab-btn{white-space:nowrap}}.settings-page{max-width:1400px;margin:0 auto}.settings-content-wrapper{background:var(--bg-secondary);border-radius:16px;box-shadow:var(--shadow-md);overflow:hidden;transition:background var(--transition-normal),box-shadow var(--transition-normal)}.settings-header{padding:1.5rem 2rem;border-bottom:2px solid var(--border-light)}.settings-header h2{margin:0;font-size:1.5rem;color:var(--text-primary)}.settings-tabs{display:flex;gap:.5rem;padding:1rem 2rem 0;border-bottom:2px solid var(--border-light);background:var(--bg-tertiary)}.settings-tab{padding:.75rem 1.5rem;background:none;border:none;border-bottom:3px solid transparent;font-size:1rem;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.settings-tab:hover{color:var(--text-primary);background:#ffffff0d}.settings-tab.active{color:var(--bg-gradient-start);border-bottom-color:var(--bg-gradient-start);background:var(--bg-secondary)}.settings-content{padding:2rem;max-height:calc(100vh - 250px);overflow-y:auto}.access-denied{text-align:center;padding:4rem 2rem}.denied-icon{font-size:4rem;margin-bottom:1rem}.access-denied h2{color:var(--text-primary);margin:0 0 1rem}.access-denied p{color:var(--text-secondary);margin:0 0 2rem;font-size:1.125rem}.btn-primary{padding:.75rem 1.5rem;background:linear-gradient(135deg,var(--bg-gradient-start) 0%,var(--bg-gradient-end) 100%);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all var(--transition-normal)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.settings-content::-webkit-scrollbar{width:8px}.settings-content::-webkit-scrollbar-track{background:var(--bg-tertiary)}.settings-content::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}.settings-content::-webkit-scrollbar-thumb:hover{background:var(--border-light)}.system-management{max-width:900px}.system-management h3{font-size:1.5rem;margin-bottom:.5rem}.system-actions{display:flex;flex-direction:column;gap:20px;margin-top:24px}.system-action-card{display:flex;align-items:center;gap:20px;padding:24px;border-radius:12px;border:2px solid;transition:all .2s}.system-action-card.danger{border-color:#f44336;background:linear-gradient(135deg,#f443360d,#f4433605)}.system-action-card.info{border-color:#2196f3;background:linear-gradient(135deg,#2196f30d,#2196f305)}.action-icon{font-size:48px;flex-shrink:0}.action-info{flex:1}.action-info h4{margin:0 0 8px;font-size:18px}.action-info p{margin:4px 0;color:var(--text-secondary);font-size:14px}.btn-danger-action{padding:12px 24px;background:#f44336;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-danger-action:hover{background:#d32f2f;transform:scale(1.05)}.btn-danger-action:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-success-action{padding:12px 24px;background:#4caf50;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-success-action:hover{background:#45a049;transform:scale(1.05)}.btn-success-action:disabled{opacity:.6;cursor:not-allowed;transform:none}.system-action-card.success{border-left:4px solid #4caf50}.system-action-card.success .action-icon{background:#4caf501a;color:#4caf50}@media (max-width: 768px){.settings-header{padding:1rem 1.5rem}.settings-header h2{font-size:1.25rem}.settings-tabs{padding:.75rem 1rem 0;overflow-x:auto}.settings-tab{padding:.5rem 1rem;font-size:.875rem}.settings-content{padding:1rem;max-height:calc(100vh - 200px)}.system-action-card{flex-direction:column;text-align:center}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;backdrop-filter:var(--blur-sm);-webkit-backdrop-filter:var(--blur-sm);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .3s ease-out}@media (max-width: 768px){.modal-overlay{align-items:flex-end}}.orders-page .modal-content,.create-order-modal{max-width:1200px!important;width:95%!important}.modal-content{background:var(--glass-bg-strong);backdrop-filter:var(--blur-lg);-webkit-backdrop-filter:var(--blur-lg);border:1px solid var(--glass-border);border-radius:var(--radius-ios-lg);box-shadow:var(--shadow-ios-xl);max-width:1200px;width:95%;max-height:90vh;display:flex;flex-direction:column;animation:slideUp .3s cubic-bezier(.4,0,.2,1);transition:all .3s cubic-bezier(.4,0,.2,1)}[data-theme=dark] .modal-content{background:var(--bg-primary);border-color:var(--border-color)}@media (max-width: 768px){.modal-content{max-width:100%;width:100%;max-height:95vh;border-radius:var(--radius-ios-lg) var(--radius-ios-lg) 0 0;border-bottom:none}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-header{padding:1.5rem 2rem;border-bottom:2px solid var(--border-light);display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.modal-header h2{margin:0;font-size:1.5rem;color:var(--text-primary)}.order-number{color:var(--text-secondary);font-size:.95rem;margin:.25rem 0 0}.modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-secondary);width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);flex-shrink:0}.modal-close:hover{background:var(--bg-tertiary);color:var(--text-primary)}.btn-success-small{padding:.5rem 1rem;background:linear-gradient(135deg,#4caf50,#388e3c);color:#fff;border:none;border-radius:6px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap;box-shadow:0 2px 8px #4caf504d}.btn-success-small:hover{transform:translateY(-2px);box-shadow:0 4px 12px #4caf5066}.btn-success-small:active{transform:translateY(0)}.btn-success-small:disabled{opacity:.5;cursor:not-allowed;transform:none}.modal-body{flex:1;padding:2rem;overflow-y:auto}.modal-body::-webkit-scrollbar{width:8px}.modal-body::-webkit-scrollbar-track{background:var(--bg-tertiary)}.modal-body::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}.modal-footer{padding:1.5rem 2rem;border-top:2px solid var(--border-light);display:flex;justify-content:space-between;align-items:center;gap:1rem}.order-section{margin-bottom:2rem}.order-section:last-child{margin-bottom:0}.order-section h3{margin:0 0 1rem;font-size:1.125rem;color:var(--text-primary)}.section-description{color:var(--text-secondary);font-size:.875rem;margin:0 0 1rem;line-height:1.6}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;flex-wrap:wrap;gap:1rem}.article-section{background:linear-gradient(135deg,#667eea0d,#764ba20d);padding:1.5rem;border-radius:12px;border:2px solid var(--bg-gradient-start)}.article-input-group{display:flex;gap:1rem}.article-input-group input{flex:1}.product-selection-options{display:flex;align-items:center;gap:12px;margin-bottom:16px;padding:12px;background:var(--bg-secondary);border-radius:8px}.btn-select-product{padding:.75rem 1.5rem;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.btn-select-product:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #10b98166}.btn-select-product:disabled{opacity:.6;cursor:not-allowed}.option-divider{font-size:.875rem;color:var(--text-tertiary);font-style:italic}.option-label{font-size:.875rem;color:var(--text-secondary)}.selected-product-info{display:flex;align-items:center;gap:8px;padding:12px;background:#10b9811a;border:2px solid rgba(16,185,129,.3);border-radius:8px;margin-bottom:12px}.selected-product-info .info-label{font-size:.875rem;font-weight:600;color:var(--color-success)}.selected-product-info .info-value{font-size:1rem;font-weight:600;color:var(--text-primary)}.selected-product-info .info-article{font-size:.875rem;color:var(--text-secondary);font-family:Courier New,monospace}.btn-parse-article{padding:.75rem 1.5rem;background:linear-gradient(135deg,var(--bg-gradient-start) 0%,var(--bg-gradient-end) 100%);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.btn-parse-article:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.btn-parse-article:disabled{opacity:.6;cursor:not-allowed}.btn-fill-data{padding:.75rem 2rem;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;margin-top:.75rem;width:100%}.btn-fill-data:hover{transform:translateY(-1px);box-shadow:0 4px 12px #10b98166}.btn-reset-parsing{padding:.5rem 1rem;background:var(--warning-bg);color:var(--warning-text);border:2px solid var(--warning-border);border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.btn-reset-parsing:hover{background:var(--warning-border);color:#fff;transform:translateY(-1px)}.article-result{margin-top:1.5rem;padding:1.25rem;border-radius:8px}.article-result.valid{background:var(--success-bg);border:2px solid var(--success-border)}.article-result.invalid{background:var(--error-bg);border:2px solid var(--error-border)}.article-result h4{margin:0 0 1rem;font-size:1rem}.article-result.valid h4{color:var(--success-text)}.article-result.invalid h4{color:var(--error-text)}.parsed-info,.parsed-errors{margin:0}.parsed-info p,.parsed-errors p{margin:.5rem 0;font-size:.875rem}.parsed-info p{color:var(--success-text)}.parsed-errors p{color:var(--error-text)}.calculated-details{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--success-border)}.calculated-details h5{margin:0 0 .75rem;font-size:.95rem;color:var(--success-text)}.calculated-details ul{margin:0;padding-left:1.5rem}.calculated-details li{margin:.5rem 0;font-size:.875rem;color:var(--success-text);line-height:1.6}.auto-fill-notice{margin-top:1rem;padding:1rem;background:#ffffff80;border-radius:8px;border:1px solid var(--success-border)}.auto-fill-notice p{margin:.25rem 0;font-size:.875rem;color:var(--success-text)}.auto-fill-notice p strong{font-weight:700}.info-notice{background:var(--info-bg);color:var(--info-text);padding:.75rem 1rem;border-radius:8px;border-left:4px solid var(--info-border);margin-bottom:1rem;font-size:.875rem}.order-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.edit-input,.edit-select{padding:.75rem;border:2px solid var(--border-color);border-radius:8px;font-size:1rem;font-family:inherit;transition:all var(--transition-normal);background:var(--bg-secondary);color:var(--text-primary);width:100%}.edit-input:focus,.edit-select:focus{outline:none;border-color:var(--bg-gradient-start);box-shadow:0 0 0 3px #667eea1a}.edit-input.readonly{background:var(--bg-tertiary);cursor:not-allowed;opacity:.8}.btn-add-item{padding:.625rem 1.25rem;background:#4caf50;color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.btn-add-item:hover{background:#45a049;transform:translateY(-1px);box-shadow:0 4px 8px #4caf504d}.order-items{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.order-item{background:var(--bg-tertiary);border-radius:8px;padding:.75rem}.item-edit-row,.item-view-row{display:grid;grid-template-columns:2fr .8fr 1fr 1fr auto;gap:.75rem;align-items:center}.item-input{padding:.625rem;border:2px solid var(--border-color);border-radius:6px;font-size:.95rem;font-family:inherit;background:var(--bg-secondary);color:var(--text-primary)}.item-input:focus{outline:none;border-color:var(--bg-gradient-start)}.item-input.readonly{background:var(--bg-tertiary);cursor:not-allowed;border-color:var(--border-light)}.item-quantity,.item-price,.item-total{text-align:right;font-weight:600}.btn-remove-item{width:36px;height:36px;background:var(--error-bg);color:var(--error-text);border:none;border-radius:6px;cursor:pointer;font-size:1rem;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center}.btn-remove-item:hover:not(:disabled){opacity:.8;transform:scale(1.05)}.btn-remove-item:disabled{opacity:.3;cursor:not-allowed}.order-total{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:linear-gradient(135deg,var(--bg-gradient-start) 0%,var(--bg-gradient-end) 100%);color:#fff;border-radius:8px;font-size:1.25rem;font-weight:700}.total-amount{font-size:1.5rem}.btn-cancel,.btn-save,.btn-edit,.btn-delete,.btn-permanently-delete{padding:.75rem 1.5rem;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.btn-save{background:#4caf50;color:#fff}.btn-save:hover:not(:disabled){background:#45a049;transform:translateY(-1px);box-shadow:0 4px 12px #4caf5066}.btn-save:disabled{opacity:.6;cursor:not-allowed}.btn-edit{background:linear-gradient(135deg,var(--bg-gradient-start) 0%,var(--bg-gradient-end) 100%);color:#fff}.btn-edit:hover{transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.btn-permanently-delete{background:linear-gradient(135deg,#d32f2f,#b71c1c);color:#fff}.btn-permanently-delete:hover:not(:disabled){background:linear-gradient(135deg,#b71c1c,#8b0000);transform:translateY(-1px);box-shadow:0 4px 12px #d32f2f66}.auto-generated-details{margin-top:1.5rem;padding-top:1.5rem;border-top:2px solid var(--success-border)}.auto-generated-details h5{margin:0 0 1rem;font-size:1rem;font-weight:700;color:var(--success-text)}.details-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.detail-card{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:12px;padding:1rem;transition:all var(--transition-normal);display:flex;flex-direction:column;gap:.75rem}.detail-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.detail-card.sufficient{border-color:var(--success-border);background:linear-gradient(135deg,#4caf500d,#4caf5005)}.detail-card.insufficient{border-color:var(--warning-border);background:linear-gradient(135deg,#ff98000d,#ff980005)}.detail-card.out-of-stock{border-color:var(--error-border);background:linear-gradient(135deg,#f443360d,#f4433605)}.detail-card.no-data{border-color:var(--border-light);background:var(--bg-tertiary)}.detail-header{display:flex;align-items:center;gap:.75rem}.detail-icon{font-size:1.5rem;line-height:1}.detail-name{font-size:1rem;font-weight:700;color:var(--text-primary)}.detail-info{display:flex;flex-direction:column;gap:.5rem}.detail-description{margin:0;font-size:.875rem;color:var(--text-secondary);font-weight:500}.detail-color{margin:0;font-size:.875rem;color:var(--text-primary)}.detail-color strong{font-weight:600;color:var(--text-secondary)}.detail-quantity{margin:0;font-size:.875rem;color:var(--text-primary)}.detail-quantity strong{font-weight:600;color:var(--text-secondary)}.stock-info{display:flex;align-items:center;gap:.5rem;padding:.625rem .875rem;border-radius:8px;font-size:.875rem;font-weight:600;margin-top:auto}.stock-info.sufficient{background:var(--success-bg);color:var(--success-text)}.stock-info.insufficient{background:var(--warning-bg);color:var(--warning-text)}.stock-info.out-of-stock{background:var(--error-bg);color:var(--error-text)}.stock-info.no-data{background:var(--bg-tertiary);color:var(--text-secondary)}.stock-info.unpainted{background:#fff3cd;color:#856404;border:1px solid #ffc107}.stock-icon{font-size:1.125rem;line-height:1}.stock-text{flex:1}@media (max-width: 768px){.modal-content{width:95%;max-height:95vh}.modal-header{padding:1rem 1.5rem}.modal-header h2{font-size:1.25rem}.modal-body{padding:1.5rem}.modal-footer{padding:1rem 1.5rem;flex-direction:column}.footer-actions{width:100%;flex-direction:column}.modal-footer button,.footer-actions button{width:100%}.order-info-grid{grid-template-columns:1fr;gap:1rem}.item-edit-row,.item-view-row{grid-template-columns:1fr;gap:.5rem}.item-total,.btn-remove-item{justify-self:flex-end}.article-input-group{flex-direction:column}.btn-parse-article,.btn-reset-parsing{width:100%}.details-grid{grid-template-columns:1fr}}.subsection{margin-bottom:28px;padding:20px;background:var(--bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--border-light)}.subsection h4{font-size:15px;font-weight:600;color:var(--text-primary);margin:0 0 18px;display:flex;align-items:center;gap:8px;padding-bottom:12px;border-bottom:1.5px solid var(--border-color)}.info-item.full-width{grid-column:1 / -1}[data-theme=dark] .subsection{background:var(--bg-tertiary);border-color:var(--border-color)}.image-upload-section{margin-top:12px}.image-upload-area{border:2px dashed var(--border-dark);border-radius:var(--radius-lg);padding:40px 32px;text-align:center;background:var(--bg-secondary);transition:all var(--transition-normal);cursor:pointer}.image-upload-area:hover{border-color:var(--color-primary);background:var(--color-primary-light);transform:translateY(-2px)}.upload-label{cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:14px}.upload-icon{font-size:52px;transition:transform var(--transition-normal)}.image-upload-area:hover .upload-icon{transform:scale(1.15) rotate(5deg)}.upload-text{display:flex;flex-direction:column;gap:6px}.upload-text strong{font-size:15px;font-weight:600;color:var(--text-primary)}.upload-text small{font-size:13px;color:var(--text-secondary)}.image-preview-wrapper{position:relative;display:inline-block;border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-lg);max-width:100%}.image-preview{max-width:100%;max-height:400px;border-radius:var(--radius-xl);display:block}.btn-remove-image{position:absolute;top:16px;right:16px;padding:10px 18px;background:#ef4444f2;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:#fff;border:none;border-radius:var(--radius-md);font-size:13px;font-weight:600;cursor:pointer;transition:all var(--transition-fast);box-shadow:0 4px 12px #ef444466}.btn-remove-image:hover{background:var(--color-danger);transform:scale(1.05);box-shadow:0 6px 16px #ef444480}[data-theme=dark] .image-upload-area{background:var(--bg-tertiary);border-color:var(--border-color)}[data-theme=dark] .image-upload-area:hover{border-color:var(--color-primary);background:#60a5fa1a}.order-image-display{display:flex;justify-content:center;margin-top:16px}.order-image-full{max-width:100%;max-height:500px;border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);transition:transform var(--transition-normal);cursor:pointer}.order-image-full:hover{transform:scale(1.02);box-shadow:var(--shadow-xl)}.value-display{font-size:15px;color:var(--text-primary);font-weight:500;padding:8px 0;display:block}.price-value{font-size:18px;font-weight:700;color:var(--color-primary)}.status-badge{padding:8px 16px;border-radius:var(--radius-full);font-size:14px;font-weight:600;display:inline-block}.details-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;margin-top:20px}.detail-card{background:var(--bg-secondary);border:1.5px solid var(--border-color);border-radius:var(--radius-lg);padding:18px;transition:all var(--transition-normal)}.detail-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px);border-color:var(--color-primary-light)}.detail-header{display:flex;align-items:center;gap:10px;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--border-light)}.detail-icon{font-size:24px}.detail-name{font-size:15px;font-weight:600;color:var(--text-primary);flex:1}.detail-info{display:flex;flex-direction:column;gap:10px}.detail-row{display:flex;justify-content:space-between;align-items:center;font-size:14px}.detail-row span{color:var(--text-secondary)}.detail-row strong{color:var(--text-primary);font-weight:600}.info-notice{margin-top:20px;padding:16px;background:var(--color-info-light);border-left:4px solid var(--color-info);border-radius:var(--radius-md)}.info-notice p{margin:4px 0;font-size:13px;color:var(--text-secondary)}[data-theme=dark] .detail-card{background:var(--bg-tertiary);border-color:var(--border-color)}[data-theme=dark] .info-notice{background:#06b6d41a;border-color:var(--color-info)}@media (max-width: 768px){.details-list{grid-template-columns:1fr}}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:12px}.stock-status-badge{display:flex;gap:8px}.stock-status-badge span{padding:8px 16px;border-radius:var(--radius-full);font-size:13px;font-weight:600;display:inline-flex;align-items:center;gap:6px;box-shadow:var(--shadow-sm)}.status-checking{background:var(--bg-tertiary);color:var(--text-secondary)}.status-ready{background:var(--color-success-light);color:var(--color-success);animation:pulse-success 2s ease-in-out infinite}.status-shortage{background:var(--color-warning-light);color:var(--color-warning);animation:pulse-warning 2s ease-in-out infinite}@keyframes pulse-success{0%,to{box-shadow:0 0 #10b98166}50%{box-shadow:0 0 0 6px #10b98100}}@keyframes pulse-warning{0%,to{box-shadow:0 0 #f59e0b66}50%{box-shadow:0 0 0 6px #f59e0b00}}.detail-title-group{flex:1;display:flex;flex-direction:column;gap:4px}.detail-color{font-size:12px;color:var(--text-secondary);font-weight:500}.stock-indicator{font-size:20px;flex-shrink:0}.stock-ok{filter:drop-shadow(0 2px 4px rgba(16,185,129,.3))}.stock-low{filter:drop-shadow(0 2px 4px rgba(245,158,11,.3));animation:shake 2s ease-in-out infinite}.stock-unpainted{filter:drop-shadow(0 2px 4px rgba(255,193,7,.4));animation:pulse 2s ease-in-out infinite}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-2px)}20%,40%,60%,80%{transform:translate(2px)}}.stock-row{padding-top:10px;margin-top:10px;border-top:1px dashed var(--border-color)}.stock-value{color:var(--color-success)}.stock-value.shortage{color:var(--color-danger)}.shortage-notice{margin-top:10px;padding:10px;background:var(--color-warning-light);border-radius:var(--radius-md);text-align:center}.shortage-notice span{font-size:13px;font-weight:600;color:var(--color-warning)}.detail-card.stock-available{border-color:var(--color-success);background:linear-gradient(135deg,rgba(16,185,129,.03),var(--bg-secondary))}.detail-card.stock-shortage{border-color:var(--color-warning);background:linear-gradient(135deg,rgba(245,158,11,.05),var(--bg-secondary))}[data-theme=dark] .status-ready{background:var(--color-success-light);color:var(--color-success)}[data-theme=dark] .status-shortage{background:var(--color-warning-light);color:var(--color-warning)}[data-theme=dark] .shortage-notice{background:#f59e0b26}[data-theme=dark] .detail-card.stock-available{border-color:#10b98166;background:linear-gradient(135deg,rgba(16,185,129,.05),var(--bg-tertiary))}[data-theme=dark] .detail-card.stock-shortage{border-color:#f59e0b66;background:linear-gradient(135deg,rgba(245,158,11,.08),var(--bg-tertiary))}@media print{.modal-overlay{position:static;background:#fff;-webkit-backdrop-filter:none;backdrop-filter:none}.modal-header{border-bottom:3px solid #3b82f6;padding:20px}.modal-header h2{font-size:28px;color:#3b82f6}.modal-close,.modal-footer{display:none!important}.modal-body{padding:20px;max-width:100%}.modal-content{box-shadow:none;border:none;max-width:100%;max-height:none;border-radius:0}.order-section{page-break-inside:avoid;margin-bottom:24px}.subsection{page-break-inside:avoid}*{-webkit-print-color-adjust:exact;print-color-adjust:exact}.order-info-grid,.details-list{border:1px solid #e2e8f0;border-radius:8px;padding:12px}.detail-card{border:2px solid #e2e8f0;page-break-inside:avoid}.detail-card.stock-available{border-color:#10b981}.detail-card.stock-shortage{border-color:#f59e0b}@page{size:A4;margin:15mm}body{font-size:11pt}}.product-selector-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:10000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.product-selector-modal{background:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:0 20px 60px #0000004d;width:90%;max-width:900px;max-height:85vh;display:flex;flex-direction:column;overflow:hidden}.product-selector-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid var(--border-color)}.product-selector-header h3{margin:0;font-size:20px;font-weight:600;color:var(--text-primary)}.close-btn{background:none;border:none;font-size:24px;color:var(--text-secondary);cursor:pointer;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.close-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.product-selector-filters{display:flex;gap:16px;padding:16px 24px;border-bottom:1px solid var(--border-light);background:var(--bg-secondary)}.filter-group{display:flex;align-items:center;gap:8px}.filter-group select{padding:8px 12px;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-primary);color:var(--text-primary);font-size:14px;min-width:200px}.search-input{flex:1;padding:8px 12px;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-primary);color:var(--text-primary);font-size:14px;min-width:300px}.search-input:focus{outline:none;border-color:var(--color-primary)}.products-list{flex:1;overflow-y:auto;padding:16px 24px;display:flex;flex-direction:column;gap:12px}.product-item{padding:16px;border:2px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);background:var(--bg-primary)}.product-item:hover{border-color:var(--color-primary);box-shadow:0 4px 12px #3b82f626;transform:translateY(-2px)}.product-item-header{display:flex;flex-direction:column;gap:8px;margin-bottom:8px}.product-item-category{font-size:12px;padding:4px 8px;background:var(--color-primary-light);color:var(--color-primary);border-radius:4px;font-weight:500;align-self:flex-start}.product-item-name{font-size:16px;font-weight:600;color:var(--text-primary)}.product-item-article{font-size:13px;color:var(--text-tertiary);margin-bottom:8px}.product-item-article code{font-family:Courier New,monospace;background:var(--bg-secondary);padding:2px 6px;border-radius:4px;font-size:12px}.product-item-description{font-size:14px;color:var(--text-secondary);margin-bottom:12px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.product-item-footer{display:flex;justify-content:space-between;align-items:center;padding-top:12px;border-top:1px solid var(--border-light)}.product-item-price{font-size:16px;font-weight:600;color:var(--color-success)}.product-item-details{font-size:13px;color:var(--text-tertiary)}.product-selector-footer{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-top:1px solid var(--border-color);background:var(--bg-secondary)}.footer-hint{font-size:13px;color:var(--text-tertiary);font-style:italic}.empty-state{flex:1;display:flex;align-items:center;justify-content:center;padding:60px 24px;color:var(--text-secondary);text-align:center}.loading{flex:1;display:flex;align-items:center;justify-content:center;padding:60px 24px;color:var(--text-secondary)}@media (max-width: 768px){.product-selector-modal{width:95%;max-height:90vh}.product-selector-filters{flex-direction:column}.filter-group select,.search-input{width:100%;min-width:auto}.product-item-footer{flex-direction:column;align-items:flex-start;gap:8px}.product-selector-footer{flex-direction:column;gap:12px}.footer-hint{text-align:center}}.print-modal{max-width:1000px;max-height:90vh}.print-order{margin-bottom:40px;page-break-inside:avoid;border:2px solid #e0e0e0;border-radius:8px;padding:20px}.order-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid #f0f0f0}.order-number{font-size:20px;font-weight:700;color:#667eea}.order-status{padding:6px 12px;border-radius:20px;font-size:12px;font-weight:700}.status-new{background:#e3f2fd;color:#1976d2}.status-urgent{background:#fff3e0;color:#e65100}.status-progress{background:#e3f2fd;color:#1565c0}.status-delivered{background:#e8f5e9;color:#2e7d32}.status-cancelled{background:#ffebee;color:#c62828}.order-info{display:grid;grid-template-columns:repeat(2,1fr);gap:15px;margin-bottom:20px}.info-item{display:flex;flex-direction:column}.info-label{font-size:12px;color:#666;margin-bottom:4px;font-weight:600}.info-value{font-size:14px;color:#333}.order-items{margin-top:20px}.items-header{font-size:16px;font-weight:700;color:#333;margin-bottom:10px}.items-table{width:100%;border-collapse:collapse;margin-bottom:15px}.item-name{font-weight:500}.item-quantity,.item-price,.item-total{text-align:right}.order-total{text-align:right;padding:15px;background:#667eea;color:#fff;border-radius:6px;font-size:18px;font-weight:700}@media (max-width: 768px){.print-modal{max-height:95vh}.print-preview-container{padding:1rem}.print-preview{padding:20px}.print-header h1{font-size:20px}.order-info{grid-template-columns:1fr}.items-table{font-size:11px}.items-table th,.items-table td{padding:8px 4px}}@media print{.modal-overlay{position:static;background:#fff;-webkit-backdrop-filter:none;backdrop-filter:none}.modal-header,.modal-footer{display:none!important}.print-preview-container{background:#fff;padding:0;overflow:visible}.print-preview{box-shadow:none;padding:20mm}.print-order{page-break-inside:avoid;page-break-after:always}.print-order:last-child{page-break-after:auto}*{-webkit-print-color-adjust:exact;print-color-adjust:exact}@page{size:A4;margin:15mm}body{font-size:12pt}.print-header h1,.order-number{color:#667eea}.order-total{background:#667eea;color:#fff}}.orders-page{max-width:1400px;margin:0 auto}.order-image-cell{display:flex;align-items:center;justify-content:center}.order-thumbnail{width:44px;height:44px;border-radius:var(--radius-md);object-fit:cover;border:1.5px solid var(--border-color);transition:all var(--transition-fast);cursor:pointer}.order-thumbnail:hover{transform:scale(2.5);z-index:100;box-shadow:var(--shadow-xl)}.order-thumbnail-placeholder{width:44px;height:44px;border-radius:var(--radius-md);background:var(--bg-tertiary);border:1.5px dashed var(--border-dark);display:flex;align-items:center;justify-content:center;font-size:20px;color:var(--text-tertiary)}.order-position{display:flex;flex-direction:column;gap:4px}.order-position strong{font-weight:600;color:var(--text-primary);font-size:14px}.items-count{font-size:12px;color:var(--text-secondary);font-weight:500}.urgent-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;background:linear-gradient(135deg,#fee2e2,#fef2f2);border:1px solid #ef4444;border-radius:var(--radius-full);font-size:11px;font-weight:700;color:#dc2626;animation:pulse-urgent 2s ease-in-out infinite}@keyframes pulse-urgent{0%,to{box-shadow:0 0 #ef444466}50%{box-shadow:0 0 0 4px #ef444400}}[data-theme=dark] .urgent-badge{background:linear-gradient(135deg,#7f1d1d,#991b1b);color:#fca5a5;border-color:#ef4444}.urgent-date{color:var(--color-danger);font-weight:600}.marketplace-status{font-size:13px;color:var(--text-secondary);font-weight:500}.text-muted{color:var(--text-tertiary);font-size:13px}.orders-tabs{display:flex;gap:8px;margin-bottom:24px;background:var(--bg-primary);padding:6px;border-radius:var(--radius-lg);border:1px solid var(--border-color);overflow-x:auto}.order-tab{flex:1;padding:10px 20px;background:transparent;border:none;border-radius:var(--radius-md);font-size:14px;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.order-tab:hover{background:var(--bg-hover);color:var(--text-primary)}.order-tab.active{background:var(--color-primary);color:#fff}.tab-badge{margin-left:8px;padding:2px 8px;background:var(--bg-tertiary);border-radius:var(--radius-full);font-size:11px;font-weight:600}.order-tab.active .tab-badge{background:#fff3;color:#fff}.orders-table-container{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden}.orders-table{width:100%;border-collapse:collapse}.orders-table thead{background:var(--bg-secondary)}.orders-table th{padding:16px;text-align:left;font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid var(--border-color)}.orders-table tbody tr{border-bottom:1px solid var(--border-light);cursor:pointer;transition:all var(--transition-fast)}.orders-table tbody tr:hover{background:var(--bg-hover)}.orders-table tbody tr:last-child{border-bottom:none}.orders-table td{padding:16px;font-size:14px;color:var(--text-primary)}.order-number{font-weight:600;color:var(--text-primary)}.urgent-indicator{color:var(--color-danger);margin-left:4px}.status-badge{padding:4px 12px;border-radius:var(--radius-full);font-size:12px;font-weight:600;display:inline-block}.source-badge{padding:4px 10px;border-radius:var(--radius-full);font-size:11px;font-weight:600}.price-cell{font-weight:600;color:var(--color-primary)}@media (max-width: 768px){.orders-tabs{flex-direction:column}.orders-table-container{overflow-x:auto}.orders-table{min-width:800px}}.task-modal{max-width:900px;width:95%;max-height:92vh;display:flex;flex-direction:column}.task-modal .modal-body{flex:1;overflow-y:auto;overflow-x:hidden;min-height:0}.task-subtitle{color:var(--text-secondary);font-size:.95rem;margin:.25rem 0 0}.task-section{margin-bottom:2rem}.task-section:last-child{margin-bottom:0}.task-section h3{margin:0 0 1rem;font-size:1.125rem;color:var(--text-primary)}.task-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.info-item{display:flex;flex-direction:column;gap:.5rem}.info-item label{font-weight:600;color:var(--text-secondary);font-size:.875rem}.info-item span{color:var(--text-primary);font-size:1rem}.task-description-full{color:var(--text-secondary);line-height:1.8;margin:0;white-space:pre-wrap;background:var(--bg-tertiary);padding:1rem;border-radius:8px}.task-image-full{border-radius:12px;overflow:hidden;border:2px solid var(--border-color)}.task-image-full img{width:100%;height:auto;display:block}.quantity-display-full{background:linear-gradient(135deg,#667eea1a,#764ba21a);padding:1.5rem;border-radius:12px;border:2px solid var(--bg-gradient-start)}.quantity-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0}.quantity-row:not(:last-child){border-bottom:1px solid var(--border-light);margin-bottom:.5rem}.quantity-row span:first-child{color:var(--text-secondary);font-size:.95rem}.quantity-value-large{font-size:2rem;font-weight:700;color:var(--bg-gradient-start)}.quantity-value{font-size:1.25rem;font-weight:600;color:var(--text-primary)}.order-link-info,.warehouse-link-info{background:var(--bg-tertiary);padding:1.25rem;border-radius:8px}.order-link-info p,.warehouse-link-info p{margin:.5rem 0;color:var(--text-secondary);font-size:.95rem}.order-link-info strong,.warehouse-link-info strong{color:var(--text-primary)}.task-details-table{background:var(--bg-tertiary);border-radius:12px;overflow:hidden;border:2px solid var(--border-color)}.task-details-table table{width:100%;border-collapse:collapse}.task-details-table thead{background:linear-gradient(135deg,var(--bg-gradient-start) 0%,var(--bg-gradient-end) 100%);color:#fff}.task-details-table th{padding:1rem;text-align:left;font-weight:600;font-size:.875rem;text-transform:uppercase;letter-spacing:.5px}.task-details-table th:first-child{width:60px;text-align:center}.task-details-table th:last-child{width:150px;text-align:right}.task-details-table tbody tr{border-bottom:1px solid var(--border-light);transition:background var(--transition-fast)}.task-details-table tbody tr:last-child{border-bottom:none}.task-details-table tbody tr:hover{background:var(--bg-secondary)}.task-details-table td{padding:1rem;color:var(--text-primary)}.task-details-table td:first-child{text-align:center;font-weight:600;color:var(--text-secondary);font-size:.875rem}.task-details-table td:last-child{text-align:right;font-size:1.125rem}.task-details-table td:last-child strong{color:var(--bg-gradient-start)}.completion-notes{background:var(--success-bg);color:var(--success-text);padding:1rem;border-radius:8px;border-left:4px solid var(--success-border);margin:0;line-height:1.6;white-space:pre-wrap}.completion-section{background:linear-gradient(135deg,rgba(76,175,80,.05) 0%,transparent 100%);padding:1.5rem;border-radius:12px;border:2px solid #4caf50}.completion-section h3{color:#4caf50}.completion-section .form-group{margin-top:1rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group textarea{padding:.75rem;border:2px solid var(--border-color);border-radius:8px;font-size:1rem;font-family:inherit;transition:all var(--transition-normal);background:var(--bg-secondary);color:var(--text-primary);resize:vertical}.form-group textarea:focus{outline:none;border-color:#4caf50;box-shadow:0 0 0 3px #4caf501a}.modal-footer{padding:1.5rem 2rem;border-top:2px solid var(--border-light);display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}.footer-actions{display:flex;gap:1rem;flex-wrap:wrap}.modal-footer button{padding:.75rem 1.5rem;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.btn-cancel{background:var(--bg-tertiary);color:var(--text-secondary)}.btn-cancel:hover{background:var(--border-color);color:var(--text-primary)}.btn-take-task{background:linear-gradient(135deg,var(--bg-gradient-start) 0%,var(--bg-gradient-end) 100%);color:#fff}.btn-take-task:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.btn-complete-task{background:#4caf50;color:#fff}.btn-complete-task:hover:not(:disabled){background:#45a049;transform:translateY(-1px);box-shadow:0 4px 12px #4caf5066}.btn-cancel-task{background:var(--warning-bg);color:var(--warning-text)}.btn-cancel-task:hover:not(:disabled){opacity:.8;transform:translateY(-1px)}.btn-delete:hover:not(:disabled){opacity:.8;transform:translateY(-1px)}.btn-take-task:disabled,.btn-complete-task:disabled,.btn-cancel-task:disabled,.btn-delete:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.task-modal{max-height:95vh}.modal-header{padding:1rem 1.5rem}.modal-header h2{font-size:1.25rem}.modal-body{padding:1.5rem}.task-info-grid{grid-template-columns:1fr;gap:1rem}.task-details-table{overflow-x:auto}.task-details-table th,.task-details-table td{padding:.75rem;font-size:.875rem}.task-details-table th:first-child,.task-details-table td:first-child{width:40px}.task-details-table th:last-child,.task-details-table td:last-child{width:100px}.modal-footer{padding:1rem 1.5rem;flex-direction:column}.footer-actions{width:100%;flex-direction:column}.modal-footer button,.footer-actions button{width:100%}}.print-modal-tasks{max-width:1000px;max-height:90vh}.print-task{margin-bottom:30px;page-break-inside:avoid;border:2px solid #e0e0e0;border-radius:8px;padding:20px}.print-task.urgent{border-left:4px solid #ff9800;background:#ff980008}.print-task.production{border-left:4px solid #2196f3;background:#2196f308}.task-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;padding-bottom:15px;border-bottom:2px solid #f0f0f0}.task-badges{display:flex;gap:8px;flex-wrap:wrap}.task-badge{padding:6px 12px;border-radius:20px;font-size:12px;font-weight:700;color:#fff}.task-badge.manual{background:#2196f3}.task-badge.urgent{background:#ff9800}.task-badge.production{background:#667eea}.task-badge.pending{background:#ffa726}.task-badge.in_progress{background:#42a5f5}.task-badge.completed{background:#66bb6a}.task-badge.cancelled{background:#ef5350}.task-badge.critical{background:#d32f2f}.task-badge.high{background:#f44336}.task-badge.medium{background:#ff9800}.task-badge.low{background:#9e9e9e}.task-title{font-size:18px;font-weight:700;color:#333;margin-bottom:10px}.task-description{font-size:14px;color:#666;line-height:1.6;margin-bottom:15px;white-space:pre-wrap}.task-image{margin:15px 0;border-radius:8px;overflow:hidden;max-height:300px;border:1px solid #e0e0e0}.task-image img{width:100%;height:auto;display:block}.task-info{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;padding:15px;background:#f9f9f9;border-radius:6px}.info-item{font-size:13px}.info-label{color:#666;margin-bottom:4px;font-size:12px}.info-value{color:#333;font-weight:600}.quantity-info{background:#e3f2fd;padding:15px;border-radius:8px;margin:15px 0}.quantity-info h4{margin:0 0 10px;color:#1976d2;font-size:14px}.quantity-info p{margin:5px 0;color:#666;font-size:13px}.quantity-info strong{color:#333}@media (max-width: 768px){.print-modal-tasks{max-height:95vh}.print-preview-container{padding:1rem}.print-preview{padding:20px}.print-header h1{font-size:20px}.summary{grid-template-columns:1fr;gap:10px}.task-info{grid-template-columns:1fr}}.kanban-board{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;padding:4px;height:calc(100vh - 260px)}.kanban-column{background:linear-gradient(135deg,var(--card-background) 0%,var(--bg-secondary) 100%);border-radius:16px;box-shadow:0 4px 20px #00000014;display:flex;flex-direction:column;min-height:500px;max-height:100%;border:2px solid transparent;transition:all .3s ease;overflow:hidden}.kanban-column:hover{box-shadow:0 8px 32px #0000001f;border-color:var(--border-light)}.kanban-column-header{padding:20px 24px;border-top:5px solid;display:flex;align-items:center;justify-content:space-between;background:linear-gradient(135deg,#ffffffe6,#fff9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:sticky;top:0;z-index:10}.kanban-column-header h3{margin:0;font-size:19px;font-weight:700;display:flex;align-items:center;gap:10px;color:var(--text-primary)}.column-icon{font-size:28px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.column-count{background:linear-gradient(135deg,var(--primary-color) 0%,#667eea 100%);color:#fff;padding:6px 14px;border-radius:16px;font-size:14px;font-weight:700;box-shadow:0 2px 8px #667eea4d;min-width:32px;text-align:center}.kanban-column-content{flex:1;overflow-y:auto;overflow-x:hidden;padding:20px;display:flex;flex-direction:column;gap:16px}.kanban-column-content::-webkit-scrollbar{width:8px}.kanban-column-content::-webkit-scrollbar-track{background:transparent}.kanban-column-content::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}.kanban-column-content::-webkit-scrollbar-thumb:hover{background:var(--border-light)}.kanban-empty{text-align:center;padding:60px 20px;color:var(--text-secondary);font-size:14px;opacity:.6}.kanban-task-card{background:#fff;border:2px solid var(--border-color);border-radius:14px;padding:18px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;gap:12px;position:relative}.kanban-task-card:before{content:"";position:absolute;top:0;left:0;width:5px;height:100%;background:linear-gradient(180deg,var(--primary-color) 0%,#667eea 100%);opacity:0;transition:opacity .3s ease}.kanban-task-card:hover:before{opacity:1}.kanban-task-card:hover{transform:translateY(-4px) scale(1.02);box-shadow:0 12px 28px #00000026;border-color:var(--primary-color)}.kanban-task-card.blocked{opacity:.65;background:repeating-linear-gradient(135deg,#fff9f0,#fff9f0 12px,#fff3e0 12px,#fff3e0 24px);border-color:#ff9800;border-style:dashed}.kanban-task-card.blocked:hover{transform:none;cursor:not-allowed}.kanban-task-card.locked{border-color:#bdbdbd;opacity:.75;background:linear-gradient(135deg,#fafafa,#f5f5f5)}.kanban-task-card.my-task{border-color:#4caf50;border-width:3px;background:linear-gradient(135deg,#fff,#f1f8f4);box-shadow:0 4px 20px #4caf5033}.kanban-task-card.my-task:before{background:linear-gradient(180deg,#4caf50,#66bb6a);opacity:1;width:6px}.task-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.task-card-title{display:flex;align-items:center;gap:10px;font-weight:700;font-size:15px;flex:1;line-height:1.4;color:var(--text-primary)}.task-step-icon{font-size:24px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.task-level-badge{background:linear-gradient(135deg,#9c27b0,#ba68c8);color:#fff;padding:4px 10px;border-radius:8px;font-size:11px;font-weight:700;white-space:nowrap;box-shadow:0 2px 6px #9c27b04d;flex-shrink:0}.task-role{font-size:13px;color:var(--text-secondary);display:flex;align-items:center;gap:8px;font-weight:500;padding:6px 12px;background:var(--bg-secondary);border-radius:8px}.executors-count{background:linear-gradient(135deg,#2196f3,#42a5f5);color:#fff;padding:2px 8px;border-radius:6px;font-size:11px;font-weight:700;box-shadow:0 2px 4px #2196f34d}.task-quantity{font-size:20px;font-weight:800;background:linear-gradient(135deg,var(--primary-color) 0%,#667eea 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.task-orders{display:flex;align-items:center;gap:8px;font-size:13px;padding:6px 12px;background:linear-gradient(135deg,#e3f2fd,#bbdefb);border-radius:8px}.orders-label{color:#1565c0;font-weight:600}.orders-count{background:#fff;color:#1976d2;padding:3px 10px;border-radius:6px;font-weight:700;font-size:12px;box-shadow:0 1px 3px #0000001a}.task-blocked-notice{background:linear-gradient(135deg,#fff3e0,#ffe0b2);color:#e65100;padding:10px 14px;border-radius:10px;font-size:13px;font-weight:600;text-align:center;border:2px solid #ffb74d;box-shadow:0 2px 8px #e6510026}.task-locked-notice{background:linear-gradient(135deg,#f5f5f5,#eee);color:#616161;padding:10px 14px;border-radius:10px;font-size:13px;font-weight:600;text-align:center;border:2px solid #e0e0e0}.task-my-notice{background:linear-gradient(135deg,#e8f5e9,#c8e6c9);color:#2e7d32;padding:10px 14px;border-radius:10px;font-size:13px;font-weight:700;text-align:center;border:2px solid #81c784;box-shadow:0 2px 8px #2e7d3233}.task-parallel-badge{background:linear-gradient(135deg,#e3f2fd,#bbdefb);color:#1565c0;padding:6px 12px;border-radius:8px;font-size:12px;font-weight:600;text-align:center;border:1px solid #90caf9}.task-card-actions{display:flex;gap:10px;margin-top:8px}.btn-take-task,.btn-complete-task{flex:1;padding:12px 16px;border:none;border-radius:10px;font-size:14px;font-weight:700;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.btn-take-task:before,.btn-complete-task:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff80;transform:translate(-50%,-50%);transition:width .6s,height .6s}.btn-take-task:hover:before,.btn-complete-task:hover:before{width:300px;height:300px}.btn-take-task{background:linear-gradient(135deg,#4caf50,#66bb6a);color:#fff;box-shadow:0 4px 12px #4caf504d}.btn-take-task:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 6px 20px #4caf5066}.btn-take-task:active{transform:translateY(0) scale(.98)}.btn-complete-task{background:linear-gradient(135deg,#2196f3,#42a5f5);color:#fff;box-shadow:0 4px 12px #2196f34d}.btn-complete-task:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 6px 20px #2196f366}.btn-complete-task:active{transform:translateY(0) scale(.98)}@media (max-width: 1200px){.kanban-board{grid-template-columns:1fr;gap:20px;height:auto}.kanban-column{max-height:600px}}@media (max-width: 768px){.kanban-column-header{padding:16px 18px}.kanban-column-header h3{font-size:17px}.column-icon{font-size:24px}.kanban-task-card{padding:16px}.task-card-title{font-size:14px}}[data-theme=dark] .kanban-column{background:linear-gradient(135deg,#1e293b,#0f172a);border-color:#334155}[data-theme=dark] .kanban-column-header{background:linear-gradient(135deg,#1e293be6,#0f172a99)}[data-theme=dark] .kanban-task-card{background:#1e293b;border-color:#334155}[data-theme=dark] .kanban-task-card:hover{background:#1e293b;border-color:#60a5fa;box-shadow:0 12px 28px #60a5fa40}[data-theme=dark] .kanban-task-card.blocked{background:repeating-linear-gradient(135deg,#292524,#292524 12px,#1c1917 12px,#1c1917 24px);border-color:#fb923c}[data-theme=dark] .kanban-task-card.my-task{border-color:#4ade80;background:linear-gradient(135deg,#1e293b,#14532d)}[data-theme=dark] .task-blocked-notice{background:linear-gradient(135deg,#78350f,#92400e);color:#fbbf24;border-color:#f59e0b}[data-theme=dark] .task-locked-notice{background:linear-gradient(135deg,#374151,#1f2937);color:#d1d5db;border-color:#4b5563}[data-theme=dark] .task-my-notice{background:linear-gradient(135deg,#14532d,#15803d);color:#86efac;border-color:#4ade80}[data-theme=dark] .task-parallel-badge{background:linear-gradient(135deg,#1e3a8a,#1e40af);color:#93c5fd;border-color:#3b82f6}[data-theme=dark] .task-role{background:#334155}[data-theme=dark] .task-orders{background:linear-gradient(135deg,#1e3a8a,#1e40af)}[data-theme=dark] .orders-label{color:#93c5fd}[data-theme=dark] .orders-count{background:#1e293b;color:#60a5fa}.tasks-page{max-width:1600px;margin:0 auto;padding:0 20px}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;padding:24px;background:linear-gradient(135deg,var(--primary-color) 0%,#667eea 100%);border-radius:16px;color:#fff;box-shadow:0 8px 24px #667eea40}.page-header h1{margin:0 0 4px;font-size:32px;font-weight:700}.page-description{margin:0;opacity:.9;font-size:15px}.header-actions{display:flex;gap:12px;flex-wrap:wrap}.btn-check-orders,.btn-check-deficit,.btn-create-task,.btn-print-tasks{padding:12px 24px;border:none;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 8px #0000001a;position:relative;overflow:hidden}.btn-check-orders{background:linear-gradient(135deg,#4caf50,#66bb6a);color:#fff}.btn-check-orders:hover{transform:translateY(-2px);box-shadow:0 4px 16px #4caf5066}.btn-check-deficit{background:linear-gradient(135deg,#ff9800,#ffa726);color:#fff}.btn-check-deficit:hover{transform:translateY(-2px);box-shadow:0 4px 16px #ff980066}.btn-create-task{background:linear-gradient(135deg,#2196f3,#42a5f5);color:#fff}.btn-create-task:hover{transform:translateY(-2px);box-shadow:0 4px 16px #2196f366}.btn-print-tasks{background:#fff;color:var(--text-primary);border:2px solid var(--border-color)}.btn-print-tasks:hover{background:var(--bg-hover);border-color:var(--primary-color)}button:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.tasks-tabs{display:flex;gap:8px;margin-bottom:24px;background:var(--card-background);padding:8px;border-radius:14px;box-shadow:0 2px 12px #00000014;overflow-x:auto;position:relative}.task-tab{position:relative;padding:12px 20px;background:transparent;border:none;border-radius:10px;font-size:14px;font-weight:600;color:var(--text-secondary);cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);white-space:nowrap;display:flex;align-items:center;gap:8px}.task-tab:hover{background:var(--bg-hover);color:var(--text-primary);transform:translateY(-1px)}.task-tab.active{background:linear-gradient(135deg,var(--primary-color) 0%,#667eea 100%);color:#fff;box-shadow:0 4px 12px #667eea4d}.tab-badge{padding:3px 10px;background:#0000001a;border-radius:12px;font-size:12px;font-weight:700;min-width:24px;text-align:center}.task-tab.active .tab-badge{background:#ffffff40;color:#fff}.tab-badge.urgent{background:#f44336;color:#fff;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.error-message,.success-message{padding:16px 20px;border-radius:12px;margin-bottom:20px;display:flex;align-items:center;justify-content:space-between;font-weight:500;animation:slideIn .3s ease-out}.error-message{background:linear-gradient(135deg,#ffebee,#ffcdd2);color:#c62828;border-left:4px solid #f44336}.success-message{background:linear-gradient(135deg,#e8f5e9,#c8e6c9);color:#2e7d32;border-left:4px solid #4caf50}.error-message button,.success-message button{background:none;border:none;font-size:20px;cursor:pointer;color:inherit;opacity:.6;transition:opacity .2s}.error-message button:hover,.success-message button:hover{opacity:1}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.tasks-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 20px;color:var(--text-secondary)}.spinner{width:50px;height:50px;border:4px solid var(--border-color);border-top-color:var(--primary-color);border-radius:50%;animation:spin .8s linear infinite;margin-bottom:16px}.empty-state{text-align:center;padding:80px 20px;background:var(--card-background);border-radius:16px;box-shadow:0 2px 12px #00000014}.empty-icon{font-size:80px;margin-bottom:20px;opacity:.5}.empty-state h3{margin:0 0 12px;font-size:24px;color:var(--text-primary)}.empty-state p{margin:0 0 24px;color:var(--text-secondary);font-size:15px}.tasks-grid-compact{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:20px}.task-card-compact{background:var(--card-background);border:2px solid var(--border-color);border-radius:14px;padding:20px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:visible;display:flex;flex-direction:column;min-height:280px;height:auto}.task-card-compact:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--primary-color),#667eea);transform:scaleX(0);transform-origin:left;transition:transform .3s ease}.task-card-compact:hover:before{transform:scaleX(1)}.task-card-compact:hover{transform:translateY(-4px);box-shadow:0 12px 32px #0000001f;border-color:var(--primary-color)}.task-card-compact.urgent{border-color:#f44336;background:linear-gradient(135deg,var(--card-background) 0%,rgba(244,67,54,.03) 100%)}.task-card-compact.in-progress{border-color:#2196f3;background:linear-gradient(135deg,var(--card-background) 0%,rgba(33,150,243,.03) 100%)}.task-card-header-compact{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:16px;flex-shrink:0}.task-title-compact{font-size:16px;font-weight:700;color:var(--text-primary);margin:0;line-height:1.4}.task-badges-compact{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.badge{padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600;display:inline-flex;align-items:center;gap:4px}.badge.priority-critical{background:linear-gradient(135deg,#f44336,#e53935);color:#fff}.badge.priority-high{background:linear-gradient(135deg,#ff9800,#fb8c00);color:#fff}.badge.priority-medium{background:linear-gradient(135deg,#2196f3,#1e88e5);color:#fff}.badge.priority-low{background:linear-gradient(135deg,#9e9e9e,#757575);color:#fff}.badge.type-manufacturing{background:linear-gradient(135deg,#9c27b0,#8e24aa);color:#fff}.badge.type-urgent{background:linear-gradient(135deg,#f44336,#e53935);color:#fff}.badge.type-manual{background:linear-gradient(135deg,#607d8b,#546e7a);color:#fff}.badge.status-pending{background:#e3f2fd;color:#1976d2}.badge.status-in-progress{background:#fff3e0;color:#f57c00}.badge.status-completed{background:#e8f5e9;color:#388e3c}.task-body-compact{display:flex;flex-direction:column;gap:8px;flex:1;min-height:120px;margin-bottom:12px}.task-description-compact{color:var(--text-secondary);font-size:14px;line-height:1.5;margin:12px 0 0;overflow:hidden;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;word-wrap:break-word}.task-quantity-compact{margin-top:auto;padding-top:12px;border-top:1px solid var(--border-light);flex-shrink:0}.task-footer-compact{margin-top:auto;padding-top:12px;flex-shrink:0}.task-meta-compact{display:flex;align-items:center;justify-content:space-between;margin-top:16px;padding-top:16px;border-top:1px solid var(--border-light)}.task-meta-info{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--text-secondary)}.task-quantity-display{font-size:18px;font-weight:700;color:var(--primary-color)}.deficit-indicator{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:linear-gradient(135deg,#fff3e0,#ffe0b2);border-radius:8px;font-size:13px;font-weight:600;color:#e65100;margin-top:8px}@media (max-width: 1200px){.tasks-grid-compact{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}}@media (max-width: 768px){.page-header{flex-direction:column;align-items:flex-start;gap:16px}.header-actions{width:100%}.header-actions button{flex:1;min-width:auto}.tasks-tabs{overflow-x:auto;padding:6px}.task-tab{padding:10px 16px;font-size:13px}.tasks-grid-compact{grid-template-columns:1fr;gap:12px}}[data-theme=dark] .page-header{background:linear-gradient(135deg,#1e3a8a,#3730a3)}[data-theme=dark] .task-card-compact{border-color:#374151}[data-theme=dark] .task-card-compact:hover{border-color:#60a5fa;box-shadow:0 12px 32px #60a5fa33}[data-theme=dark] .badge.status-pending{background:#1e3a8a;color:#93c5fd}[data-theme=dark] .badge.status-in-progress{background:#78350f;color:#fbbf24}[data-theme=dark] .badge.status-completed{background:#14532d;color:#86efac}[data-theme=dark] .deficit-indicator{background:linear-gradient(135deg,#78350f,#92400e);color:#fbbf24}.categories-modal{max-width:900px;max-height:90vh}.btn-add-category{width:100%;padding:.75rem 1.5rem;background:linear-gradient(135deg,var(--bg-gradient-start) 0%,var(--bg-gradient-end) 100%);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all var(--transition-fast);margin-bottom:1.5rem}.btn-add-category:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.category-form{background:var(--bg-tertiary);padding:1.5rem;border-radius:12px;margin-bottom:1.5rem}.category-form h4{margin:0 0 1rem;color:var(--text-primary)}.categories-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.category-card{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:12px;padding:1.5rem;transition:all var(--transition-fast)}.category-card:hover{border-color:var(--bg-gradient-start);box-shadow:var(--shadow-sm)}.category-preview{display:flex;align-items:center;gap:.75rem;padding:1rem;border-radius:8px;margin-bottom:1rem;color:#fff;font-weight:600}.category-icon{font-size:1.5rem}.category-name{font-size:1rem}.category-description{color:var(--text-secondary);font-size:.875rem;margin:0 0 1rem;line-height:1.5}.category-actions{display:flex;gap:.5rem}.category-actions button{flex:1;padding:.5rem;border:none;border-radius:6px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.btn-edit{background:var(--info-bg);color:var(--info-text)}.btn-edit:hover{opacity:.8;transform:translateY(-1px)}.btn-delete{background:var(--error-bg);color:var(--error-text)}.btn-delete:hover{opacity:.8;transform:translateY(-1px)}@media (max-width: 768px){.categories-modal{max-height:95vh}.categories-list{grid-template-columns:1fr}}.item-modal{max-width:700px;max-height:90vh}.creation-mode{margin-bottom:1.5rem}.mode-tabs{display:flex;gap:.5rem;background:var(--bg-tertiary);padding:.5rem;border-radius:10px}.mode-tab{flex:1;padding:.75rem 1rem;background:transparent;border:none;border-radius:8px;font-size:.95rem;font-weight:600;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast)}.mode-tab:hover:not(.active){background:var(--bg-secondary);color:var(--text-primary)}.mode-tab.active{background:linear-gradient(135deg,var(--bg-gradient-start) 0%,var(--bg-gradient-end) 100%);color:#fff;box-shadow:var(--shadow-sm)}.info-message{background:var(--info-bg);color:var(--info-text);padding:1rem;border-radius:8px;border-left:4px solid var(--info-border);margin-bottom:1.5rem;font-size:.875rem;line-height:1.6}.template-preview{background:var(--bg-tertiary);padding:1.25rem;border-radius:10px;border:2px solid var(--border-color);margin-top:1rem}.template-preview h4{margin:0 0 1rem;font-size:1rem;color:var(--text-primary)}.preview-info p{margin:.5rem 0;color:var(--text-secondary);font-size:.875rem}.preview-info strong{color:var(--text-primary)}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1rem}.form-group{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.form-group label{font-weight:500;color:var(--text-primary);font-size:.875rem}.form-group input,.form-group select,.form-group textarea{padding:.75rem;border:2px solid var(--border-color);border-radius:8px;font-size:1rem;font-family:inherit;transition:all var(--transition-normal);background:var(--bg-secondary);color:var(--text-primary)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--bg-gradient-start);box-shadow:0 0 0 3px #667eea1a}.form-group input:disabled,.form-group select:disabled{background:var(--bg-tertiary);cursor:not-allowed;opacity:.6}.form-group small{color:var(--text-tertiary);font-size:.75rem;font-style:italic}.hint{color:var(--warning-text);background:var(--warning-bg);padding:.5rem;border-radius:6px;display:block;margin-top:.5rem}.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.95rem;color:var(--text-primary)}.item-modal.large-modal{max-width:900px}.header-left{display:flex;align-items:center;gap:12px}.item-type-badge{font-size:2rem;padding:8px;background:var(--glass-bg, var(--bg-tertiary));border-radius:12px;min-width:56px;text-align:center}.item-subtitle{color:var(--text-secondary);font-size:.9rem;margin:4px 0 0}.image-section{margin-bottom:24px;text-align:center}.image-preview-large{position:relative;width:100%;max-width:400px;margin:0 auto 16px;border-radius:12px;overflow:hidden;background:var(--bg-secondary);border:2px solid var(--border-color)}.image-preview-large img{width:100%;height:auto;max-height:400px;object-fit:contain;display:block}.image-placeholder-large{width:100%;max-width:400px;height:250px;margin:0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:var(--bg-secondary);border:2px dashed var(--border-color);border-radius:12px;color:var(--text-secondary)}.placeholder-icon{font-size:4rem;opacity:.5}.image-upload-section{display:flex;flex-direction:column;align-items:center;gap:8px;margin-top:12px}.btn-upload-image{padding:10px 20px;background:linear-gradient(135deg,var(--bg-gradient-start) 0%,var(--bg-gradient-end) 100%);color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:.95rem;font-weight:600;transition:all .3s ease}.btn-upload-image:hover{transform:translateY(-2px);box-shadow:0 4px 12px #3b82f64d}.btn-upload-image:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-remove-image{position:absolute;top:8px;right:8px;padding:8px 16px;background:#ef4444e6;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.85rem;font-weight:600;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .2s}.btn-remove-image:hover{background:#dc2626}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px}.info-item label{display:block;font-size:.85rem;color:var(--text-secondary);margin-bottom:6px;font-weight:500}.info-value{font-size:1.1rem;font-weight:600;color:var(--text-primary)}.quantity-value.deficit{color:var(--danger-color, #ef4444)}.deficit-badge{font-size:.85rem;padding:4px 8px;background:#ef44441a;border-radius:6px}.dimensions-section,.extra-info-section,.notes-section{margin-bottom:24px}.dimensions-section h3,.extra-info-section h3{font-size:1.1rem;margin-bottom:12px;color:var(--text-primary)}.dimensions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px}.dimension-item{background:var(--bg-secondary);padding:12px;border-radius:8px;border:1px solid var(--border-color)}.dimension-item label{display:block;font-size:.8rem;color:var(--text-secondary);margin-bottom:4px}.dimension-item div{font-weight:600;font-size:1rem}.notes-display{padding:12px;background:var(--bg-secondary);border-radius:8px;border:1px solid var(--border-color);min-height:60px}.notes-display em{color:var(--text-secondary)}.modal-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-top:20px;border-top:1px solid var(--border-color);margin-top:20px}.footer-left,.footer-right{display:flex;gap:10px}.btn-delete-danger{padding:10px 20px;background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:.95rem;font-weight:600;transition:all .3s ease}.btn-delete-danger:hover{transform:translateY(-2px);box-shadow:0 4px 12px #ef444466}.btn-primary{padding:10px 20px;background:linear-gradient(135deg,var(--bg-gradient-start) 0%,var(--bg-gradient-end) 100%);color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:.95rem;font-weight:600;transition:all .3s ease}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 12px #3b82f64d}@media (max-width: 768px){.item-modal{max-height:95vh}.item-modal.large-modal{max-width:95vw}.mode-tabs{flex-direction:column}.form-grid,.info-grid,.dimensions-grid{grid-template-columns:1fr}.image-preview-large,.image-placeholder-large{max-width:100%}.modal-footer{flex-direction:column}.footer-left,.footer-right{width:100%}}.transaction-modal{max-width:600px;max-height:90vh}.transaction-item-info{background:var(--bg-tertiary);padding:1.5rem;border-radius:12px;margin-bottom:1.5rem}.transaction-item-info h3{margin:0 0 .75rem;color:var(--text-primary);font-size:1.25rem}.item-details{display:flex;flex-direction:column;gap:.5rem}.item-details span{color:var(--text-secondary);font-size:.875rem}.item-details strong{color:var(--text-primary);font-weight:600}.transaction-summary{background:linear-gradient(135deg,var(--bg-gradient-start) 0%,var(--bg-gradient-end) 100%);padding:1.5rem;border-radius:12px;margin-top:1.5rem;color:#fff}.summary-row{display:flex;justify-content:space-between;align-items:center;font-size:1.125rem;font-weight:600}.summary-row span.deficit{color:#ff9800;font-weight:700}.btn-save.income{background:#4caf50;color:#fff}.btn-save.income:hover:not(:disabled){background:#45a049;transform:translateY(-1px);box-shadow:0 4px 12px #4caf5066}.btn-save.outcome{background:#ff9800;color:#fff}.btn-save.outcome:hover:not(:disabled){background:#f57c00;transform:translateY(-1px);box-shadow:0 4px 12px #ff980066}@media (max-width: 768px){.transaction-modal{max-height:95vh}.item-details{font-size:.8rem}}.history-modal{max-width:900px;max-height:90vh}.modal-subtitle{color:var(--text-secondary);font-size:.95rem;margin:.25rem 0 0}.history-filters{display:flex;gap:.5rem;margin-bottom:1.5rem;background:var(--bg-tertiary);padding:.5rem;border-radius:10px;overflow-x:auto}.filter-btn{flex:1;padding:.75rem 1rem;background:transparent;border:none;border-radius:8px;font-size:.95rem;font-weight:600;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.filter-btn:hover:not(.active){background:var(--bg-secondary);color:var(--text-primary)}.filter-btn.active{background:linear-gradient(135deg,var(--bg-gradient-start) 0%,var(--bg-gradient-end) 100%);color:#fff;box-shadow:var(--shadow-sm)}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;gap:1rem}.transactions-list{display:flex;flex-direction:column;gap:1rem}.transaction-card{background:var(--bg-tertiary);border:2px solid var(--border-color);border-radius:12px;padding:1.25rem;transition:all var(--transition-fast)}.transaction-card:hover{border-color:var(--bg-gradient-start);box-shadow:var(--shadow-sm)}.transaction-card.income{border-left:4px solid #4caf50}.transaction-card.outcome{border-left:4px solid #ff9800}.transaction-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--border-light)}.transaction-type{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.type-badge{padding:.375rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600}.type-badge.income{background:#4caf501a;color:#4caf50}.type-badge.outcome{background:#ff98001a;color:#ff9800}.transaction-date{font-size:.875rem;color:var(--text-secondary)}.transaction-item{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--border-light)}.item-name{font-weight:600;color:var(--text-primary)}.item-category{font-size:.875rem;color:var(--text-secondary)}.transaction-details{display:flex;flex-direction:column;gap:.5rem}.detail-row{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.detail-label{font-size:.875rem;color:var(--text-secondary);min-width:120px}.detail-value{font-size:.875rem;color:var(--text-primary);text-align:right;flex:1}@media (max-width: 768px){.history-modal{max-height:95vh}.history-filters{flex-direction:column}.filter-btn{width:100%}.transaction-header{flex-direction:column;align-items:flex-start;gap:.5rem}.transaction-type{width:100%}.detail-row{flex-direction:column;gap:.25rem}.detail-label{min-width:auto}.detail-value{text-align:left}}.print-modal-warehouse{max-width:1200px;max-height:90vh}.summary{background:#f5f5f5;padding:20px;border-radius:12px;margin-bottom:30px;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.category-badge{display:inline-block;padding:4px 8px;border-radius:12px;font-size:11px;font-weight:600;color:#fff}@media (max-width: 768px){.print-modal-warehouse{max-height:95vh}.print-preview-container{padding:1rem}.print-preview{padding:20px}.print-header h1{font-size:20px}.summary{grid-template-columns:1fr;gap:10px}.items-table{font-size:11px}.items-table th,.items-table td{padding:8px 4px}}.image-upload-section{margin:16px 0;text-align:center}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin:20px 0}.info-item label{display:block;font-size:12px;color:var(--text-secondary);margin-bottom:4px;font-weight:500}.info-value{font-size:16px;font-weight:600;color:var(--text-primary)}.quantity-value{display:flex;align-items:center;gap:8px}.deficit-badge{font-size:11px;padding:2px 6px;background:var(--warning-bg);color:var(--warning-text);border-radius:4px}.notes-section{margin:20px 0}.notes-section label{display:block;font-size:14px;font-weight:500;margin-bottom:8px}.notes-display{padding:12px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);min-height:60px;font-size:14px;line-height:1.6}.notes-display em{color:var(--text-tertiary)}textarea{width:100%;padding:10px;border:1px solid var(--border-color);border-radius:var(--radius-md);font-family:var(--font-sans);font-size:14px;resize:vertical}.grouped-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden;transition:all var(--transition-normal)}.grouped-card:hover{box-shadow:var(--shadow-md)}.group-header{padding:16px;border-bottom:1px solid var(--border-light);display:flex;justify-content:space-between;align-items:center;background:var(--bg-secondary)}.group-header h3{margin:0;font-size:16px;font-weight:600;color:var(--text-primary)}.group-image{width:60px;height:60px;border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--border-color)}.group-image img{width:100%;height:100%;object-fit:cover}.group-items{padding:12px;display:flex;flex-direction:column;gap:12px}.group-item{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-md);padding:12px}.item-name-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid var(--border-light)}.item-label{font-size:14px;font-weight:600;color:var(--text-primary)}.item-quantity{font-size:16px;font-weight:700;color:var(--text-primary)}.item-quantity.deficit{color:var(--color-warning)}.sub-item{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px;border-radius:var(--radius-sm);transition:all var(--transition-fast);border:1px solid transparent}.sub-item:hover{background:var(--bg-hover)}.sub-item.deficit{background:var(--warning-bg);border-color:var(--color-warning)}.sub-item-info{flex:1;display:flex;justify-content:space-between;align-items:center}.sub-item-info.clickable{cursor:pointer}.sub-item-info.clickable:hover{opacity:.8}.sub-item-detail{font-size:13px;color:var(--text-secondary);font-family:var(--font-mono)}.sub-item-qty{font-size:14px;font-weight:600;color:var(--text-primary)}.sub-item-qty.deficit{color:var(--color-danger)}.sub-item-actions{display:flex;gap:4px}.btn-quick-remove,.btn-quick-add{width:28px;height:28px;border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-primary);color:var(--text-primary);font-size:16px;font-weight:600;cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center}.btn-quick-remove:hover:not(:disabled){background:var(--error-bg);color:var(--color-danger);border-color:var(--color-danger)}.btn-quick-add:hover{background:var(--success-bg);color:var(--color-success);border-color:var(--color-success)}.btn-quick-remove:disabled{opacity:.3;cursor:not-allowed}@media (max-width: 768px){.group-header{flex-direction:column;gap:12px}.group-image{width:100%;height:120px}}.warehouse-page{padding:2rem;max-width:1400px;margin:0 auto}.warehouse-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;gap:1rem}.warehouse-tabs{display:flex;gap:.5rem;margin-bottom:1rem;background:var(--bg-secondary);padding:.5rem;border-radius:12px;box-shadow:var(--shadow-sm);overflow-x:auto}.warehouse-tab{flex:1;min-width:150px;padding:.875rem 1.5rem;background:transparent;border:none;border-radius:8px;font-size:1rem;font-weight:600;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-normal);display:flex;align-items:center;justify-content:center;gap:.5rem;white-space:nowrap}.warehouse-tab:hover:not(.active){background:var(--bg-tertiary);color:var(--text-primary)}.warehouse-tab.active{background:linear-gradient(135deg,var(--bg-gradient-start) 0%,var(--bg-gradient-end) 100%);color:#fff;box-shadow:var(--shadow-sm)}.tab-badge.deficit{background:#ff9800;color:#fff}.warehouse-subcategories{display:flex;gap:.5rem;margin-bottom:2rem;background:var(--bg-tertiary);padding:.75rem;border-radius:10px;overflow-x:auto}.subcategory-btn{flex:1;min-width:140px;padding:.75rem 1rem;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:8px;font-size:.95rem;font-weight:600;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-normal);white-space:nowrap}.subcategory-btn:hover:not(.active){border-color:var(--bg-gradient-start);color:var(--text-primary);transform:translateY(-2px)}.subcategory-btn.active{background:linear-gradient(135deg,var(--bg-gradient-start) 0%,var(--bg-gradient-end) 100%);border-color:var(--bg-gradient-start);color:#fff;box-shadow:0 4px 12px #667eea4d}.btn-categories{padding:.75rem 1.5rem;background:#2196f3;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all var(--transition-normal);white-space:nowrap}.btn-categories:hover{background:#1976d2;transform:translateY(-2px);box-shadow:0 4px 12px #2196f366}.btn-create-item{padding:.75rem 1.5rem;background:linear-gradient(135deg,var(--bg-gradient-start) 0%,var(--bg-gradient-end) 100%);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all var(--transition-normal);white-space:nowrap}.btn-create-item:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-print-warehouse{padding:.75rem 1.5rem;background:linear-gradient(135deg,#4caf50,#45a049);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all var(--transition-normal);white-space:nowrap;box-shadow:0 4px 12px #4caf504d}.btn-print-warehouse:hover{background:linear-gradient(135deg,#45a049,#388e3c);transform:translateY(-2px);box-shadow:0 6px 20px #4caf5080}.warehouse-grid-grouped{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:20px}.warehouse-grid-compact{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:.75rem}.warehouse-card-compact{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:10px;padding:.75rem;transition:all var(--transition-fast);display:flex;flex-direction:column;gap:.5rem}.warehouse-card-compact.clickable{cursor:pointer}.warehouse-card-compact:hover{border-color:var(--bg-gradient-start);transform:translateY(-2px);box-shadow:0 4px 16px #667eea33}.warehouse-card-compact.deficit{border-color:#ff9800;background:linear-gradient(135deg,rgba(255,152,0,.05) 0%,transparent 100%)}.card-image-preview{width:100%;height:120px;overflow:hidden;border-radius:8px;margin-bottom:.5rem;background:var(--bg-tertiary);display:flex;align-items:center;justify-content:center}.card-image-preview img{width:100%;height:100%;object-fit:cover}.card-main{display:flex;justify-content:space-between;align-items:center;gap:1rem}.card-left{flex:1;min-width:0;display:flex;align-items:center;gap:.75rem}.item-type{font-size:1.5rem;flex-shrink:0}.item-info{flex:1;min-width:0}.item-name-compact{font-size:.95rem;font-weight:600;color:var(--text-primary);line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.item-article-compact{font-size:.75rem;color:var(--text-secondary);font-family:Courier New,monospace;margin-top:.125rem}.card-right{display:flex;align-items:center;gap:.75rem;flex-shrink:0}.quantity-display{display:flex;align-items:baseline;gap:.25rem}.qty-number{font-size:1.5rem;font-weight:700;color:var(--text-primary);line-height:1}.qty-number.deficit{color:#ff9800}.qty-unit{font-size:.75rem;color:var(--text-secondary);font-weight:500}.deficit-icon{font-size:1rem;margin-left:.25rem;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.15)}}.action-buttons-compact{display:flex;gap:.375rem}.btn-add-compact,.btn-more-compact{width:36px;height:36px;border:none;border-radius:6px;cursor:pointer;font-size:1rem;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center;flex-shrink:0}.btn-add-compact{background:linear-gradient(135deg,var(--bg-gradient-start) 0%,var(--bg-gradient-end) 100%);color:#fff}.btn-add-compact:hover{transform:scale(1.1);box-shadow:0 2px 8px #667eea66}.btn-more-compact{background:var(--bg-tertiary);color:var(--text-secondary)}.btn-more-compact:hover{background:var(--border-color);color:var(--text-primary);transform:scale(1.1)}.btn-add-compact:active,.btn-more-compact:active{transform:scale(.95)}.progress-bar-compact{height:4px;background:var(--bg-tertiary);border-radius:2px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#4caf50,#8bc34a);border-radius:2px;transition:width var(--transition-normal)}.progress-fill.deficit{background:linear-gradient(90deg,#ff9800,#ff5722)}.empty-state{text-align:center;padding:4rem 2rem;background:var(--bg-secondary);border-radius:12px;box-shadow:var(--shadow-sm)}.empty-icon{font-size:4rem;margin-bottom:1rem}.empty-state h3{color:var(--text-primary);margin:0 0 .5rem}.empty-state p{color:var(--text-secondary);margin:0 0 1.5rem}@media (max-width: 768px){.warehouse-page{padding:1rem}.warehouse-tabs{flex-direction:column}.warehouse-tab{width:100%}.warehouse-subcategories{flex-direction:column;gap:.5rem}.subcategory-btn{width:100%;min-width:auto}.warehouse-grid-compact{grid-template-columns:1fr}}.assembly-card{background:#fff;border-radius:16px;padding:20px;box-shadow:0 4px 15px #0000001a;border:3px solid transparent;transition:all .3s ease;display:flex;flex-direction:column;gap:15px;height:100%}.assembly-card:hover{box-shadow:0 6px 25px #00000026;border-color:#667eea}.assembly-card.packed-card{opacity:.85;border-color:#4caf50;background:#f1f8f4}.card-photo{width:100%;aspect-ratio:16/9;border-radius:12px;overflow:hidden;background:#f5f5f5}.card-photo img{width:100%;height:100%;object-fit:cover}.card-header{display:flex;flex-direction:column;gap:8px;padding-bottom:15px;border-bottom:2px solid #f0f0f0}.card-order-number{margin:0;font-size:1.5rem;color:#333;font-weight:700}.card-article{font-size:.9rem;color:#667eea;font-weight:600;font-family:Courier New,monospace}.card-product-name{font-size:1.1rem;color:#555;font-weight:500;line-height:1.3}.card-quantity{font-size:.9rem;color:#999;font-weight:600}.order-barcode-section{padding:15px;background:linear-gradient(135deg,#4caf5020,#388e3c20);border-radius:12px;border:3px solid #4caf50;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{box-shadow:0 0 #4caf5066}50%{box-shadow:0 0 0 10px #4caf5000}}.order-barcode-section.ready{background:linear-gradient(135deg,#4caf5030,#388e3c30)}.order-barcode-label{display:flex;align-items:center;gap:8px;margin-bottom:10px;justify-content:center}.barcode-icon{font-size:1.5rem}.barcode-text{font-weight:700;color:#2e7d32;font-size:1rem}.order-barcode-visual{text-align:center;padding:15px;background:#fff;border-radius:8px;margin-bottom:8px}.order-barcode-canvas{max-width:100%;height:auto}.order-barcode-hint{text-align:center;font-size:.8rem;color:#2e7d32;font-weight:600}.card-progress{padding:12px 15px;background:linear-gradient(135deg,#667eea15,#764ba215);border-radius:10px}.progress-label{display:flex;justify-content:space-between;margin-bottom:8px;font-weight:600;color:#555;font-size:.95rem}.progress-value{font-size:1.2rem;color:#667eea}.progress-bar-wrapper{height:12px;background:#fff;border-radius:6px;overflow:hidden;box-shadow:inset 0 2px 4px #0000001a}.progress-bar-fill{height:100%;background:linear-gradient(90deg,#667eea,#764ba2);transition:width .5s ease;border-radius:6px}.card-packages{display:flex;flex-direction:column;gap:10px;flex:1}.package-row{display:flex;align-items:center;gap:10px;padding:12px 15px;background:#f9f9f9;border-radius:10px;border:2px solid #e0e0e0;transition:all .2s;position:relative}.package-row.package-not_packed{border-color:#ff9800;background:#fff8e1}.package-row.package-packed{border-color:#4caf50;background:#e8f5e9}.package-row.package-shipped{border-color:#2196f3;background:#e3f2fd}.package-info{flex:1;display:flex;flex-direction:column;gap:4px}.package-number{font-weight:700;font-size:.95rem;color:#333}.package-description{font-size:.85rem;color:#666;line-height:1.4}.package-actions{display:flex;align-items:center;gap:8px}.package-status-icon{font-size:1.8rem;flex-shrink:0}.btn-delete-pkg{width:36px;height:36px;background:#f44336;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:.9rem;transition:all .2s;display:flex;align-items:center;justify-content:center;flex-shrink:0}.btn-delete-pkg:hover{background:#d32f2f;transform:scale(1.1)}.btn-delete-pkg:active{transform:scale(.95)}.btn-add-package{padding:12px;background:#f5f5f5;border:2px dashed #ccc;border-radius:10px;color:#666;font-weight:600;cursor:pointer;transition:all .2s;font-size:.95rem}.btn-add-package:hover{background:#ebebeb;border-color:#999;color:#333}.add-package-row{display:flex;gap:8px;padding:8px;background:#f9f9f9;border-radius:10px;border:2px solid #667eea}.add-package-input{flex:1;padding:10px 12px;border:2px solid #e0e0e0;border-radius:8px;font-size:.9rem;outline:none}.add-package-input:focus{border-color:#667eea}.btn-create-pkg,.btn-cancel-pkg{width:40px;height:40px;border:none;border-radius:8px;font-size:1.2rem;font-weight:700;cursor:pointer;transition:all .2s}.btn-create-pkg{background:#4caf50;color:#fff}.btn-create-pkg:hover{background:#45a049}.btn-cancel-pkg{background:#f44336;color:#fff}.btn-cancel-pkg:hover{background:#d32f2f}.btn-print-barcodes{width:100%;padding:15px;background:linear-gradient(135deg,#2196f3,#1976d2);color:#fff;border:none;border-radius:10px;font-size:1.05rem;font-weight:700;cursor:pointer;transition:all .2s;box-shadow:0 4px 12px #2196f34d}.btn-print-barcodes:hover{transform:translateY(-2px);box-shadow:0 6px 20px #2196f366}.btn-print-barcodes:active{transform:translateY(0)}.loading-packages{text-align:center;padding:20px;color:#999;font-size:.9rem}@media (max-width: 1400px){.card-order-number{font-size:1.3rem}.card-product-name{font-size:1rem}}@media (max-width: 768px){.assembly-card{padding:15px}.card-order-number{font-size:1.2rem}}.assembly-page{padding:20px}.page-header{margin-bottom:30px;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}.header-left h1{font-size:2rem;margin:0 0 5px;color:var(--text-primary, #1a1a1a)}.page-description{color:var(--text-secondary, #666);font-size:.95rem;margin:0}.btn-print-all{padding:15px 30px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:12px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #667eea66;white-space:nowrap}.btn-print-all:hover{transform:translateY(-3px);box-shadow:0 6px 25px #667eea80}.btn-print-all:active{transform:translateY(0)}.scanner-section{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;padding:25px;margin-bottom:30px;box-shadow:0 4px 20px #667eea4d}.scanner-form{margin-bottom:15px}.scanner-input-group{display:flex;align-items:center;background:#fff;border-radius:8px;padding:15px 20px;box-shadow:0 2px 10px #0000001a}.scanner-icon{font-size:1.5rem;margin-right:15px}.scanner-input{flex:1;border:none;outline:none;font-size:1.1rem;background:transparent;color:#333}.scanner-input::placeholder{color:#999}.scan-message{padding:12px 20px;border-radius:8px;font-weight:500;animation:slideDown .3s ease}.scan-message-success{background:#4caf5033;color:#2e7d32;border:1px solid rgba(76,175,80,.4)}.scan-message-error{background:#f4433633;color:#c62828;border:1px solid rgba(244,67,54,.4)}.scan-message-warning{background:#ff980033;color:#e65100;border:1px solid rgba(255,152,0,.4)}.orders-section{margin-top:30px}.section-title{font-size:1.3rem;color:#333;margin-bottom:20px;font-weight:700;display:flex;align-items:center;gap:10px}.packed-section{margin-top:40px;padding-top:30px;border-top:3px solid #f0f0f0}.packed-title{color:#4caf50}.assembly-cards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}@media (max-width: 1600px){.assembly-cards-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 1000px){.assembly-cards-grid{grid-template-columns:1fr}}.empty-state{text-align:center;padding:60px 20px;color:#999}.empty-icon{font-size:4rem;margin-bottom:20px;opacity:.5}.empty-state h3{font-size:1.3rem;margin-bottom:10px;color:#666}.empty-state p{color:#999}@media (max-width: 768px){.assembly-page{padding:15px}.page-header{flex-direction:column;align-items:flex-start}.header-left h1{font-size:1.5rem}.btn-print-all{width:100%;padding:12px 20px;font-size:1rem}}.tsd-optimized{padding:15px;max-width:100%}.tsd-header{margin-bottom:20px;background:linear-gradient(135deg,#2196f3,#1976d2);padding:15px 20px;border-radius:12px;color:#fff;box-shadow:0 4px 15px #2196f34d}.tsd-header h1{margin:0;font-size:1.5rem}.tsd-scanner{background:linear-gradient(135deg,#2196f3,#1976d2);border-radius:12px;padding:20px;margin-bottom:20px;box-shadow:0 4px 20px #2196f34d}.tsd-scanner-group{display:flex;align-items:center;background:#fff;border-radius:10px;padding:15px 20px;margin-bottom:10px}.scanner-icon-large{font-size:2rem;margin-right:15px}.tsd-scanner-input{flex:1;border:none;outline:none;font-size:1.3rem;background:transparent;color:#333;font-weight:500}.tsd-scanner-input::placeholder{color:#999}.tsd-message{padding:15px 20px;border-radius:10px;font-weight:600;font-size:1.1rem;animation:slideDown .3s ease}.tsd-message-success{background:#4caf50f2;color:#fff}.tsd-message-error{background:#f44336f2;color:#fff}.tsd-message-warning{background:#ff9800f2;color:#fff}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.tsd-section{margin-bottom:30px}.tsd-section-title{font-size:1.2rem;color:#333;margin-bottom:15px;font-weight:700;padding-left:5px}.shipped-section{margin-top:40px;padding-top:30px;border-top:3px solid #f0f0f0}.shipped-title{color:#4caf50}.tsd-order-card{background:#fff;border-radius:12px;padding:20px;margin-bottom:15px;box-shadow:0 2px 10px #00000014;border:2px solid transparent;transition:all .2s ease}.tsd-order-card:active{transform:scale(.98)}.tsd-order-card.shipped-card{opacity:.7;border-color:#4caf50}.tsd-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:15px;padding-bottom:15px;border-bottom:2px solid #f0f0f0}.tsd-card-title h3{margin:0 0 5px;font-size:1.4rem;color:#333}.tsd-client{color:#666;font-size:1rem;display:block}.tsd-date{background:#e3f2fd;padding:8px 15px;border-radius:8px;font-size:.9rem;font-weight:600;color:#1976d2;white-space:nowrap}.tsd-progress{margin-bottom:15px}.tsd-progress-text{display:flex;justify-content:space-between;margin-bottom:8px;font-weight:600;color:#555}.tsd-progress-count{font-size:1.2rem;color:#2196f3}.tsd-progress-bar{height:12px;background:#f0f0f0;border-radius:6px;overflow:hidden}.tsd-progress-fill{height:100%;background:linear-gradient(90deg,#2196f3,#1976d2);transition:width .5s ease;border-radius:6px}.tsd-packages-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}.tsd-package{padding:12px;border-radius:10px;border:2px solid #e0e0e0;background:#fff;transition:all .2s}.tsd-package.tsd-package-packed{border-color:#4caf50;background:#e8f5e9}.tsd-package.tsd-package-shipped{border-color:#2196f3;background:#e3f2fd}.tsd-package.tsd-package-delivered{border-color:#9c27b0;background:#f3e5f5}.tsd-package-name{font-weight:600;font-size:.95rem;margin-bottom:8px;color:#333}.tsd-package-barcode{font-family:Courier New,monospace;font-size:.85rem;color:#666;margin-bottom:5px;word-break:break-all}.tsd-package-status{font-size:.8rem;font-weight:600;color:#555}@media (max-width: 600px){.tsd-optimized{padding:10px}.tsd-header h1{font-size:1.3rem}.tsd-scanner-input{font-size:1.1rem}.tsd-card-title h3{font-size:1.2rem}.tsd-packages-grid{grid-template-columns:1fr}}@media (orientation: landscape) and (max-height: 600px){.tsd-header{padding:10px 15px}.tsd-header h1{font-size:1.2rem}.tsd-scanner,.tsd-order-card{padding:15px}}.print-modal-production{max-width:1200px;max-height:90vh}.print-header{text-align:center;margin-bottom:30px;padding-bottom:20px;border-bottom:3px solid #667eea}.print-header h1{font-size:28px;color:#667eea;margin-bottom:5px}.summary-value{font-size:32px;font-weight:700;color:#667eea}.summary-value.deficit{color:#ff9800}.section-title{font-size:20px;font-weight:700;color:#667eea;margin-bottom:15px;padding-bottom:10px;border-bottom:2px solid #e0e0e0}.items-table .deficit{color:#ff9800;font-weight:700}.btn-print{padding:.75rem 1.5rem;background:#4caf50;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.btn-print:hover{background:#45a049;transform:translateY(-1px);box-shadow:0 4px 8px #4caf504d}@media (max-width: 768px){.print-modal-production{max-height:95vh}.print-preview-container{padding:1rem}.print-preview{padding:20px}.print-header h1{font-size:20px}.summary{grid-template-columns:1fr;gap:10px}.items-table{font-size:11px}.items-table th,.items-table td{padding:8px 4px}}.production-page{max-width:1400px;margin:0 auto;overflow-x:hidden}.production-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;max-width:100%}.workshop-column{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden;min-width:0}.column-header{padding:16px 20px;background:var(--bg-secondary);border-bottom:1px solid var(--border-light);display:flex;justify-content:space-between;align-items:center}.column-header h3{margin:0;font-size:16px;font-weight:600}.column-count{font-size:13px;font-weight:600;color:var(--text-secondary);padding:4px 10px;background:var(--bg-tertiary);border-radius:var(--radius-full)}.column-content{padding:12px;max-height:600px;overflow-y:auto}.production-card{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-md);padding:10px;margin-bottom:8px;transition:all var(--transition-fast)}.production-card:hover{box-shadow:var(--shadow-sm)}.production-card.deficit{border-color:var(--warning-border);background:var(--warning-bg)}.card-main{display:flex;justify-content:space-between;align-items:center;gap:12px}.card-left{flex:1;min-width:0}.item-name-ultra{font-size:13px;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.item-article-ultra{font-size:11px;color:var(--text-secondary);font-family:var(--font-mono)}.card-right{display:flex;align-items:center;gap:8px}.qty-ultra{font-size:16px;font-weight:700;color:var(--text-primary)}.qty-ultra.deficit{color:var(--color-warning)}.btn-add-ultra{width:32px;height:32px;border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--bg-primary);font-size:18px;cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center}.btn-add-ultra:hover{background:var(--success-bg);color:var(--color-success);border-color:var(--color-success);transform:scale(1.05)}.progress-bar-ultra{height:4px;background:var(--border-light);border-radius:2px;margin-top:8px;overflow:hidden}.progress-fill{height:100%;background:var(--color-success);transition:width var(--transition-normal)}.progress-fill.deficit{background:var(--color-warning)}@media (max-width: 768px){.production-grid{grid-template-columns:1fr;gap:16px}.column-content{max-height:400px}}@media (min-width: 769px) and (max-width: 1024px){.production-grid{grid-template-columns:repeat(2,1fr)}}.print-modal-painting{max-width:1200px;max-height:90vh}.print-preview-container{flex:1;overflow-y:auto;padding:2rem;background:#f5f5f5}.print-preview-container::-webkit-scrollbar{width:8px}.print-preview-container::-webkit-scrollbar-track{background:#e0e0e0;border-radius:4px}.print-preview-container::-webkit-scrollbar-thumb{background:#999;border-radius:4px}.print-preview{background:#fff;box-shadow:0 4px 12px #0000001a;padding:40px;min-height:297mm}.print-header{text-align:center;margin-bottom:30px;padding-bottom:20px;border-bottom:3px solid #ff9800}.print-header h1{font-size:28px;color:#ff9800;margin-bottom:5px}.print-header p{color:#666;font-size:14px}.summary{background:#f5f5f5;padding:20px;border-radius:12px;margin-bottom:30px;display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.summary-item{text-align:center;padding:15px;background:#fff;border-radius:8px}.summary-label{font-size:14px;color:#666;margin-bottom:8px}.summary-value{font-size:32px;font-weight:700;color:#ff9800}.summary-value.deficit{color:#ff5722}.section{margin-bottom:40px;page-break-inside:avoid}.section-title{font-size:20px;font-weight:700;color:#ff9800;margin-bottom:15px;padding-bottom:10px;border-bottom:2px solid #e0e0e0}.items-table{width:100%;border-collapse:collapse;margin-bottom:20px}.items-table th{background:#f5f5f5;padding:10px;text-align:left;font-size:12px;font-weight:600;color:#666;border-bottom:2px solid #e0e0e0}.items-table td{padding:10px;font-size:13px;border-bottom:1px solid #f0f0f0}.items-table tr:last-child td{border-bottom:none}.items-table tr:hover{background:#fafafa}.items-table .deficit{color:#ff5722;font-weight:700}.color-badge{display:inline-block;padding:4px 8px;border-radius:12px;font-size:11px;font-weight:600;color:#fff}.color-badge.white{background:#fff;color:#333;border:1px solid #ddd}.color-badge.black{background:#333;color:#fff}.btn-print{padding:.75rem 1.5rem;background:#ff9800;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.btn-print:hover{background:#f57c00;transform:translateY(-1px);box-shadow:0 4px 8px #ff98004d}@media (max-width: 768px){.print-modal-painting{max-height:95vh}.print-preview-container{padding:1rem}.print-preview{padding:20px}.print-header h1{font-size:20px}.summary{grid-template-columns:1fr;gap:10px}.items-table{font-size:11px}.items-table th,.items-table td{padding:8px 4px}}.painting-page{max-width:1400px;margin:0 auto;overflow-x:hidden}.painting-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;max-width:100%}@media (max-width: 768px){.painting-grid{grid-template-columns:1fr;gap:16px}}.delivery-page.tsd-optimized{padding:15px}.delivery-header{background:linear-gradient(135deg,#4caf50,#388e3c)}.delivery-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:15px;margin-top:20px}.delivery-card-compact{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 10px #00000014;cursor:pointer;transition:all .3s ease;border:2px solid transparent}.delivery-card-compact:hover{transform:translateY(-5px);box-shadow:0 5px 20px #00000026;border-color:#4caf50}.delivery-card-compact:active{transform:translateY(0) scale(.98)}.delivery-card-number{font-size:1.5rem;font-weight:700;color:#333;margin-bottom:10px}.delivery-card-client{font-size:1.1rem;color:#666;margin-bottom:8px;font-weight:500}.delivery-card-date{font-size:.9rem;color:#4caf50;margin-bottom:5px}.delivery-card-address{font-size:.85rem;color:#999;line-height:1.4;margin-top:10px;padding-top:10px;border-top:1px solid #f0f0f0}.delivery-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.delivery-modal-content{background:#fff;border-radius:16px;max-width:700px;width:100%;max-height:95vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 10px 40px #0006}.delivery-modal-header{background:linear-gradient(135deg,#4caf50,#388e3c);color:#fff;padding:20px 25px;display:flex;justify-content:space-between;align-items:center}.delivery-modal-header h2{margin:0;font-size:1.5rem}.modal-close-btn{background:#fff3;border:none;color:#fff;font-size:1.5rem;width:40px;height:40px;border-radius:50%;cursor:pointer;transition:background .2s}.modal-close-btn:hover{background:#ffffff4d}.modal-scanner{padding:20px;background:linear-gradient(135deg,#4caf5022,#388e3c22);border-bottom:2px solid #f0f0f0}.modal-scanner-group{display:flex;align-items:center;background:#fff;border-radius:10px;padding:15px 20px;margin-bottom:10px;box-shadow:0 2px 10px #0000001a}.modal-scanner-input{flex:1;border:none;outline:none;font-size:1.2rem;background:transparent;color:#333;font-weight:500}.modal-scanner-input::placeholder{color:#999}.modal-message{padding:12px 20px;border-radius:10px;font-weight:600;font-size:1rem;animation:slideDown .3s ease}.modal-message-success{background:#4caf50f2;color:#fff}.modal-message-error{background:#f44336f2;color:#fff}.modal-message-warning{background:#ff9800f2;color:#fff}.delivery-client-info{padding:20px;background:#f9f9f9}.delivery-client-info h3{margin:0 0 15px;font-size:1.1rem;color:#333}.client-info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.client-info-item{display:flex;flex-direction:column;gap:5px}.client-info-item.full-width{grid-column:1 / -1}.client-info-item strong{font-size:.85rem;color:#666}.client-info-item span{font-size:1rem;color:#333;font-weight:500}.delivery-progress{padding:20px;background:#e8f5e9}.delivery-progress-text{display:flex;justify-content:space-between;margin-bottom:10px;font-weight:600;color:#388e3c}.delivery-progress-count{font-size:1.3rem}.delivery-progress-bar{height:14px;background:#fff;border-radius:7px;overflow:hidden}.delivery-progress-fill{height:100%;background:linear-gradient(90deg,#4caf50,#388e3c);transition:width .5s ease;border-radius:7px}.delivery-packages{padding:20px;flex:1;overflow-y:auto}.delivery-packages h3{margin:0 0 15px;font-size:1.1rem;color:#333}.delivery-packages-list{display:flex;flex-direction:column;gap:12px}.delivery-package{padding:15px;border-radius:10px;border:2px solid #e0e0e0;background:#fff;transition:all .2s}.delivery-package.delivery-package-shipped{border-color:#2196f3;background:#e3f2fd}.delivery-package.delivery-package-delivered{border-color:#4caf50;background:#c8e6c9}.delivery-package-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.delivery-package-header .package-name{font-weight:600;font-size:1rem;color:#333}.delivery-package-header .package-status{padding:4px 12px;border-radius:12px;font-size:.8rem;font-weight:600}.delivery-package-shipped .package-status{background:#2196f3;color:#fff}.delivery-package-delivered .package-status{background:#2e7d32;color:#fff}.delivery-package-barcode{font-family:Courier New,monospace;font-size:.9rem;color:#666;padding:8px 12px;background:#f5f5f5;border-radius:6px;text-align:center}@media (max-width: 768px){.delivery-cards-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}.delivery-card-compact{padding:15px}.delivery-card-number{font-size:1.3rem}.delivery-modal-content{max-width:100%;max-height:100vh;border-radius:0}.client-info-grid{grid-template-columns:1fr}}@media (orientation: landscape) and (max-height: 600px){.delivery-modal-content{max-height:100vh}.modal-scanner,.delivery-client-info,.delivery-progress,.delivery-packages{padding:15px}}.tsd-empty{text-align:center;padding:60px 20px;color:#999}.tsd-empty .empty-icon{font-size:4rem;margin-bottom:20px;opacity:.5}.tsd-empty h3{font-size:1.3rem;color:#666}.loading{text-align:center;padding:40px;color:#999;font-size:1.1rem}.error-message{background:#ffebee;color:#c62828;padding:15px 20px;border-radius:8px;margin-bottom:20px;border-left:4px solid #c62828}.attendance-calendar{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:24px}.calendar-header{margin-bottom:16px}.weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin-bottom:8px}.weekday{text-align:center;font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;padding:8px}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;width:100%;overflow-x:auto}@media (max-width: 768px){.calendar-grid{gap:4px}.attendance-calendar{overflow-x:auto;-webkit-overflow-scrolling:touch}}.calendar-day{aspect-ratio:1;border:1.5px solid var(--border-light);border-radius:var(--radius-lg);padding:10px;display:flex;flex-direction:column;cursor:default;transition:all var(--transition-normal);background:var(--bg-primary);position:relative;overflow:hidden;box-shadow:var(--shadow-xs)}.calendar-day:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--color-primary),var(--color-primary-hover));transform:scaleX(0);transform-origin:left;transition:transform var(--transition-normal)}.calendar-day.clickable{cursor:pointer}.calendar-day.clickable:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px);border-color:var(--color-primary-light);z-index:10}.calendar-day.clickable:hover:before{transform:scaleX(1)}.calendar-day.empty{background:transparent;border:none;box-shadow:none}.calendar-day.today{border-color:var(--color-primary);border-width:2.5px;box-shadow:0 0 0 4px var(--color-primary-light),var(--shadow-sm)}[data-theme=dark] .calendar-day{background:var(--bg-tertiary);border-color:var(--border-color)}[data-theme=dark] .calendar-day.today{box-shadow:0 0 0 4px #60a5fa33,var(--shadow-sm)}.calendar-day.present{background:linear-gradient(135deg,#d1fae5,#ecfdf5);border-color:#10b981;box-shadow:0 4px 12px #10b98126}.calendar-day.late{background:linear-gradient(135deg,#fef3c7,#fefce8);border-color:#f59e0b;box-shadow:0 4px 12px #f59e0b26}.calendar-day.absent{background:linear-gradient(135deg,#fee2e2,#fef2f2);border-color:#ef4444;box-shadow:0 4px 12px #ef444426}.calendar-day.leave-day{background:linear-gradient(135deg,#fed7aa,#ffedd5);border-color:#fb923c;box-shadow:0 4px 12px #fb923c26}.calendar-day.half-day{background:linear-gradient(135deg,#d1fae5 50%,var(--bg-secondary) 50%);border-color:#10b981}.calendar-day.no-record.work-day{background:var(--bg-secondary);border-color:var(--border-color)}[data-theme=dark] .calendar-day.present{background:linear-gradient(135deg,#065f46,#064e3b);border-color:#10b981;box-shadow:0 4px 12px #10b98133}[data-theme=dark] .calendar-day.late{background:linear-gradient(135deg,#78350f,#92400e);border-color:#f59e0b;box-shadow:0 4px 12px #f59e0b33}[data-theme=dark] .calendar-day.absent{background:linear-gradient(135deg,#7f1d1d,#991b1b);border-color:#ef4444;box-shadow:0 4px 12px #ef444433}[data-theme=dark] .calendar-day.leave-day{background:linear-gradient(135deg,#92400e,#a16207);border-color:#fb923c;box-shadow:0 4px 12px #fb923c33}[data-theme=dark] .calendar-day.no-record.work-day{background:var(--bg-secondary);border-color:var(--border-color)}.day-number{font-size:16px;font-weight:700;color:var(--text-primary);margin-bottom:4px}.day-info{font-size:11px;color:var(--text-secondary);display:flex;flex-direction:column;gap:4px;margin-top:6px}.status-emoji{font-size:18px;text-align:center;margin-bottom:4px;filter:drop-shadow(0 1px 2px rgba(0,0,0,.1))}.time-info{font-size:10px;line-height:1.3;font-weight:500}.hours-worked{font-size:10px;font-weight:600;color:var(--color-primary);margin-top:auto}.calendar-legend{display:flex;flex-wrap:wrap;gap:16px;margin-top:20px;padding-top:20px;border-top:1px solid var(--border-light)}.legend-item{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-secondary)}.legend-badge{width:24px;height:24px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;font-size:14px;border:1px solid}.legend-badge.present{background:var(--success-bg);border-color:var(--success-border)}.legend-badge.late{background:var(--warning-bg);border-color:var(--warning-border)}.legend-badge.absent{background:var(--error-bg);border-color:var(--error-border)}.legend-badge.half-day{background:linear-gradient(135deg,var(--success-bg) 50%,var(--bg-tertiary) 50%);border-color:var(--success-border)}.telegram-setup{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:20px;margin-bottom:24px}.telegram-setup.loading{padding:40px;display:flex;align-items:center;justify-content:center}.telegram-connected,.telegram-not-connected{display:flex;align-items:center;gap:20px}.telegram-icon{font-size:48px;flex-shrink:0}.telegram-info h4{margin:0 0 4px;font-size:16px;font-weight:600;color:var(--text-primary)}.telegram-info p{margin:4px 0 8px;font-size:14px;color:var(--text-secondary)}.telegram-info small{display:block;font-size:12px;color:var(--text-tertiary);margin-top:8px}.telegram-info code{padding:2px 6px;background:var(--bg-tertiary);border-radius:4px;font-family:var(--font-mono);font-size:12px}.attendance-modal{max-width:600px;max-height:90vh;overflow-y:auto}.work-days-selector{display:flex;flex-direction:column;gap:8px}.day-btn{padding:10px 16px;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:var(--radius-md);font-size:14px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);text-align:left}.day-btn:hover{background:var(--bg-hover);border-color:var(--border-dark)}.day-btn.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff;font-weight:500}.salary-results{margin-top:24px;padding:20px;background:var(--bg-secondary);border-radius:var(--radius-lg)}.salary-results h3{margin:0 0 16px;font-size:16px;font-weight:600}.results-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px;margin-bottom:20px}.result-item{text-align:center;padding:12px;background:var(--bg-primary);border-radius:var(--radius-md);border:1px solid var(--border-light)}.result-label{font-size:11px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.result-value{font-size:20px;font-weight:700;color:var(--text-primary)}.result-value.danger{color:var(--color-danger)}.result-value.warning{color:var(--color-warning)}.salary-total{display:flex;justify-content:space-between;align-items:center;padding:20px;background:var(--color-primary-light);border-radius:var(--radius-md);margin-top:20px}.salary-label{font-size:16px;font-weight:600;color:var(--text-primary)}.salary-amount{font-size:28px;font-weight:700;color:var(--color-primary)}.salary-breakdown{margin-top:12px;text-align:center;color:var(--text-tertiary)}.admin-overview-loading{padding:48px;text-align:center}.overview-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px}.summary-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:20px;text-align:center}.summary-card.highlighted{border-color:var(--color-primary);background:var(--color-primary-light)}.summary-label{font-size:12px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.summary-value{font-size:28px;font-weight:700;color:var(--text-primary)}.workers-table-container{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden}.workers-table{width:100%;border-collapse:collapse}.workers-table th{background:var(--bg-secondary);padding:12px;text-align:left;font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border-color)}.workers-table td{padding:16px 12px;border-bottom:1px solid var(--border-light);font-size:14px}.workers-table tr:last-child td{border-bottom:none}.workers-table tr:hover{background:var(--bg-hover)}.worker-name{font-weight:500;color:var(--text-primary)}.worker-role{font-size:12px;color:var(--text-secondary);margin-top:2px}.salary-cell{font-weight:600;color:var(--color-primary)}.attendance-badge{padding:4px 10px;border-radius:var(--radius-full);font-size:12px;font-weight:600}.attendance-badge.good{background:var(--success-bg);color:var(--success-text)}.attendance-badge.average{background:var(--warning-bg);color:var(--warning-text)}.attendance-badge.bad{background:var(--error-bg);color:var(--error-text)}.danger{color:var(--color-danger)}.warning{color:var(--color-warning)}.workers-list{display:flex;flex-direction:column;gap:12px}.worker-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:16px;display:flex;justify-content:space-between;align-items:center;gap:16px}.worker-info{display:flex;align-items:center;gap:12px}.worker-avatar{width:40px;height:40px;border-radius:50%;background:var(--color-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:16px}.worker-rate{min-width:200px}.rate-display{display:flex;align-items:center;justify-content:space-between;gap:12px}.rate-value{font-size:16px;font-weight:600;color:var(--color-primary)}.rate-edit{display:flex;gap:8px;align-items:center}.rate-edit input{width:100px}.no-schedule{font-size:13px;color:var(--text-tertiary)}.settings-section{padding:20px;background:var(--bg-secondary);border-radius:var(--radius-md);margin-bottom:20px}.settings-section h3{margin:0 0 16px;font-size:16px;font-weight:600}@media (max-width: 768px){.calendar-grid{gap:4px}.calendar-day{padding:4px}.day-number{font-size:12px}.day-info{font-size:9px;gap:2px}.status-emoji{font-size:14px}.time-info{font-size:8px}.hours-worked{display:none}.results-grid{grid-template-columns:repeat(2,1fr)}.salary-amount{font-size:22px}.workers-table-container{overflow-x:auto}.workers-table{min-width:800px}.worker-card{flex-direction:column;align-items:stretch}.worker-rate{width:100%}}.logs-period{padding:12px 16px;background:var(--bg-secondary);border-radius:var(--radius-md);text-align:center;font-size:13px;color:var(--text-secondary);margin-bottom:20px}.logs-list{display:flex;flex-direction:column;gap:12px}.log-entry{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:12px;display:flex;gap:12px;transition:background var(--transition-fast)}.log-entry:hover{background:var(--bg-tertiary)}.log-icon{font-size:24px;flex-shrink:0}.log-content{flex:1}.log-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.log-action{font-size:14px;font-weight:600;color:var(--text-primary)}.log-datetime{font-size:12px;color:var(--text-tertiary)}.log-details{font-size:13px;color:var(--text-secondary)}.day-events{margin-top:4px;display:flex;flex-direction:column;gap:2px}.day-event{font-size:7px;padding:2px 3px;border-radius:2px;font-weight:600;line-height:1.2;text-align:center}.day-event.advance{background:#2196f333;color:#1976d2}.day-event.bonus{background:#9c27b033;color:#7b1fa2}.day-event.penalty{background:#f4433633;color:#c62828}.day-event.leave{background:#ff980033;color:#e65100}.day-event.pending{opacity:.6;font-style:italic}.day-event.rejected{opacity:.3;text-decoration:line-through}[data-theme=dark] .day-event.advance{background:#3b82f64d;color:#93c5fd}[data-theme=dark] .day-event.bonus{background:#a855f74d;color:#e9d5ff}[data-theme=dark] .day-event.penalty{background:#ef44444d;color:#fca5a5}[data-theme=dark] .day-event.leave{background:#f59e0b4d;color:#fcd34d}.absent-label{font-size:9px;font-weight:600;color:var(--error-text);text-align:center;margin-top:4px}.leave-label{font-size:9px;font-weight:600;color:var(--warning-text);text-align:center;margin-top:4px}[data-theme=dark] .day-marker.advance{background:#1e3a8a;color:#93c5fd}[data-theme=dark] .day-marker.bonus{background:#581c87;color:#e9d5ff}[data-theme=dark] .day-marker.penalty{background:#7f1d1d;color:#fca5a5}[data-theme=dark] .day-marker.leave{background:#78350f;color:#fcd34d}.info-box{padding:12px 16px;background:#3b82f61a;border-left:3px solid var(--primary-color);border-radius:var(--radius-sm);margin-top:12px;font-size:13px;line-height:1.5;color:var(--text-secondary)}.info-box strong{color:var(--text-primary);font-weight:600}[data-theme=dark] .info-box{background:#3b82f626;border-left-color:#60a5fa}.checkbox-group{margin-bottom:8px}.checkbox-group label{display:flex;align-items:center;gap:8px;cursor:pointer;font-weight:500;padding:8px 12px;border-radius:var(--radius-sm);transition:background .2s}.checkbox-group label:hover{background:#3b82f60d}.checkbox-group input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--primary-color)}.checkbox-group span{font-size:15px}.nested-fields{margin-left:26px;padding:12px;background:#00000005;border-left:2px solid var(--primary-color);border-radius:var(--radius-sm);margin-bottom:16px}[data-theme=dark] .nested-fields{background:#ffffff08}.nested-fields .form-group{margin-bottom:12px}.nested-fields .form-group:last-child{margin-bottom:0}.attendance-page{max-width:1400px;margin:0 auto;overflow-x:hidden}.attendance-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:64px 24px;gap:20px}.attendance-loading .spinner{width:48px;height:48px;border-width:4px}.user-selector{background:var(--bg-primary);padding:20px 24px;border-radius:var(--radius-xl);margin-bottom:28px;display:flex;align-items:center;gap:16px;border:1.5px solid var(--border-color);box-shadow:var(--shadow-xs);transition:all var(--transition-normal)}.user-selector:hover{border-color:var(--border-dark);box-shadow:var(--shadow-sm)}.user-selector label{font-weight:600;color:var(--text-primary);font-size:15px}.user-selector select{flex:1;max-width:400px;font-weight:500}[data-theme=dark] .user-selector{background:var(--bg-tertiary);border-color:var(--border-color)}.month-navigation{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:28px;padding:20px 24px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-xs);flex-wrap:wrap}.month-navigation h2{margin:0;font-size:24px;font-weight:700;text-transform:capitalize;color:var(--text-primary);background:linear-gradient(135deg,var(--color-primary),var(--color-primary-hover));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.5px}[data-theme=dark] .month-navigation{background:var(--bg-tertiary);border-color:var(--border-color)}.attendance-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;margin-bottom:32px}.stat-card{background:var(--bg-primary);border:1.5px solid var(--border-color);border-radius:var(--radius-lg);padding:24px;display:flex;align-items:center;gap:18px;transition:all var(--transition-normal);box-shadow:var(--shadow-xs);position:relative;overflow:hidden}.stat-card:after{content:"";position:absolute;bottom:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--color-primary),var(--color-primary-hover));transform:scaleX(0);transform-origin:left;transition:transform var(--transition-normal)}.stat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px);border-color:var(--color-primary-light)}.stat-card.highlighted{border-color:var(--color-primary);background:linear-gradient(135deg,#3b82f60d,#2563eb0d)}.stat-card.highlighted:after{transform:scaleX(1)}.stat-icon{width:52px;height:52px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;font-size:26px;flex-shrink:0;background:var(--bg-secondary);transition:transform var(--transition-fast)}.stat-card:hover .stat-icon{transform:scale(1.1) rotate(5deg)}.stat-content{flex:1;min-width:0}[data-theme=dark] .stat-card{background:var(--bg-tertiary);border-color:var(--border-color)}[data-theme=dark] .stat-card.highlighted{background:linear-gradient(135deg,#60a5fa1a,#3b82f61a);border-color:#60a5fa4d}[data-theme=dark] .stat-icon{background:var(--bg-secondary)}.stat-label{font-size:12px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.stat-value{font-size:24px;font-weight:700;color:var(--text-primary)}.stat-value.salary{color:var(--color-primary)}.stat-extra{font-size:11px;color:var(--text-tertiary);margin-top:4px}.attendance-tabs{display:flex;gap:8px;margin-bottom:28px;background:var(--bg-secondary);padding:8px;border-radius:var(--radius-xl);border:1.5px solid var(--border-color);overflow-x:auto;box-shadow:var(--shadow-xs)}.attendance-tab{flex:1;min-width:120px;padding:13px 24px;background:transparent;border:none;border-radius:var(--radius-md);font-size:14px;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.attendance-tab:hover:not(.active){background:var(--bg-hover);color:var(--text-primary)}.attendance-tab.active{background:linear-gradient(135deg,var(--color-primary),var(--color-primary-hover));color:#fff;font-weight:600;box-shadow:0 4px 12px #3b82f64d;position:relative}.attendance-tab.active:after{content:"";position:absolute;bottom:-8px;left:50%;transform:translate(-50%);width:40px;height:3px;background:#fff;border-radius:2px}[data-theme=dark] .attendance-tabs{background:var(--bg-tertiary);border-color:var(--border-color)}[data-theme=dark] .attendance-tab.active{box-shadow:0 4px 12px #60a5fa4d}.quick-actions{display:flex;gap:12px;margin-bottom:24px;padding:16px 20px;background:linear-gradient(135deg,#3b82f608,#2563eb08);border-radius:var(--radius-xl);border:1.5px solid var(--color-primary-light);flex-wrap:wrap;overflow-x:auto;box-shadow:var(--shadow-xs)}[data-theme=dark] .quick-actions{background:linear-gradient(135deg,#60a5fa0d,#3b82f60d);border-color:#60a5fa33}.warning-message{background:var(--warning-bg);color:var(--warning-text);padding:16px 20px;border-radius:var(--radius-lg);border-left:4px solid var(--warning-border);margin-bottom:24px}.warning-message strong{display:block;margin-bottom:8px;font-size:15px}.warning-message p{margin:8px 0;font-size:13px}.warning-message button{margin-top:12px}@media (max-width: 768px){.attendance-stats{grid-template-columns:1fr}.month-navigation{flex-direction:column;align-items:stretch}.month-navigation h2{text-align:center}.quick-actions{flex-direction:column}.quick-actions .btn{width:100%;justify-content:center}.attendance-tabs{flex-direction:column}}.info-modal{width:90%;max-width:700px;max-height:90vh;overflow-y:auto}.info-modal.large{max-width:900px}.form-section{padding-bottom:24px;border-bottom:1px solid var(--border-color);margin-bottom:24px}.form-section h3{margin:0 0 16px;font-size:16px;font-weight:600;color:var(--text-primary)}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:13px;font-weight:500;color:var(--text-primary);margin-bottom:6px}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:16px}.form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:16px}.type-selector{display:flex;gap:12px;margin-bottom:24px}.type-btn{flex:1;padding:12px 20px;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:var(--radius-md);font-size:14px;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast)}.type-btn:hover{border-color:var(--color-primary);color:var(--text-primary)}.type-btn.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.icon-picker,.color-picker{display:flex;flex-wrap:wrap;gap:8px}.icon-option{width:44px;height:44px;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:var(--radius-md);font-size:24px;cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center}.icon-option:hover{background:var(--bg-hover);transform:scale(1.05)}.icon-option.active{border-color:var(--color-primary);background:var(--color-primary-light);transform:scale(1.1)}.color-option{width:36px;height:36px;border:3px solid transparent;border-radius:50%;cursor:pointer;transition:all var(--transition-fast)}.color-option:hover{transform:scale(1.1)}.color-option.active{border-color:var(--text-primary);transform:scale(1.15)}.categories-list{padding-top:24px;border-top:1px solid var(--border-color)}.categories-list h3{margin:0 0 16px;font-size:16px;font-weight:600;color:var(--text-primary)}.list-items{display:flex;flex-direction:column;gap:8px}.list-item{display:flex;justify-content:space-between;align-items:center;padding:12px;background:var(--bg-secondary);border-radius:var(--radius-md);transition:background var(--transition-fast)}.list-item:hover{background:var(--bg-tertiary)}.item-info{display:flex;align-items:center;gap:12px;flex:1}.item-icon{font-size:24px}.item-name{font-size:14px;font-weight:600;color:var(--text-primary)}.item-description{font-size:12px;color:var(--text-secondary);margin-top:2px}.item-actions{display:flex;gap:8px}.btn-icon{padding:6px 10px;background:transparent;border:none;border-radius:var(--radius-sm);font-size:16px;cursor:pointer;transition:all var(--transition-fast)}.btn-icon:hover{background:var(--bg-hover)}.btn-icon.danger:hover{background:var(--error-bg)}.cover-preview{position:relative;max-width:400px;border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--border-color)}.cover-preview img{width:100%;height:auto;display:block}.btn-remove-cover{position:absolute;top:8px;right:8px;padding:6px 12px;background:#ef4444e6;color:#fff;border:none;border-radius:var(--radius-sm);font-size:13px;cursor:pointer;transition:background var(--transition-fast)}.btn-remove-cover:hover{background:#dc2626}.editor-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.btn-sm{padding:6px 12px;font-size:13px}.file-uploaded{padding:12px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md)}.file-info-box{display:flex;justify-content:space-between;align-items:center}.file-name-display{font-size:14px;font-weight:500;color:var(--text-primary);margin-bottom:4px}.file-size-display{font-size:12px;color:var(--text-tertiary)}.header-with-category{display:flex;flex-direction:column;gap:8px}.category-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:var(--radius-full);font-size:12px;font-weight:600;color:#fff;align-self:flex-start}.entry-cover-large{width:100%;max-height:400px;overflow:hidden;border-radius:var(--radius-lg);margin-bottom:24px;border:1px solid var(--border-color)}.entry-cover-large img{width:100%;height:auto;display:block}.entry-metadata{display:flex;flex-wrap:wrap;gap:16px;padding-bottom:16px;margin-bottom:16px;border-bottom:1px solid var(--border-light)}.meta-item{font-size:13px;color:var(--text-secondary);display:flex;align-items:center;gap:4px}.article-content{font-size:15px;line-height:1.7;color:var(--text-primary)}.article-content h1{font-size:24px;margin:24px 0 12px;color:var(--text-primary)}.article-content h2{font-size:20px;margin:20px 0 10px;color:var(--text-primary)}.article-content h3{font-size:18px;margin:16px 0 8px;color:var(--text-primary)}.article-content p{margin:12px 0}.article-content strong{font-weight:600;color:var(--text-primary)}.article-content em{font-style:italic;color:var(--text-secondary)}.article-content a{color:var(--color-primary);text-decoration:underline}.article-content a:hover{color:var(--color-primary-hover)}.content-image{width:100%;max-width:600px;height:auto;border-radius:var(--radius-md);margin:16px 0;border:1px solid var(--border-color)}.file-content{text-align:center;padding:32px 0}.file-description{font-size:14px;color:var(--text-secondary);margin-bottom:24px;line-height:1.6}.btn-download{padding:12px 32px;font-size:16px}.file-details{margin-top:24px;padding:16px;background:var(--bg-secondary);border-radius:var(--radius-md);font-size:13px;color:var(--text-secondary)}.file-details div{margin:4px 0}.view-mode{padding:32px}@media (max-width: 768px){.info-modal{max-width:95vw}.view-mode{padding:20px}.article-content{font-size:14px}.content-image{max-width:100%}}.checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px;color:var(--text-primary)}.checkbox-label input[type=checkbox]{cursor:pointer;width:18px;height:18px}.info-page{max-width:1400px;margin:0 auto}.info-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px;gap:16px}.page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:32px}.header-left{display:flex;align-items:center;gap:16px;flex:1}.btn-back{padding:8px 16px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:14px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast)}.btn-back:hover{background:var(--bg-tertiary);color:var(--text-primary)}.page-header h1{margin:0;font-size:28px;font-weight:600;color:var(--text-primary)}.page-description{font-size:14px;color:var(--text-secondary);margin-top:4px}.categories-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}.category-card{background:var(--bg-primary);border:2px solid var(--border-color);border-radius:var(--radius-lg);padding:24px;cursor:pointer;transition:all var(--transition-normal);display:flex;flex-direction:column;gap:12px}.category-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:currentColor}.category-icon{font-size:48px;margin-bottom:8px}.category-card h3{margin:0;font-size:18px;font-weight:600;color:var(--text-primary)}.category-card p{margin:0;font-size:14px;color:var(--text-secondary);line-height:1.5}.category-footer{margin-top:auto;padding-top:12px;border-top:1px solid var(--border-light)}.entry-count{font-size:13px;color:var(--text-tertiary)}.entries-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px}.entry-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden;cursor:pointer;transition:all var(--transition-normal)}.entry-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--color-primary)}.entry-card.pinned{border-color:var(--color-warning);background:var(--warning-bg)}.entry-cover{width:100%;height:180px;overflow:hidden;background:var(--bg-tertiary)}.entry-cover img{width:100%;height:100%;object-fit:cover}.entry-content{padding:20px}.pinned-badge{display:inline-block;padding:4px 10px;background:var(--warning-bg);color:var(--warning-text);border-radius:var(--radius-full);font-size:12px;font-weight:600;margin-bottom:8px}.entry-card h3{margin:0 0 12px;font-size:16px;font-weight:600;color:var(--text-primary);line-height:1.4}.entry-meta{display:flex;align-items:center;gap:12px;font-size:13px;color:var(--text-secondary)}.entry-type,.entry-views{display:flex;align-items:center;gap:4px}.file-info{margin-top:12px;padding:10px;background:var(--bg-secondary);border-radius:var(--radius-sm);display:flex;justify-content:space-between;align-items:center;font-size:12px}.file-name{color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-size{color:var(--text-tertiary);flex-shrink:0}.empty-icon{font-size:64px;margin-bottom:16px;opacity:.5}.empty-state h3{margin:0 0 8px;font-size:20px;color:var(--text-primary)}.empty-state p{margin:0 0 24px;font-size:14px;color:var(--text-secondary)}@media (max-width: 768px){.page-header{flex-direction:column;gap:16px}.header-left{flex-direction:column;align-items:flex-start}.header-actions{width:100%}.header-actions button{flex:1}.categories-grid,.entries-grid{grid-template-columns:1fr;gap:16px}.page-header h1{font-size:24px}}.home-page{max-width:1400px;margin:0 auto}.welcome-section{text-align:center;margin-bottom:48px;padding:40px 24px;background:linear-gradient(135deg,#3b82f60d,#2563eb0d);border-radius:var(--radius-xl);border:1px solid var(--color-primary-light)}.welcome-section h2{font-size:36px;font-weight:700;color:var(--text-primary);margin-bottom:12px;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-hover));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.welcome-section p{color:var(--text-secondary);font-size:18px;max-width:600px;margin:0 auto}[data-theme=dark] .welcome-section{background:linear-gradient(135deg,#60a5fa1a,#3b82f61a);border-color:#60a5fa33}.info-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:24px;margin-bottom:48px}.info-card{background:var(--bg-primary);border:1px solid var(--border-color);padding:32px;border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);transition:all var(--transition-normal);position:relative;overflow:hidden}.info-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--color-primary),var(--color-primary-hover));transform:scaleX(0);transform-origin:left;transition:transform var(--transition-normal)}.info-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg);border-color:var(--color-primary-light)}.info-card:hover:before{transform:scaleX(1)}.card-icon{font-size:48px;margin-bottom:20px;display:inline-block;transition:transform var(--transition-normal)}.info-card:hover .card-icon{transform:scale(1.1) rotate(5deg)}.info-card h3{color:var(--text-primary);margin-bottom:12px;font-size:22px;font-weight:600}.info-card p{color:var(--text-secondary);margin:8px 0;line-height:1.6;font-size:15px}[data-theme=dark] .info-card{background:var(--bg-tertiary);border-color:var(--border-color)}[data-theme=dark] .info-card:hover{border-color:#60a5fa4d}.role-description{font-style:italic;background:var(--bg-tertiary);padding:.5rem;border-radius:6px;margin:.75rem 0!important}.permissions-list{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.permission-tag{background:linear-gradient(135deg,var(--bg-gradient-start) 0%,var(--bg-gradient-end) 100%);color:#fff;padding:.375rem .75rem;border-radius:12px;font-size:.75rem;font-weight:500}.quick-stats{background:var(--bg-primary);border:1px solid var(--border-color);padding:32px;border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);margin-bottom:48px;transition:all var(--transition-normal)}.quick-stats h3{color:var(--text-primary);margin-bottom:28px;font-size:24px;font-weight:600;display:flex;align-items:center;gap:10px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}.stat-card{display:flex;align-items:center;gap:18px;padding:24px;background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-lg);transition:all var(--transition-normal);position:relative;overflow:hidden}.stat-card:after{content:"";position:absolute;bottom:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--color-primary),var(--color-primary-hover));transform:scaleX(0);transition:transform var(--transition-normal)}.stat-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);border-color:var(--color-primary-light)}.stat-card:hover:after{transform:scaleX(1)}.stat-icon{font-size:40px;transition:transform var(--transition-normal)}.stat-card:hover .stat-icon{transform:scale(1.15)}.stat-info{flex:1}.stat-value{font-size:32px;font-weight:700;color:var(--color-primary);line-height:1;margin-bottom:6px}.stat-label{font-size:14px;color:var(--text-secondary);font-weight:500}[data-theme=dark] .quick-stats{background:var(--bg-tertiary);border-color:var(--border-color)}[data-theme=dark] .stat-card{background:var(--bg-primary);border-color:var(--border-color)}[data-theme=dark] .stat-value{color:var(--color-primary)}.status-section{background:var(--bg-secondary);padding:2rem;border-radius:12px;box-shadow:var(--shadow-md);transition:background var(--transition-normal)}.status-section h3{color:var(--text-primary);margin-bottom:1.5rem;font-size:1.25rem}.status-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.status-item{display:flex;align-items:center;gap:.75rem;padding:1rem;background:var(--bg-tertiary);border-radius:8px}.status-dot{width:12px;height:12px;border-radius:50%;background:#ccc}.status-dot.active{background:var(--status-active);box-shadow:0 0 8px #10b98180}@media (max-width: 768px){.welcome-section{padding:32px 20px;margin-bottom:32px}.welcome-section h2{font-size:28px}.welcome-section p{font-size:16px}.info-cards{grid-template-columns:1fr;gap:16px}.info-card{padding:24px}.quick-stats{padding:24px;margin-bottom:32px}.quick-stats h3{font-size:20px;margin-bottom:20px}.stats-grid{grid-template-columns:1fr;gap:16px}.stat-card{padding:20px}.stat-value{font-size:28px}.status-grid{grid-template-columns:1fr}.permissions-list{justify-content:center}}@media (min-width: 769px) and (max-width: 1024px){.info-cards,.stats-grid{grid-template-columns:repeat(2,1fr)}}.notification-button{position:fixed;bottom:24px;right:24px;width:56px;height:56px;background:var(--color-primary);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 12px #2563eb66;transition:all var(--transition-fast);z-index:999}.notification-button:hover{transform:scale(1.1)}.notification-icon{font-size:24px;animation:ring 2s ease-in-out infinite}@keyframes ring{0%,to{transform:rotate(0)}10%,30%{transform:rotate(-15deg)}20%,40%{transform:rotate(15deg)}}.notification-badge{position:absolute;top:-4px;right:-4px;background:var(--color-danger);color:#fff;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;border:2px solid var(--bg-primary)}.notifications-modal{position:fixed;bottom:96px;right:24px;width:360px;max-height:480px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:0 8px 24px #0000001f;z-index:998;animation:slideUp .3s ease-out}.notifications-header{padding:16px 20px;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center}.notifications-header h3{margin:0;font-size:16px;font-weight:600}.notifications-header button{background:transparent;border:none;font-size:20px;color:var(--text-secondary);cursor:pointer;padding:4px 8px;border-radius:var(--radius-sm);transition:background var(--transition-fast)}.notifications-header button:hover{background:var(--bg-hover)}.notifications-list{max-height:400px;overflow-y:auto}.notification-item{padding:16px 20px;border-bottom:1px solid var(--border-light);display:flex;gap:12px;transition:background var(--transition-fast)}.notification-item:last-child{border-bottom:none}.notification-item:hover{background:var(--bg-hover)}.notif-icon{font-size:24px;flex-shrink:0}.notif-content{flex:1}.notif-title{font-size:14px;font-weight:600;color:var(--text-primary);margin-bottom:4px}.notif-text{font-size:13px;color:var(--text-secondary);margin-bottom:4px;white-space:pre-line}.notif-time{font-size:11px;color:var(--text-tertiary);margin-bottom:8px}.notif-actions{display:flex;gap:8px;margin-top:8px}.btn-approve,.btn-reject{padding:6px 12px;border:none;border-radius:var(--radius-sm);font-size:12px;font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.btn-approve{background:var(--success-bg);color:var(--success-text)}.btn-approve:hover{background:var(--color-success);color:#fff}.btn-reject{background:var(--error-bg);color:var(--error-text)}.btn-reject:hover{background:var(--color-danger);color:#fff}@media (max-width: 768px){.notifications-modal{right:16px;left:16px;width:auto;bottom:88px}.notification-button{right:16px;bottom:16px}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease}.modal-content{background:var(--card-bg);border-radius:12px;box-shadow:0 20px 60px #0000004d;width:90%;max-width:600px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;animation:slideUp .3s ease}.modal-content.modal-large{max-width:900px}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.modal-header{padding:1.5rem;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center}.modal-header h2{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin:0}.modal-close{background:none;border:none;font-size:1.5rem;color:var(--text-secondary);cursor:pointer;padding:.5rem;border-radius:6px;transition:all .2s}.modal-close:hover{background:var(--hover-bg);color:var(--text-primary)}.modal-body{padding:1.5rem;overflow-y:auto;flex:1}.modal-footer{padding:1.5rem;border-top:1px solid var(--border-color);display:flex;gap:1rem;justify-content:flex-end}.form-group{margin-bottom:1.5rem}.form-group label{display:block;font-weight:500;color:var(--text-primary);margin-bottom:.5rem;font-size:.95rem}.form-group label .required{color:#f44336;margin-left:.25rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.75rem;border:1px solid var(--border-color);border-radius:8px;background:var(--card-bg);color:var(--text-primary);font-size:.95rem;font-family:inherit;transition:all .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #2196f31a}.form-group small{display:block;margin-top:.5rem;font-size:.85rem;color:var(--text-secondary);line-height:1.4}.form-group small code{background:var(--hover-bg);padding:.2rem .4rem;border-radius:4px;font-family:Courier New,monospace;font-size:.85em}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-section{margin:2rem 0;padding:1.5rem;background:var(--hover-bg);border-radius:8px}.form-section h3{font-size:1.1rem;font-weight:600;margin:0 0 1.5rem;color:var(--text-primary)}.checkbox-group{margin:1rem 0}.radio-label{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:var(--hover-bg);border:1px solid var(--border-color);border-radius:6px;cursor:pointer;transition:all .2s}.radio-label:hover{background:var(--card-bg);border-color:var(--primary-color)}.radio-label input[type=radio]{cursor:pointer}.radio-label span{font-size:.9rem;color:var(--text-primary)}.checkbox-group label{display:flex;align-items:center;gap:.75rem;cursor:pointer;padding:.75rem;border-radius:8px;transition:background .2s}.checkbox-group label:hover{background:var(--hover-bg)}.checkbox-group input[type=checkbox]{width:20px;height:20px;cursor:pointer}.checkbox-group span{font-size:.95rem;color:var(--text-primary)}.checkbox-list{max-height:300px;overflow-y:auto;border:1px solid var(--border-color);border-radius:8px;padding:.5rem}.checkbox-item{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem;border-radius:6px;cursor:pointer;transition:background .2s;margin-bottom:.5rem}.checkbox-item:hover{background:var(--hover-bg)}.checkbox-item input[type=checkbox]{margin-top:.25rem;flex-shrink:0;width:18px;height:18px;cursor:pointer}.checkbox-label{flex:1;display:flex;flex-direction:column;gap:.25rem}.checkbox-label strong{color:var(--text-primary);font-size:.95rem}.checkbox-label small{color:var(--text-secondary);font-size:.85rem}.checkbox-list-small{display:flex;flex-wrap:wrap;gap:.5rem}.checkbox-item-small{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:var(--hover-bg);border-radius:6px;cursor:pointer;transition:all .2s}.checkbox-item-small:hover{background:var(--primary-color);color:#fff}.checkbox-item-small input[type=checkbox]{width:16px;height:16px;cursor:pointer}.btn-primary,.btn-secondary{padding:.75rem 1.5rem;border:none;border-radius:8px;font-weight:500;font-size:.95rem;cursor:pointer;transition:all .2s}.btn-primary{background:var(--primary-color);color:#fff}.btn-primary:hover:not(:disabled){background:var(--primary-hover);transform:translateY(-1px);box-shadow:0 4px 12px #2196f34d}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{background:var(--hover-bg);color:var(--text-primary)}.btn-secondary:hover{background:var(--border-color)}.info-box{padding:1rem;background:#e3f2fd;border:1px solid #2196f3;border-radius:8px;margin:1.5rem 0}.info-box strong{display:block;margin-bottom:.5rem;color:#1976d2}.info-box ul{margin:.5rem 0 0 1.5rem;color:#1976d2}.info-box li{margin:.25rem 0;font-size:.9rem}.template-example{padding:1rem;background:var(--hover-bg);border-radius:8px;margin-top:1rem}.template-example h4{font-size:.95rem;font-weight:600;margin:0 0 .75rem;color:var(--text-primary)}.template-example ul{list-style:none;padding:0;margin:0}.template-example li{padding:.5rem;margin:.5rem 0;background:var(--card-bg);border-radius:4px;font-family:Courier New,monospace;font-size:.9rem}.template-example code{color:var(--primary-color);font-weight:600}.empty-state-small{padding:2rem;text-align:center;color:var(--text-secondary)}.empty-state-small p{margin:0;font-size:.95rem}.text-muted{color:var(--text-secondary);font-size:.9rem;font-style:italic}.suggestion{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:#e3f2fd;border:1px solid #2196f3;border-radius:6px;margin-top:.5rem}.suggestion strong{color:#1976d2;font-family:monospace}.btn-use-suggestion{padding:.4rem .75rem;background:#2196f3;color:#fff;border:none;border-radius:4px;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-use-suggestion:hover{background:#1976d2;transform:translateY(-1px)}.barcode-note{display:block;text-align:center;margin-top:.75rem;color:var(--text-secondary);font-style:italic}.materials-list{display:flex;flex-direction:column;gap:.75rem}.material-item{padding:1rem;background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px}.material-select-group{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:.5rem;align-items:center}.btn-remove-material{padding:.5rem;background:#f44336;color:#fff;border:none;border-radius:6px;cursor:pointer;transition:all .2s;font-size:1rem}.btn-remove-material:hover{background:#d32f2f}.btn-add-material{width:100%;padding:.75rem;background:var(--hover-bg);border:2px dashed var(--border-color);border-radius:8px;color:var(--text-primary);font-weight:500;cursor:pointer;transition:all .2s}.btn-add-material:hover{background:var(--primary-color);border-color:var(--primary-color);color:#fff}.generated-name-preview{padding:1rem;background:#e8f5e9;border:1px solid #4caf50;border-radius:8px;margin:1rem 0}.generated-name-preview strong{display:block;margin-bottom:.5rem;color:#2e7d32;font-size:.9rem}.preview-value{font-size:1.1rem;font-weight:600;color:#1b5e20;padding:.5rem;background:#fff;border-radius:4px;margin-bottom:.5rem}.generated-name-preview small{display:block;color:#388e3c;font-size:.85rem}.cost-preview{padding:1rem;background:#fff3e0;border:1px solid #ff9800;border-radius:8px;margin-top:1rem}.cost-preview strong{display:block;margin-bottom:.5rem;color:#e65100;font-size:.9rem}.cost-value{font-size:1.3rem;font-weight:700;color:#e65100}.linked-param-info{display:flex;flex-direction:column;gap:.25rem}.input-disabled{background:#f5f5f5!important;cursor:not-allowed;color:var(--text-secondary)!important}.badge-fixed,.badge-linked{display:inline-block;padding:.2rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600;margin-left:.5rem}.badge-fixed{background:#e3f2fd;color:#1976d2}.badge-linked{background:#f3e5f5;color:#9c27b0}.model-detail-section{padding:1.5rem;background:var(--hover-bg);border-radius:8px;margin-bottom:1rem}.model-detail-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:1rem;border-bottom:2px solid var(--border-color)}.model-detail-header h4{margin:0;font-size:1.1rem;color:var(--text-primary)}.quantity-control{display:flex;align-items:center;gap:.5rem}.quantity-control label{font-size:.9rem;font-weight:500;margin:0}.quantity-control input{width:80px;padding:.5rem;border:1px solid var(--border-color);border-radius:6px;text-align:center;font-weight:600}.allowed-details-list{margin-top:1rem}.allowed-details-list>label{display:block;font-weight:500;margin-bottom:.75rem;color:var(--text-primary)}.checkbox-list-compact{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:.5rem;max-height:300px;overflow-y:auto;padding:.5rem;border:1px solid var(--border-color);border-radius:8px}.checkbox-item-compact{display:flex;align-items:flex-start;gap:.5rem;padding:.75rem;background:var(--card-bg);border:1px solid var(--border-color);border-radius:6px;cursor:pointer;transition:all .2s}.checkbox-item-compact:hover{background:var(--hover-bg);border-color:var(--primary-color)}.checkbox-item-compact input[type=checkbox]{margin-top:.2rem;flex-shrink:0}.checkbox-item-compact span{display:flex;flex-direction:column;gap:.25rem}.checkbox-item-compact strong{font-size:.9rem;color:var(--text-primary)}.checkbox-item-compact small{font-size:.8rem;color:var(--text-secondary);font-family:monospace}.preview-box{padding:1.5rem;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;margin:1.5rem 0;text-align:center}.preview-box strong{display:block;color:#fff;margin-bottom:.75rem;font-size:.9rem}.preview-value{font-size:1.4rem;font-weight:700;color:#fff;font-family:monospace;padding:.75rem;background:#fff3;border-radius:6px;word-break:break-all}.parameters-selector{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.5rem;max-height:200px;overflow-y:auto;padding:1rem;background:var(--hover-bg);border-radius:8px}.parameter-settings-item{padding:1.5rem;background:var(--hover-bg);border-radius:8px;margin-bottom:1rem;border:2px solid var(--border-color)}.param-settings-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:1rem;border-bottom:2px solid var(--border-color)}.param-settings-header h4{margin:0;font-size:1rem;color:var(--text-primary);display:flex;align-items:center;gap:.5rem}.param-settings-header code{font-size:.85rem;padding:.25rem .5rem;background:var(--primary-color);color:#fff;border-radius:4px}.btn-remove-param{padding:.25rem .5rem;background:#f44336;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:1.2rem;line-height:1;transition:all .2s}.btn-remove-param:hover{background:#d32f2f}.param-settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.75rem;align-items:center}.checkbox-setting{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:var(--card-bg);border-radius:6px;cursor:pointer;transition:all .2s}.checkbox-setting:hover{background:var(--hover-bg)}.checkbox-setting input[type=checkbox]{cursor:pointer}.checkbox-setting span{font-size:.85rem;color:var(--text-primary)}.affix-inputs{display:flex;align-items:center;gap:.5rem;grid-column:span 2}.affix-inputs span{color:var(--text-secondary);font-weight:600}.small-input{flex:1;padding:.5rem;border:1px solid var(--border-color);border-radius:6px;background:var(--card-bg);color:var(--text-primary);font-size:.85rem}.rule-condition-item,.rule-action-item{display:grid;grid-template-columns:2fr 1.5fr 2fr auto;gap:.5rem;align-items:center;padding:.75rem;background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;margin-bottom:.75rem}.range-inputs{display:flex;align-items:center;gap:.5rem}.range-inputs input{flex:1}.range-inputs span{color:var(--text-secondary);font-weight:600}.btn-remove-item{padding:.5rem;background:#f44336;color:#fff;border:none;border-radius:6px;cursor:pointer;transition:all .2s;font-size:1rem}.btn-remove-item:hover{background:#d32f2f}.btn-add-item{width:100%;padding:.75rem;background:var(--hover-bg);border:2px dashed var(--border-color);border-radius:8px;color:var(--text-primary);font-weight:500;cursor:pointer;transition:all .2s}.btn-add-item:hover{background:var(--primary-color);border-color:var(--primary-color);color:#fff}[data-theme=dark] .modal-content{background:#1e1e1e}[data-theme=dark] .form-group input,[data-theme=dark] .form-group select,[data-theme=dark] .form-group textarea{background:#2a2a2a;border-color:#444;color:#ddd}[data-theme=dark] .form-section{background:#2a2a2a}[data-theme=dark] .info-box{background:#1a2332;border-color:#2196f3}[data-theme=dark] .template-example{background:#2a2a2a}[data-theme=dark] .template-example li{background:#1e1e1e}[data-theme=dark] .checkbox-item-small{background:#2a2a2a}[data-theme=dark] .checkbox-item-small:hover{background:var(--primary-color)}@media (max-width: 768px){.modal-content{width:95%;max-height:95vh}.modal-header,.modal-body,.modal-footer{padding:1rem}.form-row{grid-template-columns:1fr}.modal-content.modal-large{max-width:95%}}.barcode-display{display:flex;justify-content:center;align-items:center;padding:1rem;background:#fff;border-radius:8px;border:1px solid #e0e0e0}.barcode-canvas{display:block;max-width:100%;height:auto}.barcode-invalid{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1rem;background:#fff3e0;border:1px solid #ff9800;border-radius:8px;text-align:center}.barcode-invalid span{color:#e65100;font-weight:500}.barcode-invalid small{color:#f57c00;font-size:.85rem}[data-theme=dark] .barcode-display{background:#fff;border-color:#444}[data-theme=dark] .barcode-invalid{background:#3e2723;border-color:#ff9800}.references-page{width:100%;max-width:1400px;margin:0 auto;padding:2rem}.references-header{margin-bottom:2rem}.references-header h1{font-size:2rem;font-weight:600;margin-bottom:.5rem;color:var(--text-primary)}.references-header p{font-size:1rem;color:var(--text-secondary)}.references-tabs{display:flex;gap:.5rem;margin-bottom:2rem;border-bottom:2px solid var(--border-color);overflow-x:auto}.tab-btn{padding:.75rem 1.5rem;background:none;border:none;border-bottom:3px solid transparent;font-size:1rem;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all .2s;white-space:nowrap}.tab-btn:hover{color:var(--text-primary);background:var(--hover-bg)}.tab-btn.active{color:var(--primary-color);border-bottom-color:var(--primary-color)}.references-content{min-height:400px}.section-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;gap:1rem;flex-wrap:wrap}.category-filter{padding:.5rem 1rem;border:1px solid var(--border-color);border-radius:8px;background:var(--card-bg);color:var(--text-primary);font-size:.95rem;min-width:200px}.btn-primary{padding:.75rem 1.5rem;background:var(--primary-color);color:#fff;border:none;border-radius:8px;font-weight:500;cursor:pointer;transition:all .2s}.btn-primary:hover{background:var(--primary-hover);transform:translateY(-1px)}.btn-view-toggle{padding:.75rem 1rem;background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;font-size:1.2rem;cursor:pointer;transition:all .2s;color:var(--text-primary)}.btn-view-toggle:hover{background:var(--hover-bg)}.btn-view-toggle.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.btn-edit,.btn-delete,.btn-generate{padding:.5rem 1rem;border:none;border-radius:6px;font-size:.9rem;cursor:pointer;transition:all .2s}.btn-edit{background:var(--primary-color);color:#fff}.btn-edit:hover{background:var(--primary-hover)}.btn-delete{background:#f44336;color:#fff}.btn-delete:hover{background:#d32f2f}.btn-generate{background:#4caf50;color:#fff;padding:.75rem 1.5rem}.btn-generate:hover{background:#45a049}.btn-generate:disabled{background:#ccc;cursor:not-allowed}.items-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.items-grid.compact{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.75rem}.item-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;padding:1.5rem;transition:all .2s;position:relative}.item-card.compact{padding:1rem;border-radius:8px}.item-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.item-card.inactive{opacity:.6}.show-image-toggle{position:absolute;top:.5rem;right:.5rem;background:#0009;color:#fff;border:none;border-radius:4px;padding:.25rem .5rem;font-size:1rem;cursor:pointer;opacity:0;transition:opacity .2s;z-index:1}.item-card:hover .show-image-toggle{opacity:1}.item-header{margin-bottom:1rem}.item-header h3{font-size:1.2rem;font-weight:600;color:var(--text-primary);margin-bottom:.5rem}.item-article,.item-sku{display:inline-block;padding:.25rem .75rem;background:var(--primary-color);color:#fff;border-radius:6px;font-size:.85rem;font-weight:500;margin-right:.5rem}.item-sku{background:#9c27b0}.model-code{display:inline-block;padding:.25rem .75rem;background:#ff9800;color:#fff;border-radius:6px;font-size:.85rem;font-weight:600}.entity-badge{display:inline-block;padding:.25rem .75rem;background:#00bcd4;color:#fff;border-radius:6px;font-size:.8rem;font-family:monospace;margin-bottom:.75rem}.entity-code{display:inline-block;padding:.25rem .75rem;background:#f5f5f5;border:1px solid var(--border-color);border-radius:4px;font-family:monospace;font-size:.9rem;margin-top:.5rem}.item-barcode{background:var(--hover-bg);padding:.75rem;border-radius:8px;margin-bottom:1rem}.barcode-label{font-size:.85rem;color:var(--text-secondary);margin-bottom:.25rem}.barcode-value{font-family:monospace;font-size:1.1rem;font-weight:600;color:var(--text-primary);letter-spacing:1px}.item-barcode-visual{margin-bottom:1rem;display:flex;justify-content:center}.item-params{margin-bottom:1rem}.parameter-variable{margin:.5rem 0}.parameter-variable code{display:inline-block;padding:.25rem .75rem;background:#e3f2fd;color:#1976d2;border-radius:4px;font-family:monospace;font-size:.9rem;font-weight:600}.param-row{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid var(--border-color)}.param-row:last-child{border-bottom:none}.param-label{font-size:.9rem;color:var(--text-secondary)}.param-value{font-size:.9rem;font-weight:500;color:var(--text-primary)}.item-footer{margin-bottom:1rem;padding-top:1rem;border-top:1px solid var(--border-color)}.item-price,.item-delivery,.item-cost,.item-materials,.detail-count{font-size:.95rem;color:var(--text-primary);margin-bottom:.5rem}.item-image{width:100%;height:200px;border-radius:8px;overflow:hidden;margin-bottom:1rem;background:var(--hover-bg);position:relative}.item-image.compact{height:120px}.item-image img{width:100%;height:100%;object-fit:cover}.item-image.hidden{display:none}.model-details{margin-bottom:1rem}.detail-list{margin-top:.5rem}.detail-item{display:flex;flex-direction:column;gap:.25rem;padding:.75rem;background:var(--hover-bg);border-radius:6px;margin-bottom:.5rem;font-size:.85rem}.product-composition{margin-bottom:1rem}.product-composition h4{font-size:.95rem;margin-bottom:.5rem;color:var(--text-primary)}.composition-item{display:flex;justify-content:space-between;padding:.5rem;background:var(--hover-bg);border-radius:4px;margin-bottom:.25rem;font-size:.85rem}.product-pricing{margin-bottom:1rem;padding:1rem;background:var(--hover-bg);border-radius:8px}.price-row{display:flex;justify-content:space-between;margin-bottom:.5rem}.price-label{font-size:.9rem;color:var(--text-secondary)}.price-value{font-size:.95rem;font-weight:600;color:var(--text-primary)}.price-value.sale-price{color:#4caf50}.price-value.margin{color:#ff9800}.item-status{margin-bottom:1rem}.status-active,.status-inactive{display:inline-block;padding:.5rem 1rem;border-radius:6px;font-size:.9rem;font-weight:500}.status-active{background:#e8f5e9;color:#4caf50}.status-inactive{background:#ffebee;color:#f44336}.item-actions{display:flex;gap:.5rem}.item-actions .btn-edit,.item-actions .btn-delete{flex:1}.items-list{display:flex;flex-direction:column;gap:1rem}.list-item{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.5rem;background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;transition:all .2s}.list-item:hover{box-shadow:0 2px 8px #0000001a}.list-item-content{flex:1}.list-item-content h3{font-size:1.1rem;font-weight:600;color:var(--text-primary);margin-bottom:.5rem}.list-item-content p{font-size:.95rem;color:var(--text-secondary);margin-bottom:.5rem}.meta-info{display:flex;gap:1rem;flex-wrap:wrap;font-size:.85rem;color:var(--text-secondary)}.badge{display:inline-block;padding:.25rem .75rem;background:var(--hover-bg);border-radius:4px;font-size:.8rem;font-weight:500}.badge-required{background:#fff3e0;color:#ff9800}.badge-article{background:#e3f2fd;color:#1976d2;padding:.25rem .75rem;border-radius:4px;font-size:.8rem;font-weight:600}.badge-name{background:#f3e5f5;color:#9c27b0;padding:.25rem .75rem;border-radius:4px;font-size:.8rem;font-weight:600}.badge-model{background:#e3f2fd;color:#2196f3;padding:.25rem .75rem;border-radius:4px;font-size:.85rem}.badge-priority{background:#f3e5f5;color:#9c27b0;padding:.25rem .75rem;border-radius:4px;font-size:.85rem}.badge-active{background:#e8f5e9;color:#4caf50;padding:.25rem .75rem;border-radius:4px;font-size:.85rem}.badge-inactive{background:#ffebee;color:#f44336;padding:.25rem .75rem;border-radius:4px;font-size:.85rem}.list-item-actions{display:flex;gap:.5rem;align-items:center}.template-code{display:block;padding:.75rem;background:#f5f5f5;border:1px solid var(--border-color);border-radius:6px;font-family:monospace;font-size:.9rem;margin:.5rem 0}.rule-item{flex-direction:column;align-items:flex-start}.rule-header{display:flex;justify-content:space-between;align-items:center;width:100%;margin-bottom:1rem}.rule-badges{display:flex;gap:.5rem;flex-wrap:wrap}.rule-description{margin-bottom:1rem;color:var(--text-secondary)}.rule-details{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;width:100%;margin-bottom:1rem}.rule-conditions,.rule-actions{padding:1rem;background:var(--hover-bg);border-radius:8px}.rule-conditions h4,.rule-actions h4{font-size:.95rem;font-weight:600;margin-bottom:.75rem;color:var(--text-primary)}.condition-item,.action-item{display:flex;gap:.5rem;align-items:center;padding:.5rem;background:#fff;border-radius:4px;margin-bottom:.5rem;font-size:.85rem;flex-wrap:wrap}.condition-param,.action-type{font-weight:600;color:var(--primary-color)}.condition-operator{color:var(--text-secondary);font-style:italic}.condition-value{color:var(--text-primary);font-weight:500}.category-item .list-item-actions{flex-direction:column;align-items:stretch}.empty-state{text-align:center;padding:4rem 2rem;color:var(--text-secondary)}.empty-icon{font-size:4rem;margin-bottom:1rem;opacity:.5}.empty-state h3{font-size:1.5rem;font-weight:600;margin-bottom:.5rem;color:var(--text-primary)}.empty-state p{font-size:1rem}.loading-state{text-align:center;padding:4rem 2rem;font-size:1.5rem;color:var(--text-secondary)}.filter-group{display:flex;gap:.5rem;flex-wrap:wrap}.filter-btn{padding:.5rem 1rem;background:var(--card-bg);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:.9rem;cursor:pointer;transition:all .2s}.filter-btn:hover{background:var(--hover-bg)}.filter-btn.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.template-item{border-left:4px solid var(--primary-color)}.template-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.75rem}.template-header h3{margin:0}.template-description{color:var(--text-secondary);font-size:.9rem;margin:.5rem 0}.template-example-inline{margin-top:1rem;padding:.75rem;background:var(--hover-bg);border-radius:6px;font-size:.9rem}.template-example-inline strong{margin-right:.5rem;color:var(--text-secondary)}.template-example-inline span{font-family:monospace;color:var(--text-primary);font-weight:600}.info-section{margin-top:3rem;padding:2rem;background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px}.info-section h3{font-size:1.3rem;margin-bottom:1.5rem;color:var(--text-primary)}.help-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.help-card{padding:1.5rem;background:var(--hover-bg);border-radius:8px}.help-card-full{grid-column:1 / -1}.help-card h4{font-size:1.1rem;margin:0 0 .75rem;color:var(--text-primary)}.help-card p{font-size:.9rem;color:var(--text-secondary);margin:.5rem 0}.help-card ul{margin:.75rem 0;padding-left:1.5rem}.help-card li{font-size:.85rem;color:var(--text-secondary);margin:.25rem 0}.example-code{display:block;padding:.75rem;background:var(--card-bg);border:1px solid var(--border-color);border-radius:6px;font-family:monospace;font-size:.85rem;margin-top:.75rem}.variables-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem;margin-top:1rem}.variables-grid>div{padding:.75rem;background:var(--card-bg);border-radius:6px}.variables-grid strong{display:block;font-family:monospace;color:var(--primary-color);margin-bottom:.25rem}.variables-grid small{display:block;color:var(--text-secondary);font-size:.85rem}@media (max-width: 768px){.references-page{padding:1rem}.items-grid{grid-template-columns:1fr}.section-toolbar{flex-direction:column;align-items:stretch}.category-filter{width:100%}.rule-details{grid-template-columns:1fr}.list-item{flex-direction:column;align-items:flex-start}.list-item-actions{width:100%;justify-content:flex-end}}[data-theme=dark] .item-card,[data-theme=dark] .list-item{background:#1e1e1e;border-color:#333}[data-theme=dark] .template-code,[data-theme=dark] .entity-code{background:#2a2a2a;border-color:#444;color:#ddd}[data-theme=dark] .item-barcode,[data-theme=dark] .product-pricing,[data-theme=dark] .rule-conditions,[data-theme=dark] .rule-actions,[data-theme=dark] .detail-item,[data-theme=dark] .composition-item{background:#2a2a2a}[data-theme=dark] .condition-item,[data-theme=dark] .action-item{background:#1e1e1e}.dashboard{display:flex;min-height:100vh;background:var(--bg-secondary)}.dashboard-main{flex:1;margin-left:260px;display:flex;flex-direction:column;min-height:100vh;transition:margin-left .3s ease}.mobile-menu-toggle{display:none;position:fixed;top:20px;left:20px;width:44px;height:44px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-lg);font-size:20px;color:var(--text-primary);cursor:pointer;z-index:100;box-shadow:var(--shadow-lg);transition:all var(--transition-fast)}.mobile-menu-toggle:hover{background:var(--bg-hover);transform:scale(1.05)}.dashboard-content{flex:1;padding:32px;background:var(--bg-secondary);overflow-x:hidden;max-width:100vw}@media (max-width: 768px){.dashboard-main{margin-left:0}.mobile-menu-toggle{display:flex;align-items:center;justify-content:center}.dashboard-content{padding:80px 16px 20px}}@media (min-width: 769px) and (max-width: 1024px){.dashboard-main{margin-left:260px}.dashboard-content{padding:24px}}:root{--color-primary: #3b82f6;--color-primary-hover: #2563eb;--color-primary-light: #dbeafe;--color-primary-dark: #1e40af;--color-success: #10b981;--color-success-light: #d1fae5;--color-warning: #f59e0b;--color-warning-light: #fef3c7;--color-danger: #ef4444;--color-danger-light: #fee2e2;--color-info: #06b6d4;--color-info-light: #cffafe;--bg-primary: #ffffff;--bg-secondary: #f8fafc;--bg-tertiary: #f1f5f9;--bg-hover: #f1f5f9;--bg-active: #e2e8f0;--text-primary: #0f172a;--text-secondary: #64748b;--text-tertiary: #94a3b8;--text-inverse: #ffffff;--text-muted: #cbd5e1;--border-color: #e2e8f0;--border-light: #f1f5f9;--border-dark: #cbd5e1;--border-focus: #3b82f6;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--radius-2xl: 32px;--radius-full: 9999px;--shadow-xs: 0 1px 2px 0 rgba(0, 0, 0, .04);--shadow-sm: 0 2px 4px 0 rgba(0, 0, 0, .06);--shadow-md: 0 4px 8px -2px rgba(0, 0, 0, .08);--shadow-lg: 0 12px 24px -4px rgba(0, 0, 0, .12);--shadow-xl: 0 20px 40px -8px rgba(0, 0, 0, .16);--shadow-2xl: 0 32px 64px -12px rgba(0, 0, 0, .2);--shadow-primary: 0 8px 24px -4px rgba(59, 130, 246, .3);--shadow-success: 0 8px 24px -4px rgba(16, 185, 129, .3);--shadow-danger: 0 8px 24px -4px rgba(239, 68, 68, .3);--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--spacing-2xl: 48px;--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: "SF Mono", Monaco, "Cascadia Code", "Roboto Mono", Consolas, monospace;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-normal: .25s cubic-bezier(.4, 0, .2, 1);--transition-slow: .35s cubic-bezier(.4, 0, .2, 1);--success-bg: #ecfdf5;--success-text: #065f46;--success-border: #10b981;--error-bg: #fef2f2;--error-text: #991b1b;--error-border: #ef4444;--warning-bg: #fffbeb;--warning-text: #92400e;--warning-border: #f59e0b;--info-bg: #eff6ff;--info-text: #1e40af;--info-border: #3b82f6}[data-theme=dark]{--color-primary: #60a5fa;--color-primary-hover: #93c5fd;--color-primary-light: #1e3a8a;--color-primary-dark: #3b82f6;--color-success: #34d399;--color-success-light: #065f46;--color-warning: #fbbf24;--color-warning-light: #78350f;--color-danger: #f87171;--color-danger-light: #7f1d1d;--color-info: #22d3ee;--color-info-light: #164e63;--bg-primary: #0f172a;--bg-secondary: #1e293b;--bg-tertiary: #334155;--bg-hover: #334155;--bg-active: #475569;--text-primary: #f8fafc;--text-secondary: #cbd5e1;--text-tertiary: #94a3b8;--text-inverse: #0f172a;--text-muted: #64748b;--border-color: #334155;--border-light: #1e293b;--border-dark: #475569;--border-focus: #60a5fa;--shadow-xs: 0 1px 2px 0 rgba(0, 0, 0, .3);--shadow-sm: 0 2px 4px 0 rgba(0, 0, 0, .4);--shadow-md: 0 4px 8px -2px rgba(0, 0, 0, .5);--shadow-lg: 0 12px 24px -4px rgba(0, 0, 0, .6);--shadow-xl: 0 20px 40px -8px rgba(0, 0, 0, .7);--shadow-2xl: 0 32px 64px -12px rgba(0, 0, 0, .8);--shadow-primary: 0 8px 24px -4px rgba(96, 165, 250, .3);--shadow-success: 0 8px 24px -4px rgba(52, 211, 153, .3);--shadow-danger: 0 8px 24px -4px rgba(248, 113, 113, .3);--success-bg: #065f46;--success-text: #86efac;--error-bg: #7f1d1d;--error-text: #fca5a5;--warning-bg: #78350f;--warning-text: #fcd34d;--info-bg: #164e63;--info-text: #67e8f9}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--bg-secondary);color:var(--text-primary);font-size:14px;line-height:1.6;transition:background var(--transition-normal),color var(--transition-normal)}#root{min-height:100vh}h1,h2,h3,h4,h5,h6{font-weight:600;color:var(--text-primary);line-height:1.3}h1{font-size:28px;margin-bottom:8px}h2{font-size:22px;margin-bottom:6px}h3{font-size:18px;margin-bottom:4px}h4{font-size:16px}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-primary-hover)}.card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--spacing-lg);transition:all var(--transition-normal);box-shadow:var(--shadow-xs)}.card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px);border-color:var(--border-dark)}.card-header{padding-bottom:16px;margin-bottom:16px;border-bottom:1px solid var(--border-light)}.card-title{font-size:18px;font-weight:600;color:var(--text-primary);margin:0;display:flex;align-items:center;gap:8px}.card-description{font-size:14px;color:var(--text-secondary);margin:4px 0 0}.card-body{padding:0}.card-footer{padding-top:16px;margin-top:16px;border-top:1px solid var(--border-light);display:flex;justify-content:space-between;align-items:center}.card-clickable{cursor:pointer}.card-clickable:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.card-clickable:active{transform:translateY(-2px)}.btn{padding:11px 20px;font-size:14px;font-weight:500;font-family:var(--font-sans);border-radius:var(--radius-md);border:none;cursor:pointer;transition:all var(--transition-fast);display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap;position:relative;overflow:hidden;-webkit-user-select:none;user-select:none}.btn:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff4d;transform:translate(-50%,-50%);transition:width .6s,height .6s}.btn:active:before{width:300px;height:300px}.btn:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn:active{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;box-shadow:var(--shadow-sm)}.btn-primary:hover{box-shadow:var(--shadow-primary)}.btn-secondary{background:var(--bg-primary);color:var(--text-primary);border:1.5px solid var(--border-color);box-shadow:var(--shadow-xs)}.btn-secondary:hover{background:var(--bg-hover);border-color:var(--border-dark)}[data-theme=dark] .btn-secondary{background:var(--bg-tertiary);border-color:var(--border-color);color:var(--text-primary)}[data-theme=dark] .btn-secondary:hover{background:var(--bg-active);border-color:var(--color-primary)}.btn-ghost{background:transparent;color:var(--text-secondary)}.btn-ghost:hover{background:var(--bg-hover);color:var(--text-primary)}.btn-success{background:var(--color-success);color:#fff}.btn-success:hover{box-shadow:var(--shadow-success)}.btn-danger{background:var(--color-danger);color:#fff}.btn-danger:hover{box-shadow:var(--shadow-danger)}.btn-sm{padding:8px 14px;font-size:13px}.btn-lg{padding:14px 28px;font-size:16px}input,select,textarea{padding:11px 16px;font-size:14px;font-family:var(--font-sans);border:1.5px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-primary);color:var(--text-primary);transition:all var(--transition-normal);box-shadow:var(--shadow-xs);width:100%}input:hover,select:hover,textarea:hover{border-color:var(--border-dark)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--border-focus);box-shadow:0 0 0 4px var(--color-primary-light),var(--shadow-sm);transform:translateY(-1px)}input::placeholder,textarea::placeholder{color:var(--text-tertiary)}input:disabled,select:disabled,textarea:disabled{opacity:.6;cursor:not-allowed;background:var(--bg-tertiary)}[data-theme=dark] input,[data-theme=dark] select,[data-theme=dark] textarea{background:var(--bg-tertiary);border-color:var(--border-color)}[data-theme=dark] input:focus,[data-theme=dark] select:focus,[data-theme=dark] textarea:focus{box-shadow:0 0 0 4px #60a5fa33,var(--shadow-sm)}.form-group{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.form-group label{font-size:14px;font-weight:500;color:var(--text-primary);display:flex;align-items:center;gap:4px}.form-group small{font-size:12px;color:var(--text-secondary);margin-top:-4px}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}@media (max-width: 768px){.form-row{grid-template-columns:1fr}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn var(--transition-normal);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);padding:20px}.modal-content{background:var(--bg-primary);border-radius:var(--radius-xl);box-shadow:var(--shadow-2xl);max-width:700px;width:100%;max-height:90vh;overflow-y:auto;animation:slideUp var(--transition-normal);border:1px solid var(--border-light)}.modal-content.large-modal{max-width:1200px;width:95%}.modal-header{padding:28px 28px 20px;border-bottom:1px solid var(--border-light);display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.modal-header h2{margin:0;font-size:22px;font-weight:600;color:var(--text-primary);line-height:1.3}.modal-close{width:36px;height:36px;min-width:36px;border-radius:var(--radius-md);border:none;background:var(--bg-hover);color:var(--text-secondary);font-size:18px;cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center}.modal-close:hover{background:var(--bg-active);color:var(--text-primary);transform:scale(1.05)}.modal-body{padding:28px}.modal-footer{padding:20px 28px 28px;border-top:1px solid var(--border-light);display:flex;justify-content:space-between;align-items:center;gap:12px}.footer-left{display:flex;gap:12px}.footer-right{display:flex;gap:12px;margin-left:auto}@media (max-width: 768px){.modal-overlay{padding:0;align-items:flex-end}.modal-content{max-width:100%;border-radius:var(--radius-xl) var(--radius-xl) 0 0;max-height:95vh}.modal-header{padding:24px 20px 16px}.modal-body{padding:20px}.modal-footer{padding:16px 20px 24px;flex-direction:column}.footer-left,.footer-right{width:100%}}.badge{padding:4px 12px;font-size:12px;font-weight:600;border-radius:var(--radius-full);display:inline-flex;align-items:center;gap:4px}.badge-primary{background:var(--color-primary-light);color:var(--color-primary)}.badge-success{background:var(--success-bg);color:var(--success-text)}.badge-warning{background:var(--warning-bg);color:var(--warning-text)}.badge-danger{background:var(--error-bg);color:var(--error-text)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slideDown{0%{transform:translateY(-10px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes scaleIn{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.spinner{width:40px;height:40px;border:3px solid var(--border-color);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.success-message,.error-message,.warning-message,.info-message{padding:14px 18px;border-radius:var(--radius-lg);font-size:14px;display:flex;align-items:center;justify-content:space-between;gap:12px;animation:slideDown var(--transition-normal);box-shadow:var(--shadow-md)}.success-message{background:var(--success-bg);color:var(--success-text);border-left:4px solid var(--success-border)}.error-message{background:var(--error-bg);color:var(--error-text);border-left:4px solid var(--error-border)}.warning-message{background:var(--warning-bg);color:var(--warning-text);border-left:4px solid var(--warning-border)}.info-message{background:var(--info-bg);color:var(--info-text);border-left:4px solid var(--info-border)}.text-center{text-align:center}.text-right{text-align:right}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--border-dark);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:32px;gap:24px}.page-header h1{margin:0}.page-description{color:var(--text-secondary);font-size:14px;margin-top:4px}.header-actions{display:flex;gap:12px}.empty-state{text-align:center;padding:64px 24px}.empty-icon{font-size:64px;margin-bottom:16px;opacity:.4}.empty-state h3{margin:0 0 8px;font-size:18px}.empty-state p{margin:0 0 24px;color:var(--text-secondary)}.settings-section{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:24px;margin-bottom:20px}.settings-section h3{font-size:16px;font-weight:600;color:var(--text-primary);margin:0 0 20px;display:flex;align-items:center;gap:8px}[data-theme=dark] .settings-section{background:var(--bg-tertiary);border-color:var(--border-color)}table{width:100%;border-collapse:separate;border-spacing:0;border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden;background:var(--bg-primary);box-shadow:var(--shadow-xs)}thead{background:var(--bg-tertiary)}th{padding:14px 16px;text-align:left;font-size:13px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border-color)}td{padding:14px 16px;border-bottom:1px solid var(--border-light);font-size:14px;color:var(--text-primary)}tbody tr{transition:background var(--transition-fast)}tbody tr:hover{background:var(--bg-hover)}tbody tr:last-child td{border-bottom:none}[data-theme=dark] table{background:var(--bg-tertiary);border-color:var(--border-color)}[data-theme=dark] thead{background:var(--bg-secondary)}.list-item{padding:16px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);margin-bottom:8px;transition:all var(--transition-fast);cursor:pointer}.list-item:hover{background:var(--bg-hover);transform:translate(4px);box-shadow:var(--shadow-sm)}@media (max-width: 768px){.page-header{flex-direction:column;gap:16px}.header-actions{width:100%;flex-wrap:wrap}h1{font-size:24px}h2{font-size:20px}h3{font-size:16px}.settings-section{padding:20px}table{font-size:13px}th,td{padding:12px}}.module-page{max-width:1400px;margin:0 auto}.module-tabs{display:flex;gap:8px;margin-bottom:28px;background:var(--bg-secondary);padding:8px;border-radius:var(--radius-xl);border:1.5px solid var(--border-color);overflow-x:auto;box-shadow:var(--shadow-xs)}.module-tab{flex:1;min-width:100px;padding:13px 24px;background:transparent;border:none;border-radius:var(--radius-md);font-size:14px;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-normal);white-space:nowrap;display:flex;align-items:center;justify-content:center;gap:8px}.module-tab:hover:not(.active){background:var(--bg-hover);color:var(--text-primary)}.module-tab.active{background:linear-gradient(135deg,var(--color-primary),var(--color-primary-hover));color:#fff;font-weight:600;box-shadow:0 4px 12px #3b82f64d}.tab-badge{padding:3px 8px;background:#ffffff26;border-radius:var(--radius-full);font-size:11px;font-weight:700;min-width:22px;text-align:center}.module-tab:not(.active) .tab-badge{background:var(--bg-active);color:var(--text-secondary)}[data-theme=dark] .module-tabs{background:var(--bg-tertiary);border-color:var(--border-color)}.module-table-container{background:var(--bg-primary);border:1.5px solid var(--border-color);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-sm)}.module-table{width:100%;border-collapse:separate;border-spacing:0}.module-table thead{background:linear-gradient(135deg,var(--bg-tertiary),var(--bg-secondary))}.module-table th{padding:18px 20px;text-align:left;font-size:13px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.6px;border-bottom:2px solid var(--border-color);position:sticky;top:0;background:var(--bg-tertiary);z-index:10}.module-table td{padding:18px 20px;border-bottom:1px solid var(--border-light);font-size:14px;color:var(--text-primary);vertical-align:middle}.module-table tbody tr{transition:all var(--transition-fast);cursor:pointer}.module-table tbody tr:hover{background:var(--bg-hover);box-shadow:inset 4px 0 0 var(--color-primary)}.module-table tbody tr:last-child td{border-bottom:none}[data-theme=dark] .module-table-container{background:var(--bg-tertiary);border-color:var(--border-color)}[data-theme=dark] .module-table thead{background:var(--bg-secondary)}.module-filters{background:var(--bg-primary);border:1.5px solid var(--border-color);border-radius:var(--radius-xl);padding:20px 24px;margin-bottom:24px;display:flex;flex-wrap:wrap;gap:16px;align-items:center;box-shadow:var(--shadow-xs)}.filter-group{display:flex;align-items:center;gap:10px}.filter-group label{font-size:14px;font-weight:500;color:var(--text-secondary);white-space:nowrap}.filter-group select,.filter-group input{min-width:180px}[data-theme=dark] .module-filters{background:var(--bg-tertiary);border-color:var(--border-color)}.module-item-card{background:var(--bg-primary);border:1.5px solid var(--border-color);border-radius:var(--radius-lg);padding:24px;transition:all var(--transition-normal);cursor:pointer;position:relative;overflow:hidden;box-shadow:var(--shadow-xs)}.module-item-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--color-primary),var(--color-primary-hover));transform:scaleX(0);transform-origin:left;transition:transform var(--transition-normal)}.module-item-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--color-primary-light)}.module-item-card:hover:before{transform:scaleX(1)}[data-theme=dark] .module-item-card{background:var(--bg-tertiary);border-color:var(--border-color)}@media (max-width: 768px){.module-tabs{padding:6px}.module-tab{padding:11px 16px;font-size:13px;min-width:80px}.module-filters{padding:16px;gap:12px}.filter-group{width:100%;flex-direction:column;align-items:stretch}.filter-group select,.filter-group input{width:100%;min-width:100%}.module-table-container{overflow-x:auto;-webkit-overflow-scrolling:touch}.module-table th,.module-table td{padding:14px 12px;font-size:13px}.module-item-card{padding:20px}}.status-badge{padding:5px 12px;border-radius:var(--radius-full);font-size:12px;font-weight:600;display:inline-flex;align-items:center;gap:6px;transition:all var(--transition-fast)}.status-badge-success{background:var(--color-success-light);color:var(--color-success)}.status-badge-warning{background:var(--color-warning-light);color:var(--color-warning)}.status-badge-danger{background:var(--color-danger-light);color:var(--color-danger)}.status-badge-info{background:var(--color-info-light);color:var(--color-info)}.status-badge-primary{background:var(--color-primary-light);color:var(--color-primary)}.toast-container{position:fixed;top:24px;right:24px;z-index:9999;display:flex;flex-direction:column;gap:12px;max-width:400px}.toast{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:16px 20px;box-shadow:var(--shadow-xl);display:flex;align-items:center;gap:12px;animation:slideInRight .3s cubic-bezier(.4,0,.2,1)}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.toast-icon{font-size:20px;flex-shrink:0}.toast-content{flex:1}.toast-title{font-weight:600;font-size:14px;color:var(--text-primary);margin-bottom:4px}.toast-message{font-size:13px;color:var(--text-secondary)}.toast-close{width:28px;height:28px;border-radius:var(--radius-md);border:none;background:transparent;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center;font-size:16px}.toast-close:hover{background:var(--bg-hover);color:var(--text-primary)}.toast-success{border-left:4px solid var(--color-success)}.toast-error{border-left:4px solid var(--color-danger)}.toast-warning{border-left:4px solid var(--color-warning)}.toast-info{border-left:4px solid var(--color-info)}@media (max-width: 768px){.toast-container{top:12px;right:12px;left:12px;max-width:none}.toast{padding:14px 16px}}.action-buttons{display:flex;gap:8px;align-items:center}.action-btn{width:36px;height:36px;min-width:36px;border-radius:var(--radius-md);border:none;background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center;font-size:16px}.action-btn:hover{background:var(--bg-active);color:var(--text-primary);transform:scale(1.1)}.action-btn-primary{background:var(--color-primary-light);color:var(--color-primary)}.action-btn-primary:hover{background:var(--color-primary);color:#fff}.action-btn-danger{background:var(--color-danger-light);color:var(--color-danger)}.action-btn-danger:hover{background:var(--color-danger);color:#fff}.btn-delete-danger{padding:11px 20px;background:transparent;border:1.5px solid var(--color-danger);color:var(--color-danger);border-radius:var(--radius-md);font-size:14px;font-weight:500;cursor:pointer;transition:all var(--transition-fast);display:inline-flex;align-items:center;gap:8px}.btn-delete-danger:hover{background:var(--color-danger);color:#fff;box-shadow:var(--shadow-danger);transform:translateY(-2px)}.tag{padding:4px 10px;border-radius:var(--radius-full);font-size:12px;font-weight:500;background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-color);display:inline-flex;align-items:center;gap:4px;transition:all var(--transition-fast)}.tag:hover{background:var(--bg-active);border-color:var(--border-dark)}.module-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px}@media (max-width: 768px){.module-grid{grid-template-columns:1fr;gap:16px}}.skeleton{background:linear-gradient(90deg,var(--bg-tertiary) 0%,var(--bg-hover) 50%,var(--bg-tertiary) 100%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius-md)}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton-text{height:16px;margin-bottom:8px}.skeleton-title{height:24px;width:60%;margin-bottom:12px}.skeleton-card{height:200px}.ripple{position:relative;overflow:hidden}.ripple:after{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff80;transform:translate(-50%,-50%);transition:width .6s,height .6s}.ripple:active:after{width:300px;height:300px}@media (max-width: 768px){.hide-mobile{display:none!important}.show-mobile{display:block!important}}@media (min-width: 769px){.hide-desktop{display:none!important}.show-desktop{display:block!important}}.hover-card{transition:all var(--transition-normal)}.hover-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}*:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.transition-all{transition:all var(--transition-normal)}.transition-fast{transition:all var(--transition-fast)}.transition-slow{transition:all var(--transition-slow)}
