:root{--violet-fonce: #55415D;--blanc-casse: #F8F3EA;--jaune-dore: #F9D58B;--violet-clair: #C3A5C7;--gris: #7A7A7A;--gris-clair: #E5E5E5}.popup-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.popup-content{background:var(--blanc-casse);border-radius:12px;padding:30px;width:90%;max-width:500px;box-shadow:0 10px 30px #0000004d;position:relative}.popup-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.popup-header h3{font-family:Rubik,sans-serif;font-size:24px;color:var(--violet-fonce);margin:0}.close-button{background:none;border:none;font-size:20px;color:var(--gris);cursor:pointer;padding:5px;border-radius:50%;display:flex;align-items:center;justify-content:center;width:30px;height:30px}.close-button:hover{background-color:var(--gris-clair);color:var(--violet-fonce)}.popup-form .form-group{margin-bottom:20px}.popup-form label{display:block;margin-bottom:8px;font-weight:600;color:var(--violet-fonce)}.popup-form input{width:100%;padding:12px;border:2px solid var(--gris-clair);border-radius:8px;font-size:16px;background-color:var(--blanc-casse);color:var(--violet-fonce);transition:border-color .3s ease}.popup-form input:focus{outline:none;border-color:var(--violet-clair)}.popup-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:25px}.popup-actions .btn{padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease}.popup-actions .btn-secondary{background-color:var(--gris-clair);color:var(--violet-fonce)}.popup-actions .btn-secondary:hover{background-color:var(--gris);color:var(--blanc-casse)}.popup-actions .btn-primary{background-color:var(--violet-fonce);color:var(--blanc-casse)}.popup-actions .btn-primary:hover{background-color:var(--violet-clair)}.task-status-selector{margin-bottom:20px}.status-label{display:block;margin-bottom:12px;font-weight:600;color:var(--violet-fonce);font-size:16px}.status-options{display:flex;gap:12px;flex-wrap:wrap}.status-option{display:flex;flex-direction:column;padding:10px 15px;border:2px solid var(--gris-clair);border-radius:8px;cursor:pointer;transition:all .3s ease;background:var(--blanc-casse);flex:1;min-width:120px}.status-content{display:flex;justify-content:space-between;align-items:center;width:100%;margin-bottom:6px}.status-option:hover{border-color:var(--violet-clair);transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.status-option.selected[data-color="#55415D"]{border-color:#55415d;background-color:#55415d1a}.status-option.selected[data-color="#F9D58B"]{border-color:#f9d58b;background-color:#f9d58b33}.status-option.selected[data-color="#C3A5C7"]{border-color:#c3a5c7;background-color:#c3a5c733}.status-badge{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;transition:all .3s ease}.status-option[data-color="#55415D"] .status-badge{background-color:#55415d;color:var(--blanc-casse)}.status-option[data-color="#F9D58B"] .status-badge{background-color:#f9d58b;color:var(--violet-fonce)}.status-option[data-color="#C3A5C7"] .status-badge{background-color:#c3a5c7;color:var(--violet-fonce)}.status-text{font-weight:600;color:var(--violet-fonce);font-size:14px;text-align:left}.status-option.selected .status-text{font-weight:700}.status-description{font-size:11px;color:var(--gris);text-align:left;font-style:italic;margin-top:2px}.error-message{color:#e74c3c;font-size:14px;margin-top:8px;font-weight:500}.save-message{background-color:#d4edda;color:#155724;padding:12px 15px;border-radius:8px;border:1px solid #c3e6cb;margin:15px 0;font-size:14px;font-weight:500}.task-status-filter{margin-bottom:30px}.filter-label{display:block;margin-bottom:12px;font-weight:600;color:var(--violet-fonce);font-size:16px}.status-filter-options{display:flex;gap:12px;flex-wrap:wrap}.filter-option{display:flex;flex-direction:column;padding:8px 5px;border:.5px solid var(--gris-clair);border-radius:8px;cursor:pointer;background:var(--blanc-casse);flex:1;min-width:80px}.filter-option:hover:not(.selected){border-color:var(--gris-clair)!important;background-color:var(--blanc-casse)!important}.filter-option.selected{border:.5px solid #F9D58B!important;background-color:#f9d58b4d!important}.filter-content{display:flex;justify-content:space-between;align-items:center;width:100%}.filter-text{font-weight:600;color:var(--violet-fonce);font-size:14px;text-align:left}.filter-option.selected .filter-text{font-weight:700}.filter-badge{width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;transition:all .3s ease}.filter-option[data-color="#55415D"] .filter-badge{background-color:#55415d;color:var(--blanc-casse)}.filter-option[data-color="#F9D58B"] .filter-badge{background-color:#f9d58b;color:var(--violet-fonce)}.filter-option[data-color="#C3A5C7"] .filter-badge{background-color:#c3a5c7;color:var(--jaune-dore)}.filter-option.radio-option{border:none;background:transparent;padding:10px 8px;min-width:auto;width:40px;height:49px;justify-content:center;align-items:center;flex:none}.filter-option.radio-option:hover{border:none;background:#8e8e931a;transform:none;box-shadow:none}.filter-option.radio-option.selected{border:none;background:#8e8e9326}.radio-icon{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.radio-icon i{font-size:14px;color:#8e8e93;transition:all .3s ease}.filter-option.radio-option.selected .radio-icon i{color:var(--blanc-casse);background-color:var(--violet-fonce);border-radius:50%;padding:1px;font-size:18px}.user-result{display:flex!important;align-items:center;gap:12px;padding:12px!important}.user-avatar{width:40px;height:40px;border-radius:50%;overflow:hidden;flex-shrink:0}.user-avatar img{width:100%;height:100%;object-fit:cover}.avatar-placeholder{width:100%;height:100%;background-color:var(--violet-clair);color:#fff;display:flex;align-items:center;justify-content:center;font-size:16px}.user-info{flex:1;display:flex;flex-direction:column;gap:4px}.user-name{font-weight:600;color:var(--violet-fonce);font-size:14px}.user-phone{font-size:12px;color:var(--gris)}.mentor-badge{background-color:var(--jaune-dore);color:var(--violet-fonce);font-size:10px;padding:2px 6px;border-radius:10px;font-weight:600;align-self:flex-start;margin-top:2px}.collaborator-tag{display:flex;align-items:center;gap:8px;background-color:var(--violet-clair);color:#fff;padding:6px 10px;border-radius:20px;font-size:12px;margin:4px 8px 4px 0;position:relative}.collab-avatar{width:20px;height:20px;border-radius:50%;overflow:hidden;flex-shrink:0}.collab-avatar img{width:100%;height:100%;object-fit:cover}.avatar-placeholder-small{width:100%;height:100%;background-color:var(--violet-fonce);color:#fff;display:flex;align-items:center;justify-content:center;font-size:10px}.collab-name{font-weight:500}.collaborator-tag i{cursor:pointer;opacity:.8;transition:opacity .3s ease;margin-left:4px}.collaborator-tag i:hover{opacity:1}.form-control.disabled,.form-control:disabled{background-color:#f5f5f5;color:#999;cursor:not-allowed;opacity:.6}.form-control.disabled:hover,.form-control:disabled:hover{border-color:var(--gris-clair)}.task-item.clickable{display:flex;justify-content:space-between;width:100%;cursor:pointer;transition:all .3s ease}.task-item.clickable:hover{background-color:var(--violet-clair);transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.task-status-badge{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}.task-status-badge[data-status=todo]{background-color:#55415d1a;color:#55415d;border:1px solid #55415D}.task-status-badge[data-status=in-progress]{background-color:#f9d58b33;color:#b8860b;border:1px solid #F9D58B}.task-status-badge[data-status=done]{background-color:#c3a5c733;color:#8b5a96;border:1px solid #C3A5C7}.add-task-btn{display:flex;justify-content:space-between;align-items:center;margin-top:15px;padding-top:10px;border-top:1px solid var(--gris-clair)}.add-task-text{font-size:12px;color:var(--gris);font-style:italic;flex:1}.btn-add-task{background-color:var(--violet-clair);border:none;color:var(--blanc-casse);font-size:24px;cursor:pointer;padding:8px;border-radius:50%;transition:all .3s ease;display:flex;align-items:center;justify-content:center;width:40px;height:40px;transform:scale(1.1);box-shadow:0 4px 12px #0003}.btn-add-task:hover{background-color:var(--violet-fonce);color:var(--blanc-casse);transform:scale(1.2);box-shadow:0 6px 16px #0000004d}@media (max-width: 768px){.status-options{flex-direction:column}.status-option{min-width:auto}.status-content{margin-bottom:6px}.status-filter-options{flex-direction:row;gap:8px}.filter-option{min-width:80px;flex:1}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Open Sans,sans-serif;background-color:var(--blanc-casse);color:var(--violet-fonce);line-height:1.6;min-height:100vh;display:flex;flex-direction:column}.btn-primary,.btn-accent,.btn-secondary,.menu-card:hover,.task-status-badge,.collaborator-tag,.save-message,.load-more-btn,.pagination-btn.active,.btn-close,.btn-back{color:inherit}#root{display:flex;flex-direction:column;min-height:100vh}.container{padding:0 20px}header{background-color:var(--violet-fonce);color:var(--blanc-casse);padding:20px 0;box-shadow:0 2px 10px #0000001a}.logo-container{display:flex;align-items:center;justify-content:center}.logo-wrapper{display:flex;justify-content:space-between;align-items:center;width:100%}.logo-section,.button-section{display:flex;align-items:center}.logo-icon{background-color:var(--jaune-dore);color:var(--violet-fonce);width:50px;height:50px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-right:15px;font-size:20px}.logo h1{font-family:Rubik,sans-serif;font-weight:700;font-size:28px}.main-menu{text-align:center;flex-grow:1}.welcome-text{margin-bottom:40px;max-width:700px;margin-left:auto;margin-right:auto}.welcome-text h2{font-family:Rubik,sans-serif;font-size:32px;margin-bottom:15px;color:var(--violet-fonce)}.welcome-text p{font-size:15px;color:var(--violet-fonce)}.menu-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:30px;margin-top:30px;justify-content:center;max-width:800px;margin-left:auto;margin-right:auto}.menu-card{background:#fff;border-radius:12px;padding:30px 20px;box-shadow:0 4px 15px #00000014;transition:transform .3s ease,box-shadow .3s ease;cursor:pointer;border:2px solid transparent}.menu-card:hover{transform:translateY(-5px);box-shadow:0 8px 25px #0000001f;border-color:var(--violet-clair)}.menu-card i{font-size:48px;margin-bottom:20px;color:var(--violet-clair)}.menu-card h3{font-family:Rubik,sans-serif;font-size:22px;margin-bottom:15px}.menu-card p{color:var(--violet-fonce);font-size:16px}.form-container{max-width:700px;margin:40px auto;background:#fff;border-radius:12px;padding:30px;box-shadow:0 4px 20px #00000014}.form-header{margin-bottom:30px}.btn-back-to-challenges{background-color:transparent;color:var(--violet-clair);border:1px solid var(--violet-clair);padding:6px 12px;border-radius:4px;font-size:12px;cursor:pointer;margin-bottom:15px;display:inline-flex;align-items:center;gap:6px;transition:all .3s ease}.btn-back-to-challenges:hover{background-color:var(--violet-clair);color:#fff}.btn-back-to-challenges i{font-size:11px}.form-header h2{font-family:Rubik,sans-serif;font-size:28px;color:var(--violet-fonce);margin-bottom:10px}.form-header p{color:var(--violet-fonce);font-size:16px}.form-step{display:none}.form-step.active{display:flex;flex-direction:column;justify-content:space-between}.form-group{margin-bottom:25px}.form-group label{display:block;margin-bottom:8px;font-weight:600;color:var(--violet-fonce)}.form-control{width:100%;padding:14px;border:1px solid var(--gris-clair);border-radius:8px;font-size:16px;font-family:Open Sans,sans-serif;transition:border-color .3s}.form-control:focus{outline:none;border-color:var(--violet-clair);box-shadow:0 0 0 3px #c3a5c733}textarea.form-control{min-height:120px;resize:vertical}.form-control::placeholder{color:var(--gris);opacity:.5;font-size:.9em}.form-control::-webkit-input-placeholder{color:var(--gris);opacity:.5;font-size:.9em}.form-control::-moz-placeholder{color:var(--gris);opacity:.5;font-size:.9em}.form-control:-ms-input-placeholder{color:var(--gris);opacity:.5;font-size:.9em}.btn-group{display:flex;justify-content:space-between;margin-top:30px;gap:15px}.btn{padding:12px 30px;border-radius:8px;font-family:Rubik,sans-serif;font-weight:500;font-size:16px;cursor:pointer;border:none;transition:all .3s ease;flex:1;text-align:center}.btn-primary{background-color:var(--violet-fonce);color:#fff}.btn-primary:hover{background-color:#46344d}.btn-secondary{background-color:var(--gris-clair);color:var(--violet-fonce)}.btn-secondary:hover{background-color:#d1d1d1}.btn.disabled,.btn:disabled{background-color:#e0e0e0!important;color:#999!important;cursor:not-allowed!important;opacity:.6}.btn.disabled:hover,.btn:disabled:hover{background-color:#e0e0e0!important;transform:none!important}.btn-accent{background-color:var(--jaune-dore);color:var(--violet-fonce)}.btn-accent:hover{background-color:#f7c467}.btn-outline{background-color:transparent;color:var(--violet-fonce);border:2px solid var(--violet-clair)}.btn-outline:hover{background-color:var(--violet-clair);color:#fff}.btn-navigation{display:flex;gap:12px;flex:1}input[type=radio][name=collaboration]{accent-color:var(--violet-fonce)}input[type=radio][name=collaboration]:checked{background-color:var(--violet-fonce);border-color:var(--violet-fonce)}.search-container{position:relative;margin-bottom:20px}.search-results{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid var(--gris-clair);border-radius:8px;box-shadow:0 4px 12px #0000001a;max-height:200px;overflow-y:auto;z-index:100;display:none}.search-results.active{display:block}.search-result-item{padding:12px 15px;cursor:pointer;border-bottom:1px solid var(--gris-clair);transition:background-color .2s}.search-result-item:hover{background-color:var(--blanc-casse)}.search-result-item:last-child{border-bottom:none}.portfolio-container{max-width:900px;margin:40px auto}.portfolio-header{text-align:center;margin-bottom:40px}.portfolio-header h2{font-family:Rubik,sans-serif;font-size:32px;color:var(--violet-fonce);margin-bottom:15px}.empty-portfolio{text-align:center;padding:60px 20px;background:#fff;border-radius:12px;box-shadow:0 4px 15px #00000014}.empty-portfolio i{font-size:60px;color:var(--violet-clair);margin-bottom:20px}.empty-portfolio h3{font-family:Rubik,sans-serif;font-size:24px;margin-bottom:15px}.empty-portfolio p{color:var(--violet-fonce);margin-bottom:25px;max-width:500px;margin-left:auto;margin-right:auto}.challenge-list{display:grid;gap:30px}.challenge-card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 4px 15px #00000014}.challenge-header{background-color:var(--violet-fonce);color:var(--blanc-casse);padding:20px;display:flex;justify-content:space-between;align-items:center}.challenge-header *{color:var(--blanc-casse)}.challenge-header h3{font-family:Rubik,sans-serif;font-size:22px;color:var(--blanc-casse)}.challenge-content{padding:25px}.task{margin-bottom:30px;padding-bottom:30px;border-bottom:1px dashed var(--gris-clair)}.task:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.task h4{font-family:Rubik,sans-serif;font-size:18px;color:var(--violet-fonce);margin-bottom:15px;display:flex;align-items:center}.task h4 i{margin-right:10px;color:var(--violet-clair)}.task-section h5{font-family:Rubik,sans-serif;font-size:16px;color:var(--gris);margin-bottom:8px;display:flex;align-items:center}.task-section h5 i{margin-right:8px;color:var(--jaune-dore)}.task-section p{background-color:var(--blanc-casse);padding:15px;border-radius:8px;border-left:3px solid var(--violet-clair)}.collaborator{background-color:var(--violet-clair);color:#fff;padding:5px 12px;border-radius:20px;margin-right:8px;margin-bottom:8px;font-size:14px}.layout-wrapper{min-height:100vh;display:flex;flex-direction:column}.main-content{flex:1;padding-bottom:50px}.footer{background-color:var(--violet-fonce);color:var(--blanc-casse);text-align:center;padding:25px 0;width:100%;margin-top:auto}.footer p{font-size:14px;margin:0;color:var(--blanc-casse)}.nav-breadcrumb{display:flex;align-items:center;justify-content:space-between;padding:20px 0;color:var(--violet-fonce);font-size:14px}.nav-left,.nav-right{display:flex;align-items:center}.nav-breadcrumb a{color:var(--violet-fonce);text-decoration:none;display:flex;align-items:center}.nav-breadcrumb a:hover{color:var(--violet-clair)}.nav-breadcrumb i{margin:0 10px}.btn-create-challenge{background:transparent;color:var(--jaune-dore);padding:8px 16px;border-radius:.5px;font-size:13px;font-weight:500;border:.5px solid white;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;gap:6px;font-family:Rubik,sans-serif;position:relative;overflow:hidden}.btn-create-challenge:hover{background:linear-gradient(135deg,#f8f9fa 0%,var(--blanc-casse) 100%);border-color:#c3a5c799;box-shadow:0 4px 12px #c3a5c733;transform:translateY(-1px)}.btn-create-challenge:active{transform:translateY(0);box-shadow:0 2px 4px #0000001a}.btn-create-challenge:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .6s}.btn-create-challenge:hover:before{left:100%}.btn-create-challenge i{font-size:14px;opacity:1;transition:all .3s ease;color:var(--jaune-dore);position:relative}.btn-create-challenge:hover i{opacity:1;transform:rotate(90deg) scale(1.1);filter:drop-shadow(0 1px 2px rgba(195,165,199,.3))}.progress-container{margin-bottom:30px}.progress-bar{height:8px;background-color:var(--gris-clair);border-radius:4px;overflow:hidden}.progress{height:100%;background-color:var(--violet-clair);width:0%;transition:width .4s ease}.step-indicator{display:flex;justify-content:space-between;margin-top:15px}.step{font-size:12px;color:var(--gris);position:relative;text-align:center;flex:1}.step.active{color:var(--violet-fonce);font-weight:600}.step:before{content:"";display:block;width:12px;height:12px;background-color:var(--gris-clair);border-radius:50%;margin:0 auto 5px}.step.active:before{background-color:var(--violet-clair)}.step-clickable{cursor:pointer;transition:all .3s ease}.step-clickable:hover{color:var(--violet-clair);transform:scale(1.05)}.save-status{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;padding:10px 15px;background-color:var(--blanc-casse);border-radius:8px;border-left:3px solid var(--violet-clair);font-size:14px;color:var(--gris)}.save-status i{color:var(--violet-clair);margin-right:8px}.save-message{position:fixed;top:20px;right:20px;background-color:var(--jaune-dore);color:var(--violet-fonce);padding:15px 20px;border-radius:8px;box-shadow:0 4px 12px #00000026;z-index:1000;max-width:350px;font-weight:500;border-left:4px solid var(--violet-clair);animation:slideInRight .3s ease-out}.save-message.hide{animation:slideOutRight .3s ease-in forwards}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideOutRight{0%{transform:translate(0);opacity:1}to{transform:translate(100%);opacity:0}}.save-button{background-color:var(--jaune-dore);color:var(--violet-fonce);border:none;padding:10px 20px;border-radius:6px;font-weight:500;cursor:pointer;transition:all .3s ease;margin-left:10px}.save-button:hover{background-color:#f7c467;transform:translateY(-1px)}.section{display:none}.section.active{display:block}.file-upload{border:2px dashed var(--gris-clair);border-radius:8px;padding:30px;text-align:center;cursor:pointer;transition:all .3s}.file-upload:hover{border-color:var(--violet-clair);background-color:#c3a5c70d}.file-upload i{font-size:40px;color:var(--violet-clair);margin-bottom:15px}.file-upload p{margin:5px 0}.select-challenge-container{max-width:900px;margin:40px auto}.select-challenge-header{text-align:center;margin-bottom:30px}.select-challenge-header h2{font-family:Rubik,sans-serif;font-size:32px;color:var(--violet-fonce);margin-bottom:5px}.select-challenge-search{margin-bottom:30px}.challenge-item{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 4px 15px #00000014;margin-bottom:20px;transition:transform .3s ease}.challenge-item:hover{transform:translateY(-5px)}.challenge-item-header{background-color:var(--violet-fonce);color:var(--blanc-casse);padding:15px 20px;display:flex;justify-content:space-between;align-items:center}.challenge-item-header *{color:var(--blanc-casse)}.challenge-item-header h3,.challenge-item-header h4{font-family:Rubik,sans-serif;font-size:20px;margin:0;color:#f8f3ea}.challenge-item-content{padding:20px}.task-list{margin-bottom:20px}.task-item{padding:15px;border-bottom:1px solid var(--gris-clair);display:flex;flex-direction:column}.task-header{display:flex;justify-content:space-between;align-items:center;gap:12px}.task-header .task-name{flex:1}.task-item:last-child{border-bottom:none}.task-name{font-weight:500;color:var(--violet-fonce)}.task-completion-circle{width:20px;height:20px;border-radius:50%;border:2px solid var(--violet-clair);display:flex;align-items:center;justify-content:center;font-size:10px;transition:all .3s ease;flex-shrink:0}.task-completion-circle.incomplete{background-color:transparent;color:var(--violet-clair)}.task-completion-circle.completed{background-color:var(--violet-clair);color:#fff;border-color:var(--violet-clair)}.task-progress-section{display:flex;flex-direction:column;gap:8px}.progress-info{display:flex;justify-content:space-between;align-items:center}.collaboration-info{display:flex;align-items:center;gap:6px}.collaboration-info i{font-size:12px;color:var(--violet-fonce)}.collaboration-count{font-size:12px;color:var(--violet-fonce);font-weight:500}.progress-percentage{font-size:12px;color:var(--violet-fonce);font-weight:600}.progress-bar-container{width:100%;height:6px;background-color:var(--gris-clair);border-radius:3px;overflow:hidden}.progress-bar-fill{height:100%;border-radius:3px;transition:all .3s ease}.progress-bar-fill.complete{background-color:var(--jaune-dore)}.progress-bar-fill.incomplete{background-color:var(--violet-clair)}.add-task-btn{margin-top:15px;text-align:center}@media screen and (max-width: 768px){.container{padding:0 15px}.logo-wrapper{gap:20px}.logo h1{font-size:22px}.welcome-text h2{font-size:26px}.menu-cards{grid-template-columns:1fr}.form-container{padding:20px 15px}.step-indicator{display:none}.btn-group{flex-direction:row;gap:10px}.challenge-header{flex-direction:column;align-items:flex-start;gap:10px}.task h4{font-size:16px}.task-section h5{font-size:14px}.file-upload{padding:20px 10px}.file-upload p{font-size:14px}.challenge-item-header{flex-direction:column;align-items:flex-start}.challenge-item-header h3{margin-bottom:10px}}@media screen and (max-width: 480px){.logo-wrapper{gap:15px}.logo-icon{width:40px;height:40px;font-size:18px}.logo h1{font-size:20px}.welcome-text h2{font-size:22px}.welcome-text p{font-size:16px}.menu-card{padding:20px 15px}.menu-card i{font-size:36px;margin-bottom:15px}.menu-card h3{font-size:18px}.menu-card p{font-size:14px}.form-header h2{font-size:22px}.form-control{padding:12px;font-size:14px}.btn{padding:10px 15px;font-size:14px}.btn-navigation{flex-direction:row;gap:10px}.btn-navigation .btn{flex:1;min-height:44px}.nav-breadcrumb{flex-direction:row;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px}.nav-right{flex-shrink:0}.btn-create-challenge{padding:10px 16px;font-size:12px;min-height:40px;border-radius:8px}.collaborator-tag{font-size:12px;padding:4px 10px}.empty-portfolio i{font-size:40px}.empty-portfolio h3{font-size:20px}.empty-portfolio p{font-size:14px}}.header-content{display:flex;justify-content:space-between;align-items:center;width:100%;margin-bottom:15px}.header-controls{display:flex;align-items:center;gap:10px}.task-title{font-family:Rubik,sans-serif;font-size:23px;color:var(--violet-fonce);margin:0 0 10px;text-align:left}.btn-back{background-color:transparent;border:none;color:var(--violet-clair);cursor:pointer;padding:8px;border-radius:50%;transition:all .3s ease;display:flex;align-items:center;justify-content:center;width:36px;height:36px;font-size:16px;flex-shrink:0}.btn-back:hover{background-color:var(--violet-clair);color:var(--blanc-casse);transform:scale(1.1)}.btn-back:active{transform:scale(.95)}.btn-close{background-color:transparent;border:none;color:var(--violet-clair);cursor:pointer;padding:8px;border-radius:50%;transition:all .3s ease;display:flex;align-items:center;justify-content:center;width:36px;height:36px;font-size:16px;flex-shrink:0}.btn-close:hover{background-color:var(--violet-clair);color:var(--blanc-casse);transform:scale(1.1)}.btn-close:active{transform:scale(.95)}.file-upload{border:2px dashed #C3A5C7;border-radius:8px;padding:40px 20px;text-align:center;cursor:pointer;transition:all .3s ease;background-color:#f8f3ea}.file-upload:hover{border-color:#55415d;background-color:#f0f0f0}.file-upload.drag-over{border-color:#55415d;background-color:#e8e8ff;transform:scale(1.02)}.file-upload i{font-size:48px;color:#c3a5c7;margin-bottom:16px}.file-upload p{margin:8px 0;color:#55415d}.selected-files{margin-top:20px;padding:20px;background-color:#f8f3ea;border-radius:8px;border:1px solid #C3A5C7}.selected-files h4{margin:0 0 15px;color:#55415d;font-size:16px}.files-list{display:flex;flex-direction:column;gap:10px}.file-item{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background-color:#fff;border-radius:6px;border:1px solid #e0e0e0;transition:all .2s ease}.file-item:hover{box-shadow:0 2px 4px #0000001a}.file-info{display:flex;align-items:center;gap:12px;flex:1}.file-info i{font-size:20px;color:#c3a5c7}.file-details{display:flex;flex-direction:column;gap:2px}.file-name{font-weight:500;color:#55415d;font-size:14px}.file-size{font-size:12px;color:#888}.remove-file-btn{background:none;border:none;color:#ff4757;cursor:pointer;padding:8px;border-radius:4px;transition:background-color .2s ease}.remove-file-btn:hover{background-color:#ffe6e6}.remove-file-btn i{font-size:14px}.view-file-btn:hover{background-color:#f0f0f0!important}.file-preview-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000c;display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px}.file-preview-modal{background:#fff;border-radius:12px;max-width:90vw;max-height:90vh;width:800px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 10px 30px #0000004d}.file-preview-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #e0e0e0;background-color:#f8f3ea}.file-preview-header h3{margin:0 20px 0 0;color:#55415d;font-size:18px;word-break:break-word;flex:1}.close-preview-btn{background:none;border:none;font-size:24px;color:#666;cursor:pointer;padding:5px;border-radius:4px;transition:all .2s ease}.close-preview-btn:hover{color:#ff4757;background-color:#ffe6e6}.file-preview-content{flex:1;padding:20px;display:flex;justify-content:center;align-items:center;min-height:300px;overflow:auto}.file-preview-info{text-align:center;color:#55415d}.file-preview-info p{margin:10px 0;font-size:16px}.file-preview-footer{padding:20px;border-top:1px solid #e0e0e0;background-color:#f8f3ea}.file-preview-actions{display:flex;gap:15px;justify-content:center}.file-preview-actions .btn{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border-radius:6px;text-decoration:none;font-weight:500;border:1px solid;transition:all .2s ease}.file-preview-actions .btn-outline{background:transparent;color:#55415d;border-color:#55415d}.file-preview-actions .btn-outline:hover{background:#55415d;color:#fff}.file-preview-actions .btn-secondary{background:#c3a5c7;color:#fff;border-color:#c3a5c7}.file-preview-actions .btn-secondary:hover{background:#55415d;border-color:#55415d}@media (max-width: 768px){.file-upload{padding:30px 15px}.file-upload i{font-size:36px}.file-item{padding:10px 12px}.file-info{gap:8px}.file-preview-modal{width:95vw;max-height:95vh}.file-preview-header{padding:15px}.file-preview-header h3{font-size:16px}.file-preview-content,.file-preview-footer{padding:15px}.file-preview-actions{flex-direction:column;gap:10px}.file-preview-actions .btn{justify-content:center}}.pagination-container{display:flex;flex-direction:column;gap:1.5rem;margin:2rem 0;align-items:center}.pagination-info{text-align:center}.pagination-text{color:#55415d;font-size:.9rem;opacity:.8}.pagination-text strong{color:#55415d;font-weight:600}.pagination-controls{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;justify-content:center}.pagination-numbers{display:flex;gap:.25rem;align-items:center;flex-wrap:wrap}.pagination-btn{background:#f8f3ea;border:2px solid #C3A5C7;color:#55415d;padding:.5rem .75rem;border-radius:8px;cursor:pointer;font-size:.9rem;font-weight:500;transition:all .3s ease;display:flex;align-items:center;gap:.5rem;min-width:40px;justify-content:center}.pagination-btn:hover:not(.disabled):not(.dots){background:#c3a5c7;color:#f8f3ea;transform:translateY(-2px);box-shadow:0 4px 12px #c3a5c74d}.pagination-btn:active:not(.disabled):not(.dots){transform:translateY(0);box-shadow:0 2px 8px #c3a5c766}.pagination-btn.active{background:#55415d;color:#f8f3ea;border-color:#55415d;box-shadow:0 4px 12px #55415d4d}.pagination-btn.disabled{opacity:.4;cursor:not-allowed;transform:none!important;box-shadow:none!important}.pagination-btn.dots{background:transparent;border:none;cursor:default;color:#55415d;opacity:.6}.pagination-arrow{padding:.5rem 1rem;font-weight:600}.pagination-number{min-width:40px;height:40px}.pagination-load-more{margin-top:1rem}.load-more-btn{background:linear-gradient(135deg,#f9d58b,#c3a5c7);border:none;color:#55415d;padding:1rem 2rem;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 6px 20px #f9d58b4d;position:relative;overflow:hidden}.load-more-btn:hover:not(.loading){transform:translateY(-3px);box-shadow:0 8px 25px #f9d58b66}.load-more-btn:active:not(.loading){transform:translateY(-1px)}.load-more-btn.loading{cursor:wait;opacity:.8}.load-more-spinner{width:16px;height:16px;border:2px solid transparent;border-top:2px solid #55415D;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.pagination-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.pagination-btn:hover:not(.disabled):not(.dots):before{left:100%}@media (max-width: 768px){.pagination-container{gap:1rem}.pagination-controls{gap:.25rem;flex-wrap:wrap}.pagination-btn{padding:.4rem .6rem;font-size:.8rem;min-width:35px}.pagination-arrow{padding:.4rem .8rem}.pagination-arrow span{display:none}.pagination-number{min-width:35px;height:35px}.load-more-btn{padding:.8rem 1.5rem;font-size:.9rem}.pagination-text{font-size:.8rem}}@media (max-width: 480px){.pagination-numbers{max-width:250px;justify-content:center;flex-wrap:nowrap}.pagination-controls{flex-direction:row;gap:.5rem;justify-content:center}.pagination-info{order:2}}.pagination-container{animation:fadeInUp .6s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.loading-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#55415de6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:9999;display:flex;align-items:center;justify-content:center}.loading-container{display:flex;align-items:center;justify-content:center;min-height:200px}.loading-content{display:flex;flex-direction:column;align-items:center;gap:2rem;padding:2rem;background:#ffffffe6;border-radius:20px;box-shadow:0 20px 60px #0006;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:2px solid rgba(195,165,199,.5)}.loading-spinner{position:relative;display:inline-block}.spinner-ring{position:absolute;border:4px solid transparent;border-radius:50%;animation:spin 1.5s cubic-bezier(.68,-.55,.265,1.55) infinite}.spinner-ring:nth-child(1){border-top-color:#55415d;animation-delay:0s}.spinner-ring:nth-child(2){border-right-color:#f9d58b;animation-delay:-.4s}.spinner-ring:nth-child(3){border-bottom-color:#c3a5c7;animation-delay:-.8s}.spinner-ring:nth-child(4){border-left-color:#55415d;animation-delay:-1.2s}.spinner-small .spinner-ring{width:30px;height:30px;border-width:2px}.spinner-medium .spinner-ring{width:50px;height:50px;border-width:3px}.spinner-large .spinner-ring{width:80px;height:80px;border-width:4px}.loading-message{text-align:center;color:#55415d}.loading-message h3{margin:0 0 1rem;font-size:1.2rem;font-weight:600;font-family:Rubik,sans-serif}.loading-dots{display:flex;gap:.5rem;justify-content:center;align-items:center}.loading-dots span{width:8px;height:8px;background:#f9d58b;border-radius:50%;animation:bounce 1.4s ease-in-out infinite both}.loading-dots span:nth-child(1){animation-delay:-.32s}.loading-dots span:nth-child(2){animation-delay:-.16s}.loading-dots span:nth-child(3){animation-delay:0s}@keyframes spin{0%{transform:rotate(0);border-width:4px}50%{transform:rotate(180deg);border-width:1px}to{transform:rotate(360deg);border-width:4px}}@keyframes bounce{0%,80%,to{transform:scale(.8);opacity:.5}40%{transform:scale(1.2);opacity:1}}.loading-content{animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1);box-shadow:0 20px 60px #0006}50%{transform:scale(1.02);box-shadow:0 25px 80px #00000080}}@media (max-width: 768px){.loading-content{margin:1rem;padding:1.5rem}.loading-message h3{font-size:1rem}}:root{--bg-primary: #F8F3EA;--text-primary: #55415D;--accent-secondary: #C3A5C7;--badge-color: #F9D58B;--blanc-casse: #F8F3EA;--gris: #55415D;--violet-clair: #C3A5C7;--jaune-dore: #F9D58B;font-family:Rubik,Open Sans,system-ui,sans-serif;line-height:1.5;font-weight:400;color:var(--text-primary);background-color:var(--bg-primary);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;min-height:100vh;background-color:var(--bg-primary);color:var(--text-primary)}#root{min-height:100vh}h1,h2,h3,h4,h5,h6{font-family:Rubik,sans-serif;color:var(--text-primary)}p,span,div{font-family:Open Sans,sans-serif}a{color:var(--accent-secondary);text-decoration:none}a:hover{color:var(--text-primary)}.badge{background-color:var(--badge-color);color:var(--text-primary);padding:.25rem .75rem;border-radius:1rem;font-size:.875rem;font-weight:500;display:inline-flex;align-items:center;gap:.25rem}.card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #55415d1a;padding:1rem}.timeline-activity{margin-bottom:2rem;padding-left:2rem}.timeline-item{padding:1rem 0rem 1rem 1rem;border-left:1px solid var(--accent-secondary);position:relative}.timeline-item:before{content:"";position:absolute;left:-7px;top:1.5rem;width:12px;height:12px;border-radius:50%;background-color:var(--accent-secondary)}.profile-image{width:120px;height:120px;border-radius:50%;object-fit:cover;border:4px solid var(--accent-secondary);display:block}.profile-image-container{position:relative;display:inline-block}.profile-edit-icon{position:absolute;bottom:2px;right:2px;width:25px;height:25px;border-radius:50%;background-color:var(--badge-color);display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 2px 4px #0003;border:2px solid white}.badges-container{display:flex;gap:1rem;flex-wrap:wrap}.task{margin-bottom:1.5rem;background-color:#ffffff80;border-radius:8px}.task-header{display:flex;justify-content:space-between;margin-bottom:15px}.task h4{font-family:Rubik,sans-serif;font-size:16px;color:var(--text-primary);margin:0}.task-date{display:flex;align-items:center;gap:5px;color:var(--text-primary);font-size:14px;font-weight:300}.task-section{margin-bottom:20px}.task-section h5{font-family:Rubik,sans-serif;font-size:14px;color:var(--gris);margin-bottom:8px;display:flex;align-items:center;gap:8px}.task-section h5 svg{color:var(--violet-clair)!important}.task-section p{background-color:var(--blanc-casse);padding:15px;border-radius:8px;border-left:3px solid var(--jaune-dore);margin:0}.collaborators{display:flex;flex-wrap:wrap;margin-top:10px}.collaborator{background-color:var(--jaune-dore);color:#55415d;padding:5px 12px;border-radius:20px;margin-right:8px;margin-bottom:8px;font-size:14px}@media (max-width: 768px){.profile-image{width:80px;height:80px}.badges-container{gap:.2rem;display:flex!important;flex-direction:row!important;flex-wrap:nowrap}.badges-container .badge{flex:1;justify-content:center;text-align:center;font-size:.6rem}.badges-container .badge span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-date{white-space:nowrap;font-size:10px}header>div:first-child{grid-template-columns:auto 1fr auto!important;grid-template-rows:auto auto!important;gap:.5rem!important;align-items:start!important}header>div:first-child>img{grid-column:1!important;grid-row:1!important}header>div:first-child>div:last-child{grid-column:3!important;grid-row:1!important}header>div:first-child>div:nth-child(2){grid-column:1!important;grid-row:2!important;text-align:left!important;justify-self:start!important}header .card{padding:.75rem}header h1{font-size:1rem!important;margin:.25rem 0!important}header .badge{font-size:.6rem;padding:.15rem .4rem}.header-phone{font-size:.8rem!important;margin-bottom:.5rem!important}}.header-phone,.header-phone i,.header-phone span{color:var(--text-primary)!important}.unauth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#55415d,#c3a5c7);padding:2rem}.unauth-container{max-width:500px;width:100%}.unauth-content{background:#f8f3ea;border-radius:20px;padding:3rem 2rem;text-align:center;box-shadow:0 20px 60px #0000004d;border:1px solid rgba(195,165,199,.3)}.unauth-icon{width:80px;height:80px;margin:0 auto 2rem;background:#55415d!important;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem;color:#f9d58b!important;box-shadow:0 10px 30px #55415d4d}.unauth-icon i{color:#f9d58b!important}.unauth-content h1{color:#55415d;font-size:2rem;margin-bottom:1rem;font-weight:700;font-family:Rubik,sans-serif}.unauth-message{color:#55415d;font-size:1.1rem;line-height:1.6;margin-bottom:2rem;opacity:.9}.unauth-features{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem;padding:1.5rem;background:#c3a5c71a;border-radius:15px;border:1px solid rgba(195,165,199,.2)}.feature-item{display:flex;align-items:center;gap:1rem;color:#55415d;font-weight:500}.feature-item i{width:20px;color:#f9d58b;font-size:1.1rem}.unauth-contact{margin-bottom:2rem;padding:1.5rem;background:#f9d58b1a;border-radius:15px;border-left:4px solid #C3A5C7}.unauth-contact p{color:#55415d;font-size:.95rem;line-height:1.5;margin:0}.unauth-contact strong{color:#55415d;font-weight:600}.whatsapp-btn{display:inline-flex;align-items:center;gap:.5rem;margin-top:1rem;padding:.75rem 1.5rem;background:#f9d58b;color:#55415d;text-decoration:none;border-radius:25px;font-weight:600;font-size:.9rem;transition:all .3s ease;box-shadow:0 4px 15px #f9d58b4d}.whatsapp-btn:hover{background:#f7c467;transform:translateY(-2px);box-shadow:0 6px 20px #f9d58b66;color:#55415d;text-decoration:none}.whatsapp-btn i{font-size:1.1rem}.access-steps{list-style:none;padding:0;margin:1rem 0;text-align:left}.access-steps li{font-size:.95rem;line-height:1.5;color:#55415d;border-left:3px solid #F9D58B;padding:.75rem 0 .75rem 1rem;margin-bottom:.5rem;background:#f9d58b0d;border-radius:0 8px 8px 0}.access-steps li strong{color:#55415d;font-weight:600}.kabakoo-branding{color:#55415d;font-size:.9rem;opacity:.7;margin-top:2rem;padding-top:1.5rem;border-top:1px solid rgba(195,165,199,.3)}.kabakoo-branding strong{color:#55415d;font-weight:700;margin-left:.5rem}@media (max-width: 768px){.unauth-page{padding:1rem}.unauth-content{padding:2rem 1.5rem}.unauth-content h1{font-size:1.75rem}.unauth-message{font-size:1rem}.unauth-icon{width:60px;height:60px;font-size:1.5rem}}.unauth-content{animation:fadeInUp .6s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.notification-container{position:fixed;top:20px;right:20px;z-index:10000;display:flex;flex-direction:column;gap:12px;max-width:400px}.notification{background:#f8f3ea;border-radius:12px;box-shadow:0 8px 32px #0003;overflow:hidden;transform:translate(100%);animation:slideIn .3s ease-out forwards;border-left:4px solid}.notification-success{border-left-color:#4caf50}.notification-error{border-left-color:#f44336}.notification-warning{border-left-color:#f9d58b}.notification-info{border-left-color:#c3a5c7}.notification-content{display:flex;align-items:flex-start;padding:16px;gap:12px}.notification-icon{flex-shrink:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;margin-top:2px}.notification-success .notification-icon{color:#4caf50}.notification-error .notification-icon{color:#f44336}.notification-warning .notification-icon{color:#ff9800}.notification-info .notification-icon{color:#55415d}.notification-message{flex:1;color:#55415d;font-size:14px;line-height:1.4;font-weight:500}.notification-close{flex-shrink:0;background:none;border:none;color:#55415d;cursor:pointer;padding:4px;border-radius:4px;opacity:.6;transition:opacity .2s ease}.notification-close:hover{opacity:1;background:#55415d1a}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.notification.removing{animation:slideOut .3s ease-in forwards}@keyframes slideOut{0%{transform:translate(0);opacity:1}to{transform:translate(100%);opacity:0}}@media (max-width: 768px){.notification-container{top:10px;right:10px;left:10px;max-width:none}.notification-content{padding:12px}.notification-message{font-size:13px}}
