:root{--primary:#2f45a7;--primary-dark:#23337b;--secondary:#f72585;--light:#f8f9fa;--dark:#212529;--gray:#6c757d;--light-gray:#e9ecef;--success:#4cc9f0;--card-shadow:0 10px 30px rgba(0,0,0,.1);--input-shadow:0 2px 5px rgba(67,97,238,.15);--solid-bg:#f9f9f9}*{box-sizing:border-box;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;margin:0;padding:0}.login-page{align-items:center;display:flex;justify-content:center;min-height:100vh;overflow-x:hidden;overflow:hidden;padding:20px;position:relative;width:100%}.background-split{display:flex;height:100%;left:0;position:absolute;top:0;width:100%;z-index:-1}.solid-half{background-color:var(--solid-bg);flex:1}.image-half{background-image:url(background.jpg);background-position:50%;background-repeat:no-repeat;background-size:cover;flex:1;position:relative}.image-half:before{content:"";height:100%;left:0;position:absolute;top:0;width:100%}.login-container{background:hsla(0,0%,100%,.95);border:1px solid hsla(0,0%,100%,.3);border-radius:20px;box-shadow:var(--card-shadow);max-width:420px;padding:40px 30px;width:100%;z-index:10}.login-header{margin-bottom:30px;text-align:center}.logo{display:flex;justify-content:center;margin-bottom:20px}.logo img{border-radius:8px;max-height:100px;max-width:300px}.logo-circle{align-items:center;border-radius:50%;color:#fff;display:flex;font-size:28px;font-weight:700;height:70px;justify-content:center;width:70px}h1{color:var(--dark);font-size:28px;margin-bottom:8px}.login-header p{color:var(--gray);font-size:16px}.input-group{margin-bottom:20px}label{color:var(--dark);display:block;font-size:14px;font-weight:500;margin-bottom:8px}.input-container{align-items:center;display:flex;position:relative}.input-container svg{fill:var(--gray);height:20px;left:15px;position:absolute;width:20px;z-index:2}input{background:var(--light);border:2px solid var(--light-gray);border-radius:12px;font-size:16px;outline:none;padding:15px;transition:all .3s ease;width:100%}.input-container input,.input-container select{padding:15px 15px 15px 45px}input:focus{border-color:var(--primary);box-shadow:var(--input-shadow)}input:disabled{background:#f0f0f0;cursor:not-allowed}.forgot-password{margin-bottom:25px;text-align:right}.forgot-password a{color:var(--primary);font-size:14px;text-decoration:none;transition:color .3s}.forgot-password a:hover{color:var(--secondary);text-decoration:underline}.login-button{align-items:center;background:linear-gradient(to right,var(--primary),var(--primary-dark));border:none;border-radius:12px;box-shadow:0 4px 15px rgba(67,97,238,.3);color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;height:50px;justify-content:center;padding:15px;transition:all .3s;width:100%}.login-button:hover:not(:disabled){background:linear-gradient(to right,var(--primary-dark),var(--primary));box-shadow:0 6px 20px rgba(67,97,238,.4)}.login-button:disabled{cursor:not-allowed;opacity:.7}.error-message{background:#fee;border:1px solid #fadbd8;border-radius:12px;color:#e74c3c;font-size:14px;margin-top:20px;padding:15px;text-align:center}.signup-link{color:var(--gray);font-size:15px;margin-top:25px;text-align:center}.signup-link a{color:var(--primary);font-weight:500;text-decoration:none;transition:color .3s}.signup-link a:hover{color:var(--secondary);text-decoration:underline}.loading-container{height:100vh;width:100%}.spinner{border:3px solid hsla(0,0%,100%,.3);border-top-color:#fff;height:24px;width:24px}@media (max-width:768px){.background-split{flex-direction:column}.image-half,.solid-half{height:50%}.login-container{margin:20px auto;max-width:90%}}.dashboard-container{margin-left:60px;padding:30px}.dashboard-title{border-bottom:2px solid var(--light-gray);color:var(--primary);font-size:28px;margin-bottom:30px;padding-bottom:20px;text-align:center}.dashboard-grid{display:grid;gap:25px;grid-template-columns:repeat(no-repeat,minmax(800px,1fr));margin-bottom:40px}.dashboard-section{background:hsla(0,0%,100%,.95);border:1px solid rgba(0,0,0,.05);border-radius:16px;box-shadow:var(--card-shadow);padding:25px}.section-header{border-bottom:1px solid var(--light-gray);margin-bottom:20px;padding-bottom:15px}.section-header h2{align-items:center;color:var(--primary);display:flex;font-size:22px;gap:10px}.statistics-cards{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.stat-card{align-items:center;background:linear-gradient(to right,var(--primary),var(--primary-dark));border-radius:16px;box-shadow:0 4px 15px rgba(67,97,238,.3);color:#fff;display:flex;gap:20px;padding:25px;text-decoration:none;transition:transform .3s ease}.stat-card:hover{transform:translateY(-5px)}.stat-icon{align-items:center;background:hsla(0,0%,100%,.2);border-radius:50%;display:flex;height:60px;justify-content:center;width:60px}.stat-icon svg{fill:#fff;height:30px;width:30px}.stat-content h3{font-size:18px;font-weight:500;margin-bottom:5px}.stat-value{font-size:32px;font-weight:700;margin:0}.tasks-grid{display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(50%,1fr))}.task-card{background:#fff;border-left:4px solid var(--primary);border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,.05);padding:20px;transition:transform .3s ease}.task-card:hover{box-shadow:0 6px 15px rgba(0,0,0,.1);transform:translateY(-3px)}.task-card.completed{border-left-color:var(--success)}.task-card.overdue{border-left-color:#e74c3c}.task-card.pending:not(.overdue){border-left-color:#f39c12}.task-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.task-header h3{color:var(--dark);font-size:18px;margin:0}.status-badge{font-size:12px;font-weight:600;padding:5px 12px}.status-badge.pending{background:rgba(243,156,18,.15);color:#f39c12}.task-details p{color:var(--gray);font-size:14px;gap:8px;margin:10px 0}.sort-controls,.task-details p{align-items:center;display:flex}.sort-controls{gap:10px;margin-left:auto}.sort-controls label{font-size:14px;font-weight:500;margin:0}.sort-controls select{background-color:#fff;border:1px solid #ccc;border-radius:4px;cursor:pointer;font-size:14px;padding:5px 10px}.sort-controls select:focus{border-color:var(--primary);outline:none}.task-details svg{fill:var(--gray);height:18px;width:18px}.overdue{color:#e74c3c!important;font-weight:600}.task-details .overdue svg{fill:#e74c3c}.task-actions{border-top:1px solid var(--light-gray);display:flex;margin-top:15px;padding-top:15px}.task-actions button{margin:5px}.project-link svg{fill:var(--primary);height:18px;width:18px}.user-header h3{color:var(--dark);font-size:18px;margin:0}.user-status p{color:var(--gray);font-size:14px;margin:0}.last-seen{color:var(--dark);font-weight:500}.no-tasks{align-items:center;color:var(--gray);display:flex;flex-direction:column;justify-content:center;padding:40px 20px;text-align:center;width:100%}.no-tasks svg{fill:var(--light-gray);height:60px;margin-bottom:15px;width:60px}.loadingContainer .spinner{border:5px solid rgba(67,97,238,.2);border-top:5px solid var(--primary);height:60px;width:60px}.statistics-section{box-shadow:var(--card-shadow);padding:25px}.statistics-container,.statistics-section{background:hsla(0,0%,100%,.95);border:1px solid rgba(0,0,0,.05);border-radius:16px;margin-top:30px}.statistics-container{box-shadow:0 10px 30px rgba(0,0,0,.1);padding:30px}.statistics-header{border-bottom:1px solid rgba(0,0,0,.05);margin-bottom:25px;padding-bottom:15px}.statistics-header h2{color:var(--primary);font-size:24px}.tab-button{background:transparent;border:1px solid var(--light-gray)}.tab-button:hover{background:rgba(47,69,167,.05)}.tab-button.active{background:var(--primary);border-color:var(--primary);color:#fff}.statistics-controls{margin-bottom:25px}.styled-select{cursor:pointer;padding:15px 15px 15px 10px;transition:all .3s ease;width:100%}.styled-select:focus{box-shadow:0 0 0 2px rgba(47,69,167,.2)}.chart-container{background:#fff;border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,.05);height:500px;padding:20px}.no-data{height:100%}.no-data-icon{align-items:center;background:hsla(208,7%,46%,.1);border-radius:50%;display:flex;justify-content:center}.no-data-icon svg{height:30px;width:30px}.no-data p{margin:0 0 5px}.no-data small{color:var(--light-gray);font-size:13px}.loadingContainer{gap:15px;height:300px}.loadingContainer .spinner{animation:spin 1s linear infinite;border:4px solid rgba(47,69,167,.1);border-radius:50%;border-top:4px solid var(--primary);height:50px;width:50px}.loadingContainer p{color:var(--gray);margin:0}.recharts-tooltip-wrapper{z-index:10}.recharts-default-tooltip{background:hsla(0,0%,100%,.98)!important;border:1px solid rgba(0,0,0,.05)!important;border-radius:8px!important;box-shadow:0 4px 12px rgba(0,0,0,.1)!important;padding:15px!important}.recharts-tooltip-label{color:var(--primary)!important;font-weight:600!important;margin-bottom:8px!important}.recharts-tooltip-item{color:var(--dark)!important;font-size:14px!important}.recharts-legend-item-text{color:var(--gray)!important;font-size:13px!important}.side-menu{transition:var(--transition)}.side-menu.mobile{background:transparent;box-shadow:none;height:auto;position:fixed;width:100%}.mobile-header{display:flex;padding:15px 20px;z-index:1001}.mobile-header .logo{width:120px}.mobile-header .logo img{border-radius:4px;height:auto;width:100%}.hamburger{background:transparent;height:18px;justify-content:space-between;width:24px;z-index:1002}.hamburger span{background:var(--primary);display:block;height:2px;transition:var(--transition)}.hamburger.open span:first-child{transform:translateY(8px) rotate(45deg)}.hamburger.open span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.desktop-sidebar{border-bottom:1px solid var(--light-gray);padding:25px}.desktop-sidebar .logo{margin:0 auto;max-width:180px;width:100%}.desktop-sidebar .logo img{border-radius:8px;height:auto;width:100%}.menu-container{background:#fff;height:100%;padding:20px 0}.side-menu.mobile .menu-container{box-shadow:2px 0 10px rgba(0,0,0,.1);height:calc(100vh - 70px);left:0;position:fixed;top:70px;transform:translateX(-100%);transition:var(--transition);width:280px}.side-menu.mobile .menu-container.open{transform:translateX(0)}.user-profile{border-bottom:1px solid var(--light-gray);padding:0 25px 25px}.avatar{background:linear-gradient(to right,var(--primary),var(--primary-dark));font-size:20px;font-weight:700;height:50px;margin-right:15px;width:50px}.user-info h3{color:var(--dark)}.user-info p{color:var(--gray);margin:5px 0 0}.nav-links{padding:0 15px}.nav-link{border-radius:8px;color:var(--gray);margin:5px 0;padding:12px 20px;transition:var(--transition)}.nav-link:hover{background:rgba(47,69,167,.05);color:var(--primary)}.nav-link.active{background:rgba(47,69,167,.1);color:var(--primary);font-weight:500}.nav-icon{align-items:center;display:flex;margin-right:12px}.nav-icon svg{fill:currentColor;height:20px;width:20px}.nav-label{font-size:15px}.logout-container{border-top:1px solid var(--light-gray);padding:20px 25px 0}.logout-button{background:transparent;border-radius:8px;color:var(--gray);font-size:15px;transition:var(--transition)}.logout-button:hover{background:rgba(247,37,133,.05);color:var(--secondary)}.logout-button svg{fill:currentColor;height:20px;width:20px}@media (max-width:800px){.side-menu:not(.mobile){transform:translateX(-100%)}}.side-menu{background:#fff;box-shadow:var(--card-shadow);height:100vh;overflow:hidden;transition:all .3s ease}.side-menu.mobile.collapsed{width:0}.toggle-sidebar{align-items:center;background:#fff;border-radius:50%;box-shadow:0 2px 10px rgba(0,0,0,.1);display:flex;height:30px;justify-content:center;position:absolute;right:-15px;top:20px;transition:all .3s ease;width:30px;z-index:1001}.toggle-sidebar:hover{background:var(--light-gray)}.toggle-sidebar svg{fill:var(--primary);height:16px;transition:transform .3s ease;width:16px}.side-menu.collapsed .toggle-sidebar svg{transform:rotate(180deg)}.side-menu.collapsed .desktop-sidebar .logo,.side-menu.collapsed .logout-button span,.side-menu.collapsed .nav-label,.side-menu.collapsed .user-info{height:0;opacity:0;overflow:hidden;position:absolute;width:0}.side-menu.collapsed .nav-icon{margin-right:0}.side-menu.collapsed .nav-link{justify-content:center;padding:12px 0}.side-menu.collapsed .user-profile{justify-content:center;padding:0 0 25px}.side-menu.collapsed .avatar{margin-right:0}.side-menu.collapsed .logout-button{height:40px;justify-content:center;width:40px}.side-menu.collapsed .logout-button svg{margin-right:0}.nav-link .tooltip{background:var(--dark);border-radius:4px;color:#fff;font-size:12px;left:100%;margin-left:15px;opacity:0;padding:5px 10px;pointer-events:none;position:absolute;transition:opacity .3s;white-space:nowrap;z-index:1000}.side-menu.collapsed .nav-link:hover .tooltip{opacity:1}@media (max-width:800px){.side-menu:not(.mobile){transform:translateX(-100%)}.side-menu.mobile{width:280px}.side-menu.mobile.collapsed{width:0}.toggle-sidebar{display:none}}.users-grid{display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.user-card{background:#fff;border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,.05);padding:20px;transition:transform .3s ease}.user-card:hover{box-shadow:0 6px 15px rgba(0,0,0,.1);transform:translateY(-3px)}.user-header{align-items:center;display:flex;gap:15px;margin-bottom:15px}.user-avatar{font-size:20px;font-weight:700;height:50px;width:50px}.user-speciality{color:var(--gray);font-size:14px;margin:5px 0 0}.user-status{align-items:center;border-top:1px solid var(--light-gray);display:flex;gap:10px;padding-top:15px}.status-indicator{height:12px;width:12px}.status-indicator.online{background:var(--success);box-shadow:0 0 8px rgba(76,201,240,.5)}.status-indicator.offline{background:var(--gray)}.project-link{align-items:center;color:var(--primary);display:flex;font-weight:500;gap:8px;text-decoration:none;transition:color .3s}.project-link:hover{color:var(--primary-dark);text-decoration:underline}.section-header h2 svg,.title-icon{margin-right:10px;vertical-align:middle}.input-icon{color:var(--gray)}.input-icon,.role-icon{height:20px;left:15px;position:absolute;width:20px;z-index:2}.status-indicator{align-items:center;border-radius:50%;display:flex;height:24px;justify-content:center;width:24px}.status-indicator svg{color:#fff}.user-meta{border-top:1px solid var(--light-gray);margin-top:10px;padding-top:10px}.user-meta p{align-items:center;color:var(--gray);display:flex;font-size:14px;gap:8px;margin:5px 0}.user-meta a{color:var(--primary);text-decoration:none}.user-meta a:hover{text-decoration:underline}.user-meta svg{color:var(--gray)}.user-profile-header{align-items:center;background:#fff;border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,.05);display:flex;gap:20px;margin-bottom:30px;padding:20px}.user-avatar{align-items:center;background:linear-gradient(to right,var(--primary),var(--primary-dark));border-radius:50%;color:#fff;display:flex;height:80px;justify-content:center;width:80px}.user-info h1{color:var(--dark);margin:0}.user-email,.user-role{align-items:center;color:var(--gray);display:flex;gap:8px;margin:5px 0}.profile-tabs{border-bottom:1px solid var(--light-gray);display:flex;margin-bottom:20px}.tab-button{align-items:center;background:none;border-bottom:3px solid transparent;display:flex;font-size:16px;gap:8px;padding:12px 20px;transition:all .3s ease}.tab-button.active{border-bottom-color:var(--primary);font-weight:500}.profile-form{display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(25%,1fr))}.form-actions{grid-column:1/-1;margin-top:20px}.primary-button{align-items:center;background:linear-gradient(to right,var(--primary),var(--primary-dark));border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;gap:8px;padding:12px 20px;transition:all .3s ease}.primary-button:hover{box-shadow:0 4px 15px rgba(47,69,167,.3)}.danger-button{align-items:center;background:#e74c3c;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;gap:8px;padding:12px 20px;transition:all .3s ease}.danger-button:hover{background:#c0392b}.table-container{overflow-x:auto}.history-table{border-collapse:collapse;width:100%}.history-table td,.history-table th{border-bottom:1px solid var(--light-gray);padding:12px 15px;text-align:left}.history-table th{background:var(--light-gray);color:var(--dark);font-weight:500}.history-table tr:hover{background:rgba(47,69,167,.03)}.status-badge{align-items:center;border-radius:20px;display:inline-flex;font-size:14px;gap:6px;padding:5px 10px}.status-badge.completed{background:rgba(76,201,240,.15);color:var(--success)}.status-badge.in-progress{background:rgba(243,156,18,.15);color:#f39c12}.action-button{align-items:center;background:var(--light-gray);border-radius:4px;color:var(--dark);display:inline-flex;gap:6px;padding:5px 10px;text-decoration:none;transition:all .3s ease}.action-button:hover{background:rgba(47,69,167,.1);color:var(--primary)}@media (max-width:768px){.user-profile-header{flex-direction:column;text-align:center}.profile-form{grid-template-columns:1fr}.form-actions{flex-direction:column}}.pagination-controls{border-top:1px solid var(--light-gray);gap:10px;margin-top:20px;padding-top:20px}.pagination-button,.pagination-controls{align-items:center;display:flex;justify-content:center}.pagination-button{background:#fff;border:1px solid var(--light-gray);border-radius:8px;color:var(--gray);cursor:pointer;height:40px;transition:all .3s ease;width:40px}.pagination-button:hover:not(:disabled){background:var(--light-gray);color:var(--primary)}.pagination-button:disabled{cursor:not-allowed;opacity:.5}.pagination-button.active{background:var(--primary);border-color:var(--primary);color:#fff}.view-more-card{align-items:center;background:rgba(47,69,167,.05);cursor:pointer;display:flex;justify-content:center;transition:all .3s ease}.view-more-card:hover{background:rgba(47,69,167,.1);transform:translateY(-3px)}.view-more-link{align-items:center;color:var(--primary);display:flex;flex-direction:column;height:100%;justify-content:center;padding:20px;text-align:center;text-decoration:none;width:100%}.view-more-card .user-avatar{background:var(--primary);margin-bottom:15px}.view-more-content h3{color:var(--primary);margin-bottom:5px}.view-more-content p{color:var(--gray);font-size:14px;margin:0}.header-container{margin-bottom:30px}.header-content{align-items:center;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between}.create-project-button{align-items:center;background:linear-gradient(to right,var(--primary),var(--primary-dark));border-radius:8px;box-shadow:0 4px 15px rgba(47,69,167,.3);color:#fff;display:flex;font-weight:500;gap:8px;padding:12px 20px;text-decoration:none;transition:all .3s ease}.create-project-button:hover{box-shadow:0 6px 20px rgba(47,69,167,.4);transform:translateY(-2px)}.project-card-link{color:inherit;text-decoration:none}.project-card{border-radius:12px;height:100%;transition:all .3s ease}.project-card-header h2{color:var(--primary);font-size:18px;font-weight:600;margin:0}.project-card-content{gap:12px}.project-info-item{align-items:flex-start;display:flex;gap:10px}.project-icon{color:var(--gray);flex-shrink:0;margin-top:2px}.project-info-item p{color:var(--dark);font-size:14px;line-height:1.4;margin:0}.text-muted{color:var(--gray)!important;font-style:italic}@media (max-width:768px){.header-content{align-items:flex-start;flex-direction:column}.projects-grid{grid-template-columns:1fr}}.project-panel-container{margin:0 auto;max-width:1200px;padding:30px}.project-form{background:hsla(0,0%,100%,.95);border:1px solid rgba(0,0,0,.05);border-radius:16px;box-shadow:0 10px 30px rgba(0,0,0,.1);padding:30px}.form-header{border-bottom:2px solid var(--light-gray);margin-bottom:30px;padding-bottom:20px}.form-header,.form-header h2{align-items:center;display:flex}.form-header h2{color:var(--primary);font-size:28px}.header-icon{color:var(--primary);margin-right:15px}.section-container{background:#fff;border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,.05);margin-bottom:30px;overflow:hidden}.section-header{align-items:center;background:rgba(47,69,167,.05);cursor:pointer;display:flex;justify-content:space-between;padding:20px;transition:background .3s ease}.section-header:hover{background:rgba(47,69,167,.1)}.section-title{align-items:center;display:flex;gap:10px}.section-title h3{font-size:20px;margin:0}.section-icon,.section-title h3{color:var(--primary)}.section-toggle{color:var(--gray)}.section-content{padding:20px}.form-group{margin-bottom:20px}.form-group label{color:var(--dark);font-size:14px;font-weight:500;margin-bottom:8px}.form-group label .required{color:#e74c3c;margin-left:4px}.form-input,.form-select,.form-textarea{background:#fff;border:2px solid var(--light-gray);border-radius:8px;font-size:16px;outline:none;padding:12px 15px;transition:all .3s ease;width:100%}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(47,69,167,.2)}.form-textarea{min-height:100px;resize:vertical}.form-row{display:flex;gap:20px}.form-row .form-group{flex:1}.date-input-container{position:relative}.date-icon{color:var(--gray);pointer-events:none;position:absolute;right:15px;top:50%;transform:translateY(-50%)}.checkbox-container{margin:10px 0}.checkbox-input{cursor:pointer}.checkbox-custom{background-color:#fff;border:2px solid var(--light-gray);border-radius:4px;margin-right:10px}.checkbox-custom:after{content:"✓";position:absolute}.checkbox-input:checked~.checkbox-custom:after{display:block}.role-info{background:hsla(208,7%,46%,.1);gap:5px;padding:3px 8px}.role-icon{color:var(--gray)}.task-status{gap:5px;padding:3px 8px}.task-status.completed{background:rgba(76,201,240,.15)}.task-status.pending{background:rgba(243,156,18,.15)}.status-icon{margin-right:5px}.document-container{border:2px solid var(--light-gray);border-radius:8px;padding:15px}.document-upload{border-top:1px solid var(--light-gray)}.nested-container{border:2px solid var(--light-gray);border-radius:8px;padding:15px}.nested-field{margin-bottom:15px}.nested-field:last-child{margin-bottom:0}.nested-label{color:var(--dark);display:block;font-size:14px;font-weight:500;margin-bottom:8px}.part-card{background:rgba(47,69,167,.03);border:1px solid var(--light-gray);border-radius:8px;margin-bottom:20px}.part-card:last-child{margin-bottom:0}.part-header{justify-content:space-between;margin-bottom:15px}.part-header h4{color:var(--primary);margin:0}.process-card{background:#fff;border-radius:8px;box-shadow:0 2px 8px rgba(0,0,0,.05);margin-bottom:15px;padding:15px}.process-header{justify-content:space-between;padding-right:20px}.process-header h6{color:var(--dark);margin:0}.form-group-row{display:flex;gap:20px;margin-bottom:15px}.add-button,.delete-button{align-items:center;border-radius:8px;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:10px 15px;transition:all .3s ease}.add-button{background:rgba(47,69,167,.1);border:none;color:var(--primary)}.add-button:hover{background:rgba(47,69,167,.2)}.delete-button.small{padding:5px 10px}.form-actions{border-top:1px solid var(--light-gray);display:flex;gap:15px;justify-content:flex-end;margin-top:30px;padding-top:20px}.cancel-button,.submit-button{border-radius:8px;cursor:pointer;font-size:16px;font-weight:500;padding:12px 25px;transition:all .3s ease}.submit-button{background:linear-gradient(to right,var(--primary),var(--primary-dark));border:none;box-shadow:0 4px 15px rgba(47,69,167,.3);color:#fff}.submit-button:hover{box-shadow:0 6px 20px rgba(47,69,167,.4);transform:translateY(-2px)}.cancel-button{background:#fff;border:2px solid var(--light-gray);color:var(--gray)}.cancel-button:hover{border-color:var(--gray);color:var(--dark)}.loading-container .spinner{animation:spin 1s linear infinite;border:4px solid rgba(47,69,167,.1);border-radius:50%;border-top:4px solid var(--primary);height:50px;width:50px}.loading-container p{color:var(--gray);margin:0}@media (max-width:768px){.project-panel-container{margin-left:0;padding:15px}.project-form{padding:20px}.form-row{gap:15px}.form-actions,.form-row{flex-direction:column}.cancel-button,.submit-button{width:100%}}.projects-title{border-bottom:2px solid var(--light-gray);color:var(--primary);font-size:28px;margin-bottom:30px;padding-bottom:15px}.projects-container{display:grid;gap:25px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));margin-bottom:40px}.project-title{border-bottom:1px solid var(--light-gray);color:var(--primary);font-size:22px;margin:0 0 15px;padding-bottom:10px}.project-description{font-size:15px}.project-info{color:var(--gray);font-size:14px;margin-bottom:20px}.project-info strong{color:var(--dark)}.parts-container{margin-top:20px}.no-parts{font-style:italic;padding:15px}.part-link:last-child{margin-bottom:0}.part-card{background:#fff;border-left:4px solid var(--success);border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.05);padding:20px;transition:transform .3s ease,box-shadow .3s ease}.part-card:hover{box-shadow:0 4px 15px rgba(0,0,0,.1);transform:translateY(-3px)}.part-title{font-size:18px;margin:0 0 10px}.part-id{color:var(--gray);font-size:13px;margin:0 0 10px}.part-progress{font-size:14px;margin:0 0 15px}.progress-percentage{border-radius:20px;font-weight:600;padding:3px 8px}.progress-success{background:rgba(76,201,240,.15);color:var(--success)}.progress-warning{background:rgba(243,156,18,.15);color:#f39c12}.progress-danger{background:rgba(231,76,60,.15);color:#e74c3c}.processes-container{border-top:1px solid var(--light-gray);margin-top:15px;padding-top:15px}.processes-title{color:var(--dark);font-size:16px;margin:0 0 10px}.process-list{list-style:none;margin:0;padding:0}.process-item{align-items:center;color:var(--gray);display:flex;font-size:14px;padding:5px 0}.process-item:before{color:var(--primary);content:"•";margin-right:8px}.process-item strong{color:var(--dark);margin-right:5px}@media (max-width:768px){.projects-container{grid-template-columns:1fr}.project-card{padding:20px}}@media (max-width:480px){.projects-title{font-size:24px}.project-title{font-size:20px}.part-title{font-size:16px}}.part-detail-container{margin:0 auto;max-width:1200px;padding:30px}.part-header{margin-bottom:30px}.back-button{align-items:center;color:var(--primary);display:inline-flex;font-weight:500;gap:8px;margin-bottom:20px;text-decoration:none;transition:color .3s ease}.back-button:hover{color:var(--primary-dark)}.back-icon{font-size:16px}.part-title{align-items:center;color:var(--dark);display:flex;font-size:28px;gap:10px;margin:0}.title-label{color:var(--gray);font-weight:400}.part-content{display:grid;gap:30px;grid-template-columns:1fr}.part-info-card,.processes-card{background:#fff;border-radius:16px;box-shadow:0 4px 12px rgba(0,0,0,.05);padding:30px}.card-title{border-bottom:1px solid var(--light-gray);color:var(--primary);font-size:22px;margin:0 0 25px;padding-bottom:15px}.info-grid{display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.info-item{display:flex;flex-direction:column}.info-label{color:var(--gray);font-size:14px;margin-bottom:5px}.info-value{color:var(--dark);font-size:16px;font-weight:500;word-break:break-all}.processes-grid{display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.process-item{border-left:4px solid;border-radius:12px;padding:20px;transition:transform .3s ease,box-shadow .3s ease}.process-item:hover{box-shadow:0 4px 15px rgba(0,0,0,.1);transform:translateY(-3px)}.process-item.completed{background:rgba(76,201,240,.05);border-left-color:var(--success)}.process-item.in-progress{background:rgba(243,156,18,.05);border-left-color:#f39c12}.process-item.not-started{background:hsla(208,7%,46%,.05);border-left-color:var(--gray)}.process-header{align-items:center;display:flex;gap:12px}.process-status-icon{align-items:center;display:flex;height:30px;justify-content:center;width:30px}.status-icon{font-size:20px}.status-icon.completed{color:var(--success)}.status-icon.in-progress{animation:spin 1s linear infinite;color:#f39c12}.status-icon.not-started{color:var(--gray)}.process-name{color:var(--dark);font-size:18px;margin:0}.process-details{display:flex;flex-direction:column;gap:10px}.process-state{color:var(--gray);font-size:14px}.state-text{font-weight:500}.process-item.completed .state-text{color:var(--success)}.process-item.in-progress .state-text{color:#f39c12}.process-item.not-started .state-text{color:var(--gray)}.process-assigned{align-items:center;color:var(--dark);display:flex;font-size:14px;gap:8px}.user-icon{color:var(--gray);font-size:14px}.loading-container{align-items:center;display:flex;flex-direction:column;gap:15px;height:200px;justify-content:center}.spinner{border:4px solid rgba(47,69,167,.1);border-top:4px solid var(--primary)}.error-container{align-items:center;background:rgba(231,76,60,.1);border-radius:8px;color:#e74c3c;display:flex;gap:10px;margin:30px auto;max-width:800px;padding:20px}.error-icon{font-size:24px}@media (max-width:768px){.part-detail-container{padding:20px}.part-title{font-size:24px}.card-title{font-size:20px}.info-grid,.processes-grid{grid-template-columns:1fr}}.project-details-container{background:#fff;border-radius:16px;box-shadow:0 4px 12px rgba(0,0,0,.05);margin:0 auto;max-width:1200px;padding:30px}.project-details-container h1{border-bottom:2px solid var(--light-gray);color:var(--primary);font-size:28px;margin-bottom:30px;padding-bottom:15px}.project-details-container p{color:var(--dark);font-size:16px;line-height:1.5;margin:0 0 15px}.project-details-container strong{color:var(--primary)}.expandable-section{background:#fff;border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,.05);margin-bottom:25px;overflow:hidden}.expandable-section button{align-items:center;background:rgba(47,69,167,.05);border:none;color:var(--primary);cursor:pointer;display:flex;font-size:18px;font-weight:500;justify-content:space-between;padding:20px;text-align:left;transition:background .3s ease;width:100%}.expandable-section button:hover{background:rgba(47,69,167,.1)}.expandable-section ul{list-style:none;margin:0;padding:20px}.expandable-section li{border-bottom:1px solid var(--light-gray);margin-bottom:15px;padding-bottom:15px}.expandable-section li:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.parts-list{padding:20px}.parts-group{background:rgba(47,69,167,.03);border-radius:8px;margin-bottom:20px;overflow:hidden}.parts-group-header{align-items:center;background:rgba(47,69,167,.1);border:none;color:var(--primary);cursor:pointer;display:flex;font-weight:500;justify-content:space-between;padding:15px 20px;text-align:left;width:100%}.part-item,.parts-group-content{padding:20px}.part-item{box-shadow:0 2px 8px rgba(0,0,0,.05);margin-bottom:15px}.part-item:last-child{margin-bottom:0}.part-item p{margin:0 0 10px}.part-item ul{list-style:none;margin:15px 0 0;padding:0}.part-item li{background:hsla(208,7%,46%,.05);border-radius:8px;margin-bottom:10px;padding:15px}.download-link{align-items:center;background:var(--primary);border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;gap:5px;padding:8px 15px;transition:all .3s ease}.download-link:hover{background:var(--primary-dark)}.download-link:disabled{cursor:not-allowed;opacity:.7}.image-grid{display:grid;gap:15px;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));margin-top:15px}.image-item{align-items:center;display:flex;flex-direction:column;gap:5px}.image-item img{border:1px solid var(--light-gray);border-radius:8px;height:auto;max-width:100%}.back-to-projects{color:var(--primary);margin-bottom:20px;text-decoration:none;transition:color .3s ease}.back-to-projects:hover{background-color:var(--primary-dark)}.delete-button{align-items:center;background:rgba(231,76,60,.1);border:none;border-radius:8px;color:#e74c3c;cursor:pointer;display:inline-flex;font-size:16px;font-weight:500;gap:8px;margin-top:20px;padding:12px 20px;transition:all .3s ease}.delete-button:hover{background:rgba(231,76,60,.2)}.actions{align-items:center;border-top:1px solid var(--light-gray);display:flex;justify-content:space-between;margin-top:30px;padding-top:20px}@media (max-width:768px){.project-details-container{padding:20px}.expandable-section button{font-size:16px;padding:15px}.part-item,.parts-group-content{padding:15px}}.part-link{color:inherit;display:block;margin-bottom:15px;text-decoration:none;transition:transform .3s ease,box-shadow .3s ease}.part-link:hover .part-item{border-left:4px solid var(--primary);box-shadow:0 4px 15px rgba(0,0,0,.1);transform:translateY(-3px)}.part-item{border-left:4px solid var(--success)}.historyContainer{margin:0 auto;max-width:1200px;padding:30px}.historyContainer h2{border-bottom:2px solid var(--light-gray);color:var(--primary);font-size:28px;margin-bottom:25px;padding-bottom:15px}.historyList{background:#fff;border-radius:12px;box-shadow:var(--card-shadow);overflow-x:auto}.historyTable{border-collapse:collapse;min-width:1000px;width:100%}.historyTable td,.historyTable th{border-bottom:1px solid var(--light-gray);padding:15px 20px;text-align:left}.historyTable th{background:var(--light-gray);color:var(--dark);font-size:16px;font-weight:500;position:sticky;top:0}.historyTable tr:hover{background:rgba(47,69,167,.03)}.completed-row{border-left:4px solid var(--success)}.paused-row{border-left:4px solid #f39c12}.resumed-row{border-left:4px solid #2ecc71}.started-row{border-left:4px solid var(--primary)}.in-progress-row{border-left:4px solid #3498db}.viewProjectButton{background:rgba(47,69,167,.1);border-radius:6px;color:var(--primary);display:inline-block;font-weight:500;padding:8px 15px;text-decoration:none;transition:all .3s ease}.viewProjectButton:hover{background:rgba(47,69,167,.2);box-shadow:0 2px 8px rgba(47,69,167,.2)}.loadingContainer{align-items:center;color:var(--gray);display:flex;flex-direction:column;font-size:18px;font-weight:500;gap:20px;height:80vh;justify-content:center}.spinner{animation:spin 1s linear infinite;border:5px solid rgba(47,69,167,.1);border-radius:50%;border-top:5px solid var(--primary);height:50px;width:50px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:768px){.historyContainer{padding:20px 15px}.historyContainer h2{font-size:24px}.historyTable td,.historyTable th{font-size:14px;padding:12px 15px}.viewProjectButton{font-size:14px;padding:6px 12px}}.template-list-container{margin:0 auto;max-width:1200px;padding:30px}.headerContainer{align-items:center;border-bottom:2px solid var(--light-gray);display:flex;justify-content:space-between;margin-bottom:30px;padding-bottom:20px}.project-list-heading{color:var(--primary);font-size:28px;margin:0}.project-create-project{align-items:center;background:linear-gradient(to right,var(--primary),var(--primary-dark));border-radius:8px;box-shadow:0 4px 15px rgba(47,69,167,.3);color:#fff;display:flex;font-weight:500;gap:8px;padding:12px 20px;place-content:center;text-align:center;text-decoration:none;transition:all .3s ease}.project-create-project:hover{box-shadow:0 6px 20px rgba(47,69,167,.4);transform:translateY(-2px)}.template-card-link{color:inherit;text-decoration:none}.template-card{background:#fff;border-left:4px solid var(--primary);border-radius:16px;box-shadow:0 4px 12px rgba(0,0,0,.05);display:flex;flex-direction:column;height:100%;padding:25px;transition:transform .3s ease,box-shadow .3s ease}.template-card:hover{box-shadow:0 8px 25px rgba(0,0,0,.1);transform:translateY(-5px)}.template-card-title{border-bottom:1px solid var(--light-gray);color:var(--primary);font-size:22px;margin:0 0 15px;padding-bottom:10px}.template-created-by{align-items:center;color:var(--gray);display:flex;font-size:14px;gap:5px;margin-bottom:15px}.template-meta{display:grid;gap:15px;grid-template-columns:1fr 1fr;margin-top:auto}.template-meta p{align-items:center;color:var(--dark);display:flex;font-size:14px;gap:5px;margin:0}.template-meta strong{color:var(--primary)}.loading{align-items:center;color:var(--gray);display:flex;font-size:16px;grid-column:1/-1;height:100px;justify-content:center}@media (max-width:768px){.template-list-container{padding:20px}.headerContainer{align-items:flex-start;flex-direction:column;gap:15px}.project-list-heading{font-size:24px}.projects-grid{grid-template-columns:1fr}}@media (max-width:480px){.template-meta{grid-template-columns:1fr}}.back-to-projects{align-items:center;background:var(--primary);border:none;border-radius:8px;color:var(--light);cursor:pointer;display:inline-flex;font-size:16px;font-weight:500;gap:8px;margin-top:20px;padding:12px 20px;transition:all .3s ease}.projects-grid{gap:25px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));margin-bottom:40px}.project-card{border-left:4px solid var(--primary);border-radius:16px;box-shadow:0 4px 12px rgba(0,0,0,.05);display:flex;flex-direction:column;padding:25px;transition:transform .3s ease,box-shadow .3s ease}.project-card:hover{box-shadow:0 8px 25px rgba(0,0,0,.1);transform:translateY(-5px)}.project-card-header{align-items:center;border-bottom:1px solid var(--light-gray);display:flex;justify-content:space-between;margin-bottom:15px;padding-bottom:15px}.project-card-title{align-items:center;color:var(--primary);display:flex;font-size:18px;gap:10px;margin:0}.project-icon{color:var(--primary);font-size:20px}.project-arrow{color:var(--gray);transition:transform .3s ease}.project-card:hover .project-arrow{color:var(--primary);transform:translateX(3px)}.project-card-content{display:flex;flex:1;flex-direction:column;gap:15px}.project-description{color:var(--gray);margin:0}.project-meta{margin-top:10px}.progress-container{background-color:var(--light-gray);border-radius:4px;height:8px;margin-bottom:10px;overflow:hidden;width:100%}.progress-bar{background:linear-gradient(to right,var(--primary),var(--primary-dark));border-radius:4px;transition:width .5s ease}.progress-text{color:var(--gray);display:block;font-size:12px;text-align:right}.project-stats{display:flex;gap:15px;margin-top:15px}.stat-item{background:rgba(47,69,167,.05);border-radius:8px;flex:1;padding:10px;text-align:center}.stat-value{display:block;font-size:18px;font-weight:600}.stat-label{color:var(--gray);display:block;font-size:12px}.parts-list{margin-top:20px}.parts-list-title{color:var(--gray);font-size:14px;letter-spacing:.5px;margin:0 0 10px;text-transform:uppercase}.part-item{background:#fff;border-left:3px solid var(--light-gray);border-radius:8px;box-shadow:0 2px 6px rgba(0,0,0,.03);display:block;margin-bottom:8px;padding:12px 15px;transition:all .3s ease}.part-item:hover{border-left-color:var(--primary);box-shadow:0 4px 10px rgba(0,0,0,.08);transform:translateY(-2px)}.part-header{align-items:center;display:flex;gap:10px}.part-icon{color:var(--gray);flex-shrink:0}.part-name{color:var(--dark);flex:1;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.part-status{align-items:center;border-radius:20px;display:flex;font-size:12px;font-weight:500;gap:4px;padding:3px 8px}.part-status.completed{background:rgba(76,201,240,.15);color:var(--success)}.part-status.in-progress{background:rgba(243,156,18,.15);color:#f39c12}.part-status.not-started{background:hsla(208,7%,46%,.15);color:var(--gray)}.view-more-parts{color:var(--gray);cursor:pointer;font-size:12px;padding:8px;text-align:center;transition:color .3s ease}.view-more-parts:hover{color:var(--primary)}.no-parts{align-items:center;background:hsla(208,7%,46%,.05);border-radius:8px;color:var(--gray);display:flex;flex-direction:column;justify-content:center;padding:20px;text-align:center}.no-parts-icon{color:var(--light-gray);font-size:24px;margin-bottom:10px}.no-parts p{font-size:14px;margin:0}.no-projects{align-items:center;background:#fff;border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,.05);color:var(--gray);display:flex;flex-direction:column;grid-column:1/-1;justify-content:center}.no-projects-icon{color:var(--light-gray);margin-bottom:15px}.no-projects h3{color:var(--dark);margin-bottom:10px}@media (max-width:768px){.projects-grid{grid-template-columns:1fr}}@media (max-width:480px){.project-card{padding:20px}.project-stats{flex-direction:column;gap:10px}}.checkbox-label{gap:10px}.checkbox-custom{border-radius:6px;height:22px;transition:all .3s ease;width:22px}.checkbox-custom:after{font-size:14px;transition:opacity .2s ease}.checkbox-text{flex-wrap:wrap;font-size:15px;gap:10px}.role-info,.task-status{border-radius:20px;font-size:13px}.status-icon{font-size:14px}.document-container{background:#fff;border:2px dashed var(--light-gray);border-radius:12px;padding:20px;transition:border-color .3s ease}.document-container.drag-active{background:rgba(47,69,167,.05);border-color:var(--primary)}.document-needs{margin-bottom:15px}.document-upload{padding-top:15px}.file-item{padding:10px}.file-name{max-width:300px}.file-action-button{background:none;border:none;color:var(--gray);cursor:pointer;font-size:16px;transition:color .3s ease}.file-action-button:hover{color:var(--primary)}.file-action-button.delete:hover{color:#e74c3c}.upload-container{background:#fff;border:2px dashed var(--light-gray);border-radius:12px;padding:20px;transition:all .3s ease}.upload-container.drag-active{background:rgba(47,69,167,.05);border-color:var(--primary)}.upload-area{align-items:center;background:rgba(47,69,167,.03);border-radius:8px;cursor:pointer;display:flex;flex-direction:column;justify-content:center;padding:20px;transition:background .3s ease}.upload-area:hover{background:rgba(47,69,167,.1)}.upload-icon{color:var(--primary);font-size:24px;margin-bottom:10px}.upload-text{color:var(--gray);font-size:14px;font-weight:500;text-align:center}.upload-subtext{color:var(--gray);font-size:12px;margin-top:5px}.upload-button{align-items:center;background:linear-gradient(to right,var(--primary),var(--primary-dark));border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;justify-content:center;padding:12px 20px;transition:all .3s ease;width:100%}.upload-button:hover:not(:disabled){box-shadow:0 4px 15px rgba(47,69,167,.3);transform:translateY(-2px)}.upload-button:disabled{cursor:not-allowed;opacity:.7}.file-list{display:flex;flex-direction:column;gap:10px;margin-top:15px}.file-item{align-items:center;background:#fff;border:1px solid var(--light-gray);border-radius:8px;display:flex;justify-content:space-between;padding:12px;transition:all .3s ease}.file-item:hover{border-color:var(--primary);box-shadow:0 2px 8px rgba(0,0,0,.05)}.file-info{align-items:center;display:flex;flex:1;gap:10px}.file-icon{color:var(--primary);font-size:20px}.file-name{color:var(--dark);font-size:14px;max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-size,.file-type{color:var(--gray);font-size:12px;margin-left:10px}.file-actions{display:flex;gap:10px}.download-button,.file-action-button,.remove-button{background:none;border:none;border-radius:4px;color:var(--gray);cursor:pointer;font-size:16px;padding:8px;transition:all .3s ease}.download-button{align-items:center;color:var(--primary);display:flex;font-size:14px;gap:6px}.download-button:hover{background:rgba(47,69,167,.1);color:var(--primary-dark)}.file-action-button.delete,.remove-button{color:#e74c3c}.file-action-button.delete:hover,.remove-button:hover{background:rgba(231,76,60,.1);color:#c0392b}.error{background:rgba(231,76,60,.1);color:#e74c3c;padding:10px}.empty-state,.error{border-radius:8px;font-size:14px;margin-top:15px;text-align:center}.empty-state{background:hsla(208,7%,46%,.05);color:var(--gray);padding:20px}.progress-bar-container{background:var(--light-gray);border-radius:3px;height:6px;margin-top:10px;overflow:hidden;width:100%}.progress-bar{background:var(--primary);border-radius:3px;height:100%;transition:width .3s ease}.uploaded-files h4{color:var(--dark);font-size:16px;margin:15px 0 10px}@media (max-width:768px){.file-item{align-items:flex-start;flex-direction:column;gap:10px}.file-actions{justify-content:flex-end;width:100%}.file-name{max-width:200px}}.checkbox-container{align-items:center;display:flex;gap:12px;margin:12px 0}.checkbox-label{align-items:center;color:var(--dark);cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;user-select:none}.checkbox-input{height:0;opacity:0;position:absolute;width:0}.checkbox-custom{align-items:center;background:#fff;border:2px solid var(--primary);border-radius:5px;display:flex;height:20px;justify-content:center;position:relative;transition:all .2s ease-in-out;width:20px}.checkbox-input:checked~.checkbox-custom{background:var(--primary);border-color:var(--primary)}.checkbox-custom:after{color:#fff;content:"\2713";font-size:13px;opacity:0;transition:opacity .2s ease-in-out}.checkbox-input:checked~.checkbox-custom:after{opacity:1}.checkbox-input:focus~.checkbox-custom{box-shadow:0 0 0 3px rgba(47,69,167,.2)}.checkbox-label:hover .checkbox-custom{border-color:var(--primary-dark)}.checkbox-input:disabled~.checkbox-custom{background:var(--light-gray);border-color:var(--gray);cursor:not-allowed}.checkbox-input:disabled~.checkbox-text{color:var(--gray);cursor:not-allowed}.checkbox-text{align-items:center;color:var(--dark);display:flex;font-size:14px;gap:8px}.role-info{background:rgba(47,69,167,.1);color:var(--gray)}.role-info,.task-status{align-items:center;border-radius:16px;display:flex;font-size:12px;gap:6px;padding:4px 10px}.task-status.completed{background:rgba(76,201,240,.2);color:var(--success)}.task-status.pending{background:rgba(243,156,18,.2);color:#f39c12}.status-icon{font-size:12px}@media (max-width:768px){.checkbox-container{align-items:flex-start;flex-direction:column;gap:8px}.checkbox-label{font-size:13px}.checkbox-custom{height:18px;width:18px}.checkbox-custom:after{font-size:12px}body{font-size:14px}.login-page{padding:15px}.login-container{border-radius:12px;margin:10px;max-width:100%;padding:20px}.login-header h1{font-size:24px}.login-header p{font-size:14px}.logo img{max-width:200px}.login-button{font-size:14px;height:45px;padding:12px}.input-container select,.input-group input{font-size:14px;padding:12px 12px 12px 40px}.background-split{flex-direction:column}.image-half,.solid-half{height:50%}.side-menu{height:auto;left:0;position:fixed;top:0;transform:translateX(-100%);width:100%;z-index:1000}.side-menu.mobile{background:#fff}.side-menu.mobile .menu-container{height:calc(100vh - 60px);top:60px;width:260px}.side-menu.mobile .menu-container.open{transform:translateX(0)}.side-menu.collapsed{width:0}.desktop-sidebar{display:none}.mobile-header{padding:10px 15px}.mobile-header .logo{width:100px}.hamburger{height:16px;width:20px}.nav-links{padding:0 10px}.nav-link{font-size:14px;padding:10px 15px}.nav-icon svg{height:18px;width:18px}.user-profile{padding:0 15px 20px}.avatar{font-size:16px;height:40px;width:40px}.user-info h3{font-size:14px}.user-info p{font-size:12px}.logout-button{font-size:14px;padding:8px}.dashboard-container{margin-left:0;padding:15px}.dashboard-title{font-size:24px;padding-bottom:15px}.dashboard-grid{gap:15px}.dashboard-grid,.statistics-cards{grid-template-columns:1fr}.stat-card{padding:20px}.stat-icon{height:50px;width:50px}.stat-icon svg{height:24px;width:24px}.stat-content h3{font-size:16px}.stat-value{font-size:28px}.projects-grid,.tasks-grid,.users-grid{grid-template-columns:1fr}.project-card,.task-card,.user-card{padding:15px}.project-card-header h2,.task-header h3,.user-header h3{font-size:16px}.section-header h2{font-size:20px}.statistics-container{padding:20px}.statistics-header h2{font-size:22px}.statistics-controls{align-items:stretch;flex-direction:column}.styled-select{min-width:100%;padding:12px}.chart-container{height:300px}.project-panel-container{margin-left:0;padding:15px}.project-form{padding:20px}.form-header h2{font-size:24px}.form-row{flex-direction:column;gap:15px}.form-input,.form-select,.form-textarea{font-size:14px;padding:10px}.form-actions{flex-direction:column;gap:10px}.cancel-button,.submit-button,.upload-button{font-size:14px;padding:10px}.upload-container{padding:15px}.file-item{align-items:flex-start;flex-direction:column;padding:10px}.file-name{max-width:100%}.file-actions{justify-content:flex-start;width:100%}.part-detail-container{padding:15px}.part-title{font-size:24px}.card-title{font-size:20px}.info-grid,.processes-grid{grid-template-columns:1fr}.historyContainer{padding:15px}.historyContainer h2{font-size:24px}.historyTable td,.historyTable th{font-size:13px;padding:10px}.viewProjectButton{font-size:13px;padding:6px 10px}.template-list-container{padding:15px}.project-list-heading{font-size:24px}.project-create-project{font-size:14px;padding:10px;width:100%}.template-card{padding:20px}.template-card-title{font-size:20px}.template-meta{grid-template-columns:1fr}}@media (max-width:480px){body{font-size:13px}.login-container{padding:15px}.login-header h1{font-size:20px}.login-header p{font-size:13px}.input-container select,.input-group input{font-size:13px;padding:10px 10px 10px 35px}.input-container svg{height:18px;width:18px}.login-button{font-size:13px;height:40px;padding:10px}.dashboard-title,.form-header h2,.part-title,.project-list-heading{font-size:20px}.section-header h2{font-size:18px}.stat-value{font-size:24px}.stat-content h3{font-size:14px}.project-card-title,.template-card-title{font-size:18px}.part-title{font-size:16px}.cancel-button,.submit-button,.upload-button{font-size:13px;padding:8px}.checkbox-custom{height:18px;width:18px}.checkbox-custom:after{font-size:11px}.checkbox-label{font-size:12px}.file-name{font-size:13px}.file-size,.file-type{font-size:11px}}@media (max-width:768px){.action-button,.add-button,.back-to-projects,.cancel-button,.delete-button,.download-button,.file-action-button,.nav-link,.pagination-button,.project-create-project,.remove-button,.submit-button,.tab-button,.upload-button,.viewProjectButton,a,button{-webkit-tap-highlight-color:transparent;touch-action:manipulation}.action-button,.nav-link,.pagination-button,.tab-button{padding:10px}.checkbox-container{padding:10px 0}.loading-container .spinner,.spinner{border-width:3px;height:40px;width:40px}.loadingContainer p{font-size:14px}.historyList,.table-container{-webkit-overflow-scrolling:touch;overflow-x:auto}.historyTable{min-width:600px}:focus{outline:2px solid var(--primary);outline-offset:2px}.checkbox-input:focus~.checkbox-custom,input:focus,select:focus{box-shadow:0 0 0 3px rgba(47,69,167,.3)}}.statistics-container{background:var(--solid-bg);border-radius:12px;box-shadow:var(--card-shadow);margin:20px auto;max-width:1200px;padding:25px;width:calc(100% - 40px)}.statistics-header{align-items:center;display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between;margin-bottom:20px}.statistics-header h2{color:var(--dark);font-size:28px;margin:0}.statistics-tabs{display:flex;gap:10px}.tab-button{background:var(--light-gray);border:none;border-radius:8px;color:var(--gray);cursor:pointer;font-size:14px;padding:8px 16px;transition:var(--transition)}.tab-button.active,.tab-button:hover{background:var(--primary);color:#fff}.statistics-controls{align-items:center;display:flex;flex-wrap:wrap;gap:20px;margin-bottom:20px}.filter-group{align-items:center;display:flex;gap:10px}.filter-group label{color:var(--gray);font-size:14px;white-space:nowrap}.selection-controls{display:flex;flex:1;flex-wrap:wrap;gap:15px}.styled-select{appearance:none;background:#fff;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'><path fill='%236c757d' d='M0 0h10L5 6z'/></svg>");background-position:right 10px center;background-repeat:no-repeat;background-size:10px;border:1px solid var(--light-gray);border-radius:8px;color:var(--dark);font-size:14px;min-width:200px;padding:10px 12px;transition:var(--transition)}.styled-select:focus{border-color:var(--primary);box-shadow:var(--input-shadow);outline:none}.chart-container{-webkit-overflow-scrolling:touch;height:400px;overflow-x:auto;width:100%}.no-data{align-items:center;color:var(--gray);display:flex;flex-direction:column;height:400px;justify-content:center;text-align:center}.no-data-icon{height:60px;margin-bottom:15px;width:60px}.no-data-icon svg{fill:var(--gray);height:100%;width:100%}.no-data p{font-size:16px;margin:0 0 10px}.no-data small{color:var(--gray);font-size:12px}@media (max-width:768px){.statistics-container{margin:10px;padding:15px;width:calc(100% - 20px)}.statistics-header{align-items:flex-start;flex-direction:column;gap:10px}.statistics-header h2{font-size:22px}.statistics-tabs{justify-content:space-between;width:100%}.tab-button{flex:1;font-size:13px;padding:8px;text-align:center}.statistics-controls{align-items:stretch;flex-direction:column;gap:15px}.filter-group{align-items:flex-start;flex-direction:column}.selection-controls{width:100%}.styled-select{font-size:13px;min-width:100%;padding:10px}.chart-container,.no-data{height:300px}.no-data-icon{height:50px;width:50px}.no-data p{font-size:14px}.no-data small{font-size:11px}}@media (max-width:480px){.statistics-container{margin:5px;padding:10px}.statistics-header h2{font-size:20px}.tab-button{font-size:12px;padding:6px}.styled-select{font-size:12px;padding:8px}.filter-group label{font-size:13px}}body{margin:0;min-height:100vh;overflow-x:hidden;padding:0;position:relative}.mobile-header{align-items:center;background:#fff;box-shadow:0 2px 10px rgba(0,0,0,.1);display:none;height:60px;justify-content:space-between;left:0;padding:10px 15px;position:fixed;top:0;width:100%;z-index:1002}@media (max-width:768px){.mobile-header{display:flex}}.hamburger{background:none;border:none;cursor:pointer;display:flex;flex-direction:column;height:25px;justify-content:space-around;padding:0;width:30px;z-index:1003}.hamburger span{background:#333;height:3px;transition:all .3s ease;width:100%}.hamburger.open span:first-child{transform:rotate(45deg) translate(5px,5px)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:rotate(-45deg) translate(7px,-7px)}.menu-overlay{background:rgba(0,0,0,.5);display:none;height:100%;left:0;position:fixed;top:0;width:100%;z-index:999}.side-menu.mobile .menu-container.open~.menu-overlay{display:block}.side-menu{background:#f8f9fa;display:flex;flex-direction:column;height:100%;left:0;position:fixed;top:0;transition:width .3s ease,transform .3s ease;width:280px;z-index:1000}.side-menu.collapsed{width:80px}.side-menu.mobile{transform:translateX(0);width:280px}.side-menu.mobile.hidden{overflow:hidden;transform:translateX(-100%);width:0}.desktop-sidebar{align-items:center;background:#fff;border-bottom:1px solid #ddd;display:flex;justify-content:space-between;padding:15px}.toggle-sidebar{background:none;border:none;cursor:pointer;padding:5px}.toggle-sidebar svg{fill:#333;height:24px;width:24px}.logo img{height:auto;max-width:120px}.menu-container{display:flex;flex:1;flex-direction:column;overflow-y:auto;padding:20px}.side-menu.collapsed .menu-container{padding:10px}.side-menu.mobile .menu-container{display:none}.side-menu.mobile .menu-container.open{display:flex}.user-profile{margin-bottom:20px}.avatar,.user-profile{align-items:center;display:flex}.avatar{background:#007bff;border-radius:50%;color:#fff;font-size:18px;height:40px;justify-content:center;margin-right:10px;width:40px}.user-info h3{font-size:16px;margin:0}.user-info p{color:#666;font-size:14px;margin:0}.side-menu.collapsed .user-info{display:none}.nav-links{display:flex;flex:1;flex-direction:column}.nav-link{align-items:center;border-radius:5px;color:#333;display:flex;font-size:16px;margin-bottom:10px;padding:10px;position:relative;text-decoration:none;transition:background .2s ease}.nav-link:hover{background:#e9ecef}.nav-link.active{background:#007bff;color:#fff}.nav-icon{height:24px;margin-right:10px;width:24px}.nav-label{flex:1}.side-menu.collapsed .nav-label{display:none}.side-menu.collapsed .nav-link:hover .tooltip{display:block}.tooltip{background:#333;border-radius:3px;color:#fff;display:none;font-size:14px;left:80px;padding:5px 10px;position:absolute;white-space:nowrap;z-index:1001}.logout-container{margin-top:auto;padding:10px}.logout-button{align-items:center;background:none;border:none;border-radius:5px;color:#dc3545;cursor:pointer;display:flex;font-size:16px;padding:10px;width:100%}.logout-button:hover{background:#f8d7da}.logout-button svg{height:24px;margin-right:10px;width:24px}.side-menu.collapsed .logout-button span{display:none}@media (max-width:768px){.logo{margin-bottom:0}.dashboard-container,.historyContainer,.part-detail-container,.project-panel-container,.statistics-container,.template-list-container{margin-left:0;padding-top:70px;z-index:1}}@media (min-width:769px){.dashboard-container,.historyContainer,.part-detail-container,.project-panel-container,.statistics-container,.template-list-container{margin-left:280px;padding:15px;z-index:1}.side-menu.collapsed+.dashboard-container,.side-menu.collapsed+.historyContainer,.side-menu.collapsed+.part-detail-container,.side-menu.collapsed+.project-panel-container,.side-menu.collapsed+.statistics-container,.side-menu.collapsed+.template-list-container{margin-left:80px}}.side-menu.mobile{height:100vh;width:50vw}.projects-grid{display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-top:20px}.project-card{background:#fff;border-radius:8px;box-shadow:0 2px 10px rgba(0,0,0,.1);padding:20px;transition:transform .2s ease,box-shadow .2s ease}.project-card:hover{box-shadow:0 4px 20px rgba(0,0,0,.15);transform:translateY(-2px)}.project-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:15px}.project-header h3{color:#2c3e50;flex:1;font-size:18px;margin:0}.deadline{background:#f8f9fa;border-radius:4px;color:#6c757d;font-size:14px;margin-left:10px;padding:4px 8px}.deadline.overdue{background:#fff5f5;color:#e53e3e}.project-description{color:#6c757d;font-size:14px;line-height:1.5;margin-bottom:15px}.project-tasks h4{color:#2c3e50;font-size:16px;margin:0 0 10px}.project-tasks ul{list-style:none;margin:0;padding:0}.project-tasks li{align-items:center;border-bottom:1px solid #f1f3f4;display:flex;padding:8px 0}.project-tasks li:last-child{border-bottom:none}.task-status{margin-right:8px}.project-tasks li.completed .task-status,.task-status{color:#28a745}.project-tasks li:not(.completed) .task-status{color:#ffc107}.project-tasks li.completed{color:#6c757d;text-decoration:line-through}.project-actions{border-top:1px solid #f1f3f4;margin-top:15px;padding-top:15px}.sort-button{align-items:center;background:#f8f9fa;border:1px solid #dee2e6;border-radius:4px;cursor:pointer;display:flex;font-size:14px;gap:5px;padding:6px 12px;transition:all .2s ease}.sort-button:hover{background:#e9ecef}.no-projects{color:#6c757d;padding:40px 20px;text-align:center}.no-projects svg{height:60px;margin-bottom:15px;opacity:.5;width:60px}.drawing-section-card,.procurement-table-container{background:#f9f9f9;border:1px solid #e0e0e0;border-radius:8px;margin-bottom:15px;padding:15px}.drawing-section-header,.procurement-actions{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.procurement-table{border-collapse:collapse;margin-bottom:15px;width:100%}.procurement-table td,.procurement-table th{border-bottom:1px solid #e0e0e0;padding:10px;text-align:left}.procurement-table th{background-color:#f0f0f0;font-weight:600}.table-input{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:8px;width:100%}.export-button{align-items:center;background-color:#28a745;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;gap:5px;padding:8px 15px}.export-button:hover{background-color:#218838}@media (max-width:768px){.procurement-table-container{overflow-x:auto}.procurement-table{min-width:800px}}