body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.projects-overview{background:#f9fafb;color:#1f2937;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;min-height:100vh;padding:20px}.projects-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:40px;padding:0 20px}.projects-header h1{color:#1f2937;font-size:2.5rem;font-weight:700;margin:0}.add-project-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;box-shadow:0 4px 15px #667eea4d;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;padding:15px 30px;transition:all .3s ease}.add-project-btn:hover{box-shadow:0 8px 25px #667eea66;transform:translateY(-2px)}.projects-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin:0 auto;max-width:1200px;padding:0 20px}.project-tile{background:#fffffff2;border:1px solid #fff3;border-radius:20px;box-shadow:0 10px 25px #0000001a;color:#1f2937;overflow:hidden;padding:30px 25px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.project-tile:before{background:linear-gradient(90deg,#667eea,#764ba2);content:"";height:4px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform .3s ease}.project-tile:hover:before{transform:scaleX(1)}.project-tile:hover{background:#fff;box-shadow:0 20px 40px #00000026;transform:translateY(-8px) scale(1.02)}.project-link{color:inherit;display:block;text-decoration:none}.project-tile h3{color:#1f2937;font-size:1.4rem;font-weight:600;margin:0 0 12px}.project-tile p{color:#6b7280;font-size:.95rem;line-height:1.5;margin:0 0 15px}.project-stats{align-items:center;border-top:1px solid #e5e7eb;display:flex;justify-content:space-between;margin-top:15px;padding-top:15px}.project-stats span{color:#667eea;font-size:.9rem;font-weight:500}.delete-project-btn{align-items:center;background:#ef44441a;border:none;border-radius:50%;cursor:pointer;display:flex;height:30px;justify-content:center;opacity:0;position:absolute;right:15px;top:15px;transition:all .3s ease;width:30px}.project-tile:hover .delete-project-btn{opacity:1}.delete-project-btn:hover{background:#ef444433;transform:scale(1.1)}.add-new-project{align-items:center;background-color:#e0e0e0;border:2px dashed #aaa;color:#666;cursor:pointer;display:flex;font-size:48px;justify-content:center;position:relative;transition:background-color .3s,transform .3s}.add-new-project:hover{background-color:#d4d4d4;transform:translateY(-3px)}.plus-sign{color:#666;display:block;font-size:48px}.empty-state{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3}.empty-state h3{color:#fff}.empty-state p{color:#fffc}.modal{align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#00000080;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1000}.modal-content h2{margin-bottom:25px}.modal-content input{border-radius:12px;padding:15px 20px}.primary-btn:hover:not(:disabled){box-shadow:0 4px 12px #667eea4d;transform:translateY(-1px)}@media (max-width:768px){.projects-header{flex-direction:column;gap:20px;text-align:center}.projects-header h1{font-size:2rem}.projects-grid{gap:20px;grid-template-columns:1fr}.project-tile{padding:25px 20px}.modal-content{margin:20px;padding:30px 20px}.modal-buttons{flex-direction:column}}@media (max-width:480px){.projects-overview{padding:15px}.projects-header{padding:0 10px}.projects-header h1{font-size:1.8rem}.project-tile{padding:20px 15px}}.modal-content h2{margin:0 0 15px}.modal-content p{margin:0 0 30px}.delete-btn{background:linear-gradient(135deg,#ef4444,#dc2626);border:none;border-radius:8px;box-shadow:0 4px 15px #ef44444d;cursor:pointer;display:inline-block;font-size:1rem;font-weight:600;padding:12px 24px;text-align:center;text-decoration:none;transition:all .3s ease}.delete-btn:hover{box-shadow:0 8px 25px #ef444466}.cancel-btn{background:#0000;border:2px solid #e5e7eb;border-radius:8px;display:inline-block;font-size:1rem;padding:12px 24px;text-align:center;text-decoration:none;transition:all .3s ease}.cancel-btn:hover{background:#f9fafb;border-color:#d1d5db;color:#374151}@media (max-width:480px){.modal-content{margin:20px;padding:30px 20px}.modal-buttons{flex-direction:column}.cancel-btn,.delete-btn{width:100%}}.project-details{background:#f9fafb;color:#1f2937;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;min-height:100vh;padding:20px}.project-header{align-items:flex-start;background:#fff;border:1px solid #e5e7eb;border-radius:20px;box-shadow:0 4px 6px #0000000d;display:flex;justify-content:space-between;margin-bottom:40px;padding:30px}.project-info h2{color:#1f2937;font-size:2.5rem;font-weight:700;margin:0 0 10px}.project-info p{color:#6b7280;font-size:1.1rem;margin:0}.project-actions{display:flex;gap:15px}.action-btn{font-size:1rem;font-weight:600;padding:12px 24px;transition:all .3s ease}.edit-btn{background:#3b82f633;border:2px solid #3b82f64d;color:#3b82f6}.edit-btn:hover{background:#3b82f64d;transform:translateY(-2px)}.delete-btn{background:#ef444433;border:2px solid #ef44444d;color:#ef4444}.delete-btn:hover{background:#ef44444d;transform:translateY(-2px)}.boards-header{align-items:center;margin-bottom:30px}.boards-header h3{color:#fff;font-size:1.8rem;font-weight:600;margin:0}.add-board-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;box-shadow:0 4px 15px #667eea4d;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 24px;transition:all .3s ease}.add-board-btn:hover{box-shadow:0 8px 25px #667eea66;transform:translateY(-2px)}.boards-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.board-card{background:#fffffff2;border-radius:15px;box-shadow:0 10px 25px #0000001a;overflow:hidden;transition:all .3s ease}.board-card:hover{box-shadow:0 20px 40px #00000026;transform:translateY(-5px)}.board-link{background:none;border:none;color:#1f2937;cursor:pointer;padding:25px;text-align:left;text-decoration:none;width:100%}.board-link h4{color:#1f2937;font-size:1.3rem;font-weight:600;margin:0 0 10px}.board-link p{color:#6b7280;font-size:.9rem;margin:0 0 15px}.board-stats{display:flex;margin-top:15px;padding-top:15px}.board-stats span{color:#667eea;font-size:.85rem;font-weight:500}.empty-boards{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:20px;padding:60px 20px;text-align:center}.empty-boards p{color:#fffc;font-size:1.1rem;margin:0}.loading-spinner{border:4px solid #ffffff4d;border-top-color:#fff}.error-container{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:20px}.error-container h2{color:#fff;font-size:2rem;font-weight:600;margin-bottom:15px}.error-container p{color:#fffc;font-size:1.1rem;margin-bottom:30px}.back-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;box-shadow:0 4px 15px #667eea4d;color:#fff;font-size:1.1rem;font-weight:600;padding:15px 30px;transition:all .3s ease}.back-button:hover{box-shadow:0 8px 25px #667eea66;transform:translateY(-2px)}.project-details .events-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;margin:40px auto 0;max-width:1200px;padding:24px}.project-details .events-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:30px}.project-details .events-header h3{color:#1f2937;font-size:1.5rem;font-weight:600;margin:0}.project-details .add-event-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;box-shadow:0 4px 15px #667eea4d;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 24px;transition:all .3s ease}.project-details .add-event-btn:hover{box-shadow:0 8px 25px #667eea66;transform:translateY(-2px)}.project-details .empty-events{color:#6b7280;padding:60px 20px;text-align:center}.project-details .empty-events p{font-size:1.1rem;margin:0}.project-details .events-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.project-details .event-card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 2px 8px #0000000f;display:flex;flex-direction:column;overflow:hidden;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.project-details .event-card:before{background:linear-gradient(90deg,#667eea,#764ba2);content:"";height:4px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform .3s ease}.project-details .event-card:hover:before{transform:scaleX(1)}.project-details .event-card:hover{border-color:#667eea;box-shadow:0 8px 24px #667eea26;transform:translateY(-4px)}.project-details .event-link{-webkit-appearance:none;appearance:none;border:none;cursor:pointer;display:flex;flex:1 1;flex-direction:column;font-family:inherit;font-size:inherit;font-weight:400;gap:16px;letter-spacing:normal;padding:28px 32px;text-align:left;text-indent:0;text-shadow:none;text-transform:none;width:100%;word-spacing:normal}.project-details .event-link,.project-details .event-link:active,.project-details .event-link:focus,.project-details .event-link:hover,.project-details .event-link:visited{background:none;border:none!important;color:#1f2937;outline:none;text-decoration:none!important}.project-details .event-link:focus{box-shadow:none;outline:none}.project-details .event-link *{border-bottom:none!important;color:inherit;text-decoration:none!important}.project-details .event-link h4{align-items:center;border-bottom:none!important;color:#1f2937;display:flex;font-size:1.3rem;font-weight:700;gap:8px;line-height:1.3;margin:0;text-decoration:none!important}.project-details .event-link h4:before{content:"📅";font-size:1.2rem}.project-details .event-description,.project-details .event-link h4:active,.project-details .event-link h4:focus,.project-details .event-link h4:hover,.project-details .event-link h4:visited{border-bottom:none!important;color:#667eea;text-decoration:none!important}.project-details .event-description{font-size:1.05rem;font-weight:600;line-height:1.4;margin:0}.project-details .event-link p{align-items:center;border-bottom:none!important;color:#6b7280;display:flex;font-size:.9rem;gap:8px;line-height:1.5;margin:0;text-decoration:none!important}.project-details .event-link p:first-of-type{padding-left:24px;position:relative}.project-details .event-link p:first-of-type:before{content:"🕐";font-size:.9rem;left:0;position:absolute}.project-details .event-link p:nth-of-type(2){padding-left:24px;position:relative}.project-details .event-link p:nth-of-type(2):before{content:"📍";font-size:.9rem;left:0;position:absolute}.project-details .event-link p:active,.project-details .event-link p:focus,.project-details .event-link p:hover,.project-details .event-link p:visited{border-bottom:none!important;color:#6b7280;text-decoration:none!important}.project-details .event-stats{align-items:center;border-top:1px solid #e5e7eb;display:flex;gap:12px;margin-top:auto;padding-top:16px}.project-details .event-stats span{align-items:center;background:linear-gradient(135deg,#667eea1a,#764ba21a);border:1px solid #667eea33;border-radius:20px;color:#667eea;display:flex;font-size:.85rem;font-weight:600;gap:6px;padding:6px 14px}.project-details .event-stats span:before{content:"👥";font-size:.9rem}@media (max-width:768px){.project-header{flex-direction:column;gap:20px;text-align:center}.project-info h2{font-size:2rem}.project-actions{justify-content:center}.boards-header{flex-direction:column;gap:15px;text-align:center}.boards-grid,.project-details .events-grid{gap:20px;grid-template-columns:1fr}.project-details .event-link{padding:24px 20px}.project-details .event-link h4{font-size:1.15rem}.project-details .event-description{font-size:1rem}}@media (max-width:480px){.project-details{padding:15px}.project-header{padding:20px}.project-info h2{font-size:1.8rem}.project-actions{flex-direction:column;width:100%}.action-btn{width:100%}}.modal-content{max-width:400px;text-align:center}.modal-content h2{font-size:1.5rem}.modal-content input{border:2px solid #e5e7eb;border-radius:8px;box-sizing:border-box;font-size:1rem;margin-bottom:25px;padding:12px 16px;transition:all .3s ease;width:100%}.modal-content input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.save-btn{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;box-shadow:0 4px 15px #667eea4d;display:inline-block;font-size:1rem;font-weight:600;padding:12px 24px;text-align:center;text-decoration:none;transition:all .3s ease;width:100%}.save-btn:hover{box-shadow:0 8px 25px #667eea66;transform:translateY(-2px)}.save-btn:disabled{box-shadow:0 4px 15px #667eea33;cursor:not-allowed;opacity:.6;transform:none}@media (max-width:480px){.modal-content{margin:20px;padding:30px 20px}}.personnel-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.personnel-chip{align-items:center;background:#eef2ff;border-radius:20px;color:#667eea;display:flex;font-size:.875rem;font-weight:500;gap:6px;padding:6px 12px}.chip-remove{background:none;border:none;color:#667eea;cursor:pointer;font-size:1.2rem;font-weight:700;line-height:1;margin-left:4px;padding:0;transition:color .2s ease}.chip-remove:hover{color:#dc2626}.personnel-dropdown-wrapper{position:relative}.personnel-dropdown-trigger{align-items:center;background:#fff;border:2px solid #e5e7eb;border-radius:8px;color:#374151;cursor:pointer;display:flex;font-size:.9rem;justify-content:space-between;padding:12px 16px;transition:all .2s ease;width:100%}.personnel-dropdown-trigger:hover{border-color:#667eea}.dropdown-arrow{color:#6b7280}.personnel-dropdown{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 10px 25px #00000026;left:0;margin-top:4px;max-height:200px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:1000}.personnel-dropdown-item{background:none;border:none;color:#374151;cursor:pointer;font-size:.9rem;padding:12px 16px;text-align:left;transition:background-color .2s ease;width:100%}.personnel-dropdown-item:hover{background:#f9fafb}.no-more-users{color:#9ca3af;font-size:.85rem;padding:12px 16px;text-align:center}.add-custom-user-btn{background:#f3f4f6;border:2px dashed #d1d5db;border-radius:8px;color:#667eea;cursor:pointer;font-size:.875rem;font-weight:500;margin-top:12px;padding:10px 16px;transition:all .2s ease;width:100%}.add-custom-user-btn:hover{background:#eef2ff;border-color:#667eea}.custom-user-form{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;display:flex;flex-direction:column;gap:8px;margin-top:12px;padding:12px}.custom-user-input{border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;padding:10px 12px;transition:border-color .2s ease}.custom-user-input:focus{border-color:#667eea;outline:none}.add-custom-user-submit{background:#667eea;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:500;padding:8px 16px;transition:background-color .2s ease}.add-custom-user-submit:hover{background:#5568d3}.event-details{margin:0 auto;max-width:1200px;padding:20px}.event-header{align-items:center;display:flex;gap:20px;margin-bottom:30px}.back-button{border:1px solid #d1d5db}.back-button:hover{border-color:#9ca3af}.event-right-actions{align-items:center;display:flex;gap:12px;margin-left:auto}.view-project-btn{background:#10b981;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:10px 20px;transition:all .2s ease}.view-project-btn:hover{background:#059669;box-shadow:0 4px 12px #10b9814d;transform:translateY(-1px)}.event-actions{display:flex;gap:12px}.edit-event-btn{background:#3b82f6;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:10px 20px;transition:all .2s ease}.edit-event-btn:hover{background:#2563eb;box-shadow:0 4px 12px #3b82f64d;transform:translateY(-1px)}.delete-event-btn{background:#dc2626;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:10px 20px;transition:all .2s ease}.delete-event-btn:hover{background:#b91c1c;box-shadow:0 4px 12px #dc26264d;transform:translateY(-1px)}.event-info h1{color:#1f2937;font-size:2rem;margin:0}.event-date{color:#6b7280;font-size:.9rem;margin:8px 0 0}.event-tabs{border-bottom:2px solid #e5e7eb;display:flex;gap:10px;margin-bottom:30px}.tab-button{color:#6b7280;font-size:1rem;padding:12px 24px;transition:all .2s ease}.tab-button:hover{color:#374151}.tab-button.active{border-bottom-color:#3b82f6;color:#3b82f6}.tab-content{min-height:400px}.details-content{display:flex;flex-direction:column;gap:30px}.detail-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:24px}.detail-section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.detail-section-header h3{color:#1f2937;font-size:1.3rem;margin:0}.detail-section h3{color:#1f2937;font-size:1.3rem;margin:0 0 20px}.copy-details-btn{align-items:center;background:#f3f4f6;border:1px solid #d1d5db;border-radius:8px;color:#374151;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:6px;padding:8px 16px;transition:all .2s ease}.copy-details-btn:hover{background:#e5e7eb;border-color:#9ca3af;color:#1f2937}.copy-details-btn:active{transform:scale(.98)}.detail-row{grid-gap:40px;align-items:start;border-bottom:1px solid #f3f4f6;display:grid;gap:40px;grid-template-columns:200px 1fr;padding:14px 0}.detail-row:last-child{border-bottom:none}.detail-label{color:#6b7280;font-weight:600;padding-right:20px;text-align:left}.detail-value{border-left:1px solid #e5e7eb;color:#1f2937;padding-left:20px}.detail-value.description-text{word-wrap:break-word;line-height:1.6;white-space:pre-wrap}.date-time-wrapper{align-items:center;display:inline-flex;gap:12px}.date-part,.time-part{display:inline-block}.personnel-list{display:flex;flex-direction:column;gap:8px}.personnel-item{background:#f9fafb;border-radius:6px;color:#374151;padding:8px 12px}.financial-content{display:flex;flex-direction:column;gap:30px}.financial-summary,.no-access-message{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:24px}.no-access-message{text-align:center}.no-access-message p{color:#6b7280;font-size:1rem;margin:0}.financial-summary-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.edit-financial-btn{background:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:500;padding:8px 16px;transition:all .2s ease}.edit-financial-btn:hover{background:#2563eb;box-shadow:0 4px 12px #3b82f64d;transform:translateY(-1px)}.financial-summary h3{color:#1f2937;font-size:1.3rem;margin:0}.summary-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(6,1fr)}.summary-card{background:#f9fafb;border-radius:8px;display:flex;flex-direction:column;gap:6px;min-width:0;padding:16px}.summary-card.clickable{border:2px solid #0000;transition:all .2s ease}.summary-card.clickable:hover{background:#f3f4f6;border-color:#3b82f6;box-shadow:0 4px 12px #3b82f626;transform:translateY(-2px)}.summary-label{color:#6b7280;font-size:.85rem;font-weight:500;line-height:1.3}.summary-value{color:#1f2937;font-size:1.3rem;font-weight:700;line-height:1.2;word-break:break-word}.summary-value.owed{color:#ef4444}.summary-value.positive,.summary-value.received{color:#10b981}.summary-value.negative{color:#ef4444}.transactions-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:24px}.transactions-section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.transactions-section h3{color:#1f2937;font-size:1.3rem;margin:0}.transaction-filters{align-items:center;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;display:flex;gap:16px;margin-bottom:20px;padding:16px}.filter-group{align-items:center}.filter-group label{color:#374151}.filter-select{border-radius:6px;color:#1f2937;font-size:.9rem;padding:8px 12px;transition:all .2s ease}.filter-select:focus{box-shadow:0 0 0 3px #3b82f61a}.clear-filter-btn{background:#f3f4f6;border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;font-size:.875rem;font-weight:500;padding:8px 16px;transition:all .2s ease}.clear-filter-btn:hover{background:#e5e7eb;border-color:#9ca3af}.add-transaction-btn{background:#10b981;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:500;padding:8px 16px;transition:all .2s ease}.add-transaction-btn:hover{background:#059669;box-shadow:0 4px 12px #10b9814d;transform:translateY(-1px)}.transactions-list{display:flex;flex-direction:column;gap:16px}.transaction-card{background:#f9fafb;border-left:4px solid #3b82f6;border-radius:8px;padding:16px}.transaction-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.transaction-header h4{color:#1f2937;font-size:1.1rem;margin:0}.transaction-type{border-radius:12px;font-size:.75rem;font-weight:600;padding:4px 12px;text-transform:uppercase}.transaction-type.received{background:#d1fae5;color:#059669}.transaction-type.owedby{background:#fee2e2;color:#dc2626}.transaction-type.owedto{background:#e0e7ff;color:#4f46e5}.transaction-type.paid{background:#fef3c7;color:#d97706}.transaction-type.expense_pending{background:#fee2e2;color:#dc2626}.transaction-type.amountdue{background:#e0e7ff;color:#4f46e5}.transaction-description{color:#6b7280;font-size:.9rem;margin:8px 0}.transaction-details{color:#9ca3af;display:flex;font-size:.85rem;gap:20px;margin-top:8px}.error-container{padding:60px 20px;text-align:center}.error-container h2{color:#1f2937;margin-bottom:10px}.error-container p{color:#6b7280;margin-bottom:20px}.loading-spinner{border:4px solid #f3f4f6}.financial-modal,.transaction-modal{max-width:500px}.financial-modal,.transaction-details-modal,.transaction-modal{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;max-height:90vh;overflow-y:auto;padding:24px;width:90%}.transaction-details-modal{max-width:600px}.transaction-details-content{padding:20px 0}.transaction-type-badge{border-radius:12px;font-size:.75rem;font-weight:600;padding:4px 12px;text-transform:uppercase}.transaction-type-badge.owed{background:#fee2e2;color:#dc2626}.transaction-type-badge.paid{background:#d1fae5;color:#059669}.transaction-type-badge.anticipated{background:#fef3c7;color:#d97706}.danger-btn{background:#dc2626;border-radius:6px;font-size:.875rem;padding:10px 20px;transition:all .2s ease}.danger-btn:hover{background:#b91c1c;box-shadow:0 4px 12px #dc26264d;transform:translateY(-1px)}.modal-header h2{font-size:1.5rem}.close-button{color:#6b7280;font-size:2rem;transition:color .2s ease}.close-button:hover{color:#1f2937}.form-group input{border:1px solid #d1d5db;border-radius:6px;font-size:1rem;padding:10px 12px;transition:border-color .2s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#3b82f6}.form-group select,.form-group textarea{border:1px solid #d1d5db;border-radius:6px;font-family:inherit;font-size:1rem;padding:10px 12px;transition:border-color .2s ease;width:100%}.form-group select{background:#fff}.modal-buttons{gap:12px;margin-top:24px}.primary-btn{background:#3b82f6;border-radius:6px;flex:1 1;transition:all .2s ease}.primary-btn:hover{background:#2563eb}.secondary-btn{background:#f3f4f6;border:none;border-radius:6px;color:#374151;flex:1 1;transition:all .2s ease}.secondary-btn:hover{background:#e5e7eb}@media (max-width:768px){.detail-row{gap:8px;grid-template-columns:1fr;padding:12px 0}.detail-label{margin-bottom:4px;padding-right:0;text-align:left}.detail-value{border-left:none;border-top:1px solid #e5e7eb;padding-left:0;padding-top:8px}.summary-grid{gap:12px;grid-template-columns:repeat(3,1fr)}.summary-card{padding:12px}.summary-label{font-size:.8rem}.summary-value{font-size:1.1rem}}@media (max-width:480px){.summary-grid{grid-template-columns:repeat(2,1fr)}}.events-overview{margin:0 auto;max-width:1200px;padding:20px}.events-header{margin-bottom:30px}.events-header h1{color:#1f2937;font-size:2rem;margin:0 0 8px}.subtitle{color:#6b7280;font-size:1rem;margin:0}.error-message button{font-size:1.5rem;margin-left:10px}.view-tabs{border-bottom:2px solid #e5e7eb;display:flex;gap:12px;margin-bottom:20px}.tab{background:none;border:none;border-bottom:3px solid #0000;color:#6b7280;cursor:pointer;font-size:1rem;font-weight:500;margin-bottom:-2px;padding:12px 24px;transition:all .2s}.tab.active,.tab:hover{color:#7c3aed}.tab.active{border-bottom-color:#7c3aed}.filters-section{align-items:flex-end;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;display:flex;flex-wrap:wrap;gap:20px;margin-bottom:30px;padding:20px}.filter-group{display:flex;flex-direction:column;gap:8px}.filter-group label{color:#6b7280;font-size:.9rem;font-weight:500}.filter-select{background:#fff;border:1px solid #d1d5db;border-radius:8px;cursor:pointer;font-size:1rem;padding:10px 12px;transition:border-color .2s}.filter-select:hover{border-color:#9ca3af}.filter-select:focus{border-color:#3b82f6;outline:none}.clear-filters-btn{background:#f3f4f6;border:1px solid #d1d5db;border-radius:8px;color:#6b7280;cursor:pointer;font-size:.9rem;padding:10px 20px;transition:all .2s}.clear-filters-btn:hover{background:#e5e7eb;border-color:#9ca3af}.events-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:24px}.events-section h2{color:#1f2937;font-size:1.5rem;margin:0 0 20px}.empty-state{color:#6b7280}.empty-events{color:#6b7280;padding:60px 20px;text-align:center}.empty-events p{font-size:1.1rem;margin:0}.events-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.event-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 8px #00000014;display:flex;flex-direction:column;max-height:280px;min-height:180px;overflow:hidden;transition:all .2s ease}.event-card:hover{border-color:#7c3aed;box-shadow:0 4px 12px #7c3aed26;transform:translateY(-2px)}.event-link{-webkit-appearance:none;appearance:none;border:none;cursor:pointer;display:flex;flex:1 1;flex-direction:column;font-family:inherit;font-size:inherit;font-weight:400;letter-spacing:normal;padding:20px;text-align:left;text-indent:0;text-shadow:none;text-transform:none;width:100%;word-spacing:normal}.event-link,.event-link:active,.event-link:focus,.event-link:hover,.event-link:visited{background:none;border:none!important;color:#1f2937;outline:none;text-decoration:none!important}.event-link:focus{box-shadow:none;outline:none}.event-link *{border-bottom:none!important;color:inherit;text-decoration:none!important}.event-link h3{font-size:1.2rem;font-weight:600;line-height:1.4;margin:0 0 12px}.event-link h3,.event-link h3:active,.event-link h3:focus,.event-link h3:hover,.event-link h3:visited{border-bottom:none!important;color:#1f2937;text-decoration:none!important}.event-description{border-bottom:none!important;color:#374151;font-size:1rem;font-weight:500;line-height:1.5;margin:0 0 12px;text-decoration:none!important}.event-link p{font-size:.9rem;margin:0 0 8px}.event-link p,.event-link p:active,.event-link p:focus,.event-link p:hover,.event-link p:visited{border-bottom:none!important;color:#6b7280;text-decoration:none!important}.event-stats{border-top:1px solid #e5e7eb;display:flex;gap:15px;margin-top:auto;padding-top:12px}.event-stats span{background:#f3f4f6;border-radius:12px;color:#6b7280;font-size:.85rem;padding:4px 12px}.loading-container{padding:60px 20px}.loading-spinner{border-top-color:#7c3aed}.loading-container p{color:#6b7280;margin-top:16px}.events-overview-calendar-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:16px}.events-overview-calendar-section h2{color:#1f2937;font-size:1.25rem;margin:0 0 12px}.events-overview-calendar-container{width:100%}.events-overview-calendar-nav{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px;padding:12px 0}.events-overview-nav-btn{background:#fff;border:1px solid #7c3aed;border-radius:6px;color:#7c3aed;cursor:pointer;font-size:.9rem;font-weight:500;padding:8px 16px;transition:all .2s}.events-overview-nav-btn:hover{background:#7c3aed;color:#fff}.events-overview-month-year-display{align-items:center;display:flex;gap:12px}.events-overview-month-year{color:#1f2937;font-size:1.25rem;font-weight:600}.events-overview-today-btn{background:#7c3aed;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.85rem;font-weight:500;padding:6px 12px;transition:all .2s}.events-overview-today-btn:hover{background:#6d28d9}.events-overview-calendar-header{grid-gap:0;background:#f9fafb;border:1px solid #e5e7eb;border-bottom:none;border-radius:8px 8px 0 0;display:grid;gap:0;grid-template-columns:repeat(7,1fr);margin-bottom:0}.events-overview-day-header{border-right:1px solid #e5e7eb;box-sizing:border-box;color:#6b7280;font-size:.85rem;font-weight:600;padding:10px 4px;text-align:center}.events-overview-day-header:last-child{border-right:none}.events-overview-calendar-grid{grid-gap:0;background:#fff;border:1px solid #e5e7eb;border-radius:0 0 8px 8px;display:grid;gap:0;grid-template-columns:repeat(7,1fr);overflow:hidden}.events-overview-calendar-day{background:#fff;border-bottom:1px solid #e5e7eb;border-right:1px solid #e5e7eb;box-sizing:border-box;display:flex;flex-direction:column;min-height:80px;padding:8px;transition:all .2s}.events-overview-calendar-day:nth-child(7n){border-right:none}.events-overview-calendar-day:hover{background:#faf5ff;border-color:#7c3aed}.events-overview-calendar-day.events-overview-other-month{background:#f9fafb;opacity:.4}.events-overview-calendar-day.events-overview-today{background:#f3e8ff;border-color:#7c3aed;border-width:2px}.events-overview-day-number{color:#1f2937;flex-shrink:0;font-size:.85rem;font-weight:600;margin-bottom:4px}.events-overview-calendar-day.events-overview-today .events-overview-day-number{color:#7c3aed;font-weight:700}.events-overview-day-events{display:flex;flex:1 1;flex-direction:column;gap:3px;max-height:60px;overflow-y:auto}.events-overview-calendar-event{background:#7c3aed;border-radius:4px;color:#fff;cursor:pointer;font-size:.7rem;line-height:1.3;overflow:hidden;padding:3px 6px;text-overflow:ellipsis;transition:all .2s;white-space:nowrap}.events-overview-calendar-event:hover{background:#6d28d9;transform:scale(1.02)}.events-overview-more-events{color:#6b7280;cursor:pointer;font-size:.65rem;font-weight:500;padding:2px 4px}.events-overview-more-events:hover{color:#7c3aed}@media (max-width:768px){.events-overview{padding:16px}.events-grid{grid-template-columns:1fr}.filters-section{align-items:stretch;flex-direction:column}.clear-filters-btn{align-self:flex-start}.events-overview-calendar-day{min-height:60px;padding:6px}.events-overview-calendar-event{font-size:.6rem;padding:2px 4px}.events-overview-day-number{font-size:.75rem}.events-overview-day-events{max-height:40px}.events-overview-calendar-nav{flex-direction:column;gap:12px}.events-overview-month-year-display{flex-direction:column;gap:8px}.events-overview-nav-btn{font-size:.8rem;padding:6px 12px}.events-overview-calendar-header{border-radius:8px 8px 0 0}.events-overview-calendar-grid{border-radius:0 0 8px 8px}}.events-table-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:24px}.events-table-section h2{color:#1f2937;font-size:1.5rem;margin:0 0 20px}.events-table-container{border:1px solid #e5e7eb;border-radius:8px;overflow-x:auto}.events-table{background:#fff;border-collapse:collapse;font-size:.95rem;width:100%}.events-table thead{background:#f9fafb;border-bottom:2px solid #e5e7eb}.events-table th{color:#374151;font-size:.9rem;font-weight:600;letter-spacing:.5px;padding:14px 16px;text-align:left;text-transform:uppercase;white-space:nowrap}.events-table th:first-child{border-top-left-radius:8px}.events-table th:last-child{border-top-right-radius:8px}.events-table tbody tr{border-bottom:1px solid #e5e7eb;cursor:pointer;transition:all .2s ease}.events-table tbody tr:hover{background:#f9fafb;border-left:3px solid #667eea}.events-table tbody tr:last-child{border-bottom:none}.events-table td{color:#1f2937;padding:14px 16px;vertical-align:top}.events-table-row td:first-child{color:#667eea;font-weight:500}.events-table-row td:nth-child(2){color:#1f2937;font-weight:600}.events-table-row td:nth-child(3),.events-table-row td:nth-child(4){color:#6b7280;font-size:.9rem}.events-table-row td:nth-child(5){color:#6b7280}.events-table-row td:last-child{color:#374151;font-size:.9rem}@media (max-width:768px){.events-table-container{-webkit-overflow-scrolling:touch;overflow-x:scroll}.events-table{min-width:800px}.events-table td,.events-table th{font-size:.85rem;padding:10px 12px}}.homepage{background:#fff;color:#1f2937;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;min-height:100vh;overflow-x:hidden;position:relative}.animated-bg{height:100%;left:0;overflow:hidden;pointer-events:none;position:fixed;top:0;width:100%;z-index:0}.bg-shape{animation:float 20s ease-in-out infinite;border-radius:50%;filter:blur(60px);opacity:.6;position:absolute}.shape-1{animation-delay:0s;background:linear-gradient(135deg,#667eea4d,#764ba233);height:400px;left:-100px;top:-100px;width:400px}.shape-2{animation-delay:5s;background:linear-gradient(135deg,#8b5cf640,#a855f726);height:300px;right:-150px;top:50%;width:300px}.shape-3{animation-delay:10s;background:linear-gradient(135deg,#667eea33,#6366f126);bottom:-100px;height:350px;left:20%;width:350px}.shape-4{animation-delay:15s;background:linear-gradient(135deg,#764ba240,#667eea33);height:250px;right:10%;top:30%;width:250px}@keyframes float{0%,to{transform:translate(0) rotate(0deg)}33%{transform:translate(50px,-50px) rotate(120deg)}66%{transform:translate(-50px,50px) rotate(240deg)}}.container{margin:0 auto;max-width:1200px;padding:0 20px}.hero-section{grid-gap:60px;background:linear-gradient(135deg,#f9fafb,#fff);display:grid;gap:60px;grid-template-columns:1fr 1fr;min-height:80vh;padding:40px 20px 60px}.hero-content,.hero-section{align-items:center;position:relative;z-index:1}.hero-content{display:flex;flex-direction:column;text-align:center}.title-wrapper{display:flex;justify-content:center;margin-bottom:20px;width:100%}.hero-title,.title-wrapper{overflow:visible;position:relative}.hero-title{-webkit-text-fill-color:#0000;animation:slideAcrossScreen 2s cubic-bezier(.34,1.56,.64,1) forwards;background:linear-gradient(135deg,#111827,#667eea);-webkit-background-clip:text;background-clip:text;display:inline-block;font-size:5rem;font-weight:700;line-height:1.2;margin:0;text-align:center;transform:translateX(-200%)}.hero-title:before{animation:fadeInPurple 1s ease-out 1.5s forwards;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text}.hero-title:after,.hero-title:before{-webkit-text-fill-color:#0000;content:"FreelanceFlow";height:100%;left:0;opacity:0;position:absolute;top:0;width:100%}.hero-title:after{animation:shimmerAcross 2s ease-in-out 2s infinite;background:linear-gradient(90deg,#0000,#667eea80,#0000);-webkit-background-clip:text;background-clip:text}.title-accent{animation:expandWidthAccent 1.2s cubic-bezier(.68,-.55,.265,1.55) 2s forwards,shimmer 2s ease-in-out 3.5s infinite;background:linear-gradient(90deg,#667eea,#764ba2);border-radius:2px;bottom:10px;box-shadow:0 0 10px #667eea4d;height:4px;left:50%;position:absolute;transform:translateX(-50%);width:0}@keyframes shimmer{0%,to{background:linear-gradient(90deg,#667eea,#764ba2)}50%{background:linear-gradient(90deg,#764ba2,#667eea);box-shadow:0 0 10px #667eea80}}@keyframes slideAcrossScreen{0%{opacity:0;transform:translateX(-200%) scale(.5) rotate(-10deg)}40%{opacity:.8;transform:translateX(10%) scale(1.1) rotate(2deg)}60%{transform:translateX(-5%) scale(.95) rotate(-1deg)}80%{transform:translateX(2%) scale(1.02) rotate(.5deg)}to{opacity:1;transform:translateX(0) scale(1) rotate(0deg)}}@keyframes fadeInPurple{0%{opacity:0;transform:scale(1)}to{opacity:1;transform:scale(1)}}@keyframes shimmerAcross{0%{opacity:0;transform:translateX(-100%)}50%{opacity:.6;transform:translateX(0)}to{opacity:0;transform:translateX(100%)}}@keyframes expandWidthAccent{0%{opacity:0;width:0}50%{opacity:.8;width:120px}to{opacity:1;width:100px}}@keyframes expandWidth{0%{width:0}to{width:60px}}.hero-subtitle{color:#6b7280;font-size:1.3rem;font-weight:400;line-height:1.6;margin:0 0 40px;max-width:600px;text-align:center}.hero-buttons{display:flex;flex-wrap:wrap;gap:20px}.cta-button{align-items:center;display:inline-flex;justify-content:center;text-decoration:none}.cta-button.primary{background:#667eea;box-shadow:0 4px 15px #667eea33;color:#fff}.cta-button.primary:hover{background:#5a67d8;box-shadow:0 8px 25px #667eea4d;transform:translateY(-2px)}.cta-button.secondary{background:#fff;border:2px solid #e5e7eb;color:#667eea}.cta-button.secondary:hover{background:#f9fafb;border-color:#667eea;transform:translateY(-2px)}.cta-button.large{font-size:1.2rem;padding:20px 40px}.hero-image{align-items:center;display:flex;justify-content:center;position:relative;z-index:1}.dashboard-preview{animation:fadeInScale .8s ease-out .2s both;background:#fff;border:1px solid #e5e7eb;border-radius:20px;box-shadow:0 20px 60px #667eea26;max-width:400px;overflow:hidden;padding:20px;position:relative;transition:transform .3s ease;width:100%}.dashboard-preview:hover{box-shadow:0 25px 70px #667eea33;transform:translateY(-5px)}.preview-glow{animation:rotateGlow 8s linear infinite;background:radial-gradient(circle,#667eea1a 0,#0000 70%);height:200%;pointer-events:none;position:absolute;right:-50%;top:-50%;width:200%}@keyframes fadeInScale{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes rotateGlow{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.preview-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;margin-bottom:20px;padding:10px 0}.preview-dots{display:flex;gap:8px}.preview-dots span{background:#e5e7eb;border-radius:50%;height:12px;width:12px}.preview-dots span:first-child{background:#ef4444}.preview-dots span:nth-child(2){background:#f59e0b}.preview-dots span:last-child{background:#10b981}.preview-content{display:flex;flex-direction:column;gap:15px}.preview-card{background:#f8fafc;border:1px solid #e5e7eb;border-radius:12px;color:#1f2937;font-weight:500;overflow:hidden;padding:15px 20px;position:relative;transition:all .3s ease}.preview-card:before{background:linear-gradient(90deg,#0000,#667eea1a,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.preview-card:hover:before{left:100%}.preview-card:hover{border-color:#667eea;box-shadow:0 4px 12px #667eea26;transform:translateX(5px)}.card-1{animation:slideInLeft .6s ease-out .4s both}.card-2{animation:slideInLeft .6s ease-out .5s both}.card-3{animation:slideInLeft .6s ease-out .6s both}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}.features-section{background:linear-gradient(180deg,#fff,#f9fafb);padding:40px 0 100px;position:relative;z-index:1}.section-title-wrapper{margin-bottom:60px;position:relative}.section-title{color:#111827;display:inline-block;font-size:2.5rem;font-weight:700;margin-bottom:20px;position:relative;text-align:center;width:100%}.section-title-line{animation:expandWidth 1s ease-out;background:linear-gradient(90deg,#667eea,#764ba2);border-radius:2px;height:4px;margin:0 auto;width:80px}.features-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.feature-card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 1px 3px #0000000d;overflow:hidden;padding:40px 30px;position:relative;text-align:center;transition:all .3s ease}.feature-card:after{background:linear-gradient(90deg,#667eea,#764ba2);content:"";height:4px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transform-origin:left;transition:transform .3s ease}.feature-card:hover:after{transform:scaleX(1)}.feature-card:hover{background:linear-gradient(135deg,#fff,#f9fafb);border-color:#667eea;box-shadow:0 15px 40px #667eea1f;transform:translateY(-5px)}.feature-icon{font-size:3rem;margin-bottom:20px;transition:transform .3s ease}.feature-card:hover .feature-icon{transform:scale(1.1) rotate(5deg)}.feature-card h3{color:#111827;font-size:1.5rem;font-weight:600;margin:0 0 15px}.feature-card p{color:#6b7280;font-size:1rem;line-height:1.6;margin:0}.stats-section{background:#f9fafb;padding:100px 0}.stats-grid{grid-gap:40px;display:grid;gap:40px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.stat-item{padding:30px 20px}.stat-number{color:#111827;font-size:3rem;font-weight:700;margin-bottom:10px}.stat-label{font-size:1.1rem}.cta-section{background:#fff;padding:100px 0;text-align:center}.cta-title{color:#111827;font-size:2.5rem;font-weight:700;margin-bottom:20px}.cta-subtitle{color:#6b7280;font-size:1.2rem;line-height:1.6;margin-bottom:40px;margin-left:auto;margin-right:auto;max-width:600px}@media (max-width:768px){.hero-section{gap:40px;grid-template-columns:1fr;padding:40px 20px}.hero-content,.hero-section{text-align:center}.hero-title{font-size:3.5rem}.hero-subtitle{font-size:1.1rem}.section-title{font-size:2rem}.features-grid{gap:20px;grid-template-columns:1fr}.feature-card{padding:30px 20px}.stats-grid{gap:20px;grid-template-columns:repeat(2,1fr)}.hero-buttons{justify-content:center}}@media (max-width:480px){.hero-section{padding:30px 15px}.hero-title{font-size:2.5rem}.hero-subtitle{font-size:1rem}.section-title{font-size:1.8rem}.cta-title{font-size:2rem}.stats-grid{gap:15px;grid-template-columns:1fr}.hero-buttons{align-items:center;flex-direction:column}.cta-button{max-width:300px;width:100%}.cta-section,.features-section,.stats-section{padding:60px 0}}.dashboard{background:#f5f5f5;box-sizing:border-box;color:#1f2937;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;margin:0 auto;max-width:1200px;min-height:100vh;padding:20px;width:100%}.dashboard-header{margin-bottom:24px}.dashboard-greeting{align-items:center;display:flex;gap:12px}.dashboard-title{color:#1f2937;font-size:2rem;font-weight:700;margin:0}.dashboard-subtitle{color:#6b7280;font-size:1.2rem;font-weight:300;margin:0}.dashboard-content{box-sizing:border-box;display:flex;flex-direction:column;gap:24px;width:100%}.dashboard-main-section{grid-gap:20px;align-items:stretch;display:grid;gap:20px;grid-template-columns:1fr 1fr}.dashboard-left-column,.dashboard-main-section{box-sizing:border-box;margin:0;padding:0;width:100%}.dashboard-left-column{display:flex;flex-direction:column;min-height:100%}.dashboard-right-column{flex-direction:column;gap:20px;margin:0;min-height:100%;padding:0}.dashboard-right-column,.next-event-card{box-sizing:border-box;display:flex;width:100%}.next-event-card{background:#fffffff2;border:1px solid #0000000f;border-radius:16px;box-shadow:0 2px 8px #00000014;cursor:pointer;flex:1 1;flex-direction:column;overflow:hidden;padding:24px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.next-event-card:hover{box-shadow:0 4px 12px #0000001f;transform:translateY(-2px)}.next-event-title{color:#6b7280;font-size:1rem;font-weight:600;letter-spacing:.5px;margin:0 0 16px;text-transform:uppercase}.next-event-date{color:#1f2937;font-size:2.5rem;font-weight:700;line-height:1.2;margin:0 0 12px}.next-event-location{color:#6b7280;font-size:1rem;margin:0 0 16px}.next-event-countdown{color:#667eea;font-size:.9rem;font-weight:600;text-align:right}.up-next-section{display:flex;flex:1 1;flex-direction:column}.up-next-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.up-next-title{color:#1f2937;font-size:1.25rem;font-weight:600;margin:0}.up-next-view-all{background:none;border:none;color:#667eea;cursor:pointer;font-size:1.5rem;padding:0;transition:transform .2s}.up-next-view-all:hover{transform:translateX(4px)}.up-next-events{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.up-next-event-card{background:#fffffff2;border:1px solid #0000000f;border-radius:16px;box-shadow:0 2px 8px #00000014;box-sizing:border-box;cursor:pointer;overflow:hidden;padding:16px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);width:100%}.up-next-event-card:hover{box-shadow:0 4px 12px #0000001f;transform:translateY(-2px)}.up-next-event-date{color:#6b7280;font-size:.85rem;font-weight:500;margin-bottom:8px}.up-next-event-name{color:#1f2937;font-size:1rem;font-weight:600;margin-bottom:8px}.up-next-event-days{align-items:center;color:#6b7280;display:flex;font-size:.85rem;font-weight:500;gap:6px}.up-next-dot{border-radius:50%;display:inline-block;height:8px;width:8px}.dot-green{background:#10b981}.dot-yellow{background:#f59e0b}.dashboard-calendar-section{background:#fffffff2;border:1px solid #0000000f;border-radius:16px;box-shadow:0 2px 8px #00000014;box-sizing:border-box;display:flex;height:fit-content;justify-content:center;overflow:hidden;padding:8px;width:100%}.dashboard-calendar-section .MuiPickersStaticWrapper-root{max-width:100%;min-width:0;width:100%}.dashboard-calendar-section .MuiPickersCalendar-root{min-width:0;width:100%}.dashboard-calendar-section .MuiPickersCalendarHeader-root{padding:8px 4px}.dashboard-calendar-section .MuiPickersCalendarHeader-label{font-size:.9rem;font-weight:600}.dashboard-calendar-section .MuiPickersArrowSwitcher-root{margin:0}.dashboard-calendar-section .MuiIconButton-root{font-size:1rem;padding:4px}.dashboard-calendar-section .MuiDayCalendar-weekContainer{margin:0}.dashboard-calendar-section .MuiPickersDay-root{font-size:.75rem;height:32px;margin:2px;width:32px}.dashboard-calendar-section .MuiPickersDay-today{border:2px solid #667eea;font-weight:700}.dashboard-calendar-section .MuiBadge-badge{font-size:.6rem;height:16px;min-width:16px;padding:0 4px}.tiles-container{grid-gap:20px;box-sizing:border-box;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-left:0;margin-right:0;margin-top:24px;width:100%}.tile{background:#fffffff2;border:1px solid #0000000f;border-radius:16px;box-shadow:0 2px 8px #00000014;color:#1f2937;cursor:pointer;overflow:hidden;padding:24px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.tile:before{background:linear-gradient(90deg,#667eea,#764ba2);content:"";height:4px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform .3s ease}.tile:hover:before{transform:scaleX(1)}.tile:hover{background:#fff;box-shadow:0 8px 24px #0000001f;transform:translateY(-4px) scale(1.01)}.tile-icon{display:block;font-size:2rem;margin-bottom:12px}.tile h3{color:#1f2937;font-size:1.25rem;font-weight:600;margin:0 0 8px}.tile p{color:#6b7280;font-size:.9rem;line-height:1.5;margin:0 0 16px}.tile-arrow{bottom:20px;color:#667eea;font-size:1.2rem;position:absolute;right:24px;transition:transform .3s ease}.tile:hover .tile-arrow{transform:translateX(5px)}.projects-tile:hover{border-left:4px solid #3b82f6}.events-tile:hover{border-left:4px solid #ec4899}.boards-tile:hover{border-left:4px solid #10b981}.finances-tile:hover{border-left:4px solid #f59e0b}.users-tile:hover{border-left:4px solid #8b5cf6}@media (max-width:768px){.dashboard{box-sizing:border-box;max-width:100%;padding:16px}.dashboard-title{font-size:1.75rem}.dashboard-main-section{box-sizing:border-box;gap:20px;grid-template-columns:1fr;width:100%}.dashboard-left-column,.dashboard-right-column{box-sizing:border-box;height:auto;overflow:hidden;width:100%}.next-event-card{box-sizing:border-box;padding:20px;width:100%}.next-event-date{font-size:2rem}.up-next-events,.up-next-section{box-sizing:border-box;width:100%}.up-next-events{grid-template-columns:1fr}.dashboard-calendar-section,.up-next-event-card{box-sizing:border-box;width:100%}.dashboard-calendar-section{overflow:hidden;padding:6px}.dashboard-calendar-section .MuiPickersCalendar-root,.dashboard-calendar-section .MuiPickersStaticWrapper-root{box-sizing:border-box;max-width:100%;width:100%}.tiles-container{box-sizing:border-box;gap:16px;grid-template-columns:1fr;width:100%}.calendar-day{padding:6px 2px}.calendar-day-number{font-size:.8rem}.calendar-event-dot{height:5px;width:5px}.events-selection-modal{margin:16px;max-height:85vh;max-width:calc(100vw - 32px);padding:20px;width:calc(100vw - 32px)}.events-modal-title{font-size:1.35rem;margin:0 0 18px}.events-modal-item{padding:14px}}@media (max-width:480px){.dashboard{padding:12px}.dashboard-title{font-size:1.5rem}.dashboard-main-section{gap:16px}.next-event-card{padding:16px}.next-event-date{font-size:1.75rem}.dashboard-calendar-section{padding:4px}.dashboard-calendar-section .MuiPickersDay-root{font-size:.7rem;height:28px;margin:1px;width:28px}.dashboard-calendar-section .MuiPickersCalendarHeader-label{font-size:.85rem}.up-next-event-card{padding:12px}.calendar-header{flex-direction:column;gap:8px}.calendar-nav-btn{font-size:1rem;padding:6px 10px}.calendar-month-year{font-size:1.1rem}.events-selection-modal{border-radius:12px;left:44%;margin:12px;max-height:85vh;max-width:calc(100vw - 24px);padding:16px;width:calc(100vw - 24px)}.events-modal-title{font-size:1.2rem;margin:0 0 14px}.events-modal-list{gap:10px;margin-bottom:16px}.events-modal-item{border-radius:10px;padding:12px}.events-modal-item-name{font-size:.95rem;margin-bottom:6px}.events-modal-item-date,.events-modal-item-location{font-size:.8rem;margin-bottom:2px}.events-modal-close{border-radius:6px;font-size:.9rem;padding:10px 18px}}.events-selection-modal{background:#fff;border-radius:16px;box-shadow:0 8px 32px #0003;box-sizing:border-box;left:50%;margin:20px;max-height:80vh;max-width:500px;outline:none;overflow-y:auto;padding:24px;position:absolute;top:50%;transform:translate(-50%,-50%);width:90%}.events-modal-title{color:#1f2937;font-size:1.5rem;font-weight:700;margin:0 0 20px}.events-modal-list{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.events-modal-item{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;cursor:pointer;padding:16px;transition:all .2s ease}.events-modal-item:hover{background:#f3f4f6;border-color:#667eea;box-shadow:0 4px 12px #667eea26;transform:translateY(-2px)}.events-modal-item-name{color:#1f2937;font-size:1.1rem;font-weight:600;margin-bottom:8px}.events-modal-item-date{color:#6b7280;font-size:.9rem;margin-bottom:4px}.events-modal-item-location{color:#6b7280;font-size:.85rem}.events-modal-close{background:#667eea;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 24px;transition:all .2s ease;width:100%}.events-modal-close:hover{background:#5568d3;box-shadow:0 4px 8px #667eea4d;transform:translateY(-1px)}.users{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;min-height:100vh;padding:24px}.users,.users *{color:#000!important}.users-header{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 8px #00000014;display:flex;justify-content:space-between;margin-bottom:32px;padding:24px}.header-content{flex:1 1}.users-title{font-size:2rem;font-weight:600;margin:0 0 8px}.users-title,h1.users-title{-webkit-text-fill-color:#000!important;background:none!important;-webkit-background-clip:unset!important;background-clip:initial!important;color:#000!important}.users-subtitle{color:#6b7280!important;font-size:1rem;font-weight:400;margin:0}.add-user-button{background:linear-gradient(135deg,#10b981,#059669);border-radius:12px;box-shadow:0 4px 15px #10b9814d;font-size:1rem;font-weight:600;gap:8px;padding:12px 24px;transition:all .3s ease}.add-user-button:hover{box-shadow:0 8px 25px #10b98166;transform:translateY(-2px)}.button-icon{font-size:1.2rem}.users-stats{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:32px}.stat-card{background:#919191!important;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:24px;text-align:center;transition:transform .3s ease}.stat-card,.stat-card *,.stat-card div{color:#000!important}.stat-card:hover{transform:translateY(-4px)}.stat-number{color:#000!important;font-size:2rem;font-weight:600;margin-bottom:8px}.stat-label{color:#000!important;font-size:.9rem}.users-table-container{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 8px #00000014;overflow:hidden}.users-table{border-collapse:collapse;width:100%}.users-table th{background:#f8fafc;border-bottom:2px solid #e5e7eb;color:#000!important;font-size:.95rem;font-weight:600;letter-spacing:.5px;padding:20px 16px;text-align:left;text-transform:uppercase}.users-table td{border-bottom:1px solid #f3f4f6;padding:20px 16px;vertical-align:middle}.user-row{transition:background-color .2s ease}.user-row:hover{background-color:#f8fafc}.user-info{gap:16px}.user-avatar{background:#7c3aed;box-shadow:0 2px 8px #7c3aed33;font-size:1.1rem;height:48px;width:48px}.user-details{flex:1 1}.user-name{font-size:1.1rem;margin-bottom:4px}.user-id,.user-name{color:#000!important}.user-id{font-family:Courier New,monospace;font-size:.85rem}.user-email{color:#000!important;font-weight:500}.role-badge{border-radius:20px;color:#fff;display:inline-block;font-size:.8rem;font-weight:600;letter-spacing:.5px;padding:6px 12px;text-transform:uppercase}.role-display{align-items:center;display:flex;gap:8px}.role-badges{display:flex;flex-wrap:wrap;gap:6px}.edit-role-btn{background:#fff;border:1px solid #7c3aed;border-radius:6px;color:#7c3aed;cursor:pointer;font-size:.85rem;font-weight:500;padding:6px 16px;transition:all .2s}.edit-role-btn:hover{background:#7c3aed;color:#fff}.role-editor{gap:8px}.role-checkboxes,.role-editor{display:flex;flex-direction:column}.role-checkboxes{gap:6px}.role-checkbox-label{align-items:center;color:#374151!important;cursor:pointer;display:flex;font-size:.875rem;gap:8px;padding:4px 0}.role-checkbox-label input[type=checkbox]{accent-color:#7c3aed;cursor:pointer;height:18px;width:18px}.role-actions{display:flex;gap:8px}.save-btn{background:#16a34a;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.85rem;font-weight:500;padding:8px 16px;transition:all .2s}.save-btn:hover{background:#15803d}.cancel-btn{background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#6b7280;cursor:pointer;font-size:.85rem;font-weight:500;padding:8px 16px;transition:all .2s}.cancel-btn:hover{background:#f3f4f6;border-color:#9ca3af}.user-actions{display:flex;gap:8px}.action-button{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:1.1rem;height:40px;justify-content:center;transition:all .2s ease;width:40px}.edit-button{background:linear-gradient(135deg,#3b82f6,#1d4ed8)}.edit-button:hover{box-shadow:0 4px 12px #3b82f666;transform:scale(1.1)}.delete-button{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.delete-button:hover{box-shadow:0 4px 12px #ef444466;transform:scale(1.1)}.no-users{padding:60px 20px;text-align:center}.empty-state{align-items:center;display:flex;flex-direction:column;gap:16px}.empty-icon{font-size:4rem;opacity:.5}.empty-state h3{font-size:1.5rem}.empty-state h3,.empty-state p{color:#000!important;margin:0}.loading-container{gap:16px}.loading-spinner{border:4px solid #e5e7eb}.loading-container p{color:#000!important;font-size:1.1rem}@media (max-width:768px){.users{padding:16px}.users-header{flex-direction:column;gap:16px;text-align:center}.users-title{color:#000!important;font-size:2rem}.users-stats{grid-template-columns:1fr}.users-table-container{overflow-x:auto}.user-info{align-items:flex-start;gap:8px}.user-actions,.user-info{flex-direction:column}}.boards-overview{background:#fff;color:#1f2937;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;min-height:100vh;padding:20px}.boards-header{align-items:flex-start;background:#00000005;border:1px solid #0000000f;border-radius:20px;display:flex;justify-content:space-between;margin-bottom:40px;padding:30px}.header-content h1{color:#1f2937;font-size:2.5rem;font-weight:700;margin:0 0 10px}.header-content p{color:#6b7280;font-size:1.1rem;margin:0}.create-board-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;box-shadow:0 4px 15px #667eea4d;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;padding:15px 30px;transition:all .3s ease}.create-board-btn:hover{box-shadow:0 8px 25px #667eea66;transform:translateY(-2px)}.sorting-controls{background:#00000005;border:1px solid #0000000f;border-radius:15px;display:flex;gap:30px;margin-bottom:30px;padding:20px}.sort-group{display:flex;flex-direction:column;gap:8px}.sort-group label{color:#374151;font-size:.9rem;font-weight:500}.sorting-dropdown{background:#fff;border:1px solid #d1d5db;border-radius:8px;color:#1f2937;cursor:pointer;font-size:1rem;padding:10px 15px;transition:all .3s ease}.sorting-dropdown:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.sorting-dropdown option{background:#fff;color:#1f2937}.error-message{align-items:center;background:#ef44441a;border:1px solid #ef444433;border-radius:12px;display:flex;justify-content:space-between;padding:15px 20px}.error-message button{align-items:center;background:none;border:none;color:#dc2626;cursor:pointer;display:flex;font-size:1.2rem;height:24px;justify-content:center;padding:0;width:24px}.favorites-section{margin-bottom:40px}.section-header{margin-bottom:25px}.section-header h2{color:#1f2937;font-size:1.8rem;font-weight:600;margin:0}.section-count{background:#667eea;border-radius:20px;color:#fff;font-size:.9rem;font-weight:500;padding:6px 12px}.boards-section{margin:0 auto;max-width:1200px}.boards-grid{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.board-tile{background:#fffffff2;border:1px solid #fff3;border-radius:20px;box-shadow:0 10px 25px #0000001a;color:#1f2937;cursor:pointer;overflow:hidden;padding:25px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.board-tile:before{background:linear-gradient(90deg,#667eea,#764ba2);content:"";height:4px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform .3s ease}.board-tile:hover:before{transform:scaleX(1)}.board-tile:hover{background:#fff;box-shadow:0 20px 40px #00000026;transform:translateY(-8px) scale(1.02)}.board-tile.favorite{background:linear-gradient(135deg,#fffffff2,#fbbf241a);border:2px solid #fbbf24}.board-tile.favorite:before{background:linear-gradient(90deg,#fbbf24,#f59e0b)}.board-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:15px}.board-header h3{color:#1f2937;flex:1 1;font-size:1.4rem;font-weight:600;margin:0 10px 0 0}.favorite-icon{align-items:center;border-radius:50%;color:#d1d5db;cursor:pointer;display:flex;font-size:1.5rem;justify-content:center;padding:5px;transition:all .3s ease}.favorite-icon:hover{background:#fbbf241a;color:#fbbf24;transform:scale(1.1)}.favorite-icon.active{color:#fbbf24}.board-meta{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.meta-item{align-items:center;color:#6b7280;display:flex;font-size:.9rem;gap:5px}.board-stats{grid-gap:15px;border-top:1px solid #e5e7eb;display:grid;gap:15px;grid-template-columns:repeat(3,1fr);padding-top:20px}.stat-item{text-align:center}.stat-label{color:#6b7280;display:block;font-size:.8rem;font-weight:500;margin-bottom:4px}.stat-value{color:#667eea;display:block;font-size:1rem;font-weight:600}.empty-state{background:#00000005;border:1px solid #0000000f;border-radius:20px;grid-column:1/-1;padding:60px 20px;text-align:center}.empty-state h3{color:#1f2937;font-size:1.8rem;font-weight:600;margin-bottom:15px}.empty-state p{color:#6b7280;font-size:1.1rem;margin-bottom:30px}.cta-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;box-shadow:0 4px 15px #667eea4d;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;padding:15px 30px;transition:all .3s ease}.cta-button:hover{box-shadow:0 8px 25px #667eea66;transform:translateY(-2px)}.loading-container{gap:20px;min-height:400px}.loading-spinner{border:4px solid #0000001a;border-top-color:#667eea}@media (max-width:768px){.boards-header{flex-direction:column;gap:20px;text-align:center}.header-content h1{font-size:2rem}.sorting-controls{flex-direction:column;gap:15px}.boards-grid{gap:20px;grid-template-columns:1fr}.board-stats{gap:10px;grid-template-columns:1fr}}@media (max-width:480px){.boards-overview{padding:15px}.boards-header{padding:20px}.header-content h1{font-size:1.8rem}.board-tile{padding:20px}.board-header{align-items:flex-start;flex-direction:column;gap:10px}.board-header h3{margin-right:0}}.modal-overlay{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#00000080;height:100%;width:100%;z-index:10000}.modal-content{background:#fff;border-radius:20px;box-shadow:0 20px 40px #0000001a;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;max-height:90vh;max-width:500px;overflow-y:auto;padding:40px;position:relative;width:100%}.close-button{align-items:center;background:#ef44441a;border-radius:50%;color:#ef4444;display:flex;height:32px;justify-content:center;position:absolute;right:20px;top:20px;transition:all .3s ease;width:32px}.close-button:hover{background:#ef444433;transform:scale(1.1)}.modal-content h2{color:#1f2937;font-size:1.8rem;font-weight:600;margin:0 0 25px;text-align:center}.form-group label{display:block;font-weight:500;margin-bottom:8px}.form-group input,.form-group select,.form-group textarea{background:#fff;border:2px solid #e5e7eb;border-radius:8px;box-sizing:border-box;font-family:inherit;font-size:1rem;padding:12px 16px;transition:all .3s ease;width:100%}.form-group textarea{line-height:1.5;min-height:100px;resize:vertical}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-group select{cursor:pointer}.form-group select option{background:#fff;color:#1f2937}.primary-btn{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;box-shadow:0 4px 15px #667eea4d;display:inline-block;font-size:1rem;font-weight:600;padding:12px 24px;text-align:center;text-decoration:none;transition:all .3s ease}.primary-btn:hover{box-shadow:0 8px 25px #667eea66;transform:translateY(-2px)}.primary-btn:disabled{box-shadow:0 4px 15px #667eea33;cursor:not-allowed;opacity:.6;transform:none}.secondary-btn{background:#0000;border:2px solid #e5e7eb;border-radius:8px;color:#6b7280;cursor:pointer;display:inline-block;font-size:1rem;font-weight:500;padding:12px 24px;text-align:center;text-decoration:none;transition:all .3s ease}.secondary-btn:hover{background:#f9fafb;border-color:#d1d5db;color:#374151}.danger-btn{background:linear-gradient(135deg,#ef4444,#dc2626);border-radius:8px;box-shadow:0 4px 15px #ef44444d;display:inline-block;font-size:1rem;font-weight:600;padding:12px 24px;text-align:center;text-decoration:none;transition:all .3s ease}.danger-btn:hover{box-shadow:0 8px 25px #ef444466;transform:translateY(-2px)}.modal-buttons{display:flex;gap:15px;margin-top:25px}.modal-buttons,.modal-buttons.single{justify-content:center}.modal-buttons.full-width{flex-direction:column}.modal-buttons.full-width .danger-btn,.modal-buttons.full-width .primary-btn,.modal-buttons.full-width .secondary-btn{width:100%}@media (max-width:768px){.modal-content{margin:20px;max-width:none;padding:30px 20px}.modal-content h2{font-size:1.5rem}.modal-buttons{flex-direction:column}.modal-buttons .danger-btn,.modal-buttons .primary-btn,.modal-buttons .secondary-btn{width:100%}}@media (max-width:480px){.modal-content{margin:10px;padding:25px 15px}.modal-content h2{font-size:1.3rem}.form-group input,.form-group select,.form-group textarea{padding:10px 12px}}.board-list{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;flex-direction:column;gap:12px;max-height:200px;overflow-y:auto}.board-item,.board-list{display:flex;padding:10px}.board-item{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:6px;transition:all .3s ease}.board-item:hover{border-color:#667eea;box-shadow:0 2px 8px #667eea1a}.board-item label{color:#374151;cursor:pointer;flex:1 1;font-size:.9rem;margin:0}.board-item input[type=checkbox]{accent-color:#667eea;cursor:pointer;margin:0 0 0 10px;width:auto}.type-selector{display:flex;gap:10px;margin-bottom:20px}.type-option{background:#fff;border:2px solid #e5e7eb;border-radius:8px;color:#6b7280;cursor:pointer;flex:1 1;font-weight:500;padding:12px 16px;text-align:center;transition:all .3s ease}.type-option.active{background:linear-gradient(135deg,#667eea1a,#764ba21a)}.type-option.active,.type-option:hover{border-color:#667eea;color:#667eea}@media (max-width:768px){.type-selector{flex-direction:column}}.login-page{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;justify-content:center;min-height:100vh;padding:20px}.login-container{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border-radius:20px;box-shadow:0 20px 40px #0000001a;display:grid;grid-template-columns:1fr 1fr;max-width:1000px;min-height:600px;overflow:hidden;width:100%}.login-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;flex-direction:column;justify-content:center;padding:60px 40px;text-align:center}.login-title{font-size:2.5rem;font-weight:700;letter-spacing:-.5px;margin:0 0 15px}.login-subtitle{font-size:1.1rem;line-height:1.6;margin:0;opacity:.9}.login-form-container{display:flex;flex-direction:column;justify-content:center;padding:60px 40px}.error-message{background:#fee2e2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;font-size:14px;font-weight:500;margin-bottom:20px;padding:12px 16px}.login-form{width:100%}.name-fields{grid-gap:15px;display:grid;gap:15px;grid-template-columns:1fr 1fr}.form-group,.name-fields{margin-bottom:20px}.form-group input{background:#f9fafb;border:2px solid #e5e7eb;border-radius:12px;box-sizing:border-box;font-size:16px;padding:15px 20px;transition:all .3s ease;width:100%}.form-group input:focus{background:#fff;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-group input::placeholder{color:#9ca3af}.submit-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;margin-bottom:25px;padding:15px 20px;transition:all .3s ease;width:100%}.submit-button:hover:not(:disabled){background:linear-gradient(135deg,#5a67d8,#6b46c1);box-shadow:0 8px 25px #667eea4d;transform:translateY(-2px)}.submit-button:disabled{cursor:not-allowed;opacity:.6;transform:none}.divider{margin:25px 0;position:relative;text-align:center}.divider:before{background:#e5e7eb;content:"";height:1px;left:0;position:absolute;right:0;top:50%}.divider span{background:#fffffff2;color:#6b7280;font-size:14px;font-weight:500;padding:0 20px}.google-signin-container{display:flex;justify-content:center;margin-bottom:25px;width:100%}.google-signin-container>div{max-width:100%!important;width:100%!important}.google-signin-container button{border-radius:12px!important;font-size:16px!important;font-weight:500!important;height:50px!important;transition:all .3s ease!important;width:100%!important}.google-signin-container button:hover{box-shadow:0 4px 12px #0000001a!important;transform:translateY(-1px)!important}.login-footer{text-align:center}.login-footer p{color:#6b7280;font-size:14px;margin:0}.toggle-mode-button{background:none;border:none;color:#667eea;cursor:pointer;font-weight:600;margin-left:5px;padding:0;text-decoration:underline;transition:color .3s ease}.toggle-mode-button:hover{color:#5a67d8}.login-features{background:#f8fafc;display:flex;flex-direction:column;gap:30px;justify-content:center;padding:40px}.feature{text-align:center}.feature-icon{display:block;font-size:2.5rem;margin-bottom:15px}.feature h3{color:#1f2937;font-size:1.2rem;font-weight:600;margin:0 0 10px}.feature p{color:#6b7280;font-size:.9rem;line-height:1.5;margin:0}@media (max-width:768px){.login-container{grid-template-columns:1fr;max-width:500px;min-height:auto}.login-header{padding:40px 30px}.login-title{font-size:2rem}.login-form-container{padding:40px 30px}.name-fields{gap:15px;grid-template-columns:1fr}.login-features{gap:25px;padding:30px}.feature-icon{font-size:2rem}}@media (max-width:480px){.login-page{padding:15px}.login-header{padding:30px 20px}.login-title{font-size:1.8rem}.login-subtitle{font-size:1rem}.login-form-container{padding:30px 20px}.form-group input,.google-signin-button,.submit-button{font-size:16px;padding:12px 15px}.login-features{gap:20px;padding:20px}}.login-form-container{animation:fadeIn .3s ease-in-out}.user-profile{background:#fff;color:#1f2937;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;min-height:100vh;padding:20px}.profile-container{margin:0 auto;max-width:800px}.profile-header{align-items:center;border-bottom:1px solid #0000000f;display:flex;gap:16px;margin-bottom:32px;padding-bottom:16px}.back-button{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;color:#475569;cursor:pointer;font-size:.9rem;font-weight:500;padding:8px 16px;transition:all .2s ease}.back-button:hover{background:#f1f5f9;border-color:#cbd5e1}.profile-header h1{color:#1f2937;font-size:2rem;font-weight:700;margin:0}.message{align-items:center;border-radius:8px;display:flex;font-size:.9rem;font-weight:500;justify-content:space-between;margin-bottom:24px;padding:12px 16px}.message.success{background:#dcfce7;border:1px solid #bbf7d0;color:#166534}.message.error{background:#fee2e2;border:1px solid #fecaca;color:#dc2626}.message button{align-items:center;background:none;border:none;color:inherit;cursor:pointer;display:flex;font-size:1.2rem;height:20px;justify-content:center;padding:0;width:20px}.profile-content{display:flex;flex-direction:column;gap:32px}.profile-section{background:#00000005;border:1px solid #0000000f;border-radius:12px;padding:24px}.profile-section h2{color:#1f2937;font-size:1.3rem;font-weight:600;margin:0 0 20px}.section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.edit-button{background:#667eea;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.85rem;font-weight:500;padding:8px 16px;transition:all .2s ease}.edit-button:hover{background:#5a67d8;transform:translateY(-1px)}.profile-picture-section{align-items:center;display:flex;flex-direction:column;gap:16px}.profile-picture{object-fit:cover}.profile-picture,.profile-picture-placeholder{border:4px solid #fff;border-radius:50%;box-shadow:0 4px 12px #0000001a;height:120px;width:120px}.profile-picture-placeholder{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;font-size:2.5rem;font-weight:700;justify-content:center}.profile-picture-note{color:#6b7280;font-size:.9rem;margin:0;text-align:center}.info-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.info-item{display:flex;flex-direction:column;gap:8px}.info-item label{color:#374151;font-size:.9rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.info-value{background:#fff;border:1px solid #e5e7eb;border-radius:6px;color:#1f2937;font-size:1rem;font-weight:500;padding:8px 12px}.info-value.roles{background:#f3e8ff;border-color:#d8b4fe;color:#7c3aed;font-weight:600}.google-badge{align-self:flex-start;background:#dcfce7;border-radius:12px;color:#166534;font-size:.75rem;font-weight:600;letter-spacing:.5px;margin-top:4px;text-transform:uppercase}.info-note{color:#6b7280;font-size:.85rem;font-style:italic;margin:0}.edit-form{display:flex;flex-direction:column;gap:20px}.form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{color:#374151;font-size:.9rem;font-weight:600}.form-input{border:1px solid #d1d5db;border-radius:6px;font-size:.9rem;outline:none;padding:10px 12px;transition:all .2s ease}.form-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-actions{display:flex;gap:12px;justify-content:flex-end}.save-button{background:#10b981;font-size:.9rem;padding:10px 20px}.save-button:hover{background:#059669}.cancel-button{font-size:.9rem;padding:10px 20px}@media (max-width:768px){.user-profile{padding:16px}.profile-header{align-items:flex-start;flex-direction:column;gap:12px}.profile-header h1{font-size:1.8rem}.profile-section{padding:20px}.info-grid{gap:16px}.form-row,.info-grid{grid-template-columns:1fr}.form-row{gap:12px}.form-actions{flex-direction:column}.cancel-button,.save-button{width:100%}.profile-picture,.profile-picture-placeholder{height:100px;width:100px}.profile-picture-placeholder{font-size:2rem}}@media (max-width:480px){.user-profile{padding:12px}.profile-section{padding:16px}.profile-header h1{font-size:1.6rem}}.finances-page{margin:0 auto;max-width:1200px;padding:20px}.finances-page .finances-header{margin-bottom:30px}.finances-page .finances-header h1{color:#1f2937;font-size:2rem;margin:0 0 8px}.finances-page .subtitle{color:#6b7280;font-size:1rem;margin:0}.finances-page .error-message{align-items:center;background:#fee2e2;border-radius:8px;color:#dc2626;display:flex;justify-content:space-between;margin-bottom:20px;padding:12px 16px}.finances-page .error-message button{background:none;border:none;color:#dc2626;cursor:pointer;font-size:1.5rem;margin-left:10px;padding:0}.finances-page .summary-cards{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:30px}.finances-page .summary-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:24px}.finances-page .summary-card h3{color:#6b7280;font-size:.9rem;letter-spacing:.5px;margin:0 0 12px;text-transform:uppercase}.finances-page .summary-card .amount{color:#1f2937;font-size:2rem;font-weight:700;margin:0}.finances-page .summary-card.owed .amount{color:#dc2626}.finances-page .summary-card.paid .amount{color:#16a34a}.finances-page .summary-card.anticipated .amount{color:#f59e0b}.finances-page .filters-section{align-items:flex-end;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;display:flex;flex-wrap:wrap;gap:20px;margin-bottom:30px;padding:20px}.finances-page .filter-group{display:flex;flex-direction:column;gap:8px}.finances-page .filter-group label{color:#6b7280;font-size:.9rem;font-weight:500}.finances-page .filter-select{background:#fff;border:1px solid #d1d5db;border-radius:8px;cursor:pointer;font-size:1rem;padding:10px 12px;transition:border-color .2s}.finances-page .filter-select:hover{border-color:#9ca3af}.finances-page .filter-select:focus{border-color:#3b82f6;outline:none}.finances-page .clear-filters-btn{background:#f3f4f6;border:1px solid #d1d5db;border-radius:8px;color:#6b7280;cursor:pointer;font-size:.9rem;padding:10px 20px;transition:all .2s}.finances-page .clear-filters-btn:hover{background:#e5e7eb;border-color:#9ca3af}.finances-page .section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.finances-page .section-header h2{margin:0}.finances-page .transactions-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:24px}.finances-page .transactions-section h2{color:#1f2937;font-size:1.5rem;margin:0 0 20px}.finances-page .empty-state{color:#6b7280;padding:60px 20px;text-align:center}.finances-page .empty-state p{font-size:1.1rem;margin:0}.finances-page .transactions-list{display:flex;flex-direction:column;gap:16px}.finances-page .transaction-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:20px;transition:all .2s}.finances-page .transaction-card:hover{border-color:#d1d5db;box-shadow:0 2px 8px #0000000f}.finances-page .transaction-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.finances-page .transaction-header h3{color:#1f2937;font-size:1.1rem;margin:0}.finances-page .transaction-type{border-radius:12px;font-size:.75rem;font-weight:600;letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.finances-page .transaction-type.owed{background:#fee2e2;color:#dc2626}.finances-page .transaction-type.paid{background:#dcfce7;color:#16a34a}.finances-page .transaction-type.anticipated{background:#fef3c7;color:#f59e0b}.finances-page .transaction-description{color:#6b7280;font-size:.9rem;margin:0 0 12px}.finances-page .transaction-details{display:flex;flex-direction:column;gap:8px}.finances-page .detail-item{align-items:center;display:flex;justify-content:space-between}.finances-page .detail-label{color:#6b7280;font-size:.9rem}.finances-page .detail-value{color:#1f2937;font-weight:500}.finances-page .event-link{background:none;border:none;color:#3b82f6;cursor:pointer;font-size:.9rem;font-weight:500;padding:0;text-decoration:underline;transition:color .2s}.finances-page .event-link:hover{color:#2563eb}.finances-page .loading-container{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:60px 20px}.finances-page .loading-spinner{animation:spin 1s linear infinite;border:4px solid #e5e7eb;border-radius:50%;border-top-color:#3b82f6;height:40px;width:40px}.finances-page .loading-container p{color:#6b7280;margin-top:16px}.finances-page .admin-finances-view{display:flex;flex-direction:column;gap:20px}.finances-page .admin-metrics{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(4,1fr)}.finances-page .metric-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:24px}.finances-page .metric-card h3{color:#6b7280;font-size:.9rem;letter-spacing:.5px;margin:0 0 12px;text-transform:uppercase}.finances-page .metric-value{color:#1f2937;font-size:2rem;font-weight:700;margin:0}.finances-page .metric-value.owed{color:#dc2626}.finances-page .metric-value.received{color:#16a34a}.finances-page .metric-value.paid{color:#f59e0b}.finances-page .metric-value.positive{color:#16a34a}.finances-page .metric-value.negative{color:#dc2626}.finances-page .admin-filters{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:20px}.finances-page .search-box{margin-bottom:16px}.finances-page .search-input{border:1px solid #d1d5db;border-radius:8px;font-size:1rem;padding:12px 16px;transition:border-color .2s;width:100%}.finances-page .search-input:focus{border-color:#f59e0b;outline:none}.finances-page .filter-controls{align-items:flex-end;display:flex;flex-wrap:wrap;gap:16px}.finances-page .events-table-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;overflow-x:auto;padding:24px}.finances-page .events-table{border-collapse:collapse;width:100%}.finances-page .events-table thead{background:#f9fafb}.finances-page .events-table th{border-bottom:2px solid #e5e7eb;color:#1f2937;font-size:.9rem;font-weight:600;letter-spacing:.5px;padding:12px 16px;text-align:left;text-transform:uppercase}.finances-page .events-table td{border-bottom:1px solid #e5e7eb;color:#6b7280;padding:12px 16px}.finances-page .events-table tbody tr:hover{background:#f9fafb}.finances-page .event-name{color:#1f2937;font-weight:500}.finances-page .amount-cell{color:#1f2937;font-weight:600}.finances-page .amount-cell.owed{color:#dc2626}.finances-page .amount-cell.received{color:#16a34a}.finances-page .amount-cell.paid{color:#f59e0b}.finances-page .amount-cell.positive{color:#16a34a}.finances-page .amount-cell.negative{color:#dc2626}.finances-page .empty-state-cell{color:#6b7280;font-style:italic;padding:40px 20px;text-align:center}.finances-page .view-event-btn-small{background:#f59e0b;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.85rem;font-weight:500;padding:6px 12px;transition:all .2s}.finances-page .view-event-btn-small:hover{background:#d97706;box-shadow:0 2px 4px #f59e0b4d;transform:translateY(-1px)}.finances-page .finances-tabs-container{margin-bottom:20px}.finances-page .finances-tabs{border-bottom:2px solid #e5e7eb;display:flex;gap:0}.finances-page .finances-tab{background:#fff;border:none;border-bottom:3px solid #0000;color:#6b7280;cursor:pointer;font-size:.95rem;font-weight:500;padding:12px 24px;position:relative;transition:all .2s}.finances-page .finances-tab:hover{background:#f9fafb;color:#1f2937}.finances-page .finances-tab.active{border-bottom-color:#f59e0b;color:#f59e0b;font-weight:600}.finances-page .finances-tab.active:hover{background:#fff}.finances-page .user-finances-dropdown{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;margin-bottom:20px;padding:20px}.finances-page .transactions-table-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;margin-top:20px;overflow-x:auto;padding:24px}.finances-page .transactions-table{border-collapse:collapse;width:100%}.finances-page .transactions-table thead{background:#f9fafb}.finances-page .transactions-table th{border-bottom:2px solid #e5e7eb;color:#1f2937;font-size:.9rem;font-weight:600;letter-spacing:.5px;padding:12px 16px;text-align:left;text-transform:uppercase}.finances-page .transactions-table td{border-bottom:1px solid #e5e7eb;color:#6b7280;padding:12px 16px}.finances-page .transactions-table tbody tr:hover{background:#f9fafb}.finances-page .transaction-name{color:#1f2937;font-weight:500}.finances-page .transaction-description-cell{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.finances-page .transaction-type-badge{border-radius:12px;display:inline-block;font-size:.75rem;font-weight:600;letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.finances-page .transaction-type-badge.paid,.finances-page .transaction-type-badge.received{background:#dcfce7;color:#16a34a}.finances-page .transaction-type-badge.amountdue,.finances-page .transaction-type-badge.expense_pending,.finances-page .transaction-type-badge.owed{background:#fee2e2;color:#dc2626}@media (max-width:768px){.finances-page{padding:16px}.finances-page .summary-cards{grid-template-columns:repeat(2,1fr)}.finances-page .filters-section{align-items:stretch;flex-direction:column}.finances-page .clear-filters-btn{align-self:flex-start}.finances-page .events-table-container{overflow-x:auto}.finances-page .events-table{min-width:800px}.finances-page .filter-controls{align-items:stretch;flex-direction:column}.finances-page .search-input{font-size:16px}.finances-page .admin-metrics{grid-template-columns:1fr}.finances-page .metric-value{font-size:1.5rem}}.finances-page .export-buttons{display:flex;gap:10px;justify-content:flex-end;margin-bottom:20px;margin-top:20px}.finances-page .export-btn{align-items:center;border:none;border-radius:5px;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:10px 20px;transition:all .3s ease}.finances-page .export-btn:hover{box-shadow:0 4px 8px #0003;transform:translateY(-2px)}.finances-page .csv-btn{background-color:#28a745;color:#fff}.finances-page .csv-btn:hover{background-color:#218838}.finances-page .pdf-btn{background-color:#dc3545;color:#fff}.finances-page .pdf-btn:hover{background-color:#c82333}@media (max-width:768px){.finances-page .export-buttons{flex-direction:column;justify-content:stretch}.finances-page .export-btn{justify-content:center;width:100%}}.loading-container{align-items:center;display:flex;flex-direction:column;gap:24px;justify-content:center;min-height:200px;padding:2rem}.loading-spinner{height:50px;width:50px}.loading-spinner:after{height:30px;width:30px}.loading-text{animation:pulse 2s ease-in-out infinite;color:#6b7280;font-size:16px;font-weight:500;letter-spacing:.3px}.board-container{background:#fff;min-height:100vh;padding:20px}.board-header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffe6;border:1px solid #0000000f;border-radius:12px;box-shadow:0 4px 12px #00000014;margin-bottom:20px;padding:20px;position:relative}.board-header:before{background:linear-gradient(90deg,#667eea,#764ba2);border-radius:12px 12px 0 0;content:"";height:2px;left:0;position:absolute;right:0;top:0}.board-header-content{display:flex;flex-direction:column;gap:16px}.board-title-section{align-items:center;display:flex;gap:16px;justify-content:space-between}.board-title{color:#1f2937;font-size:1.8rem;font-weight:700;line-height:1.2;margin:0}.header-right-section{gap:16px}.header-members,.header-right-section{align-items:center;display:flex}.board-settings-dropdown{position:relative}.settings-trigger{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;color:#475569;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:8px;padding:8px 16px;transition:all .2s ease}.settings-trigger:hover{background:#f1f5f9;border-color:#cbd5e1}.dropdown-arrow{font-size:.8rem;transition:transform .2s ease}.dropdown-arrow.open{transform:rotate(180deg)}.settings-dropdown-menu{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 10px 25px #0000001a;margin-top:12px;overflow:hidden;position:relative;width:100%}.dropdown-row{flex-wrap:wrap;gap:24px;padding:16px}.dropdown-item,.dropdown-row{align-items:center;display:flex}.dropdown-item{flex-shrink:0;gap:8px}.item-label{color:#6b7280;font-weight:600}.item-label,.item-value{font-size:.8rem;white-space:nowrap}.item-value{background:#0000000a;border-radius:6px;color:#374151;font-weight:500;padding:2px 8px}.board-actions{display:flex;flex-wrap:wrap;gap:8px}.action-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:.8rem;font-weight:500;gap:6px;padding:8px 14px;text-decoration:none;transition:all .2s ease}.btn-icon{font-size:.9rem}.edit-btn{background:#3b82f6;box-shadow:0 2px 4px #3b82f633;color:#fff}.edit-btn:hover{background:#2563eb;box-shadow:0 4px 8px #3b82f64d;transform:translateY(-1px)}.manage-btn{background:#8b5cf6;box-shadow:0 2px 4px #8b5cf633;color:#fff}.manage-btn:hover{background:#7c3aed;box-shadow:0 4px 8px #8b5cf64d;transform:translateY(-1px)}.delete-btn{background:#ef4444;box-shadow:0 2px 4px #ef444433;color:#fff}.delete-btn:hover{background:#dc2626;box-shadow:0 4px 8px #ef44444d;transform:translateY(-1px)}.dropdown-actions{display:flex;flex-wrap:wrap;gap:6px}.dropdown-action-btn{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:.75rem;font-weight:500;gap:4px;padding:6px 10px;transition:all .2s ease;white-space:nowrap}.dropdown-action-btn.edit-btn{background:#dbeafe;color:#1e40af}.dropdown-action-btn.edit-btn:hover{background:#bfdbfe}.dropdown-action-btn.manage-btn{background:#f3e8ff;color:#7c3aed}.dropdown-action-btn.manage-btn:hover{background:#e9d5ff}.dropdown-action-btn.delete-btn{background:#fee2e2;color:#dc2626}.dropdown-action-btn.delete-btn:hover{background:#fecaca}.members-inline{align-items:center;display:flex;gap:8px}.members-count{background:#667eea;border-radius:10px;color:#fff;font-size:.7rem;font-weight:600;padding:2px 6px}.members-avatars{display:flex;flex-wrap:wrap;gap:4px}.member-avatar-small{align-items:center;display:flex;position:relative}.avatar-circle-small{align-items:center;background:#667eea;border:1px solid #fff;border-radius:50%;box-shadow:0 1px 3px #0000001a;color:#fff;cursor:pointer;display:flex;font-size:.7rem;font-weight:600;height:24px;justify-content:center;transition:all .2s ease;width:24px}.avatar-circle-small:hover{box-shadow:0 2px 6px #00000026;transform:translateY(-1px)}.board-edit-mode{background:#3b82f60d;border:1px solid #3b82f633;border-radius:8px;padding:16px}.edit-input-container{display:flex;flex-direction:column;gap:12px}.board-name-input{background:#fff;border:1px solid #3b82f64d;border-radius:6px;font-size:1rem;font-weight:500;outline:none;padding:10px 14px;transition:all .2s ease}.board-name-input:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a}.edit-actions{display:flex;gap:8px;justify-content:flex-end}.save-board-btn{align-items:center;background:#10b981;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:.85rem;font-weight:500;gap:6px;padding:8px 16px;transition:all .2s ease}.save-board-btn:hover{background:#059669;transform:translateY(-1px)}.cancel-board-btn{align-items:center;background:#6b7280;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:.85rem;font-weight:500;gap:6px;padding:8px 16px;transition:all .2s ease}.cancel-board-btn:hover{background:#4b5563;transform:translateY(-1px)}.board{display:flex;gap:20px;min-height:calc(100vh - 200px);overflow-x:auto;padding:20px 0}.board::-webkit-scrollbar{height:8px}.board::-webkit-scrollbar-track{background:#ffffff1a;border-radius:4px}.board::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:4px}.board::-webkit-scrollbar-thumb:hover{background:#ffffff80}.board .column{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #fff3;border-radius:16px;box-shadow:0 8px 32px #0000001a;max-width:320px;min-width:320px;padding:20px;position:relative;transition:all .3s ease}.board .column.color-1{background:#667eea14;border-left:4px solid #667eea}.board .column.color-2{background:#10b98114;border-left:4px solid #40bd21}.board .column.color-3{background:#f59e0b14;border-left:4px solid #f59e0b}.board .column.color-4{background:#ef444414;border-left:4px solid #ef4444}.board .column.color-5{background:#8b5cf614;border-left:4px solid #8b5cf6}.board .column.color-6{background:#ec489914;border-left:4px solid #ec4899}.board .column.color-7{background:#06b6d414;border-left:4px solid #06b6d4}.board .column.color-8{background:#22c55e14;border-left:4px solid #22c55e}.board .column.color-9{background:#fb923c14;border-left:4px solid #fb923c}.board .column.color-10{background:#a855f714;border-left:4px solid #a855f7}.board .column:hover{box-shadow:0 12px 40px #00000026;transform:translateY(-4px)}.board .column.highlight-left{border-left:4px solid #10b981;box-shadow:0 8px 32px #10b98133}.board .columnHeading{align-items:center;border-bottom:none;border-radius:12px;display:flex;justify-content:space-between;margin:-8px -8px 20px;padding:12px 16px}.board .column.color-1 .columnHeading{background:#667eea26;border:1px solid #667eea33}.board .column.color-2 .columnHeading{background:#10b98126;border:1px solid #10b98133}.board .column.color-3 .columnHeading{background:#f59e0b26;border:1px solid #f59e0b33}.board .column.color-4 .columnHeading{background:#ef444426;border:1px solid #ef444433}.board .column.color-5 .columnHeading{background:#8b5cf626;border:1px solid #8b5cf633}.board .column.color-6 .columnHeading{background:#ec489926;border:1px solid #ec489933}.board .column.color-7 .columnHeading{background:#06b6d426;border:1px solid #06b6d433}.board .column.color-8 .columnHeading{background:#22c55e26;border:1px solid #22c55e33}.board .column.color-9 .columnHeading{background:#fb923c26;border:1px solid #fb923c33}.board .column.color-10 .columnHeading{background:#a855f726;border:1px solid #a855f733}.board .columnHeading .columnTitle{color:#374151;flex:1 1;font-size:1.1rem;font-weight:600}.board .columnHeading .columnSize{background:#ffffffe6;border:1px solid #0000001a;border-radius:20px;box-shadow:0 2px 4px #0000001a;color:#374151;font-size:.85rem;font-weight:600;min-width:24px;padding:4px 12px;text-align:center}.board .columnHeading .columnActions{align-items:center;display:flex;gap:8px;margin-left:8px;position:relative}.add-ticket-header-btn{align-items:center;background:#667eea1a;border:1px solid #667eea4d;border-radius:6px;color:#667eea;cursor:pointer;display:flex;font-size:16px;height:28px;justify-content:center;min-width:28px;padding:6px 8px;transition:all .3s ease}.add-ticket-header-btn:hover{background:#667eea33;border-color:#667eea;color:#5a67d8;transform:scale(1.1)}.add-ticket-header-btn:active{transform:scale(.95)}.add-ticket-header-btn svg{height:16px;width:16px}.board .columnHeading .more-icon{border-radius:6px;color:#9ca3af;cursor:pointer;padding:4px;transition:all .3s ease}.board .columnHeading .more-icon:hover{background:#667eea1a;color:#667eea}.board .columnHeading .sort-wrapper{display:inline-block;position:relative}.board .columnHeading .sort-button{background:none;border:none;border-radius:6px;color:#9ca3af;cursor:pointer;font-size:16px;padding:4px 8px;transition:all .3s ease}.board .columnHeading .sort-button:hover{background:#667eea1a;color:#667eea}.board .columnHeading .toggle-completed-button{background:#10b9811a;border:1px solid #10b9814d;border-radius:6px;color:#10b981;cursor:pointer;font-size:.75rem;font-weight:500;padding:6px 12px;transition:all .3s ease;white-space:nowrap}.board .columnHeading .toggle-completed-button:hover{background:#10b98133;border-color:#10b98180;color:#059669}.sort-dropdown{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 10px 25px #00000026;margin-top:4px;min-width:150px;position:absolute;right:0;top:100%;z-index:1000}.sort-dropdown .sort-option{background:none;border:none;color:#374151;cursor:pointer;font-size:.9rem;padding:12px 16px;text-align:left;transition:background-color .2s ease;width:100%}.sort-dropdown .sort-option:hover{background:#f9fafb}.sort-dropdown .sort-option.active{background:#eef2ff;color:#667eea;font-weight:600}.board-search-wrapper{align-items:center;display:flex;gap:8px;margin:12px 0;max-width:500px;position:relative}.board-search-input{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;color:#475569;flex:1 1;font-size:.9rem;padding:10px 40px 10px 16px;transition:all .2s ease}.board-search-input:focus{background:#fff;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.board-search-input::placeholder{color:#94a3b8}.clear-search-btn{align-items:center;background:#cbd5e1;border:none;border-radius:50%;color:#475569;cursor:pointer;display:flex;font-size:18px;height:24px;justify-content:center;position:absolute;right:8px;transition:all .2s ease;width:24px}.clear-search-btn:hover{background:#94a3b8;color:#fff}.board-sort-wrapper{display:inline-block;margin:12px 0;position:relative}.board-sort-button{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;color:#475569;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:6px;padding:8px 16px;transition:all .2s ease}.board-sort-button:hover{background:#f1f5f9;border-color:#cbd5e1}.board-sort-dropdown{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 10px 25px #00000026;left:0;margin-top:4px;min-width:180px;position:absolute;top:100%;z-index:1000}.board-sort-dropdown .sort-option{background:none;border:none;color:#374151;cursor:pointer;font-size:.9rem;padding:12px 16px;text-align:left;transition:background-color .2s ease;width:100%}.board-sort-dropdown .sort-option:hover{background:#f9fafb}.board-sort-dropdown .sort-option.active{background:#eef2ff;color:#667eea;font-weight:600}.dropdown-menu{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 10px 25px #00000026;min-width:120px;overflow:hidden;position:absolute;right:0;top:100%;z-index:1000}.dropdown-menu button{background:none;border:none;color:#374151;cursor:pointer;font-size:.9rem;padding:12px 16px;text-align:left;transition:background-color .2s ease;width:100%}.dropdown-menu button:hover{background:#f9fafb}.dropdown-menu button:first-child{border-bottom:1px solid #f3f4f6}.board .columnHeading>div:first-child{border-radius:4px;color:#9ca3af;cursor:grab;padding:4px;transition:all .3s ease}.board .columnHeading>div:first-child:hover{background:#667eea1a;color:#667eea}.board .columnHeading>div:first-child:active{cursor:grabbing}.board .ticket{background:#fff;border:1px solid #f3f4f6;border-radius:12px;box-shadow:0 2px 8px #00000014;cursor:pointer;margin-bottom:12px;overflow:hidden;padding:16px;position:relative;transition:all .3s ease}.board .ticket:hover{border-color:#667eea;box-shadow:0 4px 16px #0000001f;transform:translateY(-2px)}.board .ticket:active{transform:scale(.98)}.board .ticket:before{background:linear-gradient(135deg,#667eea,#764ba2);content:"";height:3px;left:0;position:absolute;right:0;top:0}.board .ticket[draggable=true]{cursor:grab}.board .ticket[draggable=true]:active{cursor:grabbing;opacity:.8}.board .add-ticket-button{background:#667eea1a;border:2px dashed #667eea;border-radius:8px;color:#667eea;cursor:pointer;font-size:.9rem;font-weight:500;margin-top:8px;padding:12px;transition:all .3s ease;width:100%}.board .add-ticket-button:hover{background:#667eea33;border-color:#5a67d8;color:#5a67d8}.board .add-column{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffb3;border:2px dashed #d1d5db;border-radius:16px;color:#9ca3af;cursor:pointer;display:flex;font-size:1.1rem;font-weight:500;justify-content:center;max-width:320px;min-width:320px;transition:all .3s ease}.board .add-column:hover{background:#667eea1a;border-color:#667eea;color:#667eea;transform:translateY(-2px)}.board .add-column svg{font-size:2rem;margin-right:8px}@media (max-width:768px){.board{flex-direction:column;gap:16px}.board .add-column,.board .column{max-width:100%;min-width:100%}.board-header{margin-bottom:20px;padding:20px}.board-title{font-size:2.2rem}.board-title-section{flex-direction:column;gap:16px}.board-actions{justify-content:flex-start}.action-btn{font-size:.85rem;padding:10px 16px}.board-meta{flex-direction:column;gap:8px}.meta-item{font-size:.9rem;padding:6px 12px}.members-avatars{justify-content:center}.avatar-circle{font-size:1rem;height:40px;width:40px}.edit-input-container{gap:12px}.board-name-input{font-size:1.1rem;padding:14px 18px}.edit-actions{flex-direction:column}.cancel-board-btn,.save-board-btn{justify-content:center;width:100%}}.board .column:empty:after{color:#9ca3af;content:"No tickets yet";display:block;font-style:italic;padding:20px;text-align:center}@keyframes dragOver{0%{transform:scale(1)}50%{transform:scale(1.02)}to{transform:scale(1)}}.board .column.drag-over{animation:dragOver .3s ease}.ticket-wrapper{margin-bottom:8px;position:relative}.ticket-wrapper.dragging{opacity:.5;transform:rotate(2deg)}.ticket-wrapper.drag-over{z-index:10}.drop-indicator{animation:pulse 1s infinite;background:linear-gradient(90deg,#667eea,#764ba2);border-radius:2px;box-shadow:0 0 8px #667eea99;height:3px;margin:2px 0}.drop-indicator.drop-above{margin-bottom:4px}.drop-indicator.drop-below{margin-top:4px}.modal-content{max-width:600px}.payment-section{border-top:1px solid #e5e7eb;margin-top:20px;padding-top:20px}.payment-section h3{color:#1f2937;font-size:1.2rem;font-weight:600;margin:0 0 15px}.payment-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.photo-upload-section{display:flex;flex-direction:column;gap:12px}.photo-upload-btn{align-items:center;background:#f4f5f7;border:1px solid #e1e5e9;border-radius:6px;color:#172b4d;cursor:pointer;display:inline-flex;font-size:14px;gap:8px;padding:10px 16px;transition:background-color .2s;width:fit-content}.photo-upload-btn:hover:not(:disabled){background:#e1e5e9}.photo-upload-btn:disabled{cursor:not-allowed;opacity:.6}.uploaded-photos-preview{margin-top:8px}.remove-photo-btn{transition:background-color .2s}.modal-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content.jira-style{background:#fff;border-radius:8px;box-shadow:0 8px 32px #0003;box-sizing:border-box;display:flex;flex-direction:column;height:85vh;max-height:700px;max-width:1000px;overflow:hidden;width:85vw}.modal-header{background:#f7f8f9;border-bottom:1px solid #e1e5e9;padding:16px 24px}.header-left{gap:16px;width:100%}.mobile-header-row{display:none}.desktop-actions,.desktop-close{display:block}.ticket-title-header{flex:1 1;min-width:0}.title-header{line-height:1.2;margin:0}.title-header,.title-input-header{color:#172b4d;font-size:20px;font-weight:600}.title-input-header{background:#fff;border:2px solid #0052cc;border-radius:4px;padding:8px 12px;width:100%}.title-input-header:focus{border-color:#0052cc;box-shadow:0 0 0 2px #0052cc33;outline:none}.close-button{background:none;border:none;border-radius:4px;color:#6b778c;cursor:pointer;font-size:24px;padding:4px;transition:background-color .2s}.close-button:hover{background-color:#e1e5e9}.action-buttons{flex-shrink:0}.primary-btn{background:#0052cc;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;min-width:80px;padding:8px 16px;transition:background-color .2s;width:80px}.primary-btn:hover{background:#0065ff}.danger-btn{background:#de350b;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;min-width:80px;padding:8px 16px;transition:background-color .2s;width:80px}.danger-btn:hover{background:#ff5630}.modal-body{display:flex;flex:1 1;min-height:0;overflow:hidden}.main-content{border-right:1px solid #e1e5e9;flex:1 1;min-height:0}.main-content,.sidebar{box-sizing:border-box;overflow-y:auto;padding:24px}.sidebar{background:#f7f8f9;width:300px}.dates-row{display:flex;flex-direction:column;gap:12px}.date-item-row{align-items:center;display:flex;flex-direction:row;gap:8px}.date-label{color:#6b778c;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.date-input{width:100%}.ticket-description{margin-bottom:24px}.ticket-description h3{color:#172b4d;font-size:16px;font-weight:600;margin:0 0 8px}.url-content{color:#172b4d;font-size:14px;line-height:1.4;text-align:left}.url-link{align-items:center;color:#0052cc;display:inline-flex;gap:4px;text-decoration:none;word-break:break-all}.url-link:hover{text-decoration:underline}.external-link-icon{flex-shrink:0;font-size:12px;opacity:.7}.description-content{word-wrap:break-word;background:#f7f8f9;border:1px solid #e1e5e9;border-radius:4px;overflow-wrap:break-word;white-space:pre-wrap}.description-content,.description-textarea{color:#172b4d;font-size:14px;line-height:1.5;min-height:120px;padding:16px}.description-textarea{background:#fff;border:2px solid #0052cc;border-radius:4px;font-family:inherit;resize:vertical;width:100%}.description-textarea:focus{border-color:#0052cc;box-shadow:0 0 0 2px #0052cc33;outline:none}.tabs-section{margin-top:24px}.tab-buttons{border-bottom:1px solid #e1e5e9;display:flex;margin-bottom:16px}.tab-button{background:none;border:none;border-bottom:2px solid #0000;color:#6b778c;cursor:pointer;font-size:14px;font-weight:500;padding:12px 16px;transition:all .2s}.tab-button:hover{background:#f7f8f9;color:#172b4d}.tab-button.active{border-bottom-color:#0052cc;color:#0052cc}.tab-content{min-height:200px}.comments-section{align-items:flex-start;display:flex;flex-direction:column;gap:16px}.comment-item,.comments-section{box-sizing:border-box;text-align:left;width:100%}.comment-item{background:#f7f8f9;border:1px solid #e1e5e9;border-radius:8px;overflow:visible;padding:16px}.comment-header{align-items:center;box-sizing:border-box;display:flex;justify-content:space-around;margin-bottom:8px;width:100%}.comment-author{align-items:center;display:flex;flex:1 1;gap:8px;min-width:0}.comment-date{color:#6b778c;margin-right:16px}.comment-date,.delete-comment-btn{flex-shrink:0;font-size:12px;white-space:nowrap}.delete-comment-btn{background:#f44;border:none;border-radius:4px;color:#fff;cursor:pointer;display:inline-block;font-weight:500;opacity:1;padding:6px 12px;position:relative;transition:background-color .2s;visibility:visible;z-index:1}.delete-comment-btn:disabled{cursor:not-allowed;opacity:.3}.delete-comment-btn:hover{background-color:#c00}.author-avatar{align-items:center;background:#0052cc;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:12px;font-weight:600;height:32px;justify-content:center;width:32px}.author-name{color:#172b4d;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.comment-text{word-wrap:break-word;color:#172b4d;line-height:1.5;overflow-wrap:break-word;text-align:left;white-space:pre-wrap;width:100%}.no-comments{color:#6b778c;font-style:italic;padding:40px 20px;text-align:center}.history-section{display:flex;flex-direction:column;gap:16px}.history-item{background:#f7f8f9;border:1px solid #e1e5e9;border-radius:8px;padding:16px}.history-header{justify-content:space-between;margin-bottom:8px}.history-header,.history-user{align-items:center;display:flex}.history-user{gap:8px}.user-avatar{align-items:center;background:#0052cc;color:#fff;display:flex;font-size:12px;font-weight:600;justify-content:center}.user-name{color:#172b4d;font-weight:600}.history-date{color:#6b778c;font-size:12px}.history-notes{color:#172b4d;line-height:1.5}.no-history{color:#6b778c;font-style:italic;padding:40px 20px;text-align:center}.sidebar-section{margin-bottom:24px}.sidebar-section h4{color:#6b778c;font-size:14px;font-weight:600;letter-spacing:.5px;margin:0 0 8px;text-align:left;text-transform:uppercase}.sidebar-input{background:#fff;border:1px solid #e1e5e9;border-radius:4px;font-size:14px;padding:8px 12px;width:100%}.sidebar-input:focus{border-color:#0052cc;box-shadow:0 0 0 2px #0052cc33;outline:none}.assignee-info,.user-info{align-items:center;display:flex}.user-info{gap:8px}.unassigned{color:#6b778c;font-style:italic}.status-info{align-items:center;display:flex}.status-badge{background:#e1e5e9;border-radius:12px;color:#172b4d;font-size:12px;font-weight:600;letter-spacing:.5px;padding:4px 8px;text-transform:uppercase}.status-dropdown-wrapper{position:relative}.status-dropdown-button{align-items:center;background:#0000;border:none;cursor:pointer;display:flex;gap:8px;justify-content:space-between;padding:0;width:100%}.status-dropdown-button .dropdown-arrow{color:#6b778c;font-size:10px;transition:transform .2s ease}.status-dropdown-button:hover .dropdown-arrow{color:#172b4d}.status-dropdown-menu{background:#fff;border:1px solid #e1e5e9;border-radius:6px;box-shadow:0 4px 12px #00000026;left:0;margin-top:4px;max-height:200px;min-width:200px;overflow-y:auto;position:absolute;right:0;top:100%;width:max-content;z-index:1000}.status-dropdown-item{background:none;border:none;color:#172b4d;cursor:pointer;display:block;font-size:14px;padding:8px 12px;text-align:left;transition:background-color .2s ease;width:100%}.status-dropdown-item:hover{background-color:#f7f8f9}.status-dropdown-item.active{background-color:#e1e5e9;font-weight:600}.status-dropdown-item.active:hover{background-color:#d1d5d9}.priority-info{align-items:center;display:flex}.priority-badge{border-radius:12px;font-size:12px;font-weight:600;letter-spacing:.5px;padding:4px 8px;text-transform:uppercase}.priority-badge.priority-high{background:#ffebee;border:1px solid #ef5350;color:#c62828}.priority-badge.priority-medium{background:#fff3e0;border:1px solid #ff9800;color:#ef6c00}.priority-badge.priority-low{background:#e8f5e8;border:1px solid #4caf50;color:#2e7d32}.no-priority{color:#6b778c;font-style:italic}.date-info{color:#172b4d;font-size:14px}.visible-to-users{display:flex;flex-direction:column;gap:8px}.user-avatars{display:flex;flex-wrap:wrap;gap:4px}.user-avatar-small{align-items:center;background:#0052cc;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:10px;font-weight:600;height:24px;justify-content:center;transition:transform .2s;width:24px}.user-avatar-small:hover{transform:scale(1.1)}.all-users{color:#6b778c;font-style:italic}.labels{display:flex;flex-wrap:wrap;gap:4px}.label-tag{background:#e1e5e9;border-radius:12px;color:#172b4d;font-size:12px;font-weight:500;padding:4px 8px}.no-labels{color:#6b778c;font-style:italic}.main-tabs{display:none}.main-tab-button{background:none;border:none;border-bottom:2px solid #0000;color:#6b778c;cursor:pointer;font-size:14px;font-weight:500;padding:12px 16px;transition:all .2s}.main-tab-button:hover{color:#172b4d}.main-tab-button.active{border-bottom-color:#0052cc;color:#0052cc}.show{display:block}.hide{display:none}.desktop-only{display:block}.mobile-only{display:none}@media (max-width:768px){.modal-content.jira-style{display:flex;flex-direction:column;height:95vh;max-height:none;max-width:none;width:95vw}.main-tabs.mobile-only{border-bottom:1px solid #e1e5e9;display:flex;width:100%}.desktop-only{display:none!important}.main-content.show,.mobile-only{display:block}.main-content.hide,.sidebar.desktop-only.hide{display:none}.sidebar.desktop-only.show{background:#f7f8f9;border-right:none;border-top:none;display:block!important;overflow-y:visible;padding:16px;width:100%}.modal-header{align-items:flex-start;flex-shrink:0;min-height:auto;position:relative;z-index:1}.header-left,.modal-header{flex-direction:column;gap:12px}.header-left{display:flex;width:100%}.desktop-actions,.desktop-close{display:none!important}.mobile-header-row{align-items:flex-start;display:flex;justify-content:space-between;width:100%}.ticket-title-header{order:-1;width:100%}.mobile-actions{align-items:flex-start;display:flex;flex-direction:column;gap:8px}.mobile-close{align-self:flex-start;flex-shrink:0}.modal-body{display:flex;flex:1 1;flex-direction:column;min-height:0;overflow-y:auto}.main-content{border-right:none;flex-shrink:0;overflow-y:visible;position:relative}.status-dropdown-menu{max-width:100%;width:100%}.url-link{word-break:break-all}.comment-photos,.photo-preview-grid,.ticket-photos-grid{-webkit-overflow-scrolling:touch;overflow-x:auto}.comment-textarea{box-sizing:border-box;width:100%}.status-dropdown-button{width:100%}.ticket-description{margin-bottom:24px;margin-top:16px}.ticket-description h3{margin-bottom:8px;margin-top:8px}.sidebar-section{margin-bottom:16px}.sidebar-section h4{font-size:12px;margin-bottom:6px}.user-avatar,.user-avatar-small{font-size:9px;height:20px;width:20px}.author-avatar{font-size:10px;height:24px;width:24px}.label-tag,.priority-badge,.status-badge{font-size:10px;padding:2px 6px}}@media (max-width:480px){.modal-content.jira-style{border-radius:0;height:100vh;width:100vw}.modal-overlay{padding:0}.main-content,.sidebar{padding:16px}.modal-header{padding:12px 16px}.title-header{font-size:18px}.danger-btn,.primary-btn{font-size:13px;padding:6px 12px}.comment-textarea{min-height:60px}.description-content{min-height:80px}}.add-comment-section{background:#f7f8f9;border:1px solid #e1e5e9;border-radius:8px;box-sizing:border-box;margin-bottom:20px;padding:16px;width:100%}.comment-form{display:flex;flex-direction:column;gap:12px}.comment-form,.comment-textarea{box-sizing:border-box;width:100%}.comment-textarea{border:1px solid #e1e5e9;border-radius:6px;font-family:inherit;font-size:14px;min-height:80px;padding:12px;resize:vertical}.comment-textarea:focus{border-color:#0052cc;box-shadow:0 0 0 2px #0052cc1a;outline:none}.helper-text{color:#6b778c;display:block;font-size:12px;font-style:italic;line-height:1.4;margin-top:6px}.comment-actions{box-sizing:border-box;gap:12px;justify-content:space-between;width:100%}.comment-actions,.photo-upload{align-items:center;display:flex}.photo-upload{gap:8px}.photo-input{display:none}.photo-upload-label{align-items:center;background:#f4f5f7;border:1px solid #e1e5e9;border-radius:6px;color:#172b4d;cursor:pointer;display:flex;font-size:14px;gap:4px;padding:8px 12px;transition:background-color .2s}.photo-upload-label:hover{background:#e1e5e9}.uploading-indicator{align-items:center;background-color:#e3f2fd;border:1px solid #2196f3;border-radius:4px;color:#1976d2;display:flex;font-size:14px;gap:8px;margin-top:8px;padding:8px 12px}.uploading-indicator:before{animation:spin 1s linear infinite;content:"⏳"}.photo-count{color:#6b778c;font-size:12px;font-style:italic}.submit-comment-btn{background:#0052cc;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:background-color .2s}.submit-comment-btn:hover:not(:disabled){background:#0040a3}.submit-comment-btn:disabled{background:#c1c7d0;cursor:not-allowed}.comment-photos{align-items:flex-start;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-start;margin-top:12px}.comment-photo{border:1px solid #e1e5e9;border-radius:6px;cursor:pointer;height:auto;max-height:150px;max-width:150px;transition:transform .2s;width:auto}.comment-photo:hover{box-shadow:0 4px 12px #00000026;transform:scale(1.05)}@media (max-width:768px){.comment-photo{height:auto;max-width:100%}}.selected-photos-preview{margin-top:12px}.photo-preview-grid{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.photo-preview-item{display:inline-block;position:relative}.photo-preview{border:1px solid #e1e5e9;border-radius:6px;cursor:pointer;height:60px;object-fit:cover;transition:transform .2s;width:60px}.photo-preview:hover{box-shadow:0 2px 8px #00000026;transform:scale(1.05)}.remove-photo-btn{align-items:center;background:#f44;border:none;border-radius:50%;box-shadow:0 2px 4px #0003;color:#fff;cursor:pointer;display:flex;font-size:12px;font-weight:700;height:20px;justify-content:center;position:absolute;right:-8px;top:-8px;width:20px}.remove-photo-btn:hover{background:#c00}.ticket-photos{margin-top:16px}.ticket-photos h4{color:#172b4d;font-size:14px;font-weight:600;margin:0 0 12px}.ticket-photos-grid{display:flex;flex-wrap:wrap;gap:12px}.ticket-photo-item{display:inline-block;position:relative}.ticket-photo{border:1px solid #e1e5e9;border-radius:8px;cursor:pointer;height:120px;object-fit:cover;transition:transform .2s,box-shadow .2s;width:120px}.ticket-photo:hover{box-shadow:0 4px 12px #00000026;transform:scale(1.05)}@media (max-width:768px){.ticket-photo{height:auto;max-height:200px;max-width:100%;width:100%}}.remove-ticket-photo-btn{align-items:center;background:#f44;border:none;border-radius:50%;box-shadow:0 2px 4px #0003;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:700;height:24px;justify-content:center;position:absolute;right:-8px;top:-8px;transition:background-color .2s;width:24px}.remove-ticket-photo-btn:hover{background:#c00}.url-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.edit-url-btn{background:none;border:none;border-radius:4px;cursor:pointer;font-size:14px;padding:4px;transition:background-color .2s ease}.edit-url-btn:hover{background-color:#f0f0f0}.url-edit-form{display:flex;flex-direction:column;gap:8px}.url-input{border:1px solid #d1d5db;border-radius:4px;box-sizing:border-box;font-size:14px;padding:8px 12px;width:100%}.url-edit-buttons{display:flex;gap:8px}.save-url-btn{background-color:#10b981;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;font-weight:500;padding:6px 12px;transition:background-color .2s ease}.save-url-btn:hover{background-color:#059669}.cancel-url-btn{background-color:#6b7280;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;font-weight:500;padding:6px 12px;transition:background-color .2s ease}.cancel-url-btn:hover{background-color:#4b5563}.image-modal-overlay{background:#000000e6;bottom:0;box-sizing:border-box;left:0;padding:20px;position:fixed;right:0;top:0;z-index:10000}.image-modal-content,.image-modal-overlay{align-items:center;display:flex;justify-content:center}.image-modal-content{max-height:90vh;max-width:90vw;position:relative}.image-modal-close{align-items:center;background:#ffffffe6;border:none;border-radius:50%;color:#172b4d;cursor:pointer;display:flex;font-size:24px;height:36px;justify-content:center;line-height:1;position:absolute;right:0;top:-40px;transition:all .2s ease;width:36px;z-index:10001}.image-modal-close:hover{background:#fff;transform:scale(1.1)}.image-modal-image{border-radius:8px;box-shadow:0 8px 32px #00000080;max-height:90vh;max-width:100%;object-fit:contain}.delete-confirmation-modal{height:auto;max-height:none;max-width:400px;padding:24px;width:auto}.delete-confirmation-modal h2{color:#172b4d;font-size:20px;font-weight:600;margin:0 0 16px}.delete-confirmation-modal p{color:#6b778c;line-height:1.5;margin:0 0 24px}.delete-confirmation-modal .modal-buttons{display:flex;gap:12px;justify-content:flex-end;margin-top:0}.modal-content p{color:#6b7280;font-size:1rem;line-height:1.5;margin:0 0 25px;text-align:center}.loading-overlay{align-items:center;animation:fadeIn .3s ease-in;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#667eeaf2,#764ba2f2);display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:9999}.loading-content{animation:slideUp .4s ease-out;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffffa;border-radius:24px;box-shadow:0 20px 60px #0000004d,0 0 0 1px #ffffff1a;min-width:280px;padding:3rem 2.5rem;text-align:center}.loading-spinner{height:60px;margin:0 auto 1.5rem;position:relative;width:60px}.loading-spinner:before{animation:spin .8s cubic-bezier(.68,-.55,.265,1.55) infinite;border-right:4px solid #667eea1a;border-top:4px solid #667eea1a;border-color:#667eea #764ba2 #667eea1a #667eea1a;border-radius:50%;border-style:solid;border-width:4px;content:"";height:100%;position:absolute;width:100%}.loading-spinner:after{animation:spinReverse 1s linear infinite;border-left:3px solid #764ba21a;border-top:3px solid #764ba21a;border-color:#764ba2 #764ba21a #764ba21a #667eea;border-radius:50%;border-style:solid;border-width:3px;content:"";height:40px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:40px}.loading-message{animation:pulse 2s ease-in-out infinite;color:#4b5563;font-size:1.1rem;font-weight:600;letter-spacing:.3px;margin:0}@keyframes spinReverse{0%{transform:translate(-50%,-50%) rotate(1turn)}to{transform:translate(-50%,-50%) rotate(0deg)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.ticket-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 1px 3px #0000001a;cursor:pointer;margin-bottom:8px;padding:12px;transition:all .2s ease}.ticket-card:hover{border-color:#d1d5db;box-shadow:0 4px 12px #00000026;transform:translateY(-1px)}.ticket-card:active{box-shadow:0 2px 6px #0000001a;transform:translateY(0)}.ticket-header{margin-bottom:4px}.ticket-title-row{align-items:flex-start;display:flex;gap:8px;justify-content:space-between}.ticket-name{color:#1f2937;flex:1 1;font-size:14px;font-weight:600;line-height:1.4;word-break:break-word}.ticket-priority{border-radius:8px;flex-shrink:0;font-size:10px;font-weight:600;letter-spacing:.5px;padding:2px 6px;text-transform:uppercase;white-space:nowrap}.ticket-priority.priority-high{background:#ffebee;border:1px solid #ef5350;color:#c62828}.ticket-priority.priority-medium{background:#fff3e0;border:1px solid #ff9800;color:#ef6c00}.ticket-priority.priority-low{background:#e8f5e8;border:1px solid #4caf50;color:#2e7d32}.ticket-project{color:#6b778c;font-size:12px;font-weight:500;margin-bottom:6px}.ticket-description{word-wrap:break-word;color:#6b7280;font-size:.85rem;line-height:1.4;margin-bottom:8px}.ticket-footer{color:#9ca3af;display:flex;flex-direction:column;font-size:.8rem;gap:4px;margin-top:8px}.ticket-footer-row{align-items:center;display:flex;flex-wrap:wrap;gap:4px;justify-content:space-between}.ticket-id{background:#f3f4f6;border-radius:4px;font-family:Courier New,monospace;font-size:.75rem;padding:2px 6px}.ticket-due-date{font-size:.75rem;font-weight:500}.ticket-due-date.overdue{color:#ef4444}.ticket-due-date.upcoming{color:#10b981}.ticket-assignee{background:#eef2ff;color:#6366f1}.ticket-assignee,.ticket-status{align-items:center;border-radius:4px;display:flex;font-size:.75rem;font-weight:500;gap:2px;padding:2px 6px}.ticket-status{background:#ecfdf5;color:#059669}.ticket-card[draggable=true]{-webkit-user-select:none;user-select:none}.ticket-card.dragging{opacity:.5;transform:rotate(5deg)}@media (max-width:768px){.ticket-card{margin-bottom:6px;padding:10px}.ticket-name{font-size:13px}.ticket-priority{font-size:9px;padding:1px 4px}.ticket-description{font-size:.8rem}.ticket-footer{font-size:.75rem}}.user-permissions-modal{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #00000014;border-radius:12px;box-shadow:0 8px 25px #0000001a;max-height:80vh;max-width:600px;overflow-y:auto;position:relative;width:90%}.user-permissions-modal:before{background:linear-gradient(90deg,#8b5cf6,#7c3aed);border-radius:12px 12px 0 0;content:"";height:2px;left:0;position:absolute;right:0;top:0}.modal-header{align-items:center;border-bottom:1px solid #8b5cf61a;display:flex;justify-content:space-between;margin-bottom:20px;padding:20px 20px 16px}.modal-header h2{color:#1f2937;font-size:1.4rem;font-weight:600;margin:0}.permissions-list{margin-bottom:20px;padding:0 20px}.permission-item{align-items:center;background:#fff9;border:1px solid #8b5cf61a;border-radius:8px;display:flex;gap:12px;margin-bottom:8px;padding:14px;transition:all .2s ease}.permission-item:hover{border-color:#8b5cf633;box-shadow:0 4px 12px #8b5cf61a;transform:translateY(-1px)}.user-select{flex:1 1;min-width:200px}.role-select{min-width:120px}.role-select select{background:#fff;border:1px solid #8b5cf633;border-radius:6px;cursor:pointer;font-size:13px;font-weight:500;outline:none;padding:8px 12px;transition:all .2s ease;width:100%}.role-select select:focus{border-color:#8b5cf6;box-shadow:0 0 0 2px #8b5cf61a}.remove-button{align-items:center;background:#ef4444;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:12px;font-weight:500;gap:4px;padding:6px 12px;transition:all .2s ease}.remove-button:before{content:"🗑️";font-size:10px}.remove-button:hover{background:#dc2626;transform:translateY(-1px)}.modal-actions{align-items:center;background:#f8fafc4d;border-radius:0 0 12px 12px;border-top:1px solid #8b5cf61a;display:flex;justify-content:space-between;padding:20px}.add-user-button{align-items:center;background:#10b981;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:6px;padding:8px 16px;transition:all .2s ease}.add-user-button:before{content:"👤";font-size:14px}.add-user-button:hover{background:#059669;transform:translateY(-1px)}.action-buttons{display:flex;gap:8px}.cancel-button{align-items:center;background:#6b7280;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:6px;padding:8px 16px;transition:all .2s ease}.cancel-button:before{content:"✕";font-size:14px}.cancel-button:hover{background:#4b5563;transform:translateY(-1px)}.save-button{align-items:center;background:#8b5cf6;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:6px;padding:8px 16px;transition:all .2s ease}.save-button:before{content:"✓";font-size:14px}.save-button:hover{background:#7c3aed;transform:translateY(-1px)}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#3b82f6;height:40px;margin:0 auto 1rem;width:40px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:768px){.user-permissions-modal{margin:10px;width:95%}.permission-item{align-items:stretch;flex-direction:column;gap:8px}.role-select,.user-select{min-width:auto}.modal-actions{flex-direction:column;gap:12px}.action-buttons{justify-content:stretch;width:100%}.action-buttons button{flex:1 1}}.view-tabs{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffe6;border:1px solid #0000000f;border-radius:12px;box-shadow:0 4px 12px #00000014;margin-bottom:16px;padding:12px}.view-tabs-header{margin-bottom:12px;text-align:center}.view-tabs-header h3{color:#1f2937;font-size:1.1rem;font-weight:600;margin:0 0 4px}.view-tabs-header p{color:#6b7280;font-size:.8rem;margin:0}.view-tabs-list{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.view-tab{background:#f8f9fa;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;min-width:140px;padding:10px 14px;text-align:left;transition:all .2s ease}.view-tab:hover{background:#e5e7eb;border-color:#d1d5db;box-shadow:0 2px 8px #0000001a;transform:translateY(-1px)}.view-tab.active{background:#667eea;border-color:#667eea;box-shadow:0 4px 12px #667eea4d;color:#fff;transform:translateY(-1px)}.view-tab-content{display:flex;flex-direction:column;gap:2px}.view-tab-label{font-size:.85rem;font-weight:600}.view-tab-description{font-size:.7rem;opacity:.8}.view-tab.active .view-tab-description{opacity:.9}@media (max-width:768px){.view-tabs{margin-bottom:12px;padding:8px}.view-tabs-header{margin-bottom:8px}.view-tabs-header h3{font-size:.9rem;margin-bottom:2px}.view-tabs-header p{display:none;font-size:.7rem}.view-tabs-list{flex-direction:row;flex-wrap:wrap;gap:4px;justify-content:center}.view-tab{flex:1 1;max-width:none;min-width:auto;min-width:0;padding:6px 10px}.view-tab-content{gap:0}.view-tab-label{font-size:.75rem;font-weight:500}.view-tab-description{display:none}}.calendar-view{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #fff3;border-radius:16px;box-shadow:0 8px 32px #0000001a;max-width:100%;padding:16px;width:100%}.calendar-header{flex-wrap:wrap;justify-content:space-between;margin-bottom:16px}.calendar-header,.calendar-navigation{align-items:center;display:flex;gap:12px}.nav-button{align-items:center;background:#f3f4f6;border:1px solid #d1d5db;border-radius:8px;color:#374151;cursor:pointer;display:flex;font-size:16px;font-weight:700;height:32px;justify-content:center;transition:all .2s ease;width:32px}.nav-button:hover{background:#e5e7eb;border-color:#9ca3af}.calendar-title{color:#1f2937;font-size:1.4rem;font-weight:600;margin:0;min-width:160px;text-align:center}.view-mode-toggle{background:#f3f4f6;border-radius:8px;display:flex;padding:3px}.mode-button{background:#0000;border:none;border-radius:6px;color:#6b7280;cursor:pointer;font-size:.875rem;font-weight:500;padding:6px 12px;transition:all .2s ease}.mode-button.active{background:#fff;box-shadow:0 1px 3px #0000001a;color:#374151}.calendar-grid{border:1px solid #e5e7eb;border-radius:12px;box-sizing:border-box;display:block;overflow:hidden;width:100%}.calendar-weekdays{background:#f9fafb;border-bottom:1px solid #e5e7eb;box-sizing:border-box;display:grid;grid-template-columns:repeat(7,1fr);width:100%}.weekday-header{align-items:center;border-right:1px solid #e5e7eb;box-sizing:border-box;color:#374151;display:flex;font-size:.8rem;font-weight:600;justify-content:center;padding:8px 6px;text-align:center}.weekday-header:last-child{border-right:none}.calendar-days{box-sizing:border-box;display:grid;grid-template-columns:repeat(7,1fr);width:100%}.calendar-day{background:#fff;border-bottom:1px solid #e5e7eb;border-right:1px solid #e5e7eb;box-sizing:border-box;display:flex;flex-direction:column;min-height:100px;padding:6px;position:relative}.calendar-day:nth-child(7n){border-right:none}.calendar-day.empty{background:#f9fafb}.calendar-day.today{background:#dbeafe}.calendar-day.overdue{background:#fef2f2}.day-number{color:#374151;flex-shrink:0;font-size:.85rem;font-weight:600;margin-bottom:4px}.calendar-day.today .day-number{color:#1d4ed8;font-weight:700}.calendar-day.overdue .day-number{color:#dc2626;font-weight:700}.day-tickets{display:flex;flex:1 1;flex-direction:column;gap:3px;max-height:70px;overflow-y:auto}.day-tickets .ticket-card{font-size:.7rem;margin-bottom:3px;min-height:auto;padding:4px 6px}.day-tickets .ticket-card .ticket-name{font-size:.75rem;line-height:1.2}.day-tickets .ticket-card .ticket-description{font-size:.65rem;margin-bottom:2px}.day-tickets .ticket-card .ticket-footer{font-size:.6rem;margin-top:2px}.day-tickets .ticket-card .ticket-footer-row{gap:2px}.day-tickets .ticket-card .ticket-assignee,.day-tickets .ticket-card .ticket-priority,.day-tickets .ticket-card .ticket-status{font-size:.55rem;padding:1px 3px}.calendar-legend{display:flex;flex-wrap:wrap;gap:20px;justify-content:center;margin-top:12px}.legend-item{align-items:center;color:#6b7280;display:flex;font-size:.8rem;gap:6px}.legend-color{border:1px solid #d1d5db;border-radius:4px;height:14px;width:14px}.legend-color.today{background:#dbeafe}.legend-color.overdue{background:#fef2f2}.legend-color.normal{background:#fff}@media (min-width:768px){.calendar-view{display:flex;flex-direction:column;margin:0 auto;padding:24px;width:60%}.calendar-grid{display:block;width:100%}.calendar-weekdays{background:#f9fafb}.calendar-days,.calendar-weekdays{box-sizing:border-box;display:grid!important;grid-template-columns:repeat(7,1fr)!important;width:100%}.calendar-day{box-sizing:border-box;min-height:72px;padding:10px}.weekday-header{box-sizing:border-box;font-size:.9rem;font-weight:700;padding:12px 8px}.day-tickets{max-height:54px}.day-number{font-size:1rem;margin-bottom:6px}.day-tickets .ticket-card{font-size:.75rem;padding:6px 8px}.day-tickets .ticket-card .ticket-name{font-size:.8rem}}@media (min-width:1024px){.calendar-day{min-height:84px;padding:12px}.day-tickets{max-height:60px}.weekday-header{font-size:1rem;padding:14px 10px}}@media (min-width:1280px){.calendar-day{min-height:96px;padding:14px}.day-tickets{max-height:72px}}@media (max-width:768px){.calendar-header{align-items:stretch;flex-direction:column}.calendar-navigation{justify-content:center}.calendar-title{font-size:1.2rem}.calendar-day{min-height:80px;padding:4px}.day-tickets{max-height:60px}.day-tickets .ticket-card{font-size:.65rem;padding:3px 4px}.day-tickets .ticket-card .ticket-name{font-size:.65rem}.day-tickets .ticket-card .ticket-description{font-size:.6rem}.day-tickets .ticket-card .ticket-footer{font-size:.55rem}.calendar-legend{gap:12px}.legend-item{font-size:.75rem}.legend-color{height:12px;width:12px}}.assignee-view{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #fff3;border-radius:16px;box-shadow:0 8px 32px #0000001a;padding:24px}.assignee-view-header{margin-bottom:24px;text-align:center}.assignee-view-header h3{color:#1f2937;font-size:1.5rem;font-weight:600;margin:0 0 8px}.assignee-view-header p{color:#6b7280;font-size:.9rem;margin:0}.assignee-columns{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.assignee-column{background:#f8f9fa;border:1px solid #e5e7eb;border-radius:12px;min-height:200px;padding:16px}.assignee-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;gap:12px;margin-bottom:16px;padding-bottom:12px}.assignee-avatar{flex-shrink:0}.avatar-circle{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;box-shadow:0 2px 8px #0000001a;color:#fff;display:flex;font-size:1.1rem;font-weight:600;height:48px;justify-content:center;width:48px}.assignee-info{flex:1 1;min-width:0}.assignee-name{color:#1f2937;font-size:1.1rem;font-weight:600;margin:0 0 4px}.assignee-email,.assignee-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.assignee-email{color:#6b7280;font-size:.85rem;margin:0 0 8px}.ticket-count{background:#e5e7eb;border-radius:12px;color:#374151;display:inline-block;font-size:.8rem;font-weight:500;padding:2px 8px}.assignee-tickets{display:flex;flex-direction:column;gap:8px;max-height:400px;overflow-y:auto}.assignee-ticket-wrapper{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a}.no-tickets{padding:20px}.no-assignees,.no-tickets{color:#6b7280;font-style:italic;text-align:center}.no-assignees{padding:40px}.assignee-column.unassigned-column{background:#fffbeb;border-color:#fbbf24}.assignee-column.unassigned-column .avatar-circle{background:#f59e0b}@media (max-width:768px){.assignee-columns{grid-template-columns:1fr}.assignee-column{min-height:150px}.assignee-header{flex-direction:column;gap:8px}.assignee-header,.assignee-info{text-align:center}.assignee-tickets{max-height:300px}}@media (max-width:480px){.assignee-view{padding:16px}.assignee-column{padding:12px}.avatar-circle{font-size:1rem;height:40px;width:40px}}.notifications-container{margin-right:15px;position:relative;z-index:20}.notifications-bell{align-items:center;background:none;border:none;border-radius:50%;color:#000;cursor:pointer;display:flex;font-size:24px;justify-content:center;padding:8px;position:relative;transition:background-color .2s}.notifications-bell svg{fill:#000;color:#000}.notifications-bell:hover{background-color:#0000000d}.notifications-badge{align-items:center;background-color:#f44;border:2px solid #fff;border-radius:50%;color:#fff;display:flex;font-size:12px;font-weight:700;height:20px;justify-content:center;position:absolute;right:0;top:0;width:20px}.notifications-dropdown{background:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;box-sizing:border-box;display:flex;flex-direction:column;max-height:calc(100vh - 80px);overflow:hidden;position:fixed;right:10px;top:60px;width:400px;z-index:1000}.notifications-header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:16px}.notifications-header h3{font-size:18px;font-weight:600;margin:0}.mark-all-read-button{background:none;border:none;border-radius:4px;color:#007bff;cursor:pointer;font-size:14px;padding:4px 8px;transition:background-color .2s}.mark-all-read-button:hover{background-color:#007bff1a}.notifications-list{-webkit-overflow-scrolling:touch;max-height:500px;overflow-y:auto}.notifications-empty,.notifications-loading{color:#666;padding:40px;text-align:center}.notification-item{border-bottom:1px solid #f0f0f0;cursor:pointer;display:flex;padding:12px 16px 12px 20px;position:relative;transition:background-color .2s}.notification-item:hover{background-color:#f8f9fa}.notification-item.unread{background-color:#e7f3ff;border-left:4px solid #007bff;padding-left:16px}.notification-item.unread:hover{background-color:#d0e7ff}.notification-item.read{background-color:#fff;opacity:.85}.notification-item.read:hover{background-color:#f8f9fa;opacity:1}.notification-content{word-wrap:break-word;flex:1 1;min-width:0;overflow-wrap:break-word}.notification-title{color:#333;font-size:14px;font-weight:600;margin-bottom:4px}.notification-title.unread-title{color:#0056b3;font-weight:700}.notification-message{word-wrap:break-word;color:#666;font-size:13px;margin-bottom:4px}.notification-sender{color:#999;font-size:12px;margin-bottom:4px}.notification-time{color:#999;font-size:11px}.notification-actions{align-items:center;display:flex;gap:8px;margin-left:8px}.delete-button{align-items:center;background:none;border:none;border-radius:4px;color:#666;cursor:pointer;display:flex;font-size:18px;height:24px;justify-content:center;padding:0;transition:background-color .2s;width:24px}.delete-button:hover{background-color:#ff44441a;color:#f44}@media (max-width:768px){.notifications-container{margin-right:8px;z-index:20}.notifications-bell{font-size:20px;padding:6px}.notifications-dropdown{box-sizing:border-box;left:10px;max-height:calc(100vh - 80px);max-width:calc(100vw - 20px);position:fixed;right:10px;top:60px;width:auto;z-index:1001}.notifications-header{flex-wrap:wrap;gap:8px;padding:12px}.notifications-header h3{font-size:16px}.mark-all-read-button{font-size:12px;padding:4px 8px}.notifications-list{max-height:calc(100vh - 160px)}.notification-item{padding:10px 12px 10px 16px}.notification-title{font-size:13px}.notification-message{font-size:12px}.notification-sender{font-size:11px}.notification-time{font-size:10px}}@media (max-width:480px){.notifications-dropdown{left:8px;max-height:calc(100vh - 70px);max-width:calc(100vw - 16px);right:8px;top:55px}.notifications-header{padding:10px}.notifications-header h3{font-size:15px}.notifications-list{max-height:calc(100vh - 140px)}.notification-item{padding:8px 10px 8px 12px}.notification-title{font-size:12px}.notification-message{font-size:11px}}.app-header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border-bottom:1px solid #0000001a;box-shadow:0 2px 10px #0000001a;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;justify-content:space-between;padding:15px 25px;position:sticky;position:relative;top:0;z-index:1000}.app-header,.header-left{align-items:center;display:flex}.header-left{gap:12px}.header-button{align-items:center;background:#0000;border:2px solid #0000;border-radius:8px;color:#4b5563;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:6px;padding:10px 16px;transition:all .3s ease}.header-button:hover{background:#667eea1a;border-color:#667eea33;color:#667eea;transform:translateY(-1px)}.back-button{background:#f3f4f6;color:#6b7280}.back-button:hover{background:#e5e7eb;border-color:#d1d5db;color:#374151}.home-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;color:#fff}.home-button:hover{background:linear-gradient(135deg,#5a67d8,#6b46c1);box-shadow:0 4px 12px #667eea4d;transform:translateY(-1px)}.about-button{background:#f0f9ff;border-color:#bae6fd;color:#0369a1}.about-button:hover{background:#e0f2fe;border-color:#7dd3fc;color:#0284c7}.header-center{left:50%;max-height:100%;max-width:120px;position:absolute;top:50%;transform:translate(-50%,-50%);z-index:10}@media (max-width:768px){.header-center{left:35%;max-width:100px;transform:translate(-50%,-50%)}}.header-logo{align-items:center;display:flex;justify-content:center}.logo-image{border-radius:20px;height:60px;max-height:100%;max-width:100%;object-fit:contain;opacity:.9;width:auto}.header-right{gap:12px}.auth-buttons,.header-right{align-items:center;display:flex}.auth-buttons{gap:8px}.login-button{background:#0000;border:2px solid #667eea;color:#667eea}.login-button:hover{background:#667eea;box-shadow:0 4px 12px #667eea4d;color:#fff;transform:translateY(-1px)}.signup-button{text-wrap:nowrap;background:linear-gradient(135deg,#667eea,#764ba2);border:none;color:#fff;font-weight:600}.signup-button:hover{background:linear-gradient(135deg,#5a67d8,#6b46c1);box-shadow:0 4px 12px #667eea66;transform:translateY(-1px)}.mobile-menu-button{background:#0000;border:none;border-radius:6px;color:#4b5563;cursor:pointer;display:none;font-size:1.5rem;padding:8px;transition:all .3s ease}.mobile-menu-button:hover{background:#667eea1a;color:#667eea}.mobile-menu{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffffa;border-bottom:1px solid #0000001a;box-shadow:0 4px 20px #0000001a;display:none;flex-direction:column;gap:12px;left:0;padding:20px;position:absolute;right:0;top:100%}.mobile-menu-item{background:#0000;border:2px solid #0000;border-radius:8px;color:#4b5563;cursor:pointer;font-size:16px;font-weight:500;padding:12px 16px;text-align:left;transition:all .3s ease}.mobile-menu-item:hover{background:#667eea1a;border-color:#667eea33;color:#667eea}.user-menu{position:relative}.user-menu-button{align-items:center;background:#0000;border:none;border-radius:8px;color:#4b5563;cursor:pointer;display:flex;gap:10px;padding:8px 12px;transition:all .3s ease}.user-menu-button:hover{background:#667eea1a;color:#667eea}.user-avatar{object-fit:cover}.user-avatar,.user-avatar-placeholder{border-radius:50%;height:32px;width:32px}.user-avatar-placeholder{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;font-size:14px;font-weight:600;justify-content:center}.user-name{font-size:14px;font-weight:500;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dropdown-arrow{font-size:10px;transition:transform .3s ease}.user-menu-button:hover .dropdown-arrow{transform:rotate(180deg)}.user-dropdown{background:#fff;border:1px solid #0000001a;border-radius:12px;box-shadow:0 10px 25px #0000001a;margin-top:8px;min-width:200px;overflow:hidden;position:absolute;right:0;top:100%;z-index:1000}.user-info{background:#f8fafc;border-bottom:1px solid #f3f4f6;padding:16px}.user-email{color:#6b7280;font-size:14px;margin-bottom:8px}.google-badge{background:#f0f9ff;border:1px solid #bae6fd;border-radius:6px;color:#0369a1;display:inline-block;font-size:12px;font-weight:500;padding:4px 8px}.dropdown-item{background:#0000;border:none;color:#4b5563;cursor:pointer;font-size:14px;font-weight:500;padding:12px 16px;text-align:left;transition:all .3s ease;width:100%}.dropdown-item:hover{background:#f3f4f6;color:#dc2626}@media (max-width:768px){.app-header{padding:12px 20px}.header-left{gap:8px;width:auto}.header-button{font-size:13px;padding:8px 12px}.logo-image{height:48px}.auth-buttons{display:none}.mobile-menu-button{display:block}.mobile-menu{display:flex}.header-left .header-button:not(.home-button),.user-name{display:none}.user-menu-button{padding:6px 8px}}@media (max-width:480px){.app-header{padding:10px 15px}.logo-image{height:40px}.header-button{font-size:12px;padding:6px 10px}}