@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;700&display=swap";.project-card-wrapper{position:relative;height:100%}.project-card-link{text-decoration:none;color:inherit;display:block;height:100%;outline-offset:2px;position:relative}.project-card{border:1px solid var(--color-border);border-radius:var(--border-radius-lg);overflow:hidden;background-color:var(--color-surface);display:flex;flex-direction:column;height:100%;box-shadow:0 2px 5px var(--color-shadow);transition:transform .2s ease-out,box-shadow .2s ease-out,background-color .2s ease,border-color .2s ease;font-family:var(--font-family-sans)}body.dark-mode .project-card{border:1px solid var(--dark-color-border);background-color:var(--dark-color-surface);box-shadow:0 2px 5px var(--dark-color-shadow)}.project-card-link:hover .project-card{transform:translateY(-3px);box-shadow:0 4px 10px var(--color-shadow-hover)}body.dark-mode .project-card-link:hover .project-card{box-shadow:0 4px 10px var(--dark-color-shadow-hover)}.project-card-image-container{width:100%;height:180px;overflow:hidden;background-color:var(--color-surface-alt);display:flex;align-items:center;justify-content:center;border-bottom:1px solid var(--color-border);transition:background-color .2s ease,border-color .2s ease}body.dark-mode .project-card-image-container{background-color:var(--dark-color-surface-alt);border-bottom:1px solid var(--dark-color-border)}.project-card-image{width:100%;height:100%;object-fit:cover;display:block}.project-card-content{padding:16px;flex-grow:1;display:flex;flex-direction:column}.project-card-title{font-size:1.15em;font-weight:600;margin:0 0 8px;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3;transition:color .2s ease}body.dark-mode .project-card-title{color:var(--dark-color-text-primary)}.project-card-description{font-size:.9em;color:var(--color-text-secondary);line-height:1.5;margin:0 0 12px;height:4.05em;overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;transition:color .2s ease}body.dark-mode .project-card-description{color:var(--dark-color-text-secondary)}.project-card-meta{padding:12px 16px;border-top:1px solid var(--color-border);display:flex;flex-wrap:wrap;gap:12px;font-size:.8em;color:var(--color-text-secondary);align-items:center;margin-top:auto;transition:border-color .2s ease,color .2s ease}body.dark-mode .project-card-meta{border-top:1px solid var(--dark-color-border);color:var(--dark-color-text-secondary)}.project-card-meta-item{display:inline-flex;align-items:center;gap:5px}.project-card-meta-icon{vertical-align:middle;color:var(--color-text-secondary)}body.dark-mode .project-card-meta-icon{color:var(--dark-color-text-secondary)}.project-card-meta-icon.favorited{fill:var(--color-secondary-red, #e74c3c);color:var(--color-secondary-red, #e74c3c)}body.dark-mode .project-card-meta-icon.favorited{fill:var(--dark-color-secondary-red, #e74c3c);color:var(--dark-color-secondary-red, #e74c3c)}.project-card-user-avatar-container{position:absolute;top:10px;right:10px;width:36px;height:36px;border-radius:50%;background-color:var(--color-surface);display:flex;align-items:center;justify-content:center;z-index:2;box-shadow:0 2px 5px var(--color-shadow);cursor:pointer;transition:transform .1s ease-out,background-color .2s}body.dark-mode .project-card-user-avatar-container{background-color:var(--dark-color-surface);box-shadow:0 2px 5px var(--dark-color-shadow)}.project-card-user-avatar-container:hover{transform:scale(1.1);background-color:var(--color-surface-alt)}body.dark-mode .project-card-user-avatar-container:hover{background-color:var(--dark-color-surface-alt)}.project-card-user-avatar-image{width:30px;height:30px;border-radius:50%;object-fit:cover}.project-card-collab-stack{position:absolute;top:10px;right:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;z-index:2}.project-card-collab-link{display:block;line-height:0;transition:transform .1s ease-out}.project-card-collab-link:hover{transform:scale(1.1)}.project-card-collab-avatar{width:28px;height:28px;border-radius:50%;border:2px solid var(--color-surface);object-fit:cover;box-shadow:0 1px 3px var(--color-shadow);position:relative;background-color:var(--color-surface)}body.dark-mode .project-card-collab-avatar{border:2px solid var(--dark-color-surface)}.project-card-plus-one-circle{width:28px;height:28px;border-radius:50%;background-color:var(--color-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.8em;font-weight:700;border:2px solid var(--color-surface);box-shadow:0 1px 3px var(--color-shadow)}body.dark-mode .project-card-plus-one-circle{border:2px solid var(--dark-color-surface)}.project-card--phase-idea{border-left-color:var(--color-secondary-yellow, #FFDE59)!important}body.dark-mode .project-card--phase-idea{border-left-color:var(--dark-color-secondary-yellow, #FFDE59)!important}.project-card--phase-project{border-left-color:var(--color-secondary-red, #FF3A3A)!important}body.dark-mode .project-card--phase-project{border-left-color:var(--dark-color-secondary-red, #FF3A3A)!important}.project-card--phase-mvp-product{border-left-color:var(--color-primary, #3498db)!important}body.dark-mode .project-card--phase-mvp-product{border-left-color:var(--dark-color-primary, #3498db)!important}.gallery-page-container{padding:20px;max-width:1200px;margin:0 auto;font-family:var(--font-family-sans);color:var(--color-text-primary);background-color:var(--color-background);transition:background-color .2s ease,color .2s ease}body.dark-mode .gallery-page-container{color:var(--dark-color-text-primary);background-color:var(--dark-color-background)}.gallery-header-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;flex-wrap:wrap;gap:15px}.gallery-page-title{margin:0;font-size:clamp(1.6em,4vw,2em);color:var(--color-text-primary);transition:color .2s ease}body.dark-mode .gallery-page-title{color:var(--dark-color-text-primary)}.refresh-button{padding:9px 15px;font-size:.9em;background-color:var(--color-text-secondary);color:var(--color-text-on-primary);border:none;border-radius:var(--border-radius);cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:background-color .2s,opacity .2s,color .2s}body.dark-mode .refresh-button{background-color:var(--dark-color-text-secondary);color:var(--dark-color-text-on-primary)}.refresh-button:hover:not(:disabled){opacity:.9}.gallery-controls-bar{display:flex;gap:20px;margin-bottom:30px;flex-wrap:wrap;align-items:flex-end}.filter-group{display:flex;flex-direction:column;gap:6px;flex:1;min-width:220px}.filter-group-label{font-weight:500;font-size:.9em;color:var(--color-text-secondary);display:flex;align-items:center;gap:6px;transition:color .2s ease}body.dark-mode .filter-group-label{color:var(--dark-color-text-secondary)}.control-icon{font-size:1.1em;opacity:.8;color:var(--color-primary)}body.dark-mode .control-icon{color:var(--dark-color-primary)}.filter-input,.filter-select{padding:10px 12px;border:1px solid var(--color-border);border-radius:var(--border-radius);font-size:1em;background-color:var(--color-surface);color:var(--color-text-primary);width:100%;box-sizing:border-box;transition:border-color .2s,box-shadow .2s,background-color .2s,color .2s}body.dark-mode .filter-input,body.dark-mode .filter-select{border:1px solid var(--dark-color-border);background-color:var(--dark-color-surface);color:var(--dark-color-text-primary)}.filter-input:focus,.filter-select:focus{border-color:var(--color-primary);box-shadow:0 0 0 .2rem #007bff40;outline:none}body.dark-mode .filter-input:focus,body.dark-mode .filter-select:focus{border-color:var(--dark-color-primary);box-shadow:0 0 0 .2rem #8ab4f840}.filter-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right .75rem center;background-size:16px 12px;padding-right:35px}body.dark-mode .filter-select{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23e8eaed' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e")}.empty-message{text-align:center;margin-top:40px;padding:20px;color:var(--color-text-secondary);font-style:italic;font-size:1.05em;transition:color .2s ease}@media(max-width:768px){.gallery-header-controls{flex-direction:column;align-items:center}.refresh-button{width:100%;justify-content:center}.gallery-controls-bar{flex-direction:column;align-items:stretch}.filter-group{min-width:unset;width:100%}}.project-detail-page-container{padding:20px;max-width:900px;margin:0 auto;color:var(--color-text-primary);background-color:var(--color-background);transition:background-color .2s ease,color .2s ease}body.dark-mode .project-detail-page-container{color:var(--dark-color-text-primary);background-color:var(--dark-color-background)}.project-header-section{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:15px;padding-bottom:15px;border-bottom:1px solid var(--color-border);margin-bottom:20px;transition:border-color .2s ease}body.dark-mode .project-header-section{border-bottom:1px solid var(--dark-color-border)}.project-title-h1{margin:0;font-size:clamp(1.5em,4vw,2.2em);color:var(--color-text-primary);flex-grow:1;line-height:1.2;transition:color .2s ease}body.dark-mode .project-title-h1{color:var(--dark-color-text-primary)}.project-actions-bar{display:flex;gap:10px;flex-wrap:nowrap;align-items:center}.button-base{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 14px;font-size:.9em;font-weight:500;border-radius:var(--border-radius);border:1px solid transparent;cursor:pointer;text-decoration:none;transition:background-color .2s,border-color .2s,opacity .2s,color .2s;white-space:nowrap}.button--primary{background-color:var(--color-primary);color:var(--color-text-on-primary);border-color:var(--color-primary)}body.dark-mode .button--primary{background-color:var(--dark-color-primary);color:var(--dark-color-text-on-primary);border-color:var(--dark-color-primary)}.button--secondary{background-color:var(--color-text-secondary);color:var(--color-text-on-primary);border-color:var(--color-text-secondary)}body.dark-mode .button--secondary{background-color:var(--dark-color-text-secondary);color:var(--dark-color-text-on-primary);border-color:var(--dark-color-text-secondary)}.button--edit{background-color:var(--color-secondary-yellow);color:var(--color-text-primary);border-color:var(--color-secondary-yellow)}body.dark-mode .button--edit{background-color:var(--dark-color-secondary-yellow);color:var(--dark-color-text-primary);border-color:var(--dark-color-secondary-yellow)}.button--danger{background-color:var(--color-secondary-red);color:var(--color-text-on-primary);border-color:var(--color-secondary-red)}body.dark-mode .button--danger{background-color:var(--dark-color-secondary-red);color:var(--dark-color-text-on-primary);border-color:var(--dark-color-secondary-red)}.button-base:hover:not(:disabled){opacity:.9}.engagement-action-section{display:flex;gap:10px;align-items:center;padding:12px 0;border-bottom:1px solid var(--color-border);margin-bottom:25px;flex-wrap:wrap;transition:border-color .2s ease}body.dark-mode .engagement-action-section{border-bottom:1px solid var(--dark-color-border)}.button-icon{background:transparent;border:1px solid var(--color-border);color:var(--color-text-secondary);padding:8px 12px;border-radius:var(--border-radius);display:inline-flex;align-items:center;gap:6px;cursor:pointer;transition:background-color .2s,border-color .2s,color .2s;font-size:.85em}body.dark-mode .button-icon{border:1px solid var(--dark-color-border);color:var(--dark-color-text-secondary)}.button-icon:hover:not(:disabled){background-color:var(--color-surface-alt);color:var(--color-primary)}body.dark-mode .button-icon:hover:not(:disabled){background-color:var(--dark-color-surface-alt);color:var(--dark-color-primary)}.button-icon--active-like{border-color:var(--color-primary);color:var(--color-primary);background-color:var(--color-surface-alt)}body.dark-mode .button-icon--active-like{border-color:var(--dark-color-primary);color:var(--dark-color-primary);background-color:var(--dark-color-surface-alt)}.button-icon--active-favorite{border-color:var(--color-secondary-red);color:var(--color-secondary-red);background-color:var(--color-error-bg)}body.dark-mode .button-icon--active-favorite{border-color:var(--dark-color-secondary-red);color:var(--dark-color-secondary-red);background-color:var(--dark-color-error-bg)}.section-block{margin-bottom:30px;padding-top:10px}.section-title{font-size:1.3em;font-weight:600;color:var(--color-text-primary);margin-bottom:15px;padding-bottom:10px;border-bottom:1px solid var(--color-border);transition:color .2s ease,border-color .2s ease}body.dark-mode .section-title{color:var(--dark-color-text-primary);border-bottom:1px solid var(--dark-color-border)}.preview-box{position:relative;background-color:var(--color-surface-alt);border-radius:var(--border-radius-lg);overflow:hidden;display:flex;align-items:center;justify-content:center;border:1px solid var(--color-border);width:100%;aspect-ratio:16 / 9;max-height:450px;transition:background-color .2s ease,border-color .2s ease}body.dark-mode .preview-box{background-color:var(--dark-color-surface-alt);border:1px solid var(--dark-color-border)}.preview-image{display:block;max-width:100%;max-height:100%;object-fit:contain;margin:auto;border-radius:var(--border-radius)}.preview-video{width:100%;height:100%;object-fit:cover;border-radius:inherit}.module-icon-link-container{position:absolute;bottom:15px;right:15px;width:50px;height:50px;border-radius:50%;background-color:var(--color-surface);display:flex;align-items:center;justify-content:center;z-index:2;box-shadow:0 4px 10px var(--color-shadow);cursor:pointer;transition:background-color .2s,transform .1s ease-out,box-shadow .2s}body.dark-mode .module-icon-link-container{background-color:var(--dark-color-surface);box-shadow:0 4px 10px var(--dark-color-shadow)}.module-icon-link-container:hover{background-color:var(--color-surface-alt);transform:scale(1.05)}body.dark-mode .module-icon-link-container:hover{background-color:var(--dark-color-surface-alt)}.module-icon-link-image{width:40px;height:40px;border-radius:50%;object-fit:cover}.module-tooltip{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);background-color:#000000d9;color:#fff;padding:8px 12px;border-radius:var(--border-radius);font-size:.9em;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .3s,transform .3s;z-index:10;text-align:center}.module-icon-link-container:hover .module-tooltip{opacity:1;transform:translate(-50%) translateY(-5px)}.summary-box{padding:15px 20px;border:1px solid var(--color-border);border-radius:var(--border-radius);background-color:var(--color-surface-alt);color:var(--color-text-primary);line-height:1.6;transition:background-color .2s ease,border-color .2s ease,color .2s ease}body.dark-mode .summary-box{border:1px solid var(--dark-color-border);background-color:var(--dark-color-surface-alt);color:var(--dark-color-text-primary)}.summary-box p{white-space:pre-line;margin-bottom:0;color:inherit}.summary-box p:first-child{margin-top:0}.summary-box .italic-text{font-style:italic;color:var(--color-text-secondary)}body.dark-mode .summary-box .italic-text{color:var(--dark-color-text-secondary)}.specs-list{list-style:none;padding:0;margin:0}.spec-item{display:flex;align-items:flex-start;gap:8px;margin-bottom:10px;font-size:.95em;color:var(--color-text-primary);line-height:1.5;flex-wrap:wrap;transition:color .2s ease}body.dark-mode .spec-item{color:var(--dark-color-text-primary)}.spec-item strong{flex-basis:120px;flex-shrink:0;color:var(--color-text-secondary);transition:color .2s ease}body.dark-mode .spec-item strong{color:var(--dark-color-text-secondary)}.spec-icon{color:var(--color-primary);flex-shrink:0;font-size:1.1em;margin-top:3px}body.dark-mode .spec-icon{color:var(--dark-color-primary)}.spec-link{color:var(--color-primary);text-decoration:none;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:calc(100% - 138px);flex-grow:1;transition:color .2s ease}body.dark-mode .spec-link{color:var(--dark-color-primary)}.external-icon{display:inline;margin-left:3px;vertical-align:middle;opacity:.7;flex-shrink:0;color:var(--color-text-secondary)}body.dark-mode .external-icon{color:var(--dark-color-text-secondary)}.resources-list{list-style:none;padding:0;margin:0}.resource-item{display:flex;align-items:center;gap:8px;margin-bottom:8px;font-size:.95em;color:var(--color-text-primary)}body.dark-mode .resource-item{color:var(--dark-color-text-primary)}.resource-icon{color:var(--color-primary);flex-shrink:0}body.dark-mode .resource-icon{color:var(--dark-color-primary)}.resource-link{color:var(--color-primary);text-decoration:none;word-break:break-all;transition:color .2s ease}body.dark-mode .resource-link{color:var(--dark-color-primary)}.no-resources-text{font-style:italic;color:var(--color-text-secondary);font-size:.9em}body.dark-mode .no-resources-text{color:var(--dark-color-text-secondary)}.description-content{line-height:1.7;color:var(--color-text-primary);font-size:.95em;transition:color .2s ease}body.dark-mode .description-content{color:var(--dark-color-text-primary)}.description-content p{white-space:pre-wrap;margin-bottom:var(--spacing-md);color:inherit}.comments-section{border-top:1px solid var(--color-border);margin-top:30px;padding-top:25px;transition:border-color .2s ease}body.dark-mode .comments-section{border-top:1px solid var(--dark-color-border)}.comment-form{display:flex;flex-direction:column;gap:12px;margin-bottom:30px}.comment-textarea{width:100%;padding:12px;border-radius:var(--border-radius);border:1px solid var(--color-border);font-size:1em;font-family:inherit;resize:vertical;min-height:80px;background-color:var(--color-surface);color:var(--color-text-primary);line-height:1.5;box-sizing:border-box;transition:background-color .2s,color .2s,border-color .2s}body.dark-mode .comment-textarea{border:1px solid var(--dark-color-border);background-color:var(--dark-color-surface);color:var(--dark-color-text-primary)}.login-to-comment-text{font-size:.9em;color:var(--color-text-secondary);margin-bottom:20px;text-align:center;transition:color .2s ease}body.dark-mode .login-to-comment-text{color:var(--dark-color-text-secondary)}.comment-list{list-style:none;padding:0;margin:0}.comment-item{display:flex;gap:12px;padding:15px 0;border-bottom:1px solid var(--color-border);transition:border-color .2s ease}body.dark-mode .comment-item{border-bottom:1px solid var(--dark-color-border)}.comment-item:last-child{border-bottom:none}.comment-avatar{width:40px;height:40px;border-radius:50%;object-fit:cover;flex-shrink:0;background-color:var(--color-surface-alt);transition:background-color .2s ease}body.dark-mode .comment-avatar{background-color:var(--dark-color-surface-alt)}.comment-content-box{flex-grow:1;display:flex;flex-direction:column}.comment-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;flex-wrap:wrap;gap:5px}.comment-author{font-weight:700;color:var(--color-primary);text-decoration:none;font-size:.95em;transition:color .2s ease}body.dark-mode .comment-author{color:var(--dark-color-primary)}.comment-date{font-size:.75em;color:var(--color-text-secondary);transition:color .2s ease}body.dark-mode .comment-date{color:var(--dark-color-text-secondary)}.comment-text{margin:0 0 8px;white-space:pre-wrap;word-break:break-word;font-size:.9em;line-height:1.6;color:var(--color-text-primary);flex-grow:1;transition:color .2s ease}body.dark-mode .comment-text{color:var(--dark-color-text-primary)}.delete-comment-button{background:none;border:none;color:var(--color-secondary-red);cursor:pointer;padding:4px 0;font-size:.8em;display:inline-flex;align-items:center;gap:3px;align-self:flex-end;margin-top:4px;transition:color .2s ease}body.dark-mode .delete-comment-button{color:var(--dark-color-secondary-red)}.delete-comment-button:hover:not(:disabled){opacity:.8}.no-comments-text{text-align:center;color:var(--color-text-secondary);padding:20px 0;font-style:italic;font-size:.9em;transition:color .2s ease}body.dark-mode .no-comments-text{color:var(--dark-color-text-secondary)}.back-link-section{margin-top:35px;text-align:center;padding-bottom:20px}.back-link{color:var(--color-primary);text-decoration:none;font-size:.95em;font-weight:500;transition:color .2s ease}body.dark-mode .back-link{color:var(--dark-color-primary)}.navigation-footer{display:flex;justify-content:space-between;align-items:center;padding:20px 0;margin-top:30px;border-top:1px solid var(--color-border);transition:border-color .2s ease}body.dark-mode .navigation-footer{border-top:1px solid var(--dark-color-border)}.prev-next-buttons{display:flex;gap:15px}.navigation-footer .button-base{padding:10px 20px;font-size:1rem;display:flex;align-items:center;gap:8px;border-radius:var(--border-radius-sm);text-decoration:none;transition:background-color .2s ease,border-color .2s ease,opacity .2s ease,color .2s ease}.navigation-footer .button-base--primary{background-color:var(--color-primary);color:var(--color-text-on-primary);border:1px solid var(--color-primary)}.navigation-footer .button-base--primary:hover:not(.button--disabled){background-color:var(--color-primary-dark);border-color:var(--color-primary-dark)}body.dark-mode .navigation-footer .button-base--primary{background-color:var(--dark-color-primary);color:var(--dark-color-text-on-primary);border:1px solid var(--dark-color-primary)}body.dark-mode .navigation-footer .button-base--primary:hover:not(.button--disabled){background-color:var(--dark-color-primary-dark);border-color:var(--dark-color-primary-dark)}.navigation-footer .button-base--secondary{background-color:var(--color-button-bg-secondary);color:var(--color-text-dark);border:1px solid var(--color-border)}.navigation-footer .button-base--secondary:hover:not(.button--disabled){background-color:var(--color-button-bg-secondary-hover);border-color:var(--color-border-hover)}body.dark-mode .navigation-footer .button-base--secondary{background-color:var(--dark-color-button-bg-secondary);color:var(--dark-color-text-dark);border:1px solid var(--dark-color-border)}body.dark-mode .navigation-footer .button-base--secondary:hover:not(.button--disabled){background-color:var(--dark-color-button-bg-secondary-hover);border-color:var(--dark-color-border-hover)}.navigation-footer .button--disabled{opacity:.6;cursor:not-allowed;pointer-events:none;background-color:var(--color-button-bg-disabled);border-color:var(--color-button-border-disabled);color:var(--color-text-disabled)}body.dark-mode .navigation-footer .button--disabled{background-color:var(--dark-color-button-bg-disabled);border-color:var(--dark-color-button-border-disabled);color:var(--dark-color-text-disabled)}.collab-builders{display:flex;flex-direction:column;gap:5px;margin-top:10px}.collab-builder-link{display:flex;align-items:center;gap:8px;text-decoration:none;color:var(--color-text-primary);background-color:var(--color-surface);padding:5px 10px;border-radius:20px;transition:background-color .2s;border:1px solid transparent}body.dark-mode .collab-builder-link{background-color:var(--dark-color-surface);color:var(--dark-color-text-primary)}.collab-builder-link:hover{background-color:var(--color-surface-alt);border-color:var(--color-border)}body.dark-mode .collab-builder-link:hover{background-color:var(--dark-color-surface-alt);border-color:var(--dark-color-border)}.collab-builder-avatar{width:30px;height:30px;border-radius:50%;object-fit:cover}.collab-builder-name{font-size:.9em;white-space:nowrap}.collab-overlay-container{position:absolute;bottom:15px;right:15px;display:flex;flex-direction:column-reverse;align-items:flex-end}.collab-avatar-link{display:block;width:40px;height:40px;border-radius:50%;border:2px solid #fff;transition:transform .2s ease,z-index .2s ease;position:relative;margin-top:-10px;background-color:var(--color-background);z-index:1}body.dark-mode .collab-avatar-link{background-color:var(--dark-color-background)}.collab-avatar-link:last-child{margin-top:0}.collab-avatar-link:hover{transform:scale(1.1);z-index:10}.collab-avatar{width:100%;height:100%;object-fit:cover;border-radius:50%}.collab-tooltip{position:absolute;bottom:50%;right:calc(100% + 8px);transform:translateY(50%);background-color:#000000d9;color:#fff;padding:8px 12px;border-radius:var(--border-radius);font-size:.9em;white-space:nowrap;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .3s,transform .3s;z-index:100;text-align:center}.collab-avatar-link:hover .collab-tooltip{opacity:1;visibility:visible;transform:translateY(50%) translate(-5px)}.collab-avatar-extra{width:40px;height:40px;border-radius:50%;background-color:var(--color-primary);color:#fff;display:flex;justify-content:center;align-items:center;font-size:.9rem;font-weight:700;border:2px solid #fff;margin-top:-10px;cursor:pointer;z-index:1}body.dark-mode .collab-avatar-extra{background-color:var(--dark-color-primary)}.modal-backdrop{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background-color:var(--color-background);color:var(--color-text-primary);padding:25px;border-radius:var(--border-radius-lg);width:90%;max-width:500px;max-height:80vh;overflow-y:auto;box-shadow:0 5px 15px #00000040;display:flex;flex-direction:column}body.dark-mode .modal-content{background-color:var(--dark-color-background);color:var(--dark-color-text-primary)}.modal-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:15px;border-bottom:1px solid var(--color-border);margin-bottom:15px}.modal-title{margin:0;font-size:1.2em}.modal-close-button{background:none;border:none;font-size:1.5em;cursor:pointer;color:var(--color-text-secondary)}.collab-modal-item{display:flex;align-items:center;gap:15px;padding:10px 0;border-bottom:1px solid var(--color-border)}.collab-modal-item:last-child{border-bottom:none}.collab-modal-avatar{width:50px;height:50px;border-radius:50%;object-fit:cover}.collab-modal-details{display:flex;flex-direction:column}.collab-modal-name{font-size:1em;font-weight:700;color:var(--color-primary);text-decoration:none}.collab-modal-name:hover{text-decoration:underline}.collab-modal-roles{font-size:.85em;color:var(--color-text-secondary);margin:0}@media(max-width:768px){.project-header-section{flex-direction:column;align-items:flex-start}.project-actions-bar{width:100%;justify-content:flex-start;flex-wrap:wrap}.spec-item strong{flex-basis:100px}.spec-link{max-width:calc(100% - 108px)}.navigation-footer{flex-direction:column;align-items:center;gap:20px}.prev-next-buttons{width:100%;justify-content:space-between}.navigation-footer .button-base{flex-grow:1;justify-content:center;padding:12px 15px}.modal-content{max-width:90vw}}@media(max-width:500px){.comment-item{flex-direction:column;align-items:flex-start}.comment-avatar{margin-bottom:10px}.comment-header{width:100%}.comment-author,.comment-date{flex-shrink:0}.delete-comment-button{align-self:flex-start}}.submit-page-container{padding:20px;max-width:800px;margin:0 auto;font-family:var(--font-family-sans);color:var(--color-text-primary);background-color:var(--color-background);transition:background-color .2s ease,color .2s ease}body.dark-mode .submit-page-container{color:var(--dark-color-text-primary);background-color:var(--dark-color-background)}.submit-page-title{font-size:clamp(1.8em,5vw,2.5em);text-align:center;margin-bottom:10px;color:var(--color-primary);transition:color .2s ease}body.dark-mode .submit-page-title{color:var(--dark-color-primary)}.submit-page-subtitle{text-align:center;font-size:1.1em;color:var(--color-text-secondary);margin-bottom:30px;transition:color .2s ease}body.dark-mode .submit-page-subtitle{color:var(--dark-color-text-secondary)}.submit-form,.edit-project-form{background-color:var(--color-surface);padding:30px;border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);transition:background-color .2s ease,box-shadow .2s ease}body.dark-mode .submit-form,body.dark-mode .edit-project-form{background-color:var(--dark-color-surface);box-shadow:var(--dark-shadow-md)}.form-section{margin-bottom:35px;padding-bottom:25px;border-bottom:1px solid var(--color-border);transition:border-color .2s ease}body.dark-mode .form-section{border-bottom:1px solid var(--dark-color-border)}.form-section-last{margin-bottom:35px}.form-section-title{font-size:1.4em;font-weight:600;color:var(--color-text-primary);margin-bottom:20px;display:flex;align-items:center;gap:10px;transition:color .2s ease}body.dark-mode .form-section-title{color:var(--dark-color-text-primary)}.form-section-icon{color:var(--color-primary);font-size:1.2em;transition:color .2s ease}body.dark-mode .form-section-icon{color:var(--dark-color-primary)}.form-group-label{display:block;margin-bottom:8px;font-weight:500;color:var(--color-text-secondary);font-size:.95em;display:flex;align-items:center;gap:6px;transition:color .2s ease}.required-asterisk{color:var(--color-secondary-red);margin-left:4px;font-weight:700}.form-input,.form-textarea,.form-select,.react-select-container .react-select__control{width:100%;padding:12px;border:1px solid var(--color-border);border-radius:var(--border-radius);background-color:var(--color-surface-alt);color:var(--color-text-primary);font-size:1em;font-family:inherit;box-sizing:border-box;transition:border-color .2s,box-shadow .2s,background-color .2s,color .2s}body.dark-mode .form-input,body.dark-mode .form-textarea,body.dark-mode .form-select,body.dark-mode .react-select-container .react-select__control{border-color:var(--dark-color-border);background-color:var(--dark-color-surface-alt);color:var(--dark-color-text-primary)}.form-input:focus,.form-textarea:focus,.form-select:focus,.react-select-container .react-select__control--is-focused{border-color:var(--color-primary);box-shadow:0 0 0 .2rem var(--color-primary-transparent);outline:none}body.dark-mode .form-input:focus,body.dark-mode .form-textarea:focus,body.dark-mode .form-select:focus,body.dark-mode .react-select-container .react-select__control--is-focused{border-color:var(--dark-color-primary);box-shadow:0 0 0 .2rem var(--dark-color-primary-transparent)}.form-textarea{resize:vertical;min-height:100px}.form-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right .75rem center;background-size:16px 12px;padding-right:35px}body.dark-mode .form-select{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23e8eaed' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e")}.helper-text{margin-top:10px;padding:10px 15px;border-radius:var(--border-radius);font-size:.9em;line-height:1.5;border-left:5px solid;color:var(--color-text-primary);background-color:var(--color-surface-alt);transition:background-color .2s ease,border-color .2s ease,color .2s ease}body.dark-mode .helper-text{color:var(--dark-color-text-primary);background-color:var(--dark-color-surface-alt)}.helper-text--idea{border-left-color:var(--color-secondary-yellow);background-color:var(--color-secondary-yellow-light);color:var(--color-text-primary)}body.dark-mode .helper-text--idea{border-left-color:var(--dark-color-secondary-yellow);background-color:var(--dark-color-secondary-yellow-dark);color:var(--dark-color-text-primary)}.helper-text--project{border-left-color:var(--color-primary);background-color:var(--color-primary-light);color:var(--color-text-primary)}body.dark-mode .helper-text--project{border-left-color:var(--dark-color-primary);background-color:var(--dark-color-primary-darker);color:var(--dark-color-text-primary)}.helper-text--mvp-product{border-left-color:var(--color-success);background-color:var(--color-success-light);color:var(--color-text-primary)}body.dark-mode .helper-text--mvp-product{border-left-color:var(--dark-color-success);background-color:var(--dark-color-success-darker);color:var(--dark-color-text-primary)}.small-helper-text{font-size:.85em;color:var(--color-text-muted);margin-top:5px;line-height:1.4;transition:color .2s ease}body.dark-mode .small-helper-text{color:var(--dark-color-text-muted)}.file-input-label{display:block;padding:12px;border:1px dashed var(--color-border);border-radius:var(--border-radius);background-color:var(--color-surface-alt);color:var(--color-primary);cursor:pointer;text-align:center;transition:background-color .2s,border-color .2s,color .2s}body.dark-mode .file-input-label{border-color:var(--dark-color-border);background-color:var(--dark-color-surface-alt);color:var(--dark-color-primary)}.file-input-label:hover{background-color:var(--color-surface-hover);border-color:var(--color-primary)}body.dark-mode .file-input-label:hover{background-color:var(--dark-color-surface-hover);border-color:var(--dark-color-primary)}.file-input-text{font-weight:500}.selected-file-name{margin-top:10px;font-size:.9em;color:var(--color-text-secondary)}.ai-image-content-container{background-color:var(--color-card-bg);border:1px solid var(--color-border);border-radius:var(--border-radius);padding:20px;margin-top:20px;text-align:center;transition:background-color .2s ease,border-color .2s ease}body.dark-mode .ai-image-content-container{background-color:var(--dark-color-card-bg);border-color:var(--dark-color-border)}.ai-image-section-title{font-size:1.2em;color:var(--color-primary);margin-bottom:15px;transition:color .2s ease}body.dark-mode .ai-image-section-title{color:var(--dark-color-primary)}.ai-image-intro-text{font-size:.9em;color:var(--color-text-secondary);margin-bottom:20px;line-height:1.5;transition:color .2s ease}body.dark-mode .ai-image-intro-text{color:var(--dark-color-text-secondary)}.ai-image-button-container{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:15px}.ai-image-button{display:inline-flex;align-items:center;justify-content:center;padding:10px 15px;border-radius:var(--border-radius);text-decoration:none;font-size:.9em;font-weight:500;transition:opacity .2s,transform .1s ease-out}.ai-image-button--chatgpt{background-color:#74aa9c;color:#fff}.ai-image-button--gemini{background-color:#4285f4;color:#fff}.ai-image-button--claude{background-color:coral;color:#fff}.ai-image-button:hover{opacity:.9;transform:translateY(-2px)}.detailed-tool-item{display:flex;align-items:flex-end;gap:15px;margin-bottom:20px;flex-wrap:wrap;padding:15px;border:1px solid var(--color-border);border-radius:var(--border-radius);background-color:var(--color-surface-alt);transition:background-color .2s ease,border-color .2s ease}body.dark-mode .detailed-tool-item{background-color:var(--dark-color-surface-alt);border-color:var(--dark-color-border)}.tool-input-group{flex:1;min-width:180px}.tool-field-label{display:block;font-size:.85em;color:var(--color-text-secondary);margin-bottom:5px;font-weight:500;transition:color .2s ease}.tool-action-button{background:none;border:none;cursor:pointer;font-size:.9em;padding:8px 12px;border-radius:var(--border-radius);display:inline-flex;align-items:center;gap:5px;transition:background-color .2s,color .2s;white-space:nowrap}.add-tool-button{color:var(--color-primary);border:1px solid var(--color-primary);margin-top:10px;align-self:flex-start}body.dark-mode .add-tool-button{color:var(--dark-color-primary);border-color:var(--dark-color-primary)}.add-tool-button:hover{background-color:var(--color-primary-light);color:var(--color-primary-dark)}body.dark-mode .add-tool-button:hover{background-color:var(--dark-color-primary-darker);color:var(--dark-color-text-on-primary)}.remove-tool-button{color:var(--color-secondary-red);margin-left:auto}body.dark-mode .remove-tool-button{color:var(--dark-color-secondary-red)}.remove-tool-button:hover{background-color:var(--color-error-bg);opacity:.8}body.dark-mode .remove-tool-button:hover{background-color:var(--dark-color-error-bg)}.react-select-container .react-select__control{background-color:var(--color-surface-alt);border-color:var(--color-border);color:var(--color-text-primary);min-height:44px}body.dark-mode .react-select-container .react-select__control{background-color:var(--dark-color-surface-alt);border-color:var(--dark-color-border);color:var(--dark-color-text-primary)}body.dark-mode .react-select-container .react-select__single-value{color:var(--dark-color-text-primary)!important}.react-select-container .react-select__input-container{color:var(--color-text-primary)}body.dark-mode .react-select-container .react-select__input-container{color:var(--dark-color-text-primary)}.react-select-container .react-select__placeholder{color:var(--color-text-muted)}body.dark-mode .react-select-container .react-select__placeholder{color:var(--dark-color-text-muted)}.react-select-container .react-select__menu{background-color:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-md);z-index:100}body.dark-mode .react-select-container .react-select__menu{background-color:var(--dark-color-surface);border-color:var(--dark-color-border);box-shadow:var(--dark-shadow-md)}.react-select-container .react-select__option{background-color:var(--color-surface);color:var(--color-text-primary);padding:10px 12px}.react-select-container .react-select__option--is-focused,.react-select-container .react-select__option--is-selected{background-color:var(--color-surface-alt);color:var(--color-primary)}body.dark-mode .react-select-container .react-select__option--is-focused,body.dark-mode .react-select-container .react-select__option--is-selected{background-color:var(--dark-color-surface-alt);color:var(--dark-color-primary)}.submit-button,.update-button{display:block;width:100%;padding:15px;background-color:var(--color-primary);color:var(--color-text-on-primary);border:none;border-radius:var(--border-radius);font-size:1.1em;font-weight:700;cursor:pointer;transition:background-color .2s,opacity .2s;margin-top:30px}body.dark-mode .submit-button,body.dark-mode .update-button{background-color:var(--dark-color-primary);color:var(--dark-color-text-on-primary)}.submit-button:hover:not(:disabled),.update-button:hover:not(:disabled){background-color:var(--color-primary-dark)}body.dark-mode .submit-button:hover:not(:disabled),body.dark-mode .update-button:hover:not(:disabled){background-color:var(--dark-color-primary-dark)}.submit-button-disabled,.update-button-disabled{opacity:.6;cursor:not-allowed}.loading-spinner-inline{display:inline-block;vertical-align:middle;margin-right:8px}.edit-project-page-container{padding:20px;max-width:800px;margin:0 auto;font-family:var(--font-family-sans);color:var(--color-text-primary);background-color:var(--color-background);transition:background-color .2s ease,color .2s ease}body.dark-mode .edit-project-page-container{color:var(--dark-color-text-primary);background-color:var(--dark-color-background)}.edit-project-page-title{font-size:clamp(1.8em,5vw,2.5em);text-align:center;margin-bottom:10px;color:var(--color-primary);transition:color .2s ease}body.dark-mode .edit-project-page-title{color:var(--dark-color-primary)}.edit-project-page-title-project-name{color:var(--color-text-primary);transition:color .2s ease}body.dark-mode .edit-project-page-title-project-name{color:var(--dark-color-text-primary)}.read-only-input{background-color:var(--color-input-readonly);border-color:var(--color-border);color:var(--color-text-muted);cursor:not-allowed;opacity:.8}body.dark-mode .read-only-input{background-color:var(--dark-color-input-readonly);border-color:var(--dark-color-border);color:var(--dark-color-text-muted)}.image-preview{max-width:100%;height:auto;border-radius:var(--border-radius);border:1px solid var(--color-border);display:block;margin-top:10px}body.dark-mode .image-preview{border-color:var(--dark-color-border)}@media(max-width:768px){.detailed-tool-item{flex-direction:column;align-items:stretch;gap:10px}.tool-input-group{min-width:unset;width:100%}.remove-tool-button{margin-left:unset;align-self:flex-end}.ai-image-button-container{flex-direction:column}}.edit-project-page-container{max-width:800px;margin:40px auto;padding:30px;font-family:var(--font-family-sans);color:var(--color-text-primary);background-color:var(--color-surface);border-radius:var(--border-radius-lg);box-shadow:0 4px 12px var(--color-shadow);transition:background-color .2s ease,color .2s ease,box-shadow .2s ease}body.dark-mode .edit-project-page-container{color:var(--dark-color-text-primary);background-color:var(--dark-color-surface);box-shadow:0 4px 12px var(--dark-color-shadow)}.edit-project-page-title{text-align:center;color:var(--color-text-primary);margin-bottom:20px;font-size:2em;font-weight:600;transition:color .2s ease}body.dark-mode .edit-project-page-title{color:var(--dark-color-text-primary)}.edit-project-page-title span{color:var(--color-text-secondary);transition:color .2s ease}body.dark-mode .edit-project-page-title span{color:var(--dark-color-text-secondary)}.edit-project-form{display:flex;flex-direction:column}.form-group{margin-bottom:20px}.form-group-label{display:flex;align-items:center;gap:8px;font-weight:600;margin-bottom:8px;font-size:.95em;color:var(--color-text-secondary);transition:color .2s ease}body.dark-mode .form-group-label{color:var(--dark-color-text-secondary)}.label-icon{color:var(--color-primary);font-size:1.1em;transition:color .2s ease}body.dark-mode .label-icon{color:var(--dark-color-primary)}.required-asterisk{color:var(--color-secondary-red)}body.dark-mode .required-asterisk{color:var(--dark-color-secondary-red)}.form-input,.form-textarea,.form-select{padding:12px 15px;border:1px solid var(--color-border);border-radius:var(--border-radius);font-size:1em;width:100%;box-sizing:border-box;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out,background-color .2s ease,color .2s ease;background-color:var(--color-surface);color:var(--color-text-primary)}body.dark-mode .form-input,body.dark-mode .form-textarea,body.dark-mode .form-select{border:1px solid var(--dark-color-border);background-color:var(--dark-color-surface);color:var(--dark-color-text-primary)}.form-input:focus,.form-textarea:focus,.form-select:focus{border-color:var(--color-primary);box-shadow:0 0 0 .2rem #007bff40;outline:none}body.dark-mode .form-input:focus,body.dark-mode .form-textarea:focus,body.dark-mode .form-select:focus{border-color:var(--dark-color-primary);box-shadow:0 0 0 .2rem #8ab4f840}.form-textarea{min-height:120px;resize:vertical}.form-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right .75rem center;background-size:16px 12px}body.dark-mode .form-select{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23e8eaed' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e")}.submit-button{padding:12px 25px;background-color:var(--color-primary);color:var(--color-text-on-primary);border:none;border-radius:var(--border-radius);cursor:pointer;font-size:1.05em;font-weight:500;transition:background-color .2s ease,transform .1s ease,opacity .2s ease;text-align:center;display:inline-block;margin-top:20px;align-self:center}.submit-button:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.submit-button:disabled{background-color:var(--color-text-secondary);cursor:not-allowed;transform:none;opacity:.7}body.dark-mode .submit-button:disabled{background-color:var(--dark-color-text-secondary)}.detailed-tool-item{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end;padding:12px;border:1px solid var(--color-border);border-radius:var(--border-radius);margin-bottom:10px;background-color:var(--color-surface-alt);transition:background-color .2s ease,border-color .2s ease}body.dark-mode .detailed-tool-item{border:1px solid var(--dark-color-border);background-color:var(--dark-color-surface-alt)}.tool-input-group{flex:1 1 150px;min-width:150px}.tool-field-label{font-size:.8em;color:var(--color-text-secondary);margin-bottom:4px;display:block;font-weight:500}body.dark-mode .tool-field-label{color:var(--dark-color-text-secondary)}.tool-action-button{padding:8px 10px;font-size:.9em;border:none;border-radius:var(--border-radius-sm);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:5px;height:42px;align-self:flex-end;transition:background-color .2s ease,color .2s ease}.remove-tool-button{background-color:var(--color-error-bg);color:var(--color-error-text);border:1px solid var(--color-error-border)}body.dark-mode .remove-tool-button{background-color:var(--dark-color-error-bg);color:var(--dark-color-error-text);border:1px solid var(--dark-color-error-border)}.remove-tool-button:hover:not(:disabled){background-color:var(--color-error-text);color:#fff}body.dark-mode .remove-tool-button:hover:not(:disabled){background-color:var(--dark-color-error-text);color:var(--dark-color-text-on-primary)}.add-tool-button{background-color:var(--color-primary);color:var(--color-text-on-primary);margin-top:10px;align-self:flex-start;border:none}body.dark-mode .add-tool-button{background-color:var(--dark-color-primary);color:var(--dark-color-text-on-primary)}.add-tool-button:hover:not(:disabled){opacity:.9}.react-select-container .react-select__control{min-height:42px;border:1px solid var(--color-border);box-shadow:none;background-color:var(--color-surface);color:var(--color-text-primary);transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out,background-color .2s ease,color .2s ease}body.dark-mode .react-select-container .react-select__control{border:1px solid var(--dark-color-border);background-color:var(--dark-color-surface);color:var(--dark-color-text-primary)}.react-select-container .react-select__control--is-focused{border-color:var(--color-primary);box-shadow:0 0 0 .2rem #007bff40}body.dark-mode .react-select-container .react-select__control--is-focused{border-color:var(--dark-color-primary);box-shadow:0 0 0 .2rem #8ab4f840}.react-select-container .react-select__control:hover{border-color:var(--color-text-secondary)}body.dark-mode .react-select-container .react-select__control:hover{border-color:var(--dark-color-text-secondary)}.react-select-container .react-select__menu{z-index:3;background-color:var(--color-surface);border:1px solid var(--color-border);box-shadow:0 4px 8px var(--color-shadow)}body.dark-mode .react-select-container .react-select__menu{background-color:var(--dark-color-surface);border:1px solid var(--dark-color-border);box-shadow:0 4px 8px var(--dark-color-shadow)}.react-select-container .react-select__option{background-color:var(--color-surface);color:var(--color-text-primary)}body.dark-mode .react-select-container .react-select__option{background-color:var(--dark-color-surface);color:var(--dark-color-text-primary)}.react-select-container .react-select__option--is-focused{background-color:var(--color-surface-alt);color:var(--color-text-primary)}body.dark-mode .react-select-container .react-select__option--is-focused{background-color:var(--dark-color-surface-alt);color:var(--dark-color-text-primary)}.react-select-container .react-select__option--is-selected{background-color:var(--color-primary);color:var(--color-text-on-primary)}body.dark-mode .react-select-container .react-select__option--is-selected{background-color:var(--dark-color-primary);color:var(--dark-color-text-on-primary)}.react-select-container .react-select__placeholder{color:var(--color-text-secondary)}body.dark-mode .react-select-container .react-select__placeholder{color:var(--dark-color-text-secondary)}.react-select-container .react-select__single-value{color:var(--color-text-primary)}body.dark-mode .react-select-container .react-select__single-value{color:var(--dark-color-text-primary)}.react-select-container .react-select__multi-value{background-color:var(--color-surface-alt);color:var(--color-text-primary)}body.dark-mode .react-select-container .react-select__multi-value{background-color:var(--dark-color-surface-alt);color:var(--dark-color-text-primary)}.react-select-container .react-select__multi-value__label{color:var(--color-text-primary)}body.dark-mode .react-select-container .react-select__multi-value__label{color:var(--dark-color-text-primary)}.small-helper-text{font-size:.8em;color:var(--color-text-secondary);margin-top:5px;display:block}body.dark-mode .small-helper-text{color:var(--dark-color-text-secondary)}.file-input-label{border:1px dashed var(--color-border);padding:20px;border-radius:var(--border-radius);text-align:center;cursor:pointer;background-color:var(--color-surface-alt);display:block;transition:background-color .2s ease,border-color .2s ease}body.dark-mode .file-input-label{border:1px dashed var(--dark-color-border);background-color:var(--dark-color-surface-alt)}.file-input-label:hover{background-color:var(--color-surface)}body.dark-mode .file-input-label:hover{background-color:var(--dark-color-surface)}.file-input-text{color:var(--color-primary);font-size:.95em;font-weight:500}body.dark-mode .file-input-text{color:var(--dark-color-primary)}.selected-file-name{font-size:.85em;color:var(--color-text-secondary);margin-top:8px;text-align:center}body.dark-mode .selected-file-name{color:var(--dark-color-text-secondary)}.form-section{margin-bottom:35px;padding-top:10px;padding-bottom:25px;border-bottom:1px dashed var(--color-border)}body.dark-mode .form-section{border-bottom:1px dashed var(--dark-color-border)}.form-section-last{margin-bottom:35px;padding-top:10px;padding-bottom:0;border-bottom:none}.form-section-title{font-size:1.3em;font-weight:600;color:var(--color-primary);margin-bottom:20px;display:flex;align-items:center;gap:10px}body.dark-mode .form-section-title{color:var(--dark-color-primary)}.form-section-icon{font-size:1.2em}.read-only-input{background-color:var(--color-surface-alt)!important;cursor:not-allowed!important;color:var(--color-text-secondary)!important}body.dark-mode .read-only-input{background-color:var(--dark-color-surface-alt)!important;color:var(--dark-color-text-secondary)!important}@media(max-width:600px){.detailed-tool-item{flex-direction:column;align-items:stretch}.tool-input-group{min-width:unset;flex-basis:auto;width:100%}.tool-action-button,.add-tool-button{width:100%;justify-content:center}}.react-select-container.react-select__control--is-disabled .react-select__control{background-color:var(--color-surface-alt)!important;cursor:not-allowed!important;border-color:var(--color-border)!important}.react-select-container.react-select__control--is-disabled .react-select__control:hover{border-color:var(--color-border)!important}.react-select-container.react-select__control--is-disabled .react-select__single-value,.react-select-container.react-select__control--is-disabled .react-select__placeholder,.react-select-container.react-select__control--is-disabled .react-select__indicator,.react-select-container.react-select__control--is-disabled .react-select__indicator-separator{color:var(--color-text-secondary)!important;opacity:.8}body.dark-mode .react-select-container.react-select__control--is-disabled .react-select__control{background-color:var(--dark-color-surface-alt)!important;border-color:var(--dark-color-border)!important}body.dark-mode .react-select-container.react-select__control--is-disabled .react-select__single-value,body.dark-mode .react-select-container.react-select__control--is-disabled .react-select__placeholder,body.dark-mode .react-select-container.react-select__control--is-disabled .react-select__indicator,body.dark-mode .react-select-container.react-select__control--is-disabled .react-select__indicator-separator{color:var(--dark-color-text-secondary)!important}.login-page-container{max-width:400px;margin:3rem auto;padding:var(--spacing-lg);text-align:center;background-color:var(--color-surface);border-radius:var(--border-radius-lg);box-shadow:0 4px 12px var(--color-shadow);transition:background-color .2s ease,box-shadow .2s ease}body.dark-mode .login-page-container{background-color:var(--dark-color-surface);box-shadow:0 4px 12px var(--dark-color-shadow)}.login-page-title{margin-bottom:var(--spacing-md)}.login-page-intro-text{margin-bottom:var(--spacing-lg);color:var(--color-text-primary);line-height:1.5}.login-buttons-container{display:flex;flex-direction:column;gap:1rem;align-items:center;width:100%}.google-login-button{width:100%;max-width:280px;display:inline-flex;align-items:center;justify-content:center;gap:.8rem;padding:.8rem;border:1px solid #8c8c8c;background-color:#fff;color:#333;font-weight:500;font-size:1rem;border-radius:4px;cursor:pointer;transition:background-color .2s ease}.google-login-button:hover{background-color:#f1f3f4}.msft-login-button{width:100%;max-width:280px;display:inline-flex;align-items:center;justify-content:center;gap:.8rem;padding:.8rem;border:1px solid #ddd;background-color:#fff;color:#5e5e5e;font-weight:500;font-size:1rem;border-radius:4px;cursor:pointer;transition:background-color .2s ease}.msft-login-button:hover{background-color:#f5f5f5;border-color:#ccc}body.dark-mode .google-login-button,body.dark-mode .msft-login-button{background-color:#2d2d2d;color:#fff;border:1px solid #555}body.dark-mode .google-login-button:hover,body.dark-mode .msft-login-button:hover{background-color:#3d3d3d}.react-calendar{width:350px;max-width:100%;background:#fff;border:1px solid #a0a096;font-family:Arial,Helvetica,sans-serif;line-height:1.125em}.react-calendar--doubleView{width:700px}.react-calendar--doubleView .react-calendar__viewContainer{display:flex;margin:-.5em}.react-calendar--doubleView .react-calendar__viewContainer>*{width:50%;margin:.5em}.react-calendar,.react-calendar *,.react-calendar *:before,.react-calendar *:after{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.react-calendar button{margin:0;border:0;outline:none}.react-calendar button:enabled:hover{cursor:pointer}.react-calendar__navigation{display:flex;height:44px;margin-bottom:1em}.react-calendar__navigation button{min-width:44px;background:none}.react-calendar__navigation button:disabled{background-color:#f0f0f0}.react-calendar__navigation button:enabled:hover,.react-calendar__navigation button:enabled:focus{background-color:#e6e6e6}.react-calendar__month-view__weekdays{text-align:center;text-transform:uppercase;font:inherit;font-size:.75em;font-weight:700}.react-calendar__month-view__weekdays__weekday{padding:.5em}.react-calendar__month-view__weekNumbers .react-calendar__tile{display:flex;align-items:center;justify-content:center;font:inherit;font-size:.75em;font-weight:700}.react-calendar__month-view__days__day--weekend{color:#d10000}.react-calendar__month-view__days__day--neighboringMonth,.react-calendar__decade-view__years__year--neighboringDecade,.react-calendar__century-view__decades__decade--neighboringCentury{color:#757575}.react-calendar__year-view .react-calendar__tile,.react-calendar__decade-view .react-calendar__tile,.react-calendar__century-view .react-calendar__tile{padding:2em .5em}.react-calendar__tile{max-width:100%;padding:10px 6.6667px;background:none;text-align:center;font:inherit;font-size:.833em}.react-calendar__tile:disabled{background-color:#f0f0f0;color:#ababab}.react-calendar__month-view__days__day--neighboringMonth:disabled,.react-calendar__decade-view__years__year--neighboringDecade:disabled,.react-calendar__century-view__decades__decade--neighboringCentury:disabled{color:#cdcdcd}.react-calendar__tile:enabled:hover,.react-calendar__tile:enabled:focus{background-color:#e6e6e6}.react-calendar__tile--now{background:#ffff76}.react-calendar__tile--now:enabled:hover,.react-calendar__tile--now:enabled:focus{background:#ffffa9}.react-calendar__tile--hasActive{background:#76baff}.react-calendar__tile--hasActive:enabled:hover,.react-calendar__tile--hasActive:enabled:focus{background:#a9d4ff}.react-calendar__tile--active{background:#006edc;color:#fff}.react-calendar__tile--active:enabled:hover,.react-calendar__tile--active:enabled:focus{background:#1087ff}.react-calendar--selectRange .react-calendar__tile--hover{background-color:#e6e6e6}.dashboard-page-container{max-width:900px;margin:30px auto;padding:25px;font-family:var(--font-family-sans);color:var(--color-text-primary);background-color:var(--color-background);border-radius:var(--border-radius-lg);box-shadow:0 4px 12px var(--color-shadow);transition:background-color .2s ease,color .2s ease,box-shadow .2s ease}body.dark-mode .dashboard-page-container{color:var(--dark-color-text-primary);background-color:var(--dark-color-background);box-shadow:0 4px 12px var(--dark-color-shadow)}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;padding-bottom:15px;border-bottom:1px solid var(--color-border)}body.dark-mode .dashboard-header{border-bottom:1px solid var(--dark-color-border)}.dashboard-page-title{margin:0;font-size:clamp(1.8em,4vw,2.2em);color:var(--color-text-primary);font-weight:600}body.dark-mode .dashboard-page-title{color:var(--dark-color-text-primary)}.username-edit-icon{background:none;border:none;cursor:pointer;padding:5px;color:var(--color-primary);display:flex;align-items:center;transition:color .2s ease}body.dark-mode .username-edit-icon{color:var(--dark-color-primary)}.username-edit-icon:hover{opacity:.8}.welcome-message{font-size:1.1em;margin-bottom:25px;color:var(--color-text-secondary);line-height:1.6}body.dark-mode .welcome-message{color:var(--dark-color-text-secondary)}.username-link{color:var(--color-primary);text-decoration:none;font-weight:700}body.dark-mode .username-link{color:var(--dark-color-primary)}.section{margin-bottom:30px;padding:20px;border:1px solid var(--color-border);border-radius:var(--border-radius);background-color:var(--color-surface);box-shadow:0 1px 3px var(--color-shadow)}body.dark-mode .section{border:1px solid var(--dark-color-border);background-color:var(--dark-color-surface);box-shadow:0 1px 3px var(--dark-color-shadow)}.section-title{font-size:1.4em;font-weight:600;color:var(--color-primary);margin-bottom:20px;padding-bottom:10px;border-bottom:1px solid var(--color-border);display:flex;align-items:center;gap:10px}body.dark-mode .section-title{color:var(--dark-color-primary);border-bottom:1px solid var(--dark-color-border)}.section-icon{font-size:1.2em}.submit-button{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;background-color:var(--color-primary);color:var(--color-text-on-primary);text-decoration:none;border-radius:6px;font-weight:500;font-size:1em;border:none;cursor:pointer;transition:background-color .2s ease;margin-bottom:20px}body.dark-mode .submit-button{background-color:var(--dark-color-primary);color:var(--dark-color-text-on-primary)}.submit-button:hover{opacity:.9}.lab-list{list-style:none;padding-left:0}.lab-list-item{display:flex;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--color-border);flex-wrap:wrap;gap:10px}body.dark-mode .lab-list-item{border-bottom:1px solid var(--dark-color-border)}.lab-list-item:last-child{border-bottom:none}.lab-title-link{flex-grow:1;text-decoration:none;color:var(--color-primary);font-weight:500;font-size:1.05em;transition:color .2s ease}body.dark-mode .lab-title-link{color:var(--dark-color-primary)}.lab-title-link:hover{opacity:.8}.lab-actions{display:flex;gap:10px;flex-shrink:0}.action-button{padding:6px 12px;font-size:.85em;border-radius:4px;border:1px solid transparent;color:#fff;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;gap:4px;transition:background-color .2s ease,border-color .2s ease}.edit-button{background-color:var(--color-secondary-yellow);color:var(--color-text-primary)}body.dark-mode .edit-button{background-color:var(--dark-color-secondary-yellow);color:var(--dark-color-text-on-primary)}.delete-button{background-color:var(--color-secondary-red)}body.dark-mode .delete-button{background-color:var(--dark-color-secondary-red)}.engagement-section-title{font-size:1.4em;font-weight:600;color:var(--color-primary);margin-bottom:25px;padding-bottom:10px;border-bottom:1px solid var(--color-border);display:flex;align-items:center;gap:10px}body.dark-mode .engagement-section-title{color:var(--dark-color-primary);border-bottom:1px solid var(--dark-color-border)}@media(min-width:768px){.engagement-row{flex-direction:row;gap:20px}}.engagement-column{flex:1;min-width:0;display:flex;flex-direction:column}.engagement-sub-section-title{display:flex;align-items:center;font-size:1.2em;font-weight:600;color:var(--color-text-primary);margin-bottom:15px}body.dark-mode .engagement-sub-section-title{color:var(--dark-color-text-primary)}.engagement-icon{margin-right:10px;font-size:1.2em}.engagement-icon--success{color:var(--color-secondary-green)}body.dark-mode .engagement-icon--success{color:var(--dark-color-secondary-green)}.engagement-icon--info{color:var(--color-primary)}body.dark-mode .engagement-icon--info{color:var(--dark-color-primary)}.engagement-icon--danger{color:var(--color-secondary-red)}body.dark-mode .engagement-icon--danger{color:var(--dark-color-secondary-red)}.engagement-icon--warning{color:var(--color-secondary-yellow)}body.dark-mode .engagement-icon--warning{color:var(--dark-color-secondary-yellow)}.activity-list{list-style-type:none;padding-left:0;margin:0}.activity-item{padding:10px 0;border-bottom:1px dashed var(--color-border);display:flex;justify-content:space-between;align-items:center;font-size:.9em;line-height:1.4;color:var(--color-text-primary)}body.dark-mode .activity-item{border-bottom:1px dashed var(--dark-color-border);color:var(--dark-color-text-primary)}.activity-item-content{flex-grow:1;margin-right:10px}.activity-link{color:var(--color-primary);text-decoration:none;font-weight:500}body.dark-mode .activity-link{color:var(--dark-color-primary)}.activity-comment-text{font-style:italic;color:var(--color-text-secondary);margin-left:5px;display:block;margin-top:3px;font-size:.95em}body.dark-mode .activity-comment-text{color:var(--dark-color-text-secondary)}.activity-timestamp{font-size:.8em;color:var(--color-text-secondary);display:block;margin-top:2px}body.dark-mode .activity-timestamp{color:var(--dark-color-text-secondary)}.delete-activity-button{background:none;border:1px solid transparent;color:var(--color-secondary-red);cursor:pointer;padding:5px 8px;margin-left:10px;display:inline-flex;align-items:center;border-radius:4px;font-size:.85em;line-height:1;transition:background-color .2s,color .2s,border-color .2s}body.dark-mode .delete-activity-button{color:var(--dark-color-secondary-red);border-color:var(--dark-color-secondary-red)}.delete-activity-button:hover:not(:disabled){background-color:var(--color-secondary-red);color:#fff}body.dark-mode .delete-activity-button:hover:not(:disabled){background-color:var(--dark-color-secondary-red);color:var(--dark-color-text-on-primary)}.empty-activity-text{font-style:italic;color:var(--color-text-secondary);padding:15px 0;text-align:center;font-size:.9em}body.dark-mode .empty-activity-text{color:var(--dark-color-text-secondary)}.profile-form-container{padding:25px;border:1px solid var(--color-border);border-radius:var(--border-radius);margin-bottom:30px;background-color:var(--color-surface);box-shadow:0 2px 8px var(--color-shadow);transition:background-color .2s ease,border-color .2s ease,box-shadow .2s ease}body.dark-mode .profile-form-container{border:1px solid var(--dark-color-border);background-color:var(--dark-color-surface);box-shadow:0 2px 8px var(--dark-color-shadow)}.profile-form-title{margin-top:0;color:var(--color-primary);margin-bottom:20px;font-size:1.3em}body.dark-mode .profile-form-title{color:var(--dark-color-primary)}.avatar-edit-section{display:flex;align-items:center;margin-bottom:20px;gap:20px}.avatar-preview{width:80px;height:80px;border-radius:50%;object-fit:cover;border:2px solid var(--color-border);background-color:var(--color-surface-alt)}body.dark-mode .avatar-preview{border:2px solid var(--dark-color-border);background-color:var(--dark-color-surface-alt)}.avatar-buttons{display:flex;flex-direction:column;gap:10px}.avatar-action-button{padding:8px 12px;font-size:.9em;border-radius:5px;border:1px solid var(--color-primary);background-color:transparent;color:var(--color-primary);cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:background-color .2s,color .2s,border-color .2s}body.dark-mode .avatar-action-button{border:1px solid var(--dark-color-primary);color:var(--dark-color-primary)}.avatar-action-button:hover:not(:disabled){background-color:var(--color-primary);color:var(--color-text-on-primary)}body.dark-mode .avatar-action-button:hover:not(:disabled){background-color:var(--dark-color-primary);color:var(--dark-color-text-on-primary)}.remove-avatar-button{border-color:var(--color-secondary-red);color:var(--color-secondary-red)}body.dark-mode .remove-avatar-button{border-color:var(--dark-color-secondary-red);color:var(--dark-color-secondary-red)}.remove-avatar-button:hover:not(:disabled){background-color:var(--color-secondary-red);color:#fff}body.dark-mode .remove-avatar-button:hover:not(:disabled){background-color:var(--dark-color-secondary-red);color:var(--dark-color-text-on-primary)}.username-instruction{font-size:.95em;color:var(--color-text-secondary);margin-bottom:8px;display:block;font-weight:700}body.dark-mode .username-instruction{color:var(--dark-color-text-secondary)}.profile-input-wrapper{margin-bottom:20px}.profile-input{width:100%;padding:10px 12px;border:1px solid var(--color-border);border-radius:6px;font-size:1em;background-color:var(--color-surface);color:var(--color-text-primary);box-sizing:border-box;transition:background-color .2s,color .2s,border-color .2s}body.dark-mode .profile-input{border:1px solid var(--dark-color-border);background-color:var(--dark-color-surface);color:var(--dark-color-text-primary)}.profile-input-textarea{min-height:80px;white-space:pre-wrap;resize:vertical}.profile-form-actions{margin-top:25px;display:flex;gap:12px;justify-content:flex-end}.save-profile-button{padding:10px 20px;background-color:var(--color-secondary-green);color:var(--color-text-on-primary);border:none;border-radius:6px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;font-size:1em;font-weight:500;transition:background-color .2s}body.dark-mode .save-profile-button{background-color:var(--dark-color-secondary-green)}.save-profile-button:hover:not(:disabled){opacity:.9}.cancel-profile-button{padding:10px 20px;background-color:var(--color-text-secondary);color:var(--color-text-on-primary);border:none;border-radius:6px;cursor:pointer;font-size:1em;font-weight:500;transition:background-color .2s}body.dark-mode .cancel-profile-button{background-color:var(--dark-color-text-secondary)}.cancel-profile-button:hover:not(:disabled){opacity:.9}.prominent-buttons-container{display:flex;justify-content:space-around;margin-top:30px;padding-top:20px;border-top:1px solid var(--color-border);flex-wrap:wrap;gap:15px}body.dark-mode .prominent-buttons-container{border-top:1px solid var(--dark-color-border)}.prominent-button{padding:12px 25px;font-size:1.1em;min-width:150px;box-shadow:0 2px 4px var(--color-shadow);display:flex;align-items:center;justify-content:center;text-decoration:none;color:#fff;border-radius:6px;border:none;gap:8px;transition:background-color .2s,box-shadow .2s}body.dark-mode .prominent-button{box-shadow:0 2px 4px var(--dark-color-shadow)}.prominent-button:hover{opacity:.9}.watch-button{background-color:var(--color-secondary-green)}body.dark-mode .watch-button{background-color:var(--dark-color-secondary-green)}.read-button{background-color:var(--color-primary)}body.dark-mode .read-button{background-color:var(--dark-color-primary)}.do-button{background-color:var(--color-secondary-yellow);color:var(--color-text-primary)}body.dark-mode .do-button{background-color:var(--dark-color-secondary-yellow);color:var(--dark-color-text-primary)}.toolkit-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:15px}.tool-card{text-decoration:none;color:inherit;display:flex;align-items:center;gap:12px;padding:15px;background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;transition:transform .2s,box-shadow .2s,background-color .2s,border-color .2s}body.dark-mode .tool-card{background-color:var(--dark-color-surface);border:1px solid var(--dark-color-border);color:var(--dark-color-text-primary)}.tool-card:hover{transform:translateY(-2px);box-shadow:0 4px 8px var(--color-shadow-hover)}body.dark-mode .tool-card:hover{box-shadow:0 4px 8px var(--dark-color-shadow-hover)}.tool-icon{font-size:1.5em;color:var(--color-primary)}body.dark-mode .tool-icon{color:var(--dark-color-primary)}.daily-log-content{display:flex;gap:20px;flex-wrap:wrap}.calendar-container{flex:1 1 300px;min-width:280px}.react-calendar{background-color:var(--color-surface)!important;border:1px solid var(--color-border)!important;color:var(--color-text-primary)!important;border-radius:var(--border-radius-lg)!important;box-shadow:0 1px 3px var(--color-shadow)!important}body.dark-mode .react-calendar{background-color:var(--dark-color-surface)!important;border:1px solid var(--dark-color-border)!important;color:var(--dark-color-text-primary)!important;box-shadow:0 1px 3px var(--dark-color-shadow)!important}.react-calendar__navigation button{color:var(--color-text-primary)!important}body.dark-mode .react-calendar__navigation button{color:var(--dark-color-text-primary)!important}.react-calendar__navigation button:enabled:hover,.react-calendar__navigation button:enabled:focus{background-color:var(--color-surface-alt)!important}body.dark-mode .react-calendar__navigation button:enabled:hover,body.dark-mode .react-calendar__navigation button:enabled:focus{background-color:var(--dark-color-surface-alt)!important}.react-calendar__month-view__weekdays__weekday abbr{text-decoration:none!important;color:var(--color-text-secondary)!important}body.dark-mode .react-calendar__month-view__weekdays__weekday abbr{color:var(--dark-color-text-secondary)!important}.react-calendar__tile{color:var(--color-text-primary)!important}body.dark-mode .react-calendar__tile{color:var(--dark-color-text-primary)!important}.react-calendar__tile--now{background:var(--color-surface-alt)!important}body.dark-mode .react-calendar__tile--now{background:var(--dark-color-surface-alt)!important}.react-calendar__tile--active{background:var(--color-primary)!important;color:var(--color-text-on-primary)!important}body.dark-mode .react-calendar__tile--active{background:var(--dark-color-primary)!important;color:var(--dark-color-text-on-primary)!important}.react-calendar__tile--range,.react-calendar__tile--rangeStart,.react-calendar__tile--rangeEnd{background-color:var(--color-primary)!important;color:#fff!important}body.dark-mode .react-calendar__tile--range,body.dark-mode .react-calendar__tile--rangeStart,body.dark-mode .react-calendar__tile--rangeEnd{background-color:var(--dark-color-primary)!important;color:var(--dark-color-text-on-primary)!important}.react-calendar__tile:enabled:hover,.react-calendar__tile:enabled:focus{background-color:var(--color-surface-alt)!important}body.dark-mode .react-calendar__tile:enabled:hover,body.dark-mode .react-calendar__tile:enabled:focus{background-color:var(--dark-color-surface-alt)!important}.react-calendar__tile--now:enabled:hover,.react-calendar__tile--now:enabled:focus{background-color:var(--color-surface-alt)!important}body.dark-mode .react-calendar__tile--now:enabled:hover,body.dark-mode .react-calendar__tile--now:enabled:focus{background-color:var(--dark-color-surface-alt)!important}.log-inputs-container{flex:2 1 400px;display:flex;flex-direction:column;gap:15px}.log-text-area{width:100%;min-height:60px;padding:10px;border:1px solid var(--color-border);border-radius:6px;font-size:.95em;resize:vertical;background-color:var(--color-surface);color:var(--color-text-primary);box-sizing:border-box;transition:background-color .2s,color .2s,border-color .2s}body.dark-mode .log-text-area{border:1px solid var(--dark-color-border);background-color:var(--dark-color-surface);color:var(--dark-color-text-primary)}.log-label{font-weight:700;color:var(--color-text-secondary);margin-bottom:5px}body.dark-mode .log-label{color:var(--dark-color-text-secondary)}.save-log-button{align-self:flex-end;padding:8px 16px;background-color:var(--color-secondary-green);color:var(--color-text-on-primary);border:none;border-radius:5px;cursor:pointer;display:flex;align-items:center;gap:6px;transition:background-color .2s}body.dark-mode .save-log-button{background-color:var(--dark-color-secondary-green)}.save-log-button:hover:not(:disabled){opacity:.9}.emoji-picker-button{padding:8px 10px;margin-right:8px;border:1px solid var(--color-border);border-radius:5px;background:var(--color-surface-alt);cursor:pointer;font-size:1.2em;transition:background-color .2s,border-color .2s}body.dark-mode .emoji-picker-button{border:1px solid var(--dark-color-border);background:var(--dark-color-surface-alt)}.emoji-picker-button:hover{opacity:.9}.emoji-picker-container{position:absolute;top:100%;left:0;z-index:10}.unblock-button{background-color:var(--color-secondary-green);color:#fff}body.dark-mode .unblock-button{background-color:var(--dark-color-secondary-green)}.unblock-button:hover:not(:disabled){opacity:.9}.engagement-row{display:flex;flex-direction:column;gap:30px}@media(min-width:768px){.engagement-row{flex-direction:row;flex-wrap:wrap;gap:20px}}.engagement-column{flex:1 1 300px;min-width:0;display:flex;flex-direction:column}.unblock-button{background-color:var(--color-secondary-red);color:#fff;border:1px solid var(--color-secondary-red)}.unblock-button:hover:not(:disabled){background-color:var(--color-secondary-red-dark, #c82333)}body.dark-mode .unblock-button{background-color:var(--dark-color-secondary-red);border-color:var(--dark-color-secondary-red)}body.dark-mode .unblock-button:hover:not(:disabled){background-color:var(--dark-color-secondary-red-dark, #bd2121)}._chatPageContainer_gltk8_4{display:flex;max-width:1200px;height:calc(100vh - 120px);margin:30px auto;background-color:var(--bg-color, #fff);border-radius:12px;box-shadow:0 4px 12px #00000012;overflow:hidden}._sidebar_gltk8_16{width:300px;border-right:1px solid var(--border-color-light, #e0e0e0);display:flex;flex-direction:column;background-color:var(--section-bg-color-alt, #f8f9fa)}._searchBar_gltk8_25{padding:15px;border-bottom:1px solid var(--border-color-light, #e0e0e0)}._searchInput_gltk8_30{width:100%;padding:10px;border:1px solid var(--border-color, #ced4da);border-radius:6px;font-size:.95em;box-sizing:border-box}._searchResults_gltk8_40{list-style:none;padding:0;margin-top:10px;max-height:400px;overflow-y:auto;background-color:var(--bg-color, #fff)}body._dark-mode_gltk8_48 ._searchResults_gltk8_40{background-color:var(--dark-color-surface);border-color:var(--dark-color-border)}._searchResultItem_gltk8_53{display:flex;align-items:center;padding:10px 15px;border-bottom:1px solid var(--border-color-xlight, #f1f3f5);cursor:pointer;transition:background-color .2s ease;flex-wrap:wrap;gap:10px}body._dark-mode_gltk8_48 ._searchResultItem_gltk8_53{background-color:var(--dark-color-surface);border-color:var(--dark-color-border)}._searchResultItem_gltk8_53:last-child{border-bottom:none}._searchResultItem_gltk8_53:hover{background-color:var(--hover-bg-color, #f0f0f0)}body._dark-mode_gltk8_48 ._searchResultItem_gltk8_53:hover{background-color:var(--dark-color-surface-alt)}._searchResultAvatar_gltk8_79{width:36px;height:36px;border-radius:50%;object-fit:cover;border:1px solid var(--border-color, #ccc)}._searchResultContent_gltk8_87{flex-grow:1;min-width:0}._searchResultName_gltk8_92{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:1em;font-weight:600}._searchResultUsername_gltk8_100{display:block;font-size:.85em;color:var(--text-color-muted, #6c757d)}._searchResultActions_gltk8_106{flex-shrink:0;display:flex;align-items:center;gap:8px}._connectButton_gltk8_113{display:inline-flex;align-items:center;gap:5px;padding:6px 12px;border:1px solid var(--primary-color, #007bff);background-color:var(--primary-color, #007bff);color:#fff;border-radius:6px;cursor:pointer;font-size:.85em;font-weight:500;white-space:nowrap;transition:background-color .2s,border-color .2s}._connectButton_gltk8_113:hover{background-color:var(--primary-color-dark, #0056b3);border-color:var(--primary-color-dark, #0056b3)}._conversationList_gltk8_135{flex-grow:1;overflow-y:auto;list-style:none;padding:0;margin:0}._conversationItem_gltk8_143{display:flex;align-items:center;padding:12px 15px;border-bottom:1px solid var(--border-color-xlight, #f1f3f5);cursor:pointer;transition:background-color .2s ease;position:relative}._conversationItem_gltk8_143:hover{background-color:var(--hover-bg-color, #f0f0f0)}._conversationItem_gltk8_143._active_gltk8_157{background-color:var(--primary-color-light, #e9f5ff);border-left:3px solid var(--primary-color, #007bff);padding-left:12px}._conversationAvatar_gltk8_163{width:45px;height:45px;border-radius:50%;object-fit:cover;margin-right:12px;border:1px solid var(--border-color, #ced4da);display:flex;align-items:center;justify-content:center;flex-shrink:0}._conversationAvatar_gltk8_163 span{display:flex;align-items:center;justify-content:center;height:100%;width:100%}._conversationContent_gltk8_184{flex-grow:1;display:flex;flex-direction:column}._conversationName_gltk8_190{font-weight:600;color:var(--text-color-strong, #2c3e50);font-size:1em}._lastMessage_gltk8_196{font-size:.85em;color:var(--text-color-medium, #6c757d);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}._messageTime_gltk8_205{font-size:.75em;color:var(--text-color-muted, #999);margin-left:auto;align-self:flex-start;white-space:nowrap}._unreadBadge_gltk8_213{position:absolute;top:10px;right:10px;background-color:var(--danger-color, #dc3545);color:#fff;font-size:.7em;padding:3px 7px;border-radius:12px;min-width:20px;text-align:center;font-weight:700}._mainChatWindow_gltk8_228{flex-grow:1;display:flex;flex-direction:column;position:relative;background-color:var(--bg-color, #fff)}._chatHeader_gltk8_237{padding:15px 20px;border-bottom:1px solid var(--border-color-light, #e0e0e0);display:flex;align-items:center;gap:12px;background-color:var(--section-bg-color-alt, #f8f9fa);position:sticky;top:0;z-index:10}._chatHeaderAvatar_gltk8_249{width:40px;height:40px;border-radius:50%;object-fit:cover;border:1px solid var(--border-color, #ced4da)}._chatHeaderName_gltk8_257{font-weight:600;color:var(--text-color-strong, #2c3e50);font-size:1.1em}._groupActionButtons_gltk8_263{display:flex;gap:10px;align-items:center;margin-left:auto}._headerActionButton_gltk8_270{background-color:var(--button-background-color, #f0f0f0);color:var(--text-color-primary, #333);border:1px solid var(--border-color, #ccc);padding:.5rem 1rem;border-radius:6px;cursor:pointer;font-size:.9rem;display:flex;align-items:center;gap:5px;transition:background-color .2s ease,border-color .2s ease;white-space:nowrap;min-width:90px;justify-content:center}._headerActionButton_gltk8_270:hover{background-color:var(--hover-background, #e0e0e0);border-color:var(--primary-color, #007bff)}._headerActionButton_gltk8_270._unblockButton_gltk8_292{background-color:var(--danger-color, #dc3545);border-color:var(--danger-color, #dc3545);color:#fff}._headerActionButton_gltk8_270._unblockButton_gltk8_292:hover{background-color:var(--danger-color-dark, #c82333);border-color:var(--danger-color-dark, #c82333)}._headerActionButton_gltk8_270._blockButton_gltk8_303{background-color:var(--text-color-secondary);border-color:var(--text-color-secondary);color:#fff}._headerActionButton_gltk8_270._blockButton_gltk8_303:hover{background-color:var(--text-color-strong);border-color:var(--text-color-strong)}._messagesContainer_gltk8_315{flex-grow:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:10px;scroll-behavior:smooth}._messageBubble_gltk8_326{max-width:70%;padding:10px 15px;border-radius:20px;line-height:1.4;word-wrap:break-word;overflow-wrap:break-word;display:flex;flex-direction:column;position:relative}._messageBubble_gltk8_326._sent_gltk8_338{background-color:var(--primary-color, #007bff);color:#fff;align-self:flex-end;border-bottom-right-radius:5px;flex-direction:row;align-items:center;gap:8px}._messageBubble_gltk8_326._received_gltk8_348{background-color:var(--bg-color-light, #e9ecef);color:var(--text-color, #333);align-self:flex-start;border-bottom-left-radius:5px;flex-direction:row-reverse;align-items:center;gap:8px}._messageSenderName_gltk8_358{font-size:.8em;font-weight:700;color:var(--text-color-medium, #495057);margin-bottom:4px;display:block;text-align:left}body._dark-mode_gltk8_48 ._messageSenderName_gltk8_358{color:var(--dark-color-text-secondary)}._messageContent_gltk8_371{word-wrap:break-word;overflow-wrap:break-word;min-width:0}._messageLink_gltk8_377{color:var(--link-color, #0056b3);text-decoration:underline;word-break:break-all;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}._messageLink_gltk8_377:hover{color:var(--link-hover-color, #003366);text-decoration:underline}body._dark-mode_gltk8_48 ._messageLink_gltk8_377{color:var(--dark-link-color, #89cff0)}body._dark-mode_gltk8_48 ._messageLink_gltk8_377:hover{color:var(--dark-link-hover-color, #a8d5f3)}._messageTimestamp_gltk8_398{font-size:.7em;color:var(--text-color-muted, #999);margin-top:4px;display:block;opacity:.8}._messageBubble_gltk8_326._sent_gltk8_338 ._messageTimestamp_gltk8_398{align-self:flex-end}._messageBubble_gltk8_326._received_gltk8_348 ._messageTimestamp_gltk8_398{align-self:flex-start}._messageOptionsContainer_gltk8_414{position:relative;display:flex;align-self:flex-end;margin-bottom:2px}._messageOptionsButton_gltk8_421{background:none;border:none;color:#fff;cursor:pointer;padding:4px;border-radius:50%;transition:background-color .2s ease;flex-shrink:0}._messageOptionsButton_gltk8_421:hover{background-color:#fff3}._messageBubble_gltk8_326._received_gltk8_348 ._messageOptionsButton_gltk8_421{color:var(--text-color-secondary, #6c757d)}._messageBubble_gltk8_326._received_gltk8_348 ._messageOptionsButton_gltk8_421:hover{background-color:#0000001a}._messageOptionsDropdown_gltk8_444{position:absolute;top:100%;right:0;margin-top:5px;background-color:var(--bg-color-light, #fff);border:1px solid var(--border-color-light, #e0e0e0);border-radius:6px;box-shadow:0 2px 10px #0000001a;min-width:120px;z-index:20;display:flex;flex-direction:column}._dropdownItem_gltk8_459{background:none;border:none;text-align:left;padding:8px 12px;cursor:pointer;font-size:.9em;display:flex;align-items:center;gap:8px;transition:background-color .2s ease;color:var(--text-color-primary, #333)}._dropdownItem_gltk8_459:hover{background-color:var(--hover-bg-color, #f0f0f0)}._dropdownItem_gltk8_459:first-child{border-top-left-radius:6px;border-top-right-radius:6px}._dropdownItem_gltk8_459:last-child{border-bottom-left-radius:6px;border-bottom-right-radius:6px}._editMessageForm_gltk8_487{display:flex;flex-grow:1;gap:8px;align-items:center}._editMessageInput_gltk8_494{flex-grow:1;border:1px solid var(--border-color, #ced4da);border-radius:8px;padding:8px;font-size:.9em;resize:vertical}._editMessageActions_gltk8_503{display:flex;gap:5px}._editSaveButton_gltk8_508,._editCancelButton_gltk8_508{background-color:var(--primary-color, #007bff);color:#fff;border:none;border-radius:50%;width:30px;height:30px;display:flex;align-items:center;justify-content:center;cursor:pointer}._editCancelButton_gltk8_508{background-color:var(--danger-color, #dc3545)}._messageInfo_gltk8_525{display:flex;align-items:center;gap:8px;margin-top:4px}._editedBadge_gltk8_532{font-size:.7em;font-style:italic;color:var(--text-color-muted, #999)}._messageInputArea_gltk8_539{padding:15px 20px;border-top:1px solid var(--border-color-light, #e0e0e0);display:flex;align-items:center;gap:10px;background-color:var(--section-bg-color-alt, #f8f9fa);position:sticky;bottom:0;z-index:10}._messageInput_gltk8_539{flex-grow:1;padding:12px 15px;border:1px solid var(--border-color, #ced4da);border-radius:25px;font-size:1em;resize:none;min-height:40px;max-height:120px;overflow-y:auto;box-sizing:border-box}._sendButton_gltk8_564{background-color:var(--primary-color, #007bff);color:#fff;border:none;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;font-size:1.2em;cursor:pointer;transition:background-color .2s ease;flex-shrink:0}._sendButton_gltk8_564:hover:not(:disabled){background-color:var(--primary-color-dark, #0056b3)}._sendButton_gltk8_564:disabled{background-color:var(--secondary-color-muted, #adb5bd);cursor:not-allowed}._errorMessage_gltk8_590,._successMessage_gltk8_590{padding:10px 15px;border-radius:8px;margin-bottom:15px;font-size:.9em;text-align:center}._errorMessage_gltk8_590{background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb}._successMessage_gltk8_590{background-color:#d4edda;color:#155724;border:1px solid #c3e6cb}._emptyState_gltk8_610{flex-grow:1;display:flex;flex-direction:column;justify-content:center;align-items:center;color:var(--text-color-muted, #6c757d);font-size:1.1em;text-align:center;padding:20px}._emptyStateIcon_gltk8_622{font-size:3em;margin-bottom:15px}._blockedMessageOverlay_gltk8_628{position:absolute;bottom:0;left:0;right:0;padding:20px;background-color:var(--color-background-overlay, rgba(255, 255, 255, .8));-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);border-top:1px solid var(--color-border-light, #e0e0e0);text-align:center;color:var(--color-text-secondary, #6c757d);font-size:1.1em;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:15}body._dark-mode_gltk8_48 ._blockedMessageOverlay_gltk8_628{background-color:var(--dark-color-background-overlay, rgba(23, 23, 23, .8));border-top:1px solid var(--dark-color-border, #444);color:var(--dark-color-text-secondary)}._blockedIcon_gltk8_652{margin-bottom:10px;color:var(--color-secondary-red, #dc3545)}._blockedText_gltk8_657{margin:0}._modalOverlay_gltk8_662{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000}._modalContent_gltk8_675{background-color:var(--background-color-secondary, #fff);border-radius:8px;box-shadow:0 4px 15px #0003;width:90%;max-width:500px;display:flex;flex-direction:column;overflow:hidden}._modalHeader_gltk8_686{padding:1rem 1.5rem;border-bottom:1px solid var(--border-color, #eee);display:flex;justify-content:space-between;align-items:center;background-color:var(--background-color-tertiary, #f8f8f8)}._modalHeader_gltk8_686 h2{margin:0;color:var(--text-color-primary, #333);font-size:1.25rem}._closeButton_gltk8_701{background:none;border:none;color:var(--text-color-secondary, #888);cursor:pointer;padding:.5rem;border-radius:4px;transition:color .2s ease,background-color .2s ease}._closeButton_gltk8_701:hover{color:var(--primary-color, #007bff);background-color:var(--hover-background, #f0f0f0)}._modalBody_gltk8_716{padding:1.5rem;flex-grow:1;overflow-y:auto;color:var(--text-color-primary, #333)}._inputGroup_gltk8_723{margin-bottom:1rem}._inputGroup_gltk8_723 label{display:block;margin-bottom:.5rem;font-weight:700;color:var(--text-color-secondary, #555)}._modalInput_gltk8_734{width:100%;padding:.75rem;border:1px solid var(--border-color, #ddd);border-radius:6px;font-size:1rem;background-color:var(--input-background, #fff);color:var(--text-color-primary, #333);box-sizing:border-box}._modalInput_gltk8_734:focus{outline:none;border-color:var(--primary-color, #007bff);box-shadow:0 0 0 2px #007bff40}._emptyStateText_gltk8_751{text-align:center;color:var(--text-color-secondary, #666);margin-top:1rem;font-style:italic}._memberList_gltk8_758{list-style:none;padding:0;margin:0;max-height:250px;overflow-y:auto;border:1px solid var(--border-color-light, #f0f0f0);border-radius:4px}._memberListItem_gltk8_768{display:flex;align-items:center;padding:.75rem 1rem;border-bottom:1px solid var(--border-color-light, #f5f5f5);gap:.75rem}._memberListItem_gltk8_768:last-child{border-bottom:none}._memberAvatar_gltk8_780{width:36px;height:36px;border-radius:50%;object-fit:cover;border:1px solid var(--border-color, #ccc)}._memberRole_gltk8_788{font-size:.8em;color:var(--text-color-secondary);margin-left:.5em}._youBadge_gltk8_794{background-color:var(--highlight-color, #ffeb3b);color:var(--text-color-dark, #333);padding:.2em .5em;border-radius:4px;font-size:.75em;margin-left:.5em;font-weight:700}._messageSenderNameLink_gltk8_804{font-weight:700;color:var(--primary-color-dark, #0056b3);text-decoration:none;margin-right:.5em;display:block;margin-bottom:.2em;font-size:.9em}._messageSenderNameLink_gltk8_804:hover{text-decoration:underline}._systemMessage_gltk8_818{background-color:var(--background-color-tertiary, #f0f0f0);color:var(--text-color-secondary, #666);text-align:center;font-style:italic;padding:.5rem 1rem;border-radius:8px;margin:.5rem auto;max-width:80%}._systemMessage_gltk8_818 ._messageContent_gltk8_371{display:block}._sendOnEnterToggle_gltk8_833{display:flex;align-items:center;font-size:.85rem;color:var(--text-color-secondary, #666);margin-top:.5rem;-webkit-user-select:none;user-select:none;cursor:pointer}._sendOnEnterToggle_gltk8_833 input[type=checkbox]{margin-right:.5rem;cursor:pointer}._modalFooter_gltk8_849{padding:1rem 1.5rem;border-top:1px solid var(--border-color, #eee);display:flex;justify-content:flex-end;gap:1rem;background-color:var(--background-color-tertiary, #f8f8f8)}._primaryButton_gltk8_858{background-color:var(--primary-color, #007bff);color:#fff;padding:.75rem 1.25rem;border:none;border-radius:6px;cursor:pointer;font-size:1rem;transition:background-color .2s ease;display:flex;align-items:center;justify-content:center;gap:.5rem}._primaryButton_gltk8_858:hover:not(:disabled){background-color:var(--primary-dark-color, #0056b3)}._primaryButton_gltk8_858:disabled{background-color:var(--disabled-background, #cccccc);cursor:not-allowed}._secondaryButton_gltk8_882{background-color:transparent;color:var(--text-color-secondary, #6c757d);padding:.75rem 1.25rem;border:1px solid var(--border-color, #6c757d);border-radius:6px;cursor:pointer;font-size:1rem;transition:color .2s ease,border-color .2s ease}._secondaryButton_gltk8_882:hover{color:var(--primary-color, #007bff);border-color:var(--primary-color, #007bff)}._dangerButton_gltk8_898{background-color:var(--danger-color, #dc3545);border-color:var(--danger-color, #dc3545)}._dangerButton_gltk8_898:hover{background-color:var(--danger-color-dark, #c82333);border-color:var(--danger-color-dark, #c82333)}._modalOverlay_uzekx_2{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000}._modalContent_uzekx_15{background-color:var(--background-color-secondary, #fff);border-radius:8px;box-shadow:0 4px 15px #0003;width:90%;max-width:500px;display:flex;flex-direction:column;overflow:hidden}._modalHeader_uzekx_26{padding:1rem 1.5rem;border-bottom:1px solid var(--border-color, #eee);display:flex;justify-content:space-between;align-items:center;background-color:var(--background-color-tertiary, #f8f8f8)}._modalHeader_uzekx_26 h2{margin:0;color:var(--text-color-primary, #333);font-size:1.25rem}._closeButton_uzekx_41{background:none;border:none;color:var(--text-color-secondary, #888);cursor:pointer;padding:.5rem;border-radius:4px;transition:color .2s ease,background-color .2s ease}._closeButton_uzekx_41:hover{color:var(--primary-color, #007bff);background-color:var(--hover-background, #f0f0f0)}._modalBody_uzekx_56{padding:1.5rem;flex-grow:1;overflow-y:auto;color:var(--text-color-primary, #333)}._inputGroup_uzekx_63{margin-bottom:1rem}._inputGroup_uzekx_63 label{display:block;margin-bottom:.5rem;font-weight:700;color:var(--text-color-secondary, #555)}._modalInput_uzekx_74{width:100%;padding:.75rem;border:1px solid var(--border-color, #ddd);border-radius:6px;font-size:1rem;background-color:var(--input-background, #fff);color:var(--text-color-primary, #333);box-sizing:border-box}._modalInput_uzekx_74:focus{outline:none;border-color:var(--primary-color, #007bff);box-shadow:0 0 0 2px #007bff40}._searchResults_uzekx_91{margin-top:1.5rem;border-top:1px solid var(--border-color, #eee);padding-top:1rem}._searchResults_uzekx_91 h4{margin-top:0;margin-bottom:.8rem;color:var(--text-color-primary, #333)}._searchResults_uzekx_91 ul{list-style:none;padding:0;margin:0;max-height:200px;overflow-y:auto;border:1px solid var(--border-color-light, #f0f0f0);border-radius:4px}._searchResultItem_uzekx_113{display:flex;align-items:center;padding:.75rem 1rem;border-bottom:1px solid var(--border-color-light, #f5f5f5);justify-content:space-between;background-color:var(--background-color-secondary, #fff)}._searchResultItem_uzekx_113:last-child{border-bottom:none}._searchResultItem_uzekx_113:hover{background-color:var(--hover-background, #f9f9f9)}._searchResultInfo_uzekx_130{display:flex;align-items:center;gap:.75rem;font-size:.95rem;color:var(--text-color-primary, #333)}._searchResultAvatar_uzekx_138{width:36px;height:36px;border-radius:50%;object-fit:cover;border:1px solid var(--border-color, #ccc)}._selectMemberButton_uzekx_146{padding:.4rem .8rem;border:1px solid var(--primary-color, #007bff);background-color:var(--primary-color, #007bff);color:#fff;border-radius:5px;cursor:pointer;font-size:.85rem;transition:background-color .2s ease,border-color .2s ease}._selectMemberButton_uzekx_146:hover{background-color:var(--primary-dark-color, #0056b3);border-color:var(--primary-dark-color, #0056b3)}._selectMemberButton_uzekx_146._selected_uzekx_162{background-color:var(--success-color, #28a745);border-color:var(--success-color, #28a745);opacity:.8;cursor:default}._selectedMembers_uzekx_169{margin-top:1.5rem;border-top:1px solid var(--border-color, #eee);padding-top:1rem}._selectedMembers_uzekx_169 h4{margin-top:0;margin-bottom:.8rem;color:var(--text-color-primary, #333)}._selectedMembersList_uzekx_181{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}._selectedMemberChip_uzekx_188{background-color:var(--primary-light-color, #e0f2ff);color:var(--primary-color, #007bff);padding:.3rem .6rem;border-radius:20px;display:inline-flex;align-items:center;font-size:.85rem}._removeMemberButton_uzekx_198{background:none;border:none;color:var(--primary-color, #007bff);cursor:pointer;margin-left:.5rem;padding:0;display:flex;align-items:center;line-height:1}._removeMemberButton_uzekx_198:hover{color:var(--danger-color, #dc3545)}._modalFooter_uzekx_215{padding:1rem 1.5rem;border-top:1px solid var(--border-color, #eee);display:flex;justify-content:flex-end;gap:1rem;background-color:var(--background-color-tertiary, #f8f8f8)}._primaryButton_uzekx_224{background-color:var(--primary-color, #007bff);color:#fff;padding:.75rem 1.25rem;border:none;border-radius:6px;cursor:pointer;font-size:1rem;transition:background-color .2s ease;display:flex;align-items:center;justify-content:center;gap:.5rem}._primaryButton_uzekx_224:hover:not(:disabled){background-color:var(--primary-dark-color, #0056b3)}._primaryButton_uzekx_224:disabled{background-color:var(--disabled-background, #cccccc);cursor:not-allowed}._secondaryButton_uzekx_248{background-color:transparent;color:var(--text-color-secondary, #6c757d);padding:.75rem 1.25rem;border:1px solid var(--border-color, #6c757d);border-radius:6px;cursor:pointer;font-size:1rem;transition:color .2s ease,border-color .2s ease}._secondaryButton_uzekx_248:hover{color:var(--primary-color, #007bff);border-color:var(--primary-color, #007bff)}._emptyStateText_uzekx_264{text-align:center;color:var(--text-color-secondary, #666);margin-top:1rem;font-style:italic}._memberList_uzekx_273{list-style:none;padding:0;margin:0;max-height:250px;overflow-y:auto;border:1px solid var(--border-color-light, #f0f0f0);border-radius:4px}._memberListItem_uzekx_283{display:flex;align-items:center;padding:.75rem 1rem;border-bottom:1px solid var(--border-color-light, #f5f5f5);gap:.75rem}._memberListItem_uzekx_283:last-child{border-bottom:none}._memberAvatar_uzekx_295{width:36px;height:36px;border-radius:50%;object-fit:cover;border:1px solid var(--border-color, #ccc)}._memberRole_uzekx_303{font-size:.8em;color:var(--text-color-secondary);margin-left:.5em}._youBadge_uzekx_309{background-color:var(--highlight-color, #ffeb3b);color:var(--text-color-dark, #333);padding:.2em .5em;border-radius:4px;font-size:.75em;margin-left:.5em;font-weight:700}._messageLink_uzekx_321{color:inherit;text-decoration:none;word-break:break-all}._messageLink_uzekx_321:hover{text-decoration:underline}._messageSenderNameLink_uzekx_332{font-weight:700;color:var(--primary-color-dark, #0056b3);text-decoration:none;margin-right:.5em;display:block;margin-bottom:.2em;font-size:.9em}._messageSenderNameLink_uzekx_332:hover{text-decoration:underline}._systemMessage_uzekx_346{background-color:var(--background-color-tertiary, #f0f0f0);color:var(--text-color-secondary, #666);text-align:center;font-style:italic;padding:.5rem 1rem;border-radius:8px;margin:.5rem auto;max-width:80%}._systemMessage_uzekx_346 ._messageContent_uzekx_357{display:block}._sendOnEnterToggle_uzekx_362{display:flex;align-items:center;font-size:.85rem;color:var(--text-color-secondary, #666);margin-top:.5rem;-webkit-user-select:none;user-select:none;cursor:pointer}._sendOnEnterToggle_uzekx_362 input[type=checkbox]{margin-right:.5rem;cursor:pointer}._groupActionButtons_uzekx_377{display:flex;gap:10px;align-items:center}._addMemberButton_uzekx_383{background-color:var(--button-background-color, #f0f0f0);color:var(--text-color-primary, #333);border:1px solid var(--border-color, #ccc);padding:.5rem 1rem;border-radius:6px;cursor:pointer;font-size:.9rem;display:flex;align-items:center;gap:5px;transition:background-color .2s ease,border-color .2s ease}._addMemberButton_uzekx_383:hover{background-color:var(--hover-background, #e0e0e0);border-color:var(--primary-color, #007bff)}:root{--font-family-sans: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;--color-primary: #4285F4;--color-secondary-green: #34A853;--color-secondary-yellow: #FBBC05;--color-secondary-red: #EA4335;--color-background: #f8f9fa;--color-surface: #ffffff;--color-surface-alt: #e8eaed;--color-text-primary: #202124;--color-text-secondary: #5f6368;--color-text-on-primary: #ffffff;--color-border: #dadce0;--color-shadow: rgba(60, 64, 67, .15);--color-shadow-hover: rgba(60, 64, 67, .25);--color-error-bg: #fce8e6;--color-error-border: #f9bdbb;--color-error-text: #c5221f;--color-success-bg: #e6f4ea;--color-success-border: #b7e1cd;--color-success-text: #1e8e3e;--dark-color-primary: #8ab4f8;--dark-color-secondary-green: #81c995;--dark-color-secondary-yellow: #fdd663;--dark-color-secondary-red: #f28b82;--dark-color-background: #1a1b1e;--dark-color-surface: #202124;--dark-color-surface-alt: #303134;--dark-color-text-primary: #e8eaed;--dark-color-text-secondary: #9aa0a6;--dark-color-text-on-primary: #202124;--dark-color-border: #3c4043;--dark-color-shadow: rgba(0, 0, 0, .3);--dark-color-shadow-hover: rgba(0, 0, 0, .4);--dark-color-error-bg: #372424;--dark-color-error-border: #5c2b29;--dark-color-error-text: #f28b82;--dark-color-success-bg: #1a3a2a;--dark-color-success-border: #2a5a4a;--dark-color-success-text: #81c995;--header-height: 60px;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--border-radius: 4px;--border-radius-lg: 8px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth;height:100%}body{font-family:var(--font-family-sans);background-color:var(--color-background);color:var(--color-text-primary);transition:background-color .2s ease,color .2s ease;min-height:100vh;display:flex;flex-direction:column}#root{flex:1;display:flex;flex-direction:column}.main-content-themed-surface{background-color:var(--color-surface);flex-grow:1;padding:var(--spacing-md)}a{color:var(--color-primary);text-decoration:none;transition:opacity .2s ease}a:hover{opacity:.8}img{max-width:100%;height:auto;display:block}h1,h2,h3,h4,h5,h6{margin-bottom:var(--spacing-md);line-height:1.3;font-weight:700}h1{font-size:2rem}h2{font-size:1.5rem}h3{font-size:1.25rem}p{margin-bottom:var(--spacing-md)}ul,ol{padding-left:1.5rem;margin-bottom:var(--spacing-md)}li{margin-bottom:var(--spacing-xs)}body.dark-mode{background-color:var(--dark-color-background);color:var(--dark-color-text-primary)}body.dark-mode a{color:var(--dark-color-primary)}body.dark-mode .main-content-themed-surface{background-color:var(--dark-color-surface)}.container{width:90%;max-width:1100px;margin-left:auto;margin-right:auto;padding-left:var(--spacing-md);padding-right:var(--spacing-md)}.site-header{background-color:var(--color-surface);border-bottom:1px solid var(--color-border);position:sticky;top:0;z-index:100;box-shadow:0 1px 2px var(--color-shadow)}body.dark-mode .site-header{background-color:var(--dark-color-surface);border-bottom-color:var(--dark-color-border);box-shadow:0 1px 2px var(--dark-color-shadow)}.header-nav{display:flex;justify-content:space-between;align-items:center;height:var(--header-height)}.logo-link{display:flex;align-items:center;gap:var(--spacing-sm);font-weight:700;font-size:1.25rem;color:var(--color-text-primary);flex-shrink:0}body.dark-mode .logo-link{color:var(--dark-color-text-primary)}.logo-image{height:32px;width:auto}.nav-main-links{display:flex;align-items:center;gap:var(--spacing-lg);margin-right:auto;padding-left:var(--spacing-lg)}.nav-link{color:var(--color-text-secondary);font-weight:500;padding:var(--spacing-sm) 0;white-space:nowrap}.nav-link:hover{color:var(--color-primary);opacity:1}body.dark-mode .nav-link{color:var(--dark-color-text-secondary)}body.dark-mode .nav-link:hover{color:var(--dark-color-primary)}.nav-link--submit{display:inline-flex;align-items:center}.nav-module-icons{display:flex;align-items:center;gap:.5rem}.module-icon-link,.support-button,.dark-mode-toggle{display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary);padding:var(--spacing-sm);border-radius:50%;line-height:1;transition:background-color .2s ease,color .2s ease;background:none;border:none;cursor:pointer;position:relative}.module-icon-link:hover,.support-button:hover,.dark-mode-toggle:hover{background-color:var(--color-surface-alt);color:var(--color-primary);opacity:1}body.dark-mode .module-icon-link,body.dark-mode .support-button,body.dark-mode .dark-mode-toggle{color:var(--dark-color-text-secondary)}body.dark-mode .module-icon-link:hover,body.dark-mode .support-button:hover,body.dark-mode .dark-mode-toggle:hover{background-color:var(--dark-color-surface-alt);color:var(--dark-color-primary)}.module-icon-link.disabled{opacity:.5;cursor:not-allowed}.module-icon-link.disabled:hover{background-color:transparent;color:var(--color-text-secondary);opacity:.5}body.dark-mode .module-icon-link.disabled:hover{color:var(--dark-color-text-secondary)}.git-started-button{display:inline-flex;align-items:center;padding:6px 12px;font-weight:600;font-size:.9rem;color:#fff!important;background-color:#00bf63;border-radius:6px;text-decoration:none;margin-right:.75rem;transition:background-color .25s ease,padding .25s ease}.git-started-button:hover{background-color:#009f54;text-decoration:none;color:#fff!important}body.dark-mode .git-started-button{color:#fff!important}.git-started-button .git-started-icon{margin-right:.4rem;transition:margin-right .25s ease}.git-started-button .git-started-text{display:inline;transition:display .25s ease}.site-footer-main{background-color:var(--color-surface-alt);padding:var(--spacing-lg) 0;margin-top:var(--spacing-xl);text-align:center;font-size:.85rem}body.dark-mode .site-footer-main{background-color:var(--dark-color-surface-alt)}.footer-content{color:var(--color-text-secondary)}body.dark-mode .footer-content{color:var(--dark-color-text-secondary)}.learning-styles-note{margin-bottom:var(--spacing-sm);font-style:italic}.copyright-note{margin-bottom:0}.button{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:.6rem 1.2rem;border-radius:var(--border-radius);font-weight:500;cursor:pointer;border:1px solid transparent;transition:background-color .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease,opacity .2s ease;font-size:.9rem;line-height:1.2;text-align:center;white-space:nowrap}.button:disabled{opacity:.6;cursor:not-allowed}.button:hover:not(:disabled){opacity:.85}.button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}body.dark-mode .button:focus-visible{outline-color:var(--dark-color-primary)}.button--primary{background-color:var(--color-primary);color:var(--color-text-on-primary)}body.dark-mode .button--primary{background-color:var(--dark-color-primary);color:var(--dark-color-text-on-primary)}.button--secondary{background-color:var(--color-surface);color:var(--color-text-primary);border:1px solid var(--color-border);box-shadow:0 1px 1px var(--color-shadow)}.button--secondary:hover:not(:disabled){background-color:var(--color-surface-alt);opacity:1}body.dark-mode .button--secondary{background-color:var(--dark-color-surface);color:var(--dark-color-text-primary);border-color:var(--dark-color-border);box-shadow:0 1px 1px var(--dark-color-shadow)}body.dark-mode .button--secondary:hover:not(:disabled){background-color:var(--dark-color-surface-alt)}.project-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--spacing-lg)}.project-card{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius-lg);overflow:hidden;display:flex;flex-direction:column;height:100%;box-shadow:0 1px 3px var(--color-shadow);transition:box-shadow .2s ease,transform .2s ease,background-color .2s ease,border-left-color .2s ease;border-left-width:5px;border-left-style:solid;border-left-color:var(--color-border)}.project-card-link:hover .project-card{box-shadow:0 4px 8px var(--color-shadow-hover);transform:translateY(-2px)}body.dark-mode .project-card{background-color:var(--dark-color-surface);border-color:var(--dark-color-border);border-left-color:var(--dark-color-border);box-shadow:0 1px 3px var(--dark-color-shadow)}body.dark-mode .project-card-link:hover .project-card{box-shadow:0 4px 8px var(--dark-color-shadow-hover)}.project-card__image{width:100%;height:150px;object-fit:contain;background-color:var(--color-surface);padding:var(--spacing-sm)}body.dark-mode .project-card__image{background-color:var(--dark-color-surface-alt)}.project-card__image--placeholder{display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary);background-color:var(--color-surface-alt);font-style:italic;font-size:.9em}body.dark-mode .project-card__image--placeholder{background-color:var(--dark-color-surface-alt)}.project-card__content{padding:var(--spacing-md);flex-grow:1}.project-card__title{font-size:1.1rem;font-weight:700;margin-bottom:var(--spacing-sm);color:var(--color-text-primary)}body.dark-mode .project-card__title{color:var(--dark-color-text-primary)}.project-card__description{font-size:.9rem;color:var(--color-text-secondary);margin-bottom:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}body.dark-mode .project-card__description{color:var(--dark-color-text-secondary)}.project-card__meta{padding:0 var(--spacing-md) var(--spacing-sm);font-size:.8rem;color:var(--color-text-secondary);text-align:right}body.dark-mode .project-card__meta{color:var(--dark-color-text-secondary)}.project-card--phase-idea{border-left-color:var(--color-secondary-yellow)!important}body.dark-mode .project-card--phase-idea{border-left-color:var(--dark-color-secondary-yellow)!important}.project-card--phase-experiment{border-left-color:var(--color-secondary-green)!important}body.dark-mode .project-card--phase-experiment{border-left-color:var(--dark-color-secondary-green)!important}.project-card--phase-project{border-left-color:var(--color-secondary-red)!important}body.dark-mode .project-card--phase-project{border-left-color:var(--dark-color-secondary-red)!important}.project-card--phase-product{border-left-color:var(--color-primary)!important}body.dark-mode .project-card--phase-product{border-left-color:var(--dark-color-primary)!important}.hero-section{text-align:center;padding:var(--spacing-xl) var(--spacing-md);background-color:var(--color-surface);border-radius:var(--border-radius-lg);margin-bottom:var(--spacing-xl);box-shadow:0 2px 5px var(--color-shadow)}body.dark-mode .hero-section{background-color:var(--dark-color-surface);box-shadow:0 2px 5px var(--dark-color-shadow)}.hero-emoji{font-size:3rem;text-align:center;margin-bottom:.5rem;line-height:1;-webkit-user-select:none;user-select:none}.hero-title{font-size:2.5rem;margin-bottom:var(--spacing-sm)}.hero-subtitle{color:var(--color-text-secondary);max-width:600px;margin:0 auto var(--spacing-lg)}body.dark-mode .hero-subtitle{color:var(--dark-color-text-secondary)}.features-section{text-align:center;margin-top:var(--spacing-xl)}.section-title{margin-bottom:var(--spacing-lg)}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-lg);text-align:left}.feature-card{background-color:var(--color-surface);padding:var(--spacing-lg);border-radius:var(--border-radius);border:1px solid var(--color-border)}body.dark-mode .feature-card{background-color:var(--dark-color-surface);border-color:var(--dark-color-border)}.feature-title{font-size:1.1rem;margin-bottom:var(--spacing-sm);display:flex;align-items:center;gap:var(--spacing-sm)}.feature-title--green{color:var(--color-secondary-green)}.feature-title--yellow{color:var(--color-secondary-yellow)}.feature-title--red{color:var(--color-secondary-red)}body.dark-mode .feature-title--green{color:var(--dark-color-secondary-green)}body.dark-mode .feature-title--yellow{color:var(--dark-color-secondary-yellow)}body.dark-mode .feature-title--red{color:var(--dark-color-secondary-red)}.feature-card p{color:var(--color-text-secondary);font-size:.9rem;margin-bottom:0}body.dark-mode .feature-card p{color:var(--dark-color-text-secondary)}.submit-promo-section{text-align:center;margin-top:var(--spacing-xl);padding-top:var(--spacing-xl);border-top:1px solid var(--color-border)}body.dark-mode .submit-promo-section{border-top-color:var(--dark-color-border)}.page-title{margin-bottom:var(--spacing-lg);border-bottom:1px solid var(--color-border);padding-bottom:var(--spacing-sm)}body.dark-mode .page-title{border-bottom-color:var(--dark-color-border)}.gallery-controls{display:flex;flex-wrap:wrap;gap:var(--spacing-lg);margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--color-border)}body.dark-mode .gallery-controls{border-bottom-color:var(--dark-color-border)}.filter-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.filter-group label{font-size:.85rem;font-weight:500;color:var(--color-text-secondary);margin-bottom:var(--spacing-xs)}body.dark-mode .filter-group label{color:var(--dark-color-text-secondary)}.filter-group input,.filter-group select{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--border-radius);background-color:var(--color-surface);color:var(--color-text-primary);font-size:.9rem;line-height:1.5}body.dark-mode .filter-group input,body.dark-mode .filter-group select{background-color:var(--dark-color-surface);border-color:var(--dark-color-border);color:var(--dark-color-text-primary)}.filter-group--search{flex-grow:1;min-width:250px}.filter-group--phase select{min-width:180px}.empty-message{color:var(--color-text-secondary);font-style:italic;text-align:center;padding:var(--spacing-xl) 0}body.dark-mode .empty-message{color:var(--dark-color-text-secondary)}.project-detail-page{max-width:900px}.project-header{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.project-title{margin-bottom:0;flex-grow:1;font-size:1.8rem}.project-actions{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);margin-top:var(--spacing-xs)}.project-preview-section,.project-summary-section,.project-specs-section,.project-resources-section,.project-full-description-section,.back-link-section{margin-bottom:var(--spacing-xl);padding-top:var(--spacing-lg);border-top:1px solid var(--color-border)}body.dark-mode .project-preview-section,body.dark-mode .project-summary-section,body.dark-mode .project-specs-section,body.dark-mode .project-resources-section,body.dark-mode .project-full-description-section,body.dark-mode .back-link-section{border-top-color:var(--dark-color-border)}.project-preview-section{border-top:none;padding-top:0}.project-preview{position:relative;background-color:var(--color-surface-alt);border-radius:var(--border-radius-lg);overflow:hidden;aspect-ratio:16 / 9}body.dark-mode .project-preview{background-color:var(--dark-color-surface-alt)}.preview-image{width:100%;height:100%;object-fit:contain;background-color:var(--color-surface);padding:var(--spacing-sm)}body.dark-mode .preview-image{background-color:var(--dark-color-surface-alt)}.project-preview.blurred .blur-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background-color:#f8f9fa80;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;text-align:center;padding:var(--spacing-md)}body.dark-mode .project-preview.blurred .blur-overlay{background-color:#20212499}.blur-overlay-content{background-color:#202124b3;padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--border-radius);color:#fff}body.dark-mode .blur-overlay-content{background-color:#0009}.blur-icon{font-size:2rem;margin-bottom:var(--spacing-sm);opacity:.8}.blur-text-primary{font-weight:600;margin-bottom:var(--spacing-xs);font-size:1rem}.blur-text-secondary{font-size:.8rem;opacity:.9;margin-bottom:0}.summary-box{border:1px solid var(--color-border);background-color:var(--color-surface);padding:var(--spacing-md);border-radius:var(--border-radius);margin-top:var(--spacing-sm);white-space:pre-wrap;font-size:.95rem}body.dark-mode .summary-box{border-color:var(--dark-color-border);background-color:var(--dark-color-surface)}.summary-text--empty{color:var(--color-text-secondary);font-style:italic}body.dark-mode .summary-text--empty{color:var(--dark-color-text-secondary)}.specs-list p{margin-bottom:var(--spacing-xs);font-size:.95rem}.specs-list p strong{display:inline-block;width:130px;font-weight:700;color:var(--color-text-secondary);margin-right:var(--spacing-sm)}body.dark-mode .specs-list p strong{color:var(--dark-color-text-secondary)}.export-button{margin-top:var(--spacing-md)}.resources-list{list-style:none;padding-left:0}.resources-list li{margin-bottom:var(--spacing-sm)}.resources-list a{display:inline-flex;align-items:center;font-weight:500}.description-content{font-size:.95rem;white-space:pre-wrap}.description-content p:last-child{margin-bottom:0}.back-link{font-weight:500}.submit-page{max-width:800px}.form-group{margin-bottom:var(--spacing-lg)}.form-group label{display:block;margin-bottom:var(--spacing-xs);font-weight:500;color:var(--color-text-secondary)}body.dark-mode .form-group label{color:var(--dark-color-text-secondary)}.form-group input[type=text],.form-group input[type=url],.form-group input[type=email],.form-group input[type=date],.form-group select,.form-group textarea{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--border-radius);background-color:var(--color-surface);color:var(--color-text-primary);font-size:.95rem;line-height:1.5}body.dark-mode .form-group input[type=text],body.dark-mode .form-group input[type=url],body.dark-mode .form-group input[type=email],body.dark-mode .form-group input[type=date],body.dark-mode .form-group select,body.dark-mode .form-group textarea{background-color:var(--dark-color-surface);border-color:var(--dark-color-border);color:var(--dark-color-text-primary)}.form-group textarea{min-height:100px;resize:vertical}.form-group input[type=file]{border:none;padding-left:0;background-color:transparent}body.dark-mode .form-group input[type=file]{color:var(--dark-color-text-secondary)}.form-help-text{font-size:.85rem;color:var(--color-text-secondary);margin-top:var(--spacing-xs)}body.dark-mode .form-help-text{color:var(--dark-color-text-secondary)}.submit-button-wrapper{margin-top:var(--spacing-xl);border-top:1px solid var(--color-border);padding-top:var(--spacing-lg)}body.dark-mode .submit-button-wrapper{border-top-color:var(--dark-color-border)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-md);opacity:1;visibility:visible;transition:opacity .3s ease,visibility 0s linear 0s}.modal-overlay[data-state=closed]{opacity:0;visibility:hidden;transition:opacity .3s ease,visibility 0s linear .3s}.modal-content{background-color:var(--color-surface);padding:var(--spacing-lg);border-radius:var(--border-radius-lg);box-shadow:0 5px 15px #0000004d;max-width:600px;width:95%;position:relative;max-height:90vh;overflow-y:auto;transform:scale(1);transition:transform .3s ease}.modal-overlay[data-state=closed] .modal-content{transform:scale(.95)}body.dark-mode .modal-content{background-color:var(--dark-color-surface);box-shadow:0 5px 15px #00000080}.modal-close-button{position:absolute;top:var(--spacing-sm);right:var(--spacing-sm);background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--color-text-secondary);padding:var(--spacing-xs);line-height:1;border-radius:50%}.modal-close-button:hover{color:var(--color-text-primary);background-color:var(--color-surface-alt)}body.dark-mode .modal-close-button{color:var(--dark-color-text-secondary)}body.dark-mode .modal-close-button:hover{color:var(--dark-color-text-primary);background-color:var(--dark-color-surface-alt)}.modal-title{margin-top:0;margin-bottom:var(--spacing-md);font-size:1.4rem;border-bottom:1px solid var(--color-border);padding-bottom:var(--spacing-sm)}body.dark-mode .modal-title{border-bottom-color:var(--dark-color-border)}.modal-section{margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:1px solid var(--color-border)}body.dark-mode .modal-section{border-top-color:var(--dark-color-border)}.modal-section:first-of-type{margin-top:var(--spacing-md);padding-top:0;border-top:none}.modal-section h3{font-size:1.1rem;margin-bottom:var(--spacing-md)}.modal-link-buttons{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.modal-content .form-group{margin-bottom:var(--spacing-md)}.modal-content .form-group label{font-weight:500;font-size:.9rem}.modal-content .form-group input,.modal-content .form-group textarea{font-size:.9rem}.modal-content .button{margin-top:var(--spacing-sm)}.modal-content .error-message,.modal-content .success-message{margin-top:var(--spacing-md);margin-bottom:var(--spacing-sm)}.success-message{background-color:var(--color-success-bg);border:1px solid var(--color-success-border);color:var(--color-success-text);padding:var(--spacing-md);border-radius:var(--border-radius);display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}body.dark-mode .success-message{background-color:var(--dark-color-success-bg);border-color:var(--dark-color-success-border);color:var(--dark-color-success-text)}.loading-spinner-inline{display:inline-flex;align-items:center;gap:.5rem}.loading-spinner-inline .loading-spinner{width:1em;height:1em;border-width:2px;margin-bottom:0;animation:spin 1s linear infinite;border-radius:50%;border-style:solid;border-color:var(--color-surface-alt);border-top-color:var(--color-primary)}body.dark-mode .loading-spinner-inline .loading-spinner{border-color:var(--dark-color-surface-alt);border-top-color:var(--dark-color-primary)}.error-message{background-color:var(--color-error-bg);border:1px solid var(--color-error-border);color:var(--color-error-text);padding:var(--spacing-md);border-radius:var(--border-radius);display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}body.dark-mode .error-message{background-color:var(--dark-color-error-bg);border-color:var(--dark-color-error-border);color:var(--dark-color-error-text)}.error-icon{flex-shrink:0}.loading-container{text-align:center;padding:var(--spacing-xl) 0;color:var(--color-text-secondary)}body.dark-mode .loading-container{color:var(--dark-color-text-secondary)}.loading-spinner{display:inline-block;width:30px;height:30px;border:3px solid var(--color-surface-alt);border-top-color:var(--color-primary);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:var(--spacing-sm)}body.dark-mode .loading-spinner{border-color:var(--dark-color-surface-alt);border-top-color:var(--dark-color-primary)}@keyframes spin{to{transform:rotate(360deg)}}.loading-text{display:block;font-size:.9rem}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--color-surface-alt)}body.dark-mode ::-webkit-scrollbar-track{background:var(--dark-color-surface-alt)}::-webkit-scrollbar-thumb{background:#aaa;border-radius:5px}body.dark-mode ::-webkit-scrollbar-thumb{background:#555}::-webkit-scrollbar-thumb:hover{background:#888}body.dark-mode ::-webkit-scrollbar-thumb:hover{background:#777}@media(max-width:1024px){.nav-link--submit{display:none!important}.git-started-button .git-started-text{display:none}.git-started-button .git-started-icon{margin-right:0}.git-started-button{padding:6px 8px}}@media(max-width:768px){.header-nav{flex-direction:column;align-items:center;flex-wrap:nowrap;height:auto;padding-top:var(--spacing-md);padding-bottom:var(--spacing-md);gap:var(--spacing-md)}.logo-link{order:1}.nav-module-icons{order:2;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:var(--spacing-sm);width:100%}.nav-module-icons .git-started-button{order:1;flex-basis:100%;display:flex;justify-content:center;margin-bottom:var(--spacing-sm);padding:8px 14px;font-size:1rem;font-weight:700;border-radius:8px;white-space:nowrap}.nav-module-icons .git-started-button .git-started-text{display:inline}.nav-module-icons .git-started-button .git-started-icon{margin-right:.4rem}.nav-main-links{order:3;width:auto;padding-left:0;margin-right:0;margin-top:0;display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm)}.project-header{flex-direction:column;align-items:flex-start}.project-actions{width:100%;justify-content:flex-start}.gallery-controls{flex-direction:column;align-items:stretch}.filter-group input,.filter-group select{min-width:unset}}
