@import url("https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap");.connections-container{max-width:64rem;margin:10px auto}.connections-search{margin-bottom:1.5rem}.connections-search .search-filters{display:flex;gap:1rem;align-items:center}@media (max-width: 768px){.connections-search .search-filters{flex-wrap:wrap}}.connections-search .filter-select{width:12rem;padding:0.5rem;border:1px solid #e2e8f0;border-radius:0.5rem;background-color:white}.connections-search .search-input{padding:0.5rem;padding-right:2.5rem;border:1px solid #e2e8f0;border-radius:0.5rem}.connections-search .search-button{background:#2271B1;display:inline-block;padding:12px 24px;border:none;color:white;font-family:"Inter", sans-serif;font-size:16px;text-decoration:none;border-radius:5px;font-weight:500;cursor:pointer}.connections-list{display:flex;flex-direction:column;gap:1rem}.connection-item{display:flex;gap:1rem;padding:1rem;background-color:white;border:1px solid #e2e8f0;border-radius:0.5rem;align-items:flex-start}.profile-avatar{flex-shrink:0}.profile-avatar .avatar-circle{width:3rem;height:3rem;border-radius:50%;background-color:#d7d7d7;color:white;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1.25rem}.connection-content{flex-grow:1;min-width:0}.connection-header{display:flex;justify-content:space-between;gap:1rem;margin-bottom:0.5rem}.connection-main-info .connection-name{font-weight:600;font-size:1.125rem}.connection-main-info .connection-name a{color:#2271B1;text-decoration:none}.connection-main-info .connection-name a:hover{color:#2271B1;text-decoration:underline}.connection-main-info .connection-location,.connection-main-info .connection-email{font-size:0.9rem;color:#555555}.connection-bio{font-size:0.9rem;color:#555555;line-height:1.5}.connection-bio .bio-expand{color:#2271B1;text-decoration:none;margin-left:0.5rem;font-size:0.9rem}.connection-bio .bio-expand:hover{text-decoration:underline}.connection-actions{flex-shrink:0}.status-badge{display:inline-block;padding:0.25rem 0.75rem;border-radius:9999px;font-size:0.9rem}.status-badge--self{background-color:#f1f5f9;color:#555555}.status-badge--connected{background-color:#17B7B7;color:white}.status-badge--pending{background-color:#fef3c7;color:#92400e}.profile-warning{font-size:0.9rem;color:#FF4D4F;margin-bottom:0.5rem}.profile-edit-button{display:inline-block;padding:0.25rem 1rem;background-color:#2271B1;color:white;text-decoration:none;border-radius:0.5rem;font-size:0.9rem}.profile-edit-button:hover{background-color:#2271B1}.action-button{display:inline-block;padding:0.25rem 1rem;text-decoration:none;border-radius:0.5rem;font-size:0.9rem}.action-button--outline{border:1px solid #2271B1;color:#2271B1}.empty-state{text-align:center;color:#555555;padding:2rem}.upload-drop-zone{border:2px dashed #d1d5db;border-radius:0.5rem;padding:2rem;text-align:center;background-color:#f9fafb;transition:all 0.3s ease;cursor:pointer}.upload-drop-zone:hover{border-color:#17B7B7;background-color:#f0f9ff}.upload-drop-zone.drag-over{border-color:#17B7B7;background-color:#e0f2fe;transform:scale(1.02)}.upload-drop-zone .upload-drop-text{margin-bottom:1rem;color:#6b7280}.upload-drop-zone .upload-drop-text .primary-text{color:#555555;font-weight:500}.upload-drop-zone .upload-drop-text .secondary-text{font-size:0.9rem;margin-top:0.5rem}.upload-drop-zone input[type="file"]{opacity:0;position:absolute;pointer-events:none}.upload-progress-container{margin:1rem 0;border:1px solid #D7D7D7;border-radius:0.5rem;background-color:white}.upload-progress-container .upload-container-header{padding:1rem;border-bottom:1px solid #D7D7D7;background-color:#f8f9fa}.upload-progress-container .upload-container-header h4{margin:0;color:#555555;font-weight:500}.upload-item{display:flex;align-items:center;padding:1rem;border-bottom:1px solid #f1f5f9;gap:1rem}.upload-item:last-child{border-bottom:none}.upload-item.upload-pending{background-color:#fefce8}.upload-item.upload-ready{background-color:#eff6ff}.upload-item.upload-uploading{background-color:#f0f9ff}.upload-item.upload-completed{background-color:#f0fdf4}.upload-item.upload-failed{background-color:#fef2f2}.upload-item.upload-cancelled{background-color:#f8fafc;opacity:0.7}.upload-info{flex:1;min-width:0}.upload-info .upload-filename{font-weight:500;color:#555555;margin-bottom:0.25rem;overflow-wrap:break-word;word-break:break-word}.upload-info .upload-filesize{font-size:0.9rem;color:#6b7280}.upload-progress{flex:1;max-width:200px;margin:0 1rem}.upload-progress .upload-progress-track{width:100%;height:8px;background-color:#e5e7eb;border-radius:4px;overflow:hidden;margin-bottom:0.5rem}.upload-progress .upload-progress-bar{height:100%;background:linear-gradient(90deg, #17B7B7 0%, #10b981 100%);transition:width 0.3s ease;border-radius:4px}.upload-progress .upload-progress-text{font-size:0.9rem;color:#6b7280;text-align:center;font-weight:500}.upload-phases{display:flex;justify-content:space-between;margin:10px 0;flex:1;max-width:280px}.upload-phases .phase{display:flex;flex-direction:column;align-items:center;opacity:0.3;transition:opacity 0.3s ease;position:relative}.upload-phases .phase.active{opacity:1}.upload-phases .phase .phase-icon{font-size:20px;margin-bottom:4px}.upload-phases .phase .phase-text{font-size:12px;color:#666;font-weight:500}.upload-phases .phase:not(:last-child)::after{content:'';position:absolute;top:10px;left:100%;width:calc(100% + 10px);height:2px;background-color:#e5e7eb;z-index:-1}.upload-phases .phase.active:not(:last-child)::after{background-color:#17B7B7}.upload-status{flex:0 0 120px;font-size:0.9rem;color:#6b7280;text-align:left}.upload-status.upload-status-warning{color:#f59e0b;font-weight:500}.upload-status.upload-status-error{color:#FF6F61;font-weight:500}.upload-actions{flex:0 0 auto}.upload-actions .cancel-upload-btn{background:none;border:1px solid #e5e7eb;color:#6b7280;padding:0.5rem 1rem;border-radius:0.375rem;cursor:pointer;font-size:0.9rem;transition:all 0.2s ease}.upload-actions .cancel-upload-btn:hover{background-color:#f3f4f6;border-color:#d1d5db;color:#374151}.upload-error{color:#FF6F61;font-size:0.9rem;margin-top:0.5rem;padding:0.5rem;background-color:#fef2f2;border:1px solid #fecaca;border-radius:0.375rem}.upload-network-warning{display:none;align-items:center;padding:8px;background-color:#fff3cd;border:1px solid #ffeaa7;border-radius:4px;margin-top:8px;font-size:0.9rem}.upload-network-warning .warning-icon{margin-right:8px;font-size:16px}.upload-network-warning .warning-text{color:#856404;font-weight:500}.upload-messages{margin:1rem 0}.upload-messages .upload-message{padding:0.75rem 1rem;border-radius:0.375rem;margin-bottom:0.5rem;font-size:0.9rem}.upload-messages .upload-message.upload-message-error{background-color:#fef2f2;color:#dc2626;border:1px solid #fecaca}.upload-messages .upload-message.upload-message-success{background-color:#f0fdf4;color:#16a34a;border:1px solid #bbf7d0}.upload-messages .upload-message.upload-message-info{background-color:#eff6ff;color:#2563eb;border:1px solid #bfdbfe}.file-upload-button{background-color:#17B7B7;color:white;border:none;padding:0.75rem 1.5rem;border-radius:0.375rem;cursor:pointer;font-weight:500;transition:all 0.2s ease}.file-upload-button:hover{background-color:#118a8a;transform:translateY(-1px)}.file-upload-button:disabled{opacity:0.5;cursor:not-allowed;transform:none}.custom-file-input{position:relative;display:inline-block}.custom-file-input input[type="file"]{position:absolute;left:-9999px}.custom-file-input .file-input-label{display:inline-flex;align-items:center;gap:0.5rem;background-color:white;color:#555555;border:2px solid #D7D7D7;padding:0.75rem 1rem;border-radius:0.375rem;cursor:pointer;transition:all 0.2s ease}.custom-file-input .file-input-label:hover{border-color:#17B7B7;background-color:#f9fafb}@keyframes upload-pulse{0%{opacity:1}50%{opacity:0.7}100%{opacity:1}}.upload-uploading .upload-progress-bar{animation:upload-pulse 2s ease-in-out infinite}@media (max-width: 768px){.upload-item{flex-direction:column;align-items:stretch;gap:0.75rem}.upload-item .upload-info,.upload-item .upload-progress,.upload-item .upload-phases,.upload-item .upload-status,.upload-item .upload-actions{flex:none;max-width:none;text-align:left}.upload-item .upload-progress{margin:0}.upload-item .upload-phases{max-width:none;justify-content:space-around;margin:0.5rem 0}.upload-item .upload-phases .phase .phase-text{font-size:10px}.upload-item .upload-phases .phase .phase-icon{font-size:16px}.upload-item .upload-phases .phase:not(:last-child)::after{width:calc(100% - 20px);left:60%}.upload-item .upload-status{text-align:left}.upload-drop-zone{padding:1.5rem 1rem}.upload-drop-zone .upload-drop-text{font-size:0.9rem}}.upload-notification{background-color:#e6f3ff;border:1px solid #b3d9ff;border-radius:0.375rem;padding:0.75rem 1rem;margin-bottom:1rem;font-size:0.9rem;color:#1e40af}.upload-notification .upload-info-icon{margin-right:0.5rem}.hidden{display:none !important}*{margin:0;padding:0;box-sizing:border-box}body{font-family:"Inter", sans-serif;font-size:16px;line-height:1;color:#555555;font-weight:400;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body.welcome{margin:0;display:flex;flex-direction:column;justify-content:center;align-items:center;height:100vh}body.welcome h1{font-size:3rem;margin-bottom:20px}body.welcome p{font-size:1.5rem;margin-bottom:20px}a{color:#2271B1;text-decoration:none}a:hover{text-decoration:underline}.app-layout,.app-layout-with-sidebar{display:flex;min-height:100vh;background-color:#F8FAFC}main{flex:1}.main-welcome{flex:0 1}.sidebar{width:280px;background-color:#282828;color:white;padding:0;flex-shrink:0;display:flex;flex-direction:column}.sidebar-header{padding:20px;border-bottom:1px solid rgba(255,255,255,0.1)}.logo-container{display:flex;align-items:center;gap:8px;text-decoration:none;color:white}.logo-container:visited{color:white}.sidebar-logo{height:40px;width:auto}.sidebar-nav{padding:20px 0;flex:1}.nav-section{margin-bottom:30px}.nav-section-header{padding:8px 20px;display:flex;align-items:center;gap:12px;font-size:18px;font-weight:500;color:white}.nav-section-header.admin-header{font-size:18px;font-weight:500}.nav-section-items{padding-left:56px}.nav-item{display:block;padding:4px 20px;font-size:16px;color:#CCCCCC;text-decoration:none;cursor:pointer;transition:color 0.2s ease}.nav-item:visited{color:#CCCCCC}.nav-item:hover{color:#FFFFFF;text-decoration:none}.nav-item.active{color:#FFFFFF;font-weight:bold}.nav-item.logout-btn{background:none;border:none;font-family:inherit;font-size:inherit;cursor:pointer}main{background-color:#F8FAFC;display:flex;flex-direction:column}.main-header{background-color:#282828;padding:16px 32px;display:flex;justify-content:flex-end;align-items:center;margin-bottom:10px}.header-actions{display:flex;align-items:center;gap:24px;position:relative}.navbar__circle{width:40px;height:40px;background-color:#17B7B7;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer}.navbar__initials{font-size:20px;font-weight:500;color:#282828}.navbar__menu{display:none;position:absolute;top:100%;right:0;margin-top:8px;background:white;border:1px solid #D7D7D7;border-radius:8px;box-shadow:0 4px 6px rgba(0,0,0,0.1);min-width:150px;z-index:1000;padding:1rem;list-style:none;margin:0}.navbar__menu--hidden{display:none}.navbar__menu.active{display:block}.navbar__menu li{list-style:none;margin:0}.navbar__menu a,.navbar__menu button{display:block;padding:0.5rem;color:#555555;text-decoration:none;width:100%;text-align:left;border:none;background:none;cursor:pointer;font-family:inherit}.content-container{padding:8px 32px;flex:1}.public-header{background-color:#282828;padding:16px 32px;display:flex;justify-content:space-between;align-items:center}.public-header .public-nav{display:flex;gap:16px;align-items:center}.mobile-menu{display:none !important;position:absolute;top:100%;left:0;right:0;flex-direction:column;background:white;padding:1rem;border-bottom:1px solid #D7D7D7;box-shadow:0 2px 5px rgba(0,0,0,0.1);z-index:1000}@media (max-width: 768px){.mobile-menu{display:none}}.mobile-menu.active{display:flex}.mobile-menu li{list-style:none;margin:0}.mobile-menu a{display:block;padding:1rem;color:#555555;text-decoration:none}.mobile-menu a:hover{color:#17B7B7}.sidebar-menu{list-style:none;padding:0;margin:0}.sidebar-menu li{margin-bottom:2px}.sidebar-menu a{display:block;padding:1rem 1rem;color:white;text-decoration:none;border-left:4px solid transparent}.sidebar-menu a:visited{color:white}.sidebar-menu a.active{background-color:#17B7B7;color:white}@media (max-width: 768px){.sidebar.legacy{position:fixed;top:60px;left:-450px;height:calc(100vh - 60px);z-index:1000;transition:left 0.3s ease;box-shadow:none}.sidebar.legacy-mobile-visible{left:0;box-shadow:2px 0 5px rgba(0,0,0,0.2)}.main-content-wrapper{margin-left:0;width:100%}}.sub-menu{list-style:none;padding:0;margin:0 0 1.25rem 0}.sub-menu li{margin-bottom:2px}.sub-menu a,.sub-menu .text-link{display:block;padding:0.75rem 1rem;color:white;text-decoration:none;border-left:4px solid transparent}.sub-menu a:visited,.sub-menu .text-link:visited{text-decoration:none;color:white}.sub-menu a.active,.sub-menu .text-link.active{text-decoration:none;background-color:#282828;color:white;font-weight:600}.logout-link{font-size:inherit;color:inherit;text-decoration:none;background:none;border:none;cursor:pointer;text-decoration:none;display:block;padding:0.75rem 1rem;border-left:4px solid transparent}.main-content-wrapper{flex-grow:1}@media (max-width: 768px){.app-layout{flex-direction:column}.sidebar{display:flex;flex-direction:column;justify-content:space-between;margin-right:0;margin-bottom:1rem;border-right:none;padding:0.5rem 0}.sidebar-menu{display:flex;flex-wrap:wrap}.sidebar-menu li{margin-bottom:0;width:100%}.sidebar-menu a{padding:0.5rem 0.75rem}}main.legacy{display:flex;justify-content:center}a{color:#2271B1}a:visited{color:#2271B1}h1,h2,h3{width:100%;margin-bottom:1rem;color:#282828;text-align:left}.logo{width:200px;height:auto}.tagline{margin-top:20px;font-size:1.5rem;max-width:80vw;font-weight:600}.subtagline{margin-top:10px;font-size:1.2rem;max-width:80vw}.tag{display:inline-block;padding:0.25rem 0.75rem;font-size:11px;font-weight:500;text-align:center;white-space:nowrap;gap:10px;margin:5px 5px}.tag.info{background-color:#D7D7D7;color:white}.tag.inactive{background-color:#D7D7D7;color:#a7a7a7}.tag.attention{background-color:#FF6F61;color:white}.tag.false{background-color:#FF6F61;color:white}.tag.true{background-color:#209903;color:white}.tag.ready{background-color:#209903;color:white}.tag.mynetwork{background-color:#6B492A;color:white}.tag.mycontact{background-color:#2271B1;color:white}.tag.full_details{background-color:#209903;color:#D7D7D7}.tag.pending{background-color:#282828;color:white}.tag.denied{background-color:#FF6F61;color:white}@media (min-width: 768px){.tagline{max-width:50vw}}.button_to,button{display:inline-block;font-family:"Inter", sans-serif}.text-link{font-size:16px;color:#2271B1;text-decoration:none;background:none;border:none;padding:0;cursor:pointer}.text-link:hover{text-decoration:underline}.container{width:100%;max-width:1024px;padding-top:1rem;display:flex;flex-direction:column}.project-title-box{background-color:white;border:1px solid #E5E5E5;border-radius:8px;overflow:hidden;margin-bottom:24px}.project-title-box .title-header-bar{height:4px;background-color:#17B7B7}.project-title-box .title-content{padding:24px 32px}.project-title-box .title-content h1{font-size:32px;font-weight:600;margin:0 0 8px 0;color:#000000}.project-title-box .title-content .location-text{font-size:16px;margin:0;display:flex;align-items:center;gap:8px}.project-title-box .title-content .location-text .icon-16{width:16px;height:16px}.project-content-grid{display:flex;gap:32px;margin-bottom:24px;align-items:flex-start}.project-content-left-box{background-color:white;border:1px solid #E5E5E5;border-radius:8px;padding:32px;margin-bottom:24px;flex:1}.project-content-left-box .section-title{font-weight:600;margin-bottom:16px;text-transform:uppercase;color:#282828}.project-content-left-box .description-text{line-height:1.15;color:#555555;margin-bottom:20px;word-wrap:break-word;overflow-wrap:break-word;word-break:break-word}.project-content-left-box .description-text p{margin-bottom:5px}.project-content-left-box .detail-label{color:#282828;text-transform:uppercase;font-weight:600;margin-bottom:5px}.project-content-left-box .project-details-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.project-content-left-box .project-details-grid .detail-item .detail-value{color:#555555}.project-content-right-box{background-color:white;border:1px solid #E5E5E5;border-radius:8px;padding:32px;margin-bottom:24px;width:400px}.project-content-right-box .price-display{font-size:40px;font-weight:600;color:#209903;margin-bottom:24px}.project-content-right-box .price-display .price-unit{font-size:16px;font-weight:500;color:#555555}.project-content-right-box .info-rows .info-row{display:flex;justify-content:space-between;align-items:center;color:#555555;font-size:16px;font-weight:600;letter-spacing:0.1px;padding-bottom:10px;margin-bottom:16px;border-bottom:1px solid #E5E5E5}.project-content-right-box .action-button{width:100%;padding:14px;background-color:#2271B1;color:white;border:none;border-radius:8px;font-size:16px;font-weight:500;cursor:pointer;text-decoration:none;text-align:center;display:inline-block}.project-content-right-box .action-button:hover{text-decoration:none}.project-content-right-box .action-button:visited{color:white}.project-attachments-box{background-color:white;border:1px solid #E5E5E5;border-radius:8px;padding:32px}.project-attachments-box h2{font-size:24px;font-weight:600;margin-bottom:24px;color:#000000}@media (min-width: 769px){.project-attachments-box .flex.g1.mb-4{flex-wrap:nowrap}.project-attachments-box .flex.g1.mb-4 .files-box{flex:1;min-width:0}.project-attachments-box .flex.g1.mb-4 .side-right{flex:0 0 200px}}@media (max-width: 768px){.project-attachments-box .flex.g1.mb-4{flex-direction:column}.project-attachments-box .flex.g1.mb-4 .files-box{order:2;width:100%}.project-attachments-box .flex.g1.mb-4 .side-right{order:1;width:100%}}.file-grid{display:grid;grid-template-columns:repeat(3, 1fr);gap:24px;margin-top:1rem}.file-grid .file-item{width:200px;height:200px;text-align:center}.file-grid .file-item .file-thumbnail-container{width:200px;height:140px;background-color:#e8e8e8;border-radius:8px;margin-bottom:8px;display:flex;align-items:center;justify-content:center;overflow:hidden}.file-grid .file-item .file-name{font-weight:500;font-size:0.9rem;margin-bottom:2px;color:#555555}.file-grid .file-item .file-meta{font-size:12px;color:#666;margin-bottom:8px}.file-grid .file-item .download-link{padding:6px 16px;background-color:transparent;color:#2271B1;border:1px solid #2271B1;border-radius:4px;font-size:0.9rem;cursor:pointer;display:inline-flex;align-items:center;gap:4px;text-decoration:none}.file-grid .file-item .download-link:hover{background-color:rgba(34,113,177,0.1);text-decoration:none}.file-grid .file-item .file-thumbnail{width:100%;height:100%;object-fit:cover;object-position:center;border-radius:8px}@media (max-width: 768px){.app-layout{flex-direction:column}.sidebar{width:80%;position:fixed;top:0;left:-100%;height:100vh;z-index:1000;transition:left 0.3s ease}.sidebar.mobile-visible{left:0}main{width:100%;margin-left:0}.main-header{padding:12px 16px}.main-header .header-actions{gap:16px}.content-container{padding:16px}.nav-section-header{font-size:16px;padding:10px 16px}.nav-section-items{padding-left:40px}.nav-item{padding:6px 0}.project-content-grid{flex-direction:column}.project-content-grid .project-content-right-box{width:100%}.project-content-box .content-grid{flex-direction:column;gap:24px}.project-content-box .content-grid .content-right{width:100%}.project-details-grid{grid-template-columns:1fr !important;gap:16px !important}.file-grid{grid-template-columns:1fr !important}.project-title-box .title-content{padding:16px 20px}.project-title-box .title-content h1{font-size:24px}.project-content-box{padding:20px}.project-attachments-box{padding:20px}.button,.delete-file-button,.cleanup-stuck-btn,.delete-button,.button-outline,input[type="submit"]{width:100%;padding:12px 24px;font-size:16px}form .form-card{padding:16px;margin:8px 0}.user-avatar{position:relative;font-size:0}.user-avatar::before{content:'';position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);width:20px;height:2px;background:white;box-shadow:0 6px 0 white, 0 -6px 0 white}.mobile-menu.active{display:flex;height:100vh;z-index:1001}}@media (max-width: 768px){.container{padding:5px;margin:5px auto}}.main-box{width:100%;display:flex;flex:1;text-align:left;flex-direction:column;flex-wrap:nowrap;justify-content:space-between;align-items:center;margin-top:10px}.flex{display:flex}.flex-center{justify-content:center;align-items:center}.flex-between{justify-content:space-between}.flex-column{flex-direction:column}.tab-menu{display:flex;border-bottom:1px solid #ccc;gap:2px}.tab-menu a{padding:10px 20px;text-decoration:none;color:#5e5d5d;border:1px solid #ccc;border-bottom:none;background-color:#F8FAFC;align-items:center}.tab-menu a.active{background-color:#CCCCCC;font-weight:bold;color:#17B7B7}.tab-menu a:hover{background-color:#ddd}@media (max-width: 768px){.tab-menu a{padding:10px 17px}}.navbar{background:#3D3F40;color:white;padding:0.5rem 0.5rem;border-bottom:1px solid #3D3F40;position:relative}.navbar__container{display:flex;justify-content:space-between;align-items:center}.navbar__brand{font-size:1.5rem;font-weight:bold;text-decoration:none;color:#17B7B7}.navbar__image{height:43px;object-fit:contain}.navbar__menu{display:flex;color:#282828;font-weight:500;gap:1rem;list-style:none;margin:0;padding:0;align-items:center;margin-left:auto}@media (max-width: 768px){.navbar__menu{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;background:white;padding:1rem;border-bottom:1px solid #D7D7D7;box-shadow:0 2px 5px rgba(0,0,0,0.1)}.navbar__menu.active{display:flex;height:100vh;z-index:1000}}.navbar__menu a{text-decoration:none;color:#555555;padding:0.5rem}.navbar__menu a:hover{color:#17B7B7}@media (max-width: 768px){.navbar__menu a{display:block;padding:1rem}}.navbar__circle{width:40px;height:40px;border-radius:50%;background-color:white;color:#17B7B7;display:flex;align-items:center;justify-content:center;cursor:pointer;margin:0 0.5rem}@media (max-width: 768px){.navbar__circle{background-color:#3D3F40 !important}.navbar__circle .navbar__initials{display:none}.navbar__circle::before{content:'';display:block;width:24px;height:2px;background:white;position:relative;box-shadow:0 8px 0 white, 0 -8px 0 white}}.navbar__initials{color:white;font-size:1rem;font-weight:bold}@media (max-width: 768px){.navbar__initials{display:none}}.navbar__menu--hidden{display:none}#navbarToggle{cursor:pointer}#navbarMenu.navbar__menu--hidden{display:none}#navbarMenu{display:flex;flex-direction:column;gap:1rem;min-width:300px;list-style:none;margin:0;padding:30px;align-items:center;position:absolute;top:100%;right:0;background:white;border:1px solid #D7D7D7;box-shadow:0 2px 5px rgba(0,0,0,0.1);z-index:10}.navbar__circle{width:40px;height:40px;border-radius:50%;color:white;background-color:#17B7B7;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color 0.3s ease, transform 0.3s ease}@media (min-width: 768px){.navbar__circle.active{background-color:#282828;transform:rotate(360deg)}}.navbar__initials{color:#3D3F40;font-size:1.25em;font-weight:bold;transition:color 0.3s ease}.navbar__circle.active .navbar__initials{color:#17B7B7}.mobile-only{display:none}@media (max-width: 768px){.mobile-only{display:block}}.side-right{flex:0 1 19%;order:2}.side-right .side-box{border:1px solid #D7D7D7;padding:1rem;margin-bottom:1rem;border-radius:0.375rem;box-shadow:0 1px 2px rgba(0,0,0,0.05);line-height:1.4em}.main-content{flex:0 1 70%;order:1}@media (max-width: 768px){.side-right{order:1;flex:1 1 100%}.main-content{order:2;flex:1 1 100%}}.large-form{width:100%;-webkit-text-size-adjust:100%}.large-form input[type="text"],.large-form input[type="email"],.large-form input[type="password"],.large-form textarea,.large-form select{font-size:16px;-webkit-appearance:none;appearance:none;border-radius:0.375rem;-webkit-box-shadow:0 1px 2px rgba(0,0,0,0.05);-webkit-overflow-scrolling:touch;-webkit-text-size-adjust:100%}.large-form input[type="text"]:focus,.large-form input[type="email"]:focus,.large-form input[type="password"]:focus,.large-form textarea:focus,.large-form select:focus{outline:none;-webkit-box-shadow:0 0 0 2px rgba(23,183,183,0.2);box-shadow:0 0 0 2px rgba(23,183,183,0.2)}.large-form select{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 0.5rem center;background-size:1em;padding-right:2.5rem;text-indent:1px;text-overflow:''}.large-form input[type="file"]{font-size:16px}.large-form input[type="file"]::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;font-size:16px;padding:0.5em 1em;border:1px solid #D7D7D7;border-radius:0.375rem;background:white}.large-form input[type="checkbox"]{-webkit-appearance:none;appearance:none;width:1.2em;height:1.2em;border:1px solid #D7D7D7;border-radius:0.25em;margin-right:0.5em;position:relative}.large-form input[type="checkbox"]:checked{background-color:#17B7B7;border-color:#17B7B7}.large-form input[type="checkbox"]:checked:after{content:'';position:absolute;left:4px;top:1px;width:6px;height:11px;border:solid white;border-width:0 2px 2px 0;transform:rotate(45deg)}.large-form textarea{-webkit-overflow-scrolling:touch;overscroll-behavior:none}@media (max-width: 768px){.large-form .row{flex-direction:column;width:100%}.large-form .row .flex-inline{width:100%;margin-bottom:0.5rem}.large-form input[type="text"],.large-form input[type="email"],.large-form input[type="password"],.large-form textarea,.large-form select{max-width:100%;width:100%;box-sizing:border-box}.large-form form{max-width:100%;overflow-x:hidden}}.modal{-webkit-overflow-scrolling:touch;overscroll-behavior:none}form .form-card{background-color:white;border:1px solid #e0e0e0;border-radius:8px;padding:24px;margin-top:1rem;margin-bottom:1rem;box-shadow:0 1px 3px rgba(0,0,0,0.1)}form label{display:inline-block;color:#555555;font-weight:600;margin-top:0.25rem;margin-bottom:0.5rem}form input[type="checkbox"]{margin-right:15px}form input[type="text"],form input[type="email"],form input[type="password"],form textarea{height:44px;width:100%;padding:12px 16px;border:1px solid #e0e0e0;font-size:16px;font-family:"Inter", sans-serif;border-radius:8px;transition:border-color 0.2s ease, box-shadow 0.2s ease;background-color:white}form input[type="text"]:focus,form input[type="email"]:focus,form input[type="password"]:focus,form textarea:focus{outline:none;border-color:#2271B1;box-shadow:0 0 0 3px rgba(34,113,177,0.1)}form input.title-input[type="text"],form input.title-input[type="email"],form input.title-input[type="password"],form textarea.title-input{font-size:24px;font-weight:600;height:60px}form textarea{min-height:120px;height:auto;resize:vertical}form select{height:44px;padding:12px 16px;border:1px solid #e0e0e0;border-radius:8px;background-color:white;font-size:16px;color:#555555;font-family:"Inter", sans-serif;transition:border-color 0.2s ease, box-shadow 0.2s ease}form select:focus{border-color:#2271B1;outline:none;box-shadow:0 0 0 3px rgba(34,113,177,0.1)}.profile-edit{max-width:500px;-webkit-overflow-scrolling:touch}.profile-edit .form-row{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem;margin-bottom:1rem;width:100%}.profile-edit .form-field-group{display:flex;flex-direction:column;-webkit-text-size-adjust:100%}@media (min-width: 768px){.profile-edit .form-field-group{flex-basis:calc(50% - (1rem / 2));min-width:0;width:calc(50% - (1rem / 2))}}@media (max-width: 768px){.profile-edit .form-field-group{flex-basis:80%;width:80%;padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}}.profile-edit .form-field-group input[type="text"],.profile-edit .form-field-group input[type="email"],.profile-edit .form-field-group input[type="password"]{width:100%;font-size:16px}.profile-edit .form-field-full-width{display:flex;flex-direction:column;justify-content:center;width:100%;margin-bottom:1rem}.profile-edit .form-field-full-width textarea{width:100%;font-size:16px}@media (max-width: 768px){.profile-edit .form-field-full-width{flex-basis:80%;width:80%;padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}}.profile-edit label{width:150px}.checkbox{display:flex;align-items:center;justify-content:flex-start;gap:5px;line-height:1.4em}.checkbox input[type="checkbox"]{margin-right:10px}.field{max-width:500px;margin:1rem auto}.field label{display:block;margin-bottom:0.5rem;font-weight:500}.field input[type="text"],.field input[type="email"],.field input[type="password"],.field textarea{width:100%;padding:0.5rem;border:1px solid #D7D7D7;font-size:0.9rem;border-radius:0.375rem}.field input[type="text"]:focus,.field input[type="email"]:focus,.field input[type="password"]:focus,.field textarea:focus{outline:none;border-color:#17B7B7}.form-input,.form-select{height:44px;padding:8px 16px;border:1px solid #e0e0e0;font-size:16px;line-height:1.25;background-color:white;border-radius:8px;transition:border-color 0.2s ease, box-shadow 0.2s ease}.form-input:focus,.form-select:focus{outline:none;border-color:#2271B1;box-shadow:0 0 0 3px rgba(34,113,177,0.1)}.form-select{padding-right:40px;background-repeat:no-repeat;background-position:right 12px center;background-size:16px;cursor:pointer}input:invalid,select:invalid,textarea:invalid{border:1px solid #FF4D4F !important;background-color:#fff8f8}input:focus:invalid{box-shadow:0 0 5px #FF4D4F}.file-error{color:#FF6F61}.file-info{display:flex;flex-direction:column;width:100%;min-width:0}.file-info .file-name{max-width:700px;display:inline-block;white-space:normal;overflow-wrap:break-word}.file-info .file-name a{display:inline-block;width:100%;white-space:normal;overflow-wrap:break-word;word-break:break-word}.file-info .file-meta{color:#aaa}.file-actions{display:flex;gap:10px;align-items:center}.downloadButton,.view-button{font-size:16px;color:#2271B1;text-decoration:underline;background:none;border:none;padding:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.download-icon,.view-icon{pointer-events:none}.file-box{position:relative}.download-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(40,40,40,0.95);color:white;display:flex;flex-direction:column;justify-content:center;z-index:9999;align-items:center;gap:10px;font-size:16px;text-align:center;z-index:1000;padding:10px;box-sizing:border-box}.loading-dots::after{content:'.';animation:dots 1s steps(5, end) infinite}@keyframes dots{0%,20%{color:rgba(255,255,255,0);text-shadow:0.25em 0 0 rgba(255,255,255,0),0.5em 0 0 rgba(255,255,255,0)}40%{color:white;text-shadow:0.25em 0 0 rgba(255,255,255,0),0.5em 0 0 rgba(255,255,255,0)}60%{text-shadow:0.25em 0 0 white,0.5em 0 0 rgba(255,255,255,0)}80%,100%{text-shadow:.25em 0 0 white, .5em 0 0 white}}.filter-form{width:100%}.filter-controls{display:flex;flex-direction:column;gap:1rem}.filter-row{display:flex;gap:1rem;align-items:center;flex-wrap:nowrap}.filter-row:first-child{flex:1;justify-content:flex-start}.filter-row:last-child{justify-content:space-between}.filter-group{display:flex;gap:0.5rem;align-items:center}.filter-group select{width:172px}.location-group .form-input{width:140px}.toggle-group{display:flex;gap:2px;padding:2px;border-radius:5px}.toggle-input{display:none}.toggle-input:checked+.toggle-label{color:#3D3F40;opacity:0.5;background-color:#F5F5F5;border-color:#F5F5F5}.toggle-label{height:44px;padding:12px 16px;border:1px solid #e0e0e0;margin:0;font-size:16px;border-radius:8px;background-color:white;cursor:pointer}.toggle-label:hover{background-color:rgba(255,255,255,0.5)}.filter-actions{display:flex;gap:1rem;align-items:center}@media (max-width: 768px){.filter-row{flex-direction:column;width:100%;flex-wrap:wrap}.filter-row:last-child{flex-direction:column;align-items:stretch}.filter-group{width:100%;flex-wrap:wrap}.filter-group .form-input,.filter-group .form-select{flex:1;width:auto}.location-group .form-input{flex:2}.location-group .form-select--small{flex:1}.toggle-group{width:100%;justify-content:center}.filter-actions{flex-direction:column;width:100%}.filter-actions .button,.filter-actions .delete-file-button,.filter-actions .cleanup-stuck-btn,.filter-actions .delete-button{width:100%}}.button,.delete-file-button,.cleanup-stuck-btn,.delete-button{display:inline-block;padding:14px 24px;border:none;background-color:#2271B1;color:white;font-weight:600;font-size:16px;text-decoration:none;border-radius:8px;cursor:pointer;transition:background-color 0.2s ease;text-align:center}.buttona:visited{color:white}.button:visited,.delete-file-button:visited,.cleanup-stuck-btn:visited,.delete-button:visited{color:white}.button:hover,.delete-file-button:hover,.cleanup-stuck-btn:hover,.delete-button:hover{background-color:#1a5686;text-decoration:none}.button-primary{background-color:#17B7B7}.button-primary:hover{background-color:#118a8a}.button-secondary{background-color:#282828}.button-secondary:hover{background-color:#0f0f0f}.button-outline{background-color:transparent;border:1px solid #2271B1;color:#2271B1}.button-outline:hover{background-color:rgba(34,113,177,0.1);color:#2271B1}.button-outline:visited{color:#2271B1}input[type="file"]{display:inline-block}.button-outline{display:inline-block;padding:14px 24px;border:1px solid #2271B1;color:#2271B1;font-weight:500;text-decoration:none;background:transparent;border-radius:8px;cursor:pointer;transition:all 0.2s ease;text-align:center}.button-outline:hover{background-color:rgba(34,113,177,0.1);text-decoration:none;color:#2271B1}.button-outline:visited{color:#2271B1}.button-prominent{display:inline-block;padding:0.6rem;border:none;background-color:#2271B1;color:white;text-decoration:none;border-radius:5px;min-width:70px;font-weight:500;font-family:"Inter", sans-serif;cursor:pointer}.button-prominent:hover{text-decoration:none}.button-prominent:visited{color:white}input[type="submit"]{display:inline-block;padding:12px 24px;border:none;background:#2271B1;color:white;font-family:"Inter", sans-serif;font-size:16px;font-weight:500;text-decoration:none;border-radius:8px;cursor:pointer;transition:background-color 0.2s ease}input[type="submit"]:visited{color:white}input[type="submit"]:hover{text-decoration:none}.actions{display:flex;justify-content:flex-end;align-items:center;width:100%;margin-top:1rem;gap:10px}.explanation{font-size:0.9em;margin-top:5px}.explanation.info{color:#666}.explanation.alert{color:#FF6F61}#error_explanation{background-color:white;border:1px solid #ffccc7;border-radius:5px;color:#FF6F61;margin:20px 0;padding:10px;text-align:left}#error_explanation ul{list-style:none}.cards-container{display:flex;flex-wrap:wrap;flex-direction:row;gap:1rem}.card{width:380px;min-height:450px;background:white;border:1px solid #D7D7D7;border-radius:5px;padding:1rem;display:flex;flex-direction:column;justify-content:space-between;margin-bottom:1rem}.card .card-upper-actions{display:flex;justify-content:flex-end;gap:10px}.card .card-profile{display:flex;align-items:center;margin:0.5rem 0}.card .card-profile .info{display:flex;flex-direction:column;justify-content:center;width:calc(100% - 80px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-left:5px}.card .card-profile .info .name{font-size:18px;font-weight:bold;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-bottom:8px}.card .card-profile .info .data{color:#666;margin-bottom:4px}.card .card-text{margin:1rem 0;margin-left:10px}.card .card-text p{margin:0}.card .card-message{flex:1;margin:1rem 0}.card .card-message p{margin:0}.card .card-lower-actions{display:flex;justify-content:flex-end;gap:10px}.circle{width:45px;height:45px;border-radius:50%;background-color:#D7D7D7;color:white;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:bold;margin-right:20px}.profile-tag{width:260px;height:80px;display:flex;align-items:center;border:1px solid #ccc;border-radius:10px;padding:10px;margin:5px;box-sizing:border-box}.profile-tag .circle{width:60px;height:60px;border-radius:50%;background-color:#2271B1;color:white;display:flex;align-items:center;justify-content:center;font-size:30px;font-weight:bold;margin-right:20px}.profile-tag .info{display:flex;flex-direction:column;justify-content:center;width:calc(100% - 80px);overflow:hidden;text-overflow:ellipsis;white-space:wrap}.profile-tag .info .name{font-size:18px;font-weight:bold;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-tag .info .location{color:#666}.list{display:flex;flex:100%;flex-direction:column;justify-content:baseline;align-items:center;position:relative;box-sizing:border-box;margin:0.25em}.list-box{display:flex;flex-direction:column;flex-wrap:wrap;justify-content:space-between;width:100%;min-width:150px;padding:20px;box-shadow:2px 2px 5px rgba(0,0,0,0.1);border-radius:5px;margin-bottom:15px;border:1px solid #ddd;background-color:#fff}.list-item{width:100%;display:flex;flex:1;text-align:left;flex-direction:row;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px}.show-box{max-width:1024px;margin:10px auto;padding:5px;display:flex;flex-direction:column}.file-list{display:flex;flex-direction:column;list-style:none;padding:10px;gap:10px;margin:0.5rem 0}.file-list-item{display:flex;justify-content:space-between;align-items:flex-start;padding:10px;gap:5px;white-space:normal}.file-list-item:hover{background-color:#D7D7D7}.file-link{color:#2271B1;text-decoration:none}.file-link:hover{text-decoration:underline}.delete-button{background-color:#FF6F61;color:white;padding:5px;font-weight:500}.delete-button:hover{opacity:0.7}@media (max-width: 768px){.file-list-item{padding:10px 5px}.file-info{display:flex;width:100%;min-width:0}.file-info .file-name{max-width:300px;display:inline-block;white-space:normal;overflow-wrap:break-word}.file-info .file-name a{display:inline-block;width:100%;white-space:normal;overflow-wrap:break-word;word-break:break-word}}.modal{display:none;position:fixed;z-index:1;left:0;top:0;width:100%;height:100%;overflow:auto;background-color:black;background-color:rgba(0,0,0,0.4)}.close-button{color:#aaa;float:right;font-size:28px;font-weight:bold}.close-button:hover,.close-button:focus{color:black;text-decoration:none;cursor:pointer}.icon-16{width:16px;height:16px}.icon-20-inline{display:inline;width:20px;height:20px}.icon-20{width:20px;height:20px}.icon-24{width:24px;height:24px}.notification{position:relative;display:flex;align-items:center;justify-content:center;width:36px;margin:0 0.5rem}.notification a{color:white}@media (max-width: 768px){.notification{display:flex !important}}.count-badge{min-width:20px;height:20px;border-radius:50%;font-size:11px;display:inline-flex;align-items:center;justify-content:center;padding:0;text-align:center;line-height:1.75}.count-badge.navbar{position:absolute;top:2px;right:-5px;display:none;background-color:#FF4D4F;color:white}.count-badge.info{background-color:#FF4D4F;color:white;display:inline}.count-badge.inline{background-color:#FF4D4F;color:white}.mini-badge-box{position:relative;display:inline-block}.mini-badge{position:absolute;top:0;right:-8px;width:8px;height:8px;border-radius:50%;background-color:#FF4D4F;display:block}.translations{display:flex;align-items:center;justify-content:center;width:100%}.translations .language-selector{display:flex;flex-direction:row;align-items:center;padding:15px}.translations.mobile{display:none}@media (max-width: 768px){.translations.mobile{display:flex}}.mt-1{margin-top:1rem}.mb-1{margin-bottom:1rem}.mb-2{margin-bottom:2rem}.mb-4{margin-bottom:4rem}.mr-2{margin-right:0.25rem}.p-1{padding:1rem}.w-1{width:100%}.g1{gap:1rem}.g2{gap:2rem}.g4{gap:4rem}.text-r{text-align:right}.text-l{text-align:left}.text-c{text-align:center}.center-v{display:flex;align-items:center}.align-center{align-items:center}.justify-center{justify-content:center}.bg-light{background:#D7D7D7}.bg-dark{background:#282828}.text-green{color:#17B7B7}.text-red{color:#FF6F61}.bold{font-weight:600}.red{color:#FF6F61}.flex{display:flex;flex-wrap:wrap}.flex-inline{display:inline-flex}.row{display:flex;flex-direction:row}.col{display:flex;flex-direction:column}.center,.items-center{align-items:center}.start{justify-content:flex-start}.end{justify-content:flex-end}.space{justify-content:space-between}.border{border:1px solid #D7D7D7;border-radius:5px}.requests-container{width:100%;padding:0}.request-list{display:flex;flex-direction:column;gap:1.5rem}.request-card{border:1px solid #e5e7eb;border-radius:0.5rem;padding:1.5rem;background-color:white}.request-content{display:flex;gap:1.5rem}.request-avatar{width:3rem;height:3rem;border-radius:50%;background-color:#d7d7d7;color:white;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1.25rem;flex-shrink:0}.request-avatar.project{background-color:#4D3C31}.request-info{flex-grow:1}.requester-name{font-weight:500;font-size:1.125rem;color:#2271B1;text-decoration:none;line-height:1.5em}.requester-namea{color:#2271B1}.requester-name:visited{color:#2271B1}.requester-name:hover{text-decoration:underline}.requester-location{font-size:0.9rem;margin-top:0.25rem}.request-message{margin-top:1rem;line-height:1.5}.message-expand{color:#2271B1;text-decoration:none;font-size:0.9rem;margin-left:0.5rem}.message-expand:hover{text-decoration:underline}.action-button{font-size:0.9rem;color:#2271B1;background:none;border:none;padding:0;cursor:pointer;text-align:right}.action-button:hover{text-decoration:underline}.action-button--reject{color:#dc2626}.requested-project{margin-top:1rem;padding:1rem;background-color:#EFE7E4;border-radius:0.375rem}.project-label{font-weight:600;color:#374151;margin-right:0.5rem}.request-actions{display:flex;gap:1rem;margin-top:1.5rem;padding-top:1rem;border-top:1px solid #e5e7eb}.action-button--primary{background-color:#2271B1;color:white;border:1px solid #2271B1}.action-button--outline{background-color:white;color:#2271B1;border:1px solid #2271B1}.action-button--reject{background-color:#FF4D4F;color:white;border:1px solid #FF4D4F}.projects-filter{width:100%;margin:1rem 0}.filter-controls{display:flex;align-items:center;gap:1.25rem}.filter-select{padding:0.5rem;border:1px solid #e2e8f0;border-radius:0.375rem;width:200px}.filter-button{padding:0.5rem 1rem;background-color:#2271B1;color:white;border-radius:0.375rem;border:none;cursor:pointer}.projects-list{display:flex;flex-direction:column;gap:0.75rem;margin-top:1.5rem}.project-item{width:100%;display:flex;align-items:baseline;padding:0.75rem;background-color:white;border:1px solid #e5e7eb;border-radius:0.375rem;box-shadow:0 1px 2px rgba(0,0,0,0.05)}.project-date{width:6rem;flex-shrink:0;margin-left:0.5rem;text-align:right}.project-main{flex-grow:1;margin-right:0.5rem;min-width:0;max-width:55%}.project-title{font-size:1rem;line-height:1.5;font-weight:500;color:#2271B1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:0.25rem}.project-title a{text-decoration:none}.project-title a:hover{text-decoration:underline}.project-meta{display:flex;align-items:center;gap:0.75rem}.project-location,.project-author,.project-sharing,.project-access{display:flex;align-items:center;line-height:1;justify-content:center}.icon-sm{width:0.75rem;height:0.75rem;margin-right:0.25rem;flex-shrink:0}.author-avatar{width:1rem;height:1rem;border-radius:50%;display:flex;align-items:center;justify-content:center;color:white;margin-right:0.25rem}.project-category{display:flex;flex-direction:column;width:10rem;flex-shrink:0;margin-right:0.5rem;align-items:flex-start;gap:0.25rem}.project-actions{width:11rem;flex-shrink:0;display:flex;flex-direction:column;align-items:flex-start}.action-link{color:#2271B1;text-decoration:none;text-shadow:1px 1px 1px rgba(0,0,0,0.004)}.action-link:hover{text-decoration:underline}.action-button{color:#2271B1;background:none;border:none;padding:0;cursor:pointer;text-align:right}.action-button:hover{text-decoration:underline}.action-button--reject{color:#dc2626}.no-projects{padding:1.5rem;text-align:center}@media (max-width: 768px){.project-item{flex-direction:column}.project-main,.project-category,.project-actions,.project-date{width:100%;max-width:100%;margin:0.15rem 0;gap:0.30rem}.project-category{flex-direction:row}}.project-card{border:1px solid #e2e8f0;border-radius:0.5rem;padding:1.5rem;margin-bottom:1rem}.project-card .project-actions{display:flex;align-items:center;justify-content:flex-start;padding-top:1rem;border-top:1px solid #e2e8f0;gap:5px}.project-card .project-location{margin-top:0.5rem}.project-visibility{display:flex;justify-content:flex-end;margin-bottom:0.25rem}.visibility-badge{align-items:center;background-color:#f3f4f6;color:#4b5563;padding:0.25rem 0.75rem;border-radius:9999px;font-size:0.9rem}.project-content{margin:1rem 0}.project-timestamp{font-size:0.9rem;margin:1rem 0}.character-count{margin:10px}.access-badge{display:inline-block;padding:0.25rem 0.75rem;border-radius:9999px;font-size:0.9rem}.access-badge--pending{background-color:#fef3c7;color:#92400e}.access-badge--full_details{background-color:#d1fae5;color:#209903}.access-badge--rejected{background-color:#fee2e2;color:#FF4D4F}.action-link{color:#2271B1;text-decoration:none;font-weight:600;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}.action-link:hover{text-decoration:underline}.access-request-button{background:none;border:none;color:#2271B1;font-weight:600;cursor:pointer;padding:0}.access-request-button:hover{text-decoration:underline}.my-projects .side-right{flex:1 1 45%;order:1}.my-projects .main-content{flex:1 1 55%;order:2}.my-projects .project-card{border:1px solid #e2e8f0;border-radius:0.5rem;padding:1rem;margin:0.5rem 0}.my-projects .sidelink{cursor:pointer}.my-projects .active{border:1px solid #17B7B7}auth-list{padding-top:0rem}.auth-users-grid{display:grid;grid-template-columns:repeat(auto-fill, minmax(200px, 1fr));gap:1rem;margin-top:0.5rem}.auth-user-card{display:flex;justify-content:space-between;align-items:center;padding:0.5rem;background-color:#f9fafb;border-radius:10px;border:1px solid #e5e7eb}.auth-user-info{display:flex;width:100%;justify-content:space-between;align-items:center;gap:0.75rem}.auth-user-name{font-weight:500;color:#374151}.delete-auth-button{background:none;border:none;padding:0.25rem;cursor:pointer;transition:all 0.2s}@media (max-width: 640px){.auth-users-grid{grid-template-columns:1fr}}.dynamic-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.5)}.modal-content{background:white;max-width:800px;border:1px solid #888;margin:5% auto;padding:20px;width:90%;position:relative}.modal-content .card{width:100%;min-height:450px;background:white;border:none;display:flex;flex-direction:column;justify-content:space-between}.hidden{display:none}.close-button{position:absolute;top:10px;right:10px;color:#222222;font-size:28px;font-weight:bold;cursor:pointer}.close-button:hover,.close-button:focus{color:black;text-decoration:none}.hidden{display:none}.pagy.nav{display:flex;align-items:center;justify-content:center;gap:4px;width:100%;max-width:1024px;margin:20px auto;padding:0 1rem}.pagy.nav a{min-width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:1px solid #e2e8f0;border-radius:4px;color:inherit;text-decoration:none}.pagy.nav a[aria-disabled="true"]{opacity:0.5;cursor:not-allowed}.pagy.nav a.current{background-color:#F5F5F5;border-color:#F5F5F5}.language-dropdown{position:relative;margin:0 0.5rem;cursor:pointer;display:flex;align-items:center}.language-dropdown__current{padding:0.5rem;font-weight:500;color:white;border:1px solid transparent;border-radius:4px}.language-dropdown__current:hover{border-color:#D7D7D7}.language-dropdown__menu{position:absolute;top:calc(100% + 5px);right:0;background-color:white;border:1px solid #D7D7D7;border-radius:4px;box-shadow:0 4px 12px rgba(0,0,0,0.15);z-index:1050;min-width:max-content;padding:0.5rem 0}.language-dropdown__menu.hidden{display:none}.language-dropdown__item{display:block;padding:0.5rem 1.5rem;color:#555555;text-decoration:none;white-space:nowrap}.language-dropdown__item:visited{color:#555555}.language-dropdown__item:hover{color:#17B7B7;text-decoration:none}.cta-box-profile{display:flex;gap:1rem;font-size:1.25rem;font-weight:500;background-color:#17B7B7;color:white;padding:1rem;border-radius:5px;margin:1rem 0}.secure-lightbox{position:fixed;top:0;left:0;width:100%;height:100%;z-index:9999;display:flex;align-items:center;justify-content:center}.secure-lightbox.hidden{display:none}.lightbox-backdrop{position:absolute;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,0.8);cursor:pointer}.lightbox-content{position:relative;max-width:90vw;max-height:90vh;background:white;border-radius:8px;overflow:hidden;box-shadow:0 20px 25px -5px rgba(0,0,0,0.1)}.lightbox-header{display:flex;justify-content:flex-end;padding:1rem;border-bottom:1px solid #e5e7eb}.lightbox-close{background:none;border:none;font-size:1.5rem;cursor:pointer;padding:0.5rem}.lightbox-close:hover{color:#374151}.lightbox-body{min-height:300px;display:flex;align-items:center;justify-content:center}.lightbox-body img{max-width:100%;max-height:70vh;object-fit:contain}.lightbox-body iframe{width:80vw;height:70vh;border:none}.lightbox-loading{text-align:center;color:#6b7280}.lightbox-loading .loading-spinner{width:40px;height:40px;margin:0 auto 1rem;border:4px solid #f3f3f3;border-top:4px solid #3b82f6;border-radius:50%;animation:spin 1s linear infinite}.lightbox-footer{padding:1rem;border-top:1px solid #e5e7eb;text-align:center}.lightbox-footer button{background-color:#3b82f6;color:white;border:none;padding:0.5rem 1rem;border-radius:6px;cursor:pointer;display:inline-flex;align-items:center;gap:0.5rem}.lightbox-footer button:hover{background-color:#2563eb}.files-box{display:flex;flex-direction:column;gap:1rem}.file-grid{display:flex;flex-direction:row;flex-wrap:wrap;flex:1 0 150px;grid-template-columns:repeat(auto-fill, minmax(150px, 1fr));gap:2rem;margin-top:1rem}.file-thumbnail-container{display:flex;width:200px;height:100px;align-items:center;justify-content:center;background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;overflow:hidden;margin-bottom:8px}.file-thumbnail{max-width:300px;max-height:200px;width:auto;height:auto;object-fit:contain;cursor:pointer;transition:transform 0.2s ease}.file-thumbnail:hover{transform:scale(1.02)}.file-name,.file-meta{font-weight:400;color:#555555;margin-bottom:4px;text-align:left}.file-actions{display:flex;justify-content:center;margin-top:8px}.download-link{display:inline-flex;align-items:center;gap:4px;color:#2271B1;text-decoration:none;font-size:14px;padding:4px 8px;border-radius:4px;transition:background-color 0.2s ease}.download-link:hover{background-color:rgba(34,113,177,0.1);text-decoration:none}.icon-48{width:48px;height:48px}.inline-file-viewer{margin-top:2rem;border:1px solid #dee2e6;border-radius:8px;background-color:#fff;overflow:hidden}.inline-viewer-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;background-color:#f8f9fa;border-bottom:1px solid #dee2e6}.inline-viewer-header h3{margin:0;font-size:16px;font-weight:600;color:#555555}.close-btn{background:none;border:none;cursor:pointer;padding:4px;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:background-color 0.2s ease}.close-btn:hover{background-color:rgba(0,0,0,0.1)}.inline-viewer-content{padding:1rem;text-align:center}.inline-viewer-content img{max-width:100%;height:auto;border-radius:4px}.inline-viewer-content iframe{width:100%;height:600px;border:none;border-radius:4px}.icon-24{width:24px;height:24px}.icon-16{width:16px;height:16px}.file-viewer-container .side-right{display:none}.file-viewer-container.viewer-active .file-grid{display:none}.file-viewer-container.viewer-active #inline-file-viewer{display:block !important;margin-top:0}.file-viewer-container.viewer-active .side-right{display:block !important;min-width:200px}.file-viewer-container.viewer-active #sidebar-thumbnail-list{display:block}#sidebar-thumbnail-list{display:none}.sidebar-thumbnail-wrapper{position:relative;width:100%}.sidebar-download-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background-color:rgba(255,255,255,0.95);display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:100;text-align:center;color:#333}.sidebar-thumbnail-list{display:flex;flex-direction:column;gap:10px;max-height:699px;overflow-y:auto;position:relative}.sidebar-thumbnail-list .file-item{padding:10px;margin-bottom:10px;border:1px solid #dee2e6;border-radius:8px;cursor:default;transition:all 0.2s ease}.sidebar-thumbnail-list .file-item:hover{background-color:#f8f9fa}.sidebar-thumbnail-list .file-item.active{background-color:#e7f3ff;border-color:#2271B1;box-shadow:0 0 0 2px rgba(34,113,177,0.2)}.sidebar-thumbnail-list .file-thumbnail-container{width:160px;height:100px;margin-bottom:5px;cursor:pointer;display:flex;align-items:center;justify-content:center;overflow:hidden;background-color:#e8e8e8;border-radius:8px}.sidebar-thumbnail-list .file-thumbnail{width:100%;height:100%;object-fit:cover;object-position:center;border-radius:8px}.sidebar-thumbnail-list .file-name{font-size:12px;margin-bottom:2px}.sidebar-thumbnail-list .file-meta{font-size:11px;color:#6c757d}.sidebar-thumbnail-list .sidebar-download-link{display:inline-flex;align-items:center;gap:4px;color:#2271B1;text-decoration:none;font-size:12px;padding:4px 8px;border-radius:4px;margin-top:5px;transition:background-color 0.2s ease}.sidebar-thumbnail-list .sidebar-download-link:hover{background-color:rgba(34,113,177,0.1);text-decoration:none}.text-link.red{color:#FF6F61}.checkbox-inline{display:flex;align-items:center;gap:5px}.checkbox-inline label{margin:0}.devise-links{margin-top:20px;line-height:1.4em}@media (max-width: 768px){.form .actions{margin-bottom:20px}}@media screen and (max-width: 768px){.modal-content{width:95%;margin:10% auto}}.file-list-item{display:flex;align-items:center;justify-content:space-between;padding:8px;border-bottom:1px solid #eee}.file-list-item .file-checkbox{flex-shrink:0;margin-right:15px}.file-list-item .file-select-checkbox{width:20px;height:20px;cursor:pointer}.file-list-item .file-info{flex-grow:1;margin-right:15px}.delete-file-button,.cleanup-stuck-btn{background-color:#FF6F61;color:white;padding:5px 10px;font-weight:500;font-size:13px}body.welcome{background-color:#F8FAFC;text-shadow:none;padding:16px}
