body{margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.contract-card{background-color:var(--bg-card);border:1px solid #0000;border-radius:var(--border-radius-card);box-shadow:var(--shadow-soft);cursor:pointer;display:flex;flex-direction:column;height:100%;padding:24px;position:relative;transition:transform .2s,box-shadow .2s}.contract-card:hover{border-color:#7fb06933;box-shadow:0 12px 30px #00000014;transform:translateY(-4px)}.card-footer{border-top:1px solid #f0f0f0;margin-top:auto;padding-top:1rem}.property-address{color:var(--text-primary);font-size:1.25rem;font-weight:700;line-height:1.3;margin:0 0 1rem;min-height:2.6rem}.meta-row{color:var(--text-secondary);display:flex;font-size:.85rem;justify-content:flex-end}.card-body{display:flex;flex-direction:column;flex-grow:1;font-size:.95rem}.closing-date-section{border-top:1px dashed #eee;margin-top:auto;padding-top:.5rem}.info-row{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:.5rem;min-height:2.4rem}.info-label{color:var(--text-secondary);font-weight:500}.info-value{color:var(--text-primary);font-weight:500}.badge-group{display:flex;flex-direction:row-reverse;gap:8px;position:absolute;right:-8px;top:-8px;z-index:10}.badge-issue,.badge-overdue{border-radius:12px;color:#fff;font-size:.75rem;font-weight:700;padding:4px 8px;white-space:nowrap}.badge-issue{background-color:#d4a574;box-shadow:0 2px 5px #d4a57466}.badge-overdue{background-color:#e74c3c;box-shadow:0 2px 5px #e74c3c66}.contract-card-closed{background-color:#fcfcfc}.closed-label{color:#9ca3af;font-size:.8rem;font-weight:600;text-transform:uppercase}.contract-card-closed .meta-row{justify-content:space-between}.loading-container{align-items:center;background-color:#fbf7f4;display:flex;justify-content:center;min-height:100vh}.app-loading-spinner{text-align:center}.loading-gif{display:block;height:50px;margin:0 auto 1rem;width:50px}.wizard-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}.wizard-container{animation:slideIn .3s ease-out;background:#fff;border-radius:12px;box-shadow:0 20px 40px #00000026;max-height:90vh;max-width:600px;overflow-y:auto;width:90%}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.wizard-header{align-items:center;background:#2c3e50;border-bottom:1px solid #e5e7eb;border-radius:12px 12px 0 0;color:#fff;display:flex;justify-content:space-between;padding:20px 24px}.wizard-header h2{font-size:1.5rem;font-weight:600;margin:0}.wizard-close{background:none;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:24px;padding:4px 8px;transition:background-color .2s}.wizard-close:hover{background-color:#ffffff1a}.wizard-progress{background-color:#f8fafc;border-bottom:1px solid #e5e7eb;padding:16px 24px}.progress-bar{background-color:#e5e7eb;border-radius:4px;height:8px;margin-bottom:8px;overflow:hidden;width:100%}.progress-fill{background:#d4a574;height:100%;transition:width .3s ease}.progress-text{color:#6b7280;font-size:.875rem;font-weight:500}.wizard-content{padding:24px}.wizard-question{margin-bottom:24px}.wizard-question h3{color:#1f2937;font-size:1.25rem;font-weight:600;line-height:1.4;margin:0 0 16px}.wizard-input,.wizard-select,.wizard-textarea{border:2px solid #d1d5db;border-radius:8px;box-sizing:border-box;font-size:1rem;padding:12px 16px;transition:border-color .2s,box-shadow .2s;width:100%}.wizard-input:focus,.wizard-select:focus,.wizard-textarea:focus{border-color:#79c3db;box-shadow:0 0 0 3px #79c3db1a;outline:none}.wizard-textarea{font-family:inherit;min-height:100px;resize:vertical}.wizard-yesno{display:flex;gap:12px}.wizard-button{background:#f5f5f5;border:2px solid #e0e0e0;border-radius:8px;box-shadow:0 2px 8px #0000001a;color:#666;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 24px;transition:all .3s ease}.wizard-button:hover:not(:disabled){background:#e8e8e8;border-color:#d0d0d0;box-shadow:0 4px 12px #00000026;transform:translateY(-1px)}.wizard-button.active{background:#7fb069;border:2px solid #7fb069;box-shadow:0 4px 15px #00808066;color:#fff;transform:translateY(-1px)}.wizard-button.primary{color:#fff}.wizard-button.primary,.wizard-button.primary:hover:not(:disabled){background:#d4a574;border-color:#d4a574}.wizard-button.secondary{background:#fff;border-color:#d1d5db;color:#374151}.wizard-button.secondary:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.wizard-button:disabled{cursor:not-allowed;opacity:.5}.wizard-actions{border-top:1px solid #e5e7eb;display:flex;gap:12px;justify-content:space-between;padding-top:16px}.result-message{border-radius:8px;font-weight:500;margin-bottom:16px;padding:16px;text-align:center}.result-message.success{background-color:#d1fae5;border:1px solid #a7f3d0;color:#065f46}.result-message.error{background-color:#fee2e2;border:1px solid #fca5a5;color:#991b1b}.result-details{background-color:#f8fafc;border-radius:8px;margin-bottom:16px;padding:16px}.result-details p{color:#374151;margin:8px 0}.result-details strong{color:#1f2937}@media (max-width:640px){.wizard-container{margin:20px;width:95%}.wizard-header{padding:16px 20px}.wizard-header h2{font-size:1.25rem}.wizard-content{padding:20px}.wizard-question h3{font-size:1.125rem}.wizard-actions{flex-direction:column}.wizard-button{width:100%}.wizard-yesno{flex-direction:column}}.wizard-button,.wizard-input,.wizard-select,.wizard-textarea{animation:fadeIn .3s ease-out}.wizard-address{display:flex;flex-direction:column;gap:10px}.wizard-currency{align-items:center;display:flex;position:relative}.currency-symbol{color:#666;font-weight:700;left:12px;position:absolute;z-index:1}.currency-input{padding-left:30px!important}.wizard-earnest-money{align-items:center;display:flex;flex-direction:row;gap:15px}.wizard-earnest-money .wizard-button{background:#f5f5f5;border:2px solid #e0e0e0;border-radius:8px;box-shadow:0 2px 8px #0000001a;color:#666;cursor:pointer;flex:1 1;font-size:16px;font-weight:600;min-height:48px;transition:all .3s ease}.wizard-earnest-money .wizard-button:hover{background:#e8e8e8;border-color:#d0d0d0;box-shadow:0 4px 12px #00000026;transform:translateY(-1px)}.wizard-earnest-money .wizard-button.active{background:#7fb069;border:2px solid #7fb069;box-shadow:0 4px 15px #00808066;color:#fff;transform:translateY(-1px)}.wizard-earnest-money .wizard-button.active:hover{background:#7fb069;border-color:#7fb069;box-shadow:0 6px 20px #00808080;transform:translateY(-2px)}.wizard-earnest-money .wizard-input-group{flex:1 1}.wizard-access-persons,.wizard-additional-provisions,.wizard-closing-days,.wizard-contingency-start,.wizard-inclusions-exclusions,.wizard-inspection-days,.wizard-negotiation-days,.wizard-signing-date,.wizard-title-extension{align-items:center;display:flex;flex-direction:row;gap:15px}.wizard-access-persons .wizard-button,.wizard-additional-provisions .wizard-button,.wizard-closing-days .wizard-button,.wizard-contingency-start .wizard-button,.wizard-inclusions-exclusions .wizard-button,.wizard-inspection-days .wizard-button,.wizard-negotiation-days .wizard-button,.wizard-signing-date .wizard-button,.wizard-title-extension .wizard-button{background:#f5f5f5;border:2px solid #e0e0e0;border-radius:8px;box-shadow:0 2px 8px #0000001a;color:#666;cursor:pointer;flex:1 1;font-size:16px;font-weight:600;min-height:48px;transition:all .3s ease}.wizard-access-persons .wizard-button:hover,.wizard-additional-provisions .wizard-button:hover,.wizard-closing-days .wizard-button:hover,.wizard-contingency-start .wizard-button:hover,.wizard-inclusions-exclusions .wizard-button:hover,.wizard-inspection-days .wizard-button:hover,.wizard-negotiation-days .wizard-button:hover,.wizard-signing-date .wizard-button:hover,.wizard-title-extension .wizard-button:hover{background:#e8e8e8;border-color:#d0d0d0;box-shadow:0 4px 12px #00000026;transform:translateY(-1px)}.wizard-access-persons .wizard-button.active,.wizard-additional-provisions .wizard-button.active,.wizard-closing-days .wizard-button.active,.wizard-contingency-start .wizard-button.active,.wizard-inclusions-exclusions .wizard-button.active,.wizard-inspection-days .wizard-button.active,.wizard-negotiation-days .wizard-button.active,.wizard-signing-date .wizard-button.active,.wizard-title-extension .wizard-button.active{background:teal;border:2px solid teal;box-shadow:0 4px 15px #00808066;color:#fff;transform:translateY(-1px)}.wizard-access-persons .wizard-button.active:hover,.wizard-additional-provisions .wizard-button.active:hover,.wizard-closing-days .wizard-button.active:hover,.wizard-contingency-start .wizard-button.active:hover,.wizard-inclusions-exclusions .wizard-button.active:hover,.wizard-inspection-days .wizard-button.active:hover,.wizard-negotiation-days .wizard-button.active:hover,.wizard-signing-date .wizard-button.active:hover,.wizard-title-extension .wizard-button.active:hover{background:#066;border-color:#066;box-shadow:0 6px 20px #00808080;transform:translateY(-2px)}.wizard-access-persons .wizard-input-group,.wizard-additional-provisions .wizard-input-group,.wizard-closing-days .wizard-input-group,.wizard-contingency-start .wizard-input-group,.wizard-inclusions-exclusions .wizard-input-group,.wizard-inspection-days .wizard-input-group,.wizard-negotiation-days .wizard-input-group,.wizard-signing-date .wizard-input-group,.wizard-title-extension .wizard-input-group{flex:1 1}.wizard-input-group{display:flex;flex-direction:column;gap:10px}.wizard-input-group .wizard-button{align-self:flex-start}.wizard-survey-mortgage-payer{display:flex;flex-wrap:wrap;gap:10px}.wizard-mortgage-survey-report{display:flex;flex-direction:column;gap:12px}.wizard-mortgage-survey-report .wizard-button{background:#f5f5f5;border:2px solid #e0e0e0;border-radius:8px;box-shadow:0 2px 8px #0000001a;color:#666;cursor:pointer;flex:1 1;font-size:16px;font-weight:600;min-height:48px;padding:12px 16px;text-align:center;transition:all .3s ease}.wizard-mortgage-survey-report .wizard-button:hover{background:#e8e8e8;border-color:#d0d0d0;box-shadow:0 4px 12px #00000026;transform:translateY(-1px)}.wizard-mortgage-survey-report .wizard-button.active{background:#7fb069;border:2px solid #7fb069;box-shadow:0 4px 15px #00808066;color:#fff;transform:translateY(-1px)}.wizard-mortgage-survey-report .wizard-button.active:hover{background:#7fb069;border-color:#7fb069;box-shadow:0 6px 20px #00808080;transform:translateY(-2px)}@media (max-width:768px){.wizard-currency{align-items:center;flex-direction:row}.currency-symbol{flex-shrink:0;margin-bottom:0;margin-right:8px;position:static}.currency-input{flex:1 1;min-width:0;padding-left:12px!important}.wizard-survey-mortgage-payer{flex-direction:column}.wizard-earnest-money{align-items:stretch;flex-direction:column}.wizard-earnest-money .wizard-button{font-size:16px;min-height:48px}.wizard-access-persons,.wizard-additional-provisions,.wizard-closing-days,.wizard-contingency-start,.wizard-inclusions-exclusions,.wizard-inspection-days,.wizard-negotiation-days,.wizard-signing-date,.wizard-title-extension{align-items:stretch;flex-direction:column}.wizard-access-persons .wizard-button,.wizard-additional-provisions .wizard-button,.wizard-closing-days .wizard-button,.wizard-contingency-start .wizard-button,.wizard-inclusions-exclusions .wizard-button,.wizard-inspection-days .wizard-button,.wizard-negotiation-days .wizard-button,.wizard-signing-date .wizard-button,.wizard-title-extension .wizard-button{font-size:16px;min-height:48px}}@media (max-width:400px){.wizard-currency{align-items:center;flex-direction:row;gap:6px}.currency-symbol{flex-shrink:0;font-size:14px;margin-right:6px}.currency-input{font-size:14px;min-width:0;padding-left:8px!important}}.user-profile-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.user-profile-container{background:#fff;border-radius:12px;box-shadow:0 10px 30px #0000004d;display:flex;flex-direction:column;max-height:90vh;max-width:600px;overflow-y:auto;width:100%}.user-profile-header{align-items:center;background:#2c3e50;border-bottom:1px solid #e5e7eb;border-radius:12px 12px 0 0;color:#fff;display:flex;justify-content:space-between;padding:20px 24px}.user-profile-header h2{font-size:24px;font-weight:600;margin:0}.close-button{align-items:center;background:none;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:28px;height:32px;justify-content:center;padding:0;transition:background-color .2s;width:32px}.close-button:hover{background-color:#fff3}.user-profile-content{flex:1 1;padding:24px}.profile-section{margin-bottom:32px}.profile-section:last-child{margin-bottom:0}.profile-section h3{border-bottom:2px solid #e5e7eb;color:#374151;font-size:18px;font-weight:600;margin:0 0 20px;padding-bottom:8px}.form-group{margin-bottom:20px}.form-group:last-child{margin-bottom:0}.form-group label{color:#374151;display:block;font-size:14px;font-weight:500;margin-bottom:6px}.form-group input,.form-group textarea{border:2px solid #d1d5db;border-radius:8px;box-sizing:border-box;font-size:16px;padding:12px 16px;transition:border-color .2s,box-shadow .2s;width:100%}.form-group input:focus,.form-group textarea:focus{border-color:#79c3db;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-group input:disabled,.form-group textarea:disabled{background-color:#f9fafb;color:#6b7280;cursor:not-allowed}.form-group input.error,.form-group textarea.error{border-color:#ef4444}.form-group input.error:focus,.form-group textarea.error:focus{box-shadow:0 0 0 3px #ef44441a}.error-text{color:#ef4444;display:block;font-size:12px;font-weight:500;margin-top:4px}.message{border-radius:8px;font-weight:500;margin:16px 24px;padding:12px 16px;text-align:center}.message.success{background-color:#d1fae5;border:1px solid #a7f3d0;color:#065f46}.message.error{background-color:#fee2e2;border:1px solid #fca5a5;color:#991b1b}.user-profile-footer{background-color:#f9fafb;border-radius:0 0 12px 12px;border-top:1px solid #e5e7eb;padding:20px 24px}.button-group{display:flex;gap:12px;justify-content:flex-end}.cancel-button,.edit-button,.save-button{border:none;border-radius:8px;cursor:pointer;font-size:16px;font-weight:600;min-width:120px;padding:12px 24px;transition:all .2s}.edit-button{background:#d4a574;color:#fff;margin-left:auto}.edit-button:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-1px)}.save-button{background:#d4a574;color:#fff}.save-button:hover:not(:disabled){box-shadow:0 4px 12px #10b98166;transform:translateY(-1px)}.save-button:disabled{background:#9ca3af;box-shadow:none;cursor:not-allowed;transform:none}.cancel-button{background:#f3f4f6;border:2px solid #d1d5db;color:#374151}.cancel-button:hover:not(:disabled){background:#e5e7eb;border-color:#9ca3af}.cancel-button:disabled{background:#f9fafb;color:#9ca3af;cursor:not-allowed}@media (max-width:768px){.user-profile-overlay{padding:10px}.user-profile-container{max-height:95vh}.user-profile-header{padding:16px 20px}.user-profile-header h2{font-size:20px}.user-profile-content{padding:20px}.user-profile-footer{padding:16px 20px}.button-group{flex-direction:column}.cancel-button,.edit-button,.save-button{min-width:auto;width:100%}.form-group input,.form-group textarea{font-size:16px}}@media (max-width:480px){.user-profile-overlay{padding:5px}.user-profile-header{padding:12px 16px}.user-profile-content{padding:16px}.user-profile-footer{padding:12px 16px}.profile-section{margin-bottom:24px}.form-group{margin-bottom:16px}}.readonly-field{background-color:#f3f4f6;border:2px solid #e5e7eb;border-radius:8px;box-sizing:border-box;color:#374151;font-size:16px;font-weight:500;padding:12px 16px;text-transform:capitalize;width:100%}.chat-box{background:linear-gradient(135deg,#f8f9fa,#fff);border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 8px #0000000a;margin-bottom:24px;overflow:hidden;transition:all .3s ease}.chat-box.expanded{box-shadow:0 4px 16px #00000014}.chat-header{align-items:center;background:linear-gradient(135deg,#4f46e5,#7c3aed);color:#fff;cursor:pointer;display:flex;justify-content:space-between;padding:14px 18px;-webkit-user-select:none;user-select:none}.chat-header:hover{background:linear-gradient(135deg,#4338ca,#6d28d9)}.chat-header-content{align-items:center;display:flex;gap:10px}.chat-icon{font-size:1.2rem}.chat-title{font-size:1rem;font-weight:600}.chat-hint{font-size:.85rem;margin-left:8px;opacity:.85}.chat-toggle{align-items:center;background:#fff3;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:1.2rem;font-weight:600;height:28px;justify-content:center;transition:background .2s;width:28px}.chat-toggle:hover{background:#ffffff4d}.chat-body{display:flex;flex-direction:column;height:320px}.chat-messages{display:flex;flex:1 1;flex-direction:column;gap:12px;overflow-y:auto;padding:16px}.chat-welcome{color:#64748b;padding:20px;text-align:center}.chat-welcome p{margin:0 0 8px}.chat-welcome p:first-child{color:#334155;font-size:1.1rem}.chat-suggestions{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:16px}.chat-suggestions button{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:20px;color:#475569;cursor:pointer;font-size:.85rem;padding:8px 14px;transition:all .2s}.chat-suggestions button:hover{background:#e2e8f0;color:#334155}.chat-message{display:flex;gap:10px;max-width:85%}.chat-message.user{align-self:flex-end;flex-direction:row-reverse}.chat-message.assistant{align-self:flex-start}.message-avatar{flex-shrink:0;font-size:1.2rem}.message-content{background:#f1f5f9;border-radius:12px;color:#334155;font-size:.95rem;line-height:1.5;padding:10px 14px}.chat-message.user .message-content{background:#4f46e5;color:#fff}.chat-message.error .message-content{background:#fef2f2;border:1px solid #fecaca;color:#dc2626}.typing-indicator{display:flex;gap:4px;padding:4px 0}.typing-indicator span{animation:typing 1.4s ease-in-out infinite both;background:#94a3b8;border-radius:50%;height:8px;width:8px}.typing-indicator span:first-child{animation-delay:-.32s}.typing-indicator span:nth-child(2){animation-delay:-.16s}@keyframes typing{0%,80%,to{opacity:.6;transform:scale(.6)}40%{opacity:1;transform:scale(1)}}.chat-input-container{background:#f8fafc;border-top:1px solid #e2e8f0;display:flex;gap:10px;padding:12px 16px}.chat-input{border:1px solid #e2e8f0;border-radius:8px;flex:1 1;font-size:.95rem;outline:none;padding:10px 14px;transition:border-color .2s,box-shadow .2s}.chat-input:focus{border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e51a}.chat-input:disabled{background:#f1f5f9;cursor:not-allowed}.chat-send{background:#4f46e5;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:500;padding:10px 20px;transition:background .2s}.chat-send:hover:not(:disabled){background:#4338ca}.chat-send:disabled{background:#94a3b8;cursor:not-allowed}.chat-messages::-webkit-scrollbar{width:6px}.chat-messages::-webkit-scrollbar-track{background:#0000}.chat-messages::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.chat-messages::-webkit-scrollbar-thumb:hover{background:#94a3b8}:root{--bg-primary:#fbf7f4;--bg-card:#fff;--text-primary:#2c3e50;--text-secondary:#7f8c8d;--accent-green:#7fb069;--accent-green-hover:#6a9655;--shadow-soft:0 4px 20px #0000000f;--border-radius-card:16px;--border-radius-pill:30px}.contracts-list-container{background-color:#fbf7f4;background-color:var(--bg-primary);color:#2c3e50;color:var(--text-primary);font-family:Inter,sans-serif;min-height:100vh}.app-header{align-items:center;background-color:#fff;background-color:var(--bg-card);box-shadow:0 1px 3px #0000000d;display:flex;height:auto;justify-content:center;margin-bottom:2rem;padding:1rem 2rem}.header-content{width:100%}.header-left{color:#2c3e50;color:var(--text-primary);font-family:Playfair Display,serif;font-size:1.5rem;font-weight:700}.logo-placeholder{background-color:#7fb069;background-color:var(--accent-green);border-radius:8px;color:#fff;font-size:20px;height:40px;justify-content:center;margin-right:12px;width:40px}.logo-placeholder,.user-nav{align-items:center;display:flex}.user-nav{color:#7f8c8d;color:var(--text-secondary);font-size:.9rem;gap:20px}.user-menu{position:relative}.icon-btn{background:none;border:none;border-radius:50%;cursor:pointer;font-size:1.2rem;padding:8px;transition:background .2s}.icon-btn:hover{background-color:#f0f0f0}.dropdown-menu{background:#fff;border:1px solid #f0f0f0;border-radius:12px;box-shadow:0 10px 30px #0000001a;margin-top:8px;padding:8px 0;position:absolute;right:0;top:100%;width:220px;z-index:1000}.menu-item{background:none;border:none;color:#2c3e50;color:var(--text-primary);cursor:pointer;display:block;font-size:.9rem;padding:10px 20px;text-align:left;text-decoration:none;transition:background .2s;width:100%}.menu-item:hover{background-color:#f9f9f9;color:#7fb069;color:var(--accent-green)}.menu-item.has-submenu{align-items:center;display:flex;justify-content:space-between}.divider{background:#eee;height:1px;margin:6px 0}.main-content{padding:0 2rem 4rem}.tasks-section{margin-bottom:3rem}.tasks-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.task-card{background:#fff;border-radius:12px;box-shadow:0 4px 15px #0000000d;cursor:pointer;padding:20px;transition:transform .2s}.task-card:hover{transform:translateY(-2px)}.task-card-action{align-items:center;background:#fff;border:2px dashed #e0e0e0;border-radius:12px;box-shadow:none;color:#7f8c8d;color:var(--text-secondary);cursor:pointer;display:flex;font-weight:500;justify-content:center;padding:20px;transition:all .2s}.task-card-action:hover{background:#fdfdfd;border-color:#7fb069;border-color:var(--accent-green);color:#7fb069;color:var(--accent-green)}.page-header{align-items:baseline;display:flex;justify-content:space-between;margin-bottom:1.5rem}.page-header h2{color:#2c3e50;color:var(--text-primary);font-family:Playfair Display,serif;font-size:1.75rem;margin:0}.stats-text{color:#7f8c8d;color:var(--text-secondary);font-size:.9rem}.controls-bar{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:2rem}.search-group{display:flex;flex:1 1;gap:1rem;min-width:300px}.search-group input[type=text]{border:1px solid #e0e0e0;border-radius:30px;border-radius:var(--border-radius-pill);flex:1 1;font-family:Inter,sans-serif;font-size:1rem;outline:none;padding:12px 20px;transition:border-color .2s}.search-group input[type=text]:focus{border-color:#7fb069;border-color:var(--accent-green)}.search-group select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-color:#fff;background-image:url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%232c3e50%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E");background-position:right 16px center;background-repeat:no-repeat;background-size:12px;border:1px solid #e0e0e0;border-radius:30px;border-radius:var(--border-radius-pill);cursor:pointer;font-family:Inter,sans-serif;font-size:1rem;outline:none;padding:12px 40px 12px 20px}.tasks-section h2{color:#2c3e50;color:var(--text-primary);font-family:Playfair Display,serif;font-size:1.75rem;margin-bottom:20px}.btn-primary{background-color:#7fb069!important;border-radius:30px;border-radius:var(--border-radius-pill);box-shadow:0 4px 10px #7fb0694d;font-family:Inter,sans-serif;font-size:1rem;font-weight:500;padding:12px 24px;transition:background .2s}.btn-primary:hover{background-color:#6a9655!important}.contract-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(340px,1fr))}.no-contracts{background:#fff;border-radius:16px;box-shadow:0 4px 20px #0000000f;box-shadow:var(--shadow-soft);grid-column:1/-1;padding:40px;text-align:center}.error-message{align-items:center;background:#fee;border:1px solid #fcc;border-radius:8px;color:#c33;display:flex;justify-content:space-between;margin-bottom:1rem;padding:1rem}.retry-button{background-color:#dc3545;border-radius:4px;font-size:.8rem;padding:6px 12px}.auth-container,.profile-required-container{align-items:center;background-color:#2c3e50;display:flex;justify-content:center;min-height:100vh}.auth-content,.profile-required-content{background:#fff;border-radius:16px;box-shadow:0 10px 30px #0003;max-width:400px;padding:3rem;text-align:center;width:90%}.profile-required-content{max-width:500px}.login-button{background-color:#7fb069;background-color:var(--accent-green);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1.1rem;padding:12px 24px;transition:all .3s ease}.login-button:hover{background-color:#6a9655;background-color:var(--accent-green-hover);box-shadow:0 8px 20px #0003;transform:translateY(-2px)}.profile-requirements{background:#f8f9fa;border-radius:8px;margin:1.5rem 0;padding:1.5rem;text-align:left}.complete-profile-button{background-color:#7fb069;background-color:var(--accent-green);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1.1rem;padding:12px 24px}.filter-group{display:flex;gap:12px;margin-right:16px}.filter-pill{background-color:#fff;border:1px solid #e0e0e0;border-radius:30px;border-radius:var(--border-radius-pill);color:#7f8c8d;color:var(--text-secondary);cursor:pointer;font-family:Inter,sans-serif;font-size:1rem;padding:10px 24px;transition:all .2s ease;white-space:nowrap}.filter-pill:hover{background-color:#f8f9fa;border-color:#d0d0d0}.filter-pill.active{background-color:#7fb069;background-color:var(--accent-green);border-color:#7fb069;border-color:var(--accent-green);box-shadow:0 4px 10px #7fb06933;color:#fff;font-weight:500}@media (max-width:768px){.header-content{padding:0}.controls-bar{align-items:stretch;flex-direction:column;gap:1rem}.search-group{flex-direction:column;min-width:auto}.btn-primary{width:100%}.contract-grid,.tasks-grid{grid-template-columns:1fr}}.milestone-dates{background-color:initial}.milestone-card{background-color:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 4px 6px #00000005;overflow:hidden}.milestone-card-header{align-items:center;background-color:#2c3e50;display:flex;justify-content:space-between;padding:16px 20px}.milestone-card-icon{display:none;filter:brightness(0) invert(1);height:24px;margin-right:20px;object-fit:contain;width:24px}.milestone-card-title{color:#fff;font-family:Playfair Display,serif;font-size:1.5rem;font-weight:600;margin:0}.expand-button-dark{align-items:center;background:none;border:none;color:#fff;cursor:pointer;display:flex;justify-content:center;min-height:40px;min-width:40px;opacity:.9;padding:8px;transition:opacity .2s;z-index:10}.expand-button-dark:hover{opacity:1}.milestone-list{background-color:#fff;padding:20px}.no-milestones{color:#6b7280;padding:20px;text-align:center}.milestone-row{align-items:center;background-color:#fbf7f4;border:1px solid #e8e8e8;border-radius:6px;display:flex;margin-bottom:12px;padding:16px 20px;transition:all .2s ease}.milestone-row:last-child{margin-bottom:0}.milestone-date-col{color:#5f8d4e;flex-shrink:0;font-size:15px;font-weight:700;width:100px}.milestone-text-col{color:#1f2937;flex-grow:1;font-size:15px;font-weight:500}.milestone-row.is-completed{background-color:#fcfcfc!important;border:1px solid #f0f0f0!important}.milestone-row.is-completed .milestone-date-col,.milestone-row.is-completed .milestone-text-col{color:#9ca3af!important}.milestone-row.is-active{background-color:#fefaf6!important;border:1px solid #d4a574!important;border-left-width:4px!important}.milestone-row.is-active .milestone-text-col{color:#111827;font-weight:700}.milestone-row.is-overdue{background-color:#fefcfc!important;border-color:#e74c3c!important}.milestone-row.is-overdue .milestone-date-col{color:#e74c3c!important}.milestone-row.is-overdue .milestone-text-col{color:#1f2937!important}.milestone-row.is-closing{background-color:#f1f8ee!important;border:1px solid #e8e8e8}.milestone-row.is-closing .milestone-date-col{color:#5f8d4e!important}.milestone-row.is-closing .milestone-text-col{color:#1f2937!important;font-weight:700!important}.status-badge-complete{color:#7fb069}.status-badge-complete,.status-badge-due{font-size:13px;font-weight:700;margin-left:8px}.status-badge-due{color:#d4a574}.loading-spinner{animation:spin 1s linear infinite;border:2px solid #f3f3f3;border-radius:50%;border-top-color:#7fb069;height:20px;margin:0 auto 1rem;width:20px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.contract-info{width:100%}.contract-info-content{padding:0}.info-section{border-bottom:1px solid #eee;padding:1.5rem}.info-section:last-child{border-bottom:none}.info-section h3{border-bottom:2px solid #f0f0f0;color:#333;font-size:1.2rem;font-weight:600;margin-bottom:1rem;padding-bottom:.5rem}.info-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(450px,1fr))}.info-item{align-items:flex-start;background:#fff;border-radius:6px;display:flex;justify-content:space-between;padding:.75rem}.info-label{color:#555;flex-shrink:0;font-weight:600;margin-right:1rem;min-width:120px}.info-value{word-wrap:break-word;color:#333;flex:1 1;line-height:1.4;text-align:right}.info-value:empty:before{color:#999;content:"Not specified";font-style:italic}.inspection-repairs{border-top:1px solid #eee;margin-top:1rem;padding-top:1rem}.inspection-repairs-title{color:#333;font-weight:700;margin-bottom:.5rem}.inspection-repairs-list{align-items:flex-start;display:flex;flex-wrap:wrap;gap:.5rem}.inspection-repair-chip{background:#fff;border:1px solid #e6e6e6;border-left:3px solid #7fb069;border-radius:999px;color:#333;font-size:.9rem;line-height:1.2;max-width:100%;padding:.35rem .75rem;word-break:break-word}@media (max-width:768px){.section-header{flex-direction:column;gap:1rem;text-align:center}.info-section{padding:1rem}.info-grid{grid-template-columns:1fr}.info-item{flex-direction:column;gap:.5rem}.info-label{margin-bottom:.25rem;margin-right:0;min-width:auto}.info-value{text-align:left}}.section-header-container{align-items:center;background:#2c3e50;border-radius:8px;box-shadow:0 4px 20px #00000014;cursor:pointer;display:flex;justify-content:space-between;margin-bottom:20px;padding:16px 20px}.section-header-container h2{color:#fff;font-family:Playfair Display,serif;font-size:1.5rem;letter-spacing:.5px;margin:0}.section-header-right{align-items:center;display:flex;gap:15px}.expand-button-chevron{color:#ffffffb3;padding:4px;transition:color .2s ease}.expand-button-chevron:hover{color:#fff}.emails-section{background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014;overflow:hidden}.emails-header{cursor:pointer}.expand-button{align-items:center;background:#fff3;border:1px solid #ffffff4d;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:4px;justify-content:center;min-width:100px;padding:8px 12px;transition:all .2s ease}.expand-button:hover{background:#ffffff4d;box-shadow:0 2px 4px #0000001a;transform:translateY(-1px)}.expand-button:active{transform:translateY(0)}.section-collapsed{background:#f8f9fa}.email-count{background:#fff3;border-radius:20px;color:#fff;font-size:.85rem;font-weight:500;padding:.25rem .75rem}.refresh-button{align-items:center;background:#fff3;border:1px solid #ffffff4d;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1.2rem;height:32px;justify-content:center;transition:all .2s ease;width:32px}.refresh-button:hover{background:#ffffff4d;transform:scale(1.1)}.emails-content{padding:2rem}.search-container{align-items:center;display:flex;gap:.5rem}.search-input{background:#ffffffe6;border:1px solid #ffffff4d;border-radius:30px;color:#333;font-size:.9rem;padding:8px 16px;transition:all .2s;width:400px}.search-input::placeholder{color:#666}.search-input:focus{background:#fff;border-color:#fffc;outline:none;width:420px}.clear-search-button{align-items:center;background:#fff3;border:1px solid #ffffff4d;border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:.9rem;height:28px;justify-content:center;transition:all .2s ease;width:28px}.clear-search-button:hover{background:#ffffff4d;transform:scale(1.1)}.emails-error{color:#dc3545;text-align:center}.emails-error p{font-size:1.1rem;margin-bottom:1rem}.retry-button{border:none;border-radius:6px;cursor:pointer;font-size:.9rem;padding:.5rem 1rem}.no-emails{color:#6c757d;padding:2rem;text-align:center}.no-emails p{font-size:1.1rem;margin:0}.emails-list{display:flex;flex-direction:column;gap:1.5rem}.email-item{background:#fff;border:1px solid #e9ecef;border-radius:12px;padding:1.5rem;transition:all .2s ease}.email-header{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;justify-content:space-between;margin-bottom:1rem}.email-sender{color:#495057;font-size:1rem;line-height:1.4}.email-date{background:#fff;border:1px solid #dee2e6;border-radius:6px;color:#6c757d;font-size:.85rem;padding:.25rem .5rem}.email-to{color:#6c757d;font-size:.9rem;line-height:1.4;margin-bottom:1rem}.to-label{color:#495057;font-weight:600}.cc-info{color:#6c757d;font-style:italic}.email-subject{color:#212529;font-size:1.1rem;margin-bottom:1rem}.email-body{word-wrap:break-word;background:#fff;border:1px solid #e9ecef;border-radius:8px;color:#6c757d;font-size:.95rem;line-height:1.5;margin-bottom:1rem;padding:1rem;transition:all .2s ease;white-space:pre-wrap}.email-filename{border-top:1px solid #e9ecef;color:#6c757d;font-size:.8rem;margin-top:.75rem;padding-top:.75rem}.email-filename small{background:#e9ecef;border-radius:4px;font-family:Courier New,monospace;padding:.25rem .5rem}.loading-more{align-items:center;color:#6c757d;font-size:.9rem;gap:.5rem}.load-more-container,.loading-more{display:flex;justify-content:center;padding:1rem}.load-more-button{background:#007bff;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:.75rem 1.5rem;transition:all .2s ease}.load-more-button:hover{background:#0056b3;box-shadow:0 2px 8px #007bff4d;transform:translateY(-1px)}.load-more-button:active{transform:translateY(0)}@media (max-width:768px){.emails-header{padding:1rem 1.5rem;text-align:center}.emails-header,.emails-header-right{flex-direction:column;gap:.5rem}.emails-header h2{font-size:1.3rem}.emails-content{padding:1.5rem}.search-container{margin-bottom:.5rem;order:-1;width:100%}.search-input{min-width:auto;width:100%}.email-item{padding:1rem}.email-header{align-items:flex-start;flex-direction:column;gap:.5rem}.email-date{align-self:flex-end}.email-to{font-size:.85rem}}@media (max-width:480px){.emails-content{padding:1rem}.email-item{padding:.75rem}.emails-header{padding:1rem}}.task-list-section{background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000014;overflow:hidden}.task-list-section .section-header-container{margin-bottom:0}.task-header{align-items:center;background-color:#2c3e50;display:flex;justify-content:space-between;padding:16px 20px}.task-header h2{color:#fff;font-family:Playfair Display,serif;font-size:1.5rem;font-weight:600;margin:0}.task-content{padding:2rem 2rem 1rem}.task-group{margin-bottom:2rem}.task-group:last-child{margin-bottom:0}.group-title{border-bottom:1px solid #eee;color:#2c3e50;font-family:Inter,sans-serif;font-size:1.1rem;font-weight:600;margin-bottom:1rem;padding-bottom:.5rem}.task-row{align-items:center;background-color:#fbf7f4;border:1px solid #e8e8e8;border-radius:6px;display:flex;margin-bottom:12px;padding:16px 20px;transition:all .2s ease}.task-row:last-child{margin-bottom:0}.task-row:hover{box-shadow:0 2px 5px #0000000d;transform:translateY(-1px)}.task-row.is-completed{background-color:#fcfcfc!important;border:1px solid #f0f0f0!important}.task-row.is-active{background-color:#fefaf6!important;border:1px solid #d4a574!important;border-left-width:4px!important}.task-row.is-overdue{background-color:#fefcfc!important;border-color:#e74c3c!important}.task-row.is-overdue .col-assignee,.task-row.is-overdue .col-date{color:#e74c3c!important}.col-assignee{color:#5f8d4e;flex-shrink:0;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:200px}.col-assignee,.col-task-name{font-size:15px;margin-right:1.5rem}.col-task-name{color:#1f2937;flex-grow:1;font-weight:500}.task-row.is-completed .col-task-name{color:#9ca3af!important;text-decoration:line-through}.col-date{color:#7f8c8d;flex-shrink:0;font-size:14px;text-align:right;width:200px}.task-row.is-active .col-date{color:#d4a574;font-weight:700}.task-row.is-completed .col-assignee,.task-row.is-completed .col-date{color:#9ca3af!important}.completed-date-container{align-items:center;display:flex;flex-direction:row;gap:8px;justify-content:flex-end}.original-due-date{font-size:12px;opacity:.7;text-decoration:line-through}.completion-date{color:#9ca3af;font-weight:600}.compliance-section{background-color:#fdf6ec;border:1px solid #d4a574;border-radius:8px;margin-bottom:24px;padding:16px}.compliance-title{color:#d4a574;font-size:1.1rem;font-weight:700;margin-bottom:8px}.compliance-item{background:#fff;border:1px solid #d4a5744d;border-radius:4px;color:#2c3e50;font-size:.95rem;margin-bottom:8px;padding:10px}.badge-warning{background-color:#d4a574;border-radius:20px;color:#fff;font-size:.85rem;font-weight:700;padding:4px 12px}.empty-state{color:#7f8c8d;font-style:italic;padding:1rem;text-align:center}.emails-section{background:#0000;border-radius:0;box-shadow:none;overflow:visible}.emails-header{align-items:center;background:#2c3e50;border-radius:8px;box-shadow:0 4px 20px #00000014;display:flex;justify-content:space-between;padding:16px 20px}.emails-header h2{color:#fff;font-family:Playfair Display,serif;font-size:1.5rem;font-weight:600;margin:0}.emails-header-right{align-items:center;display:flex;gap:1rem}.section-collapsed{background:#fff;border-top:1px solid #e9ecef;cursor:pointer;padding:12px 20px;text-align:center}.section-collapsed:hover{background:#f8f9fa}.collapsed-indicator{color:#666;font-size:.9rem}.collapsed-text{font-style:italic}.emails-content{padding:2rem 0 0}.ea-search{display:flex;gap:.5rem}.ea-search-input{background:#ffffffe6;border:1px solid #ffffff4d;border-radius:30px;color:#333;font-size:.9rem;padding:8px 16px;transition:all .2s;width:400px}.ea-search-input::placeholder{color:#666}.ea-search-input:focus{background:#fff;border-color:#fffc;outline:none;width:420px}.ea-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.ea-card{background:#fff;border:1px solid #e6e6e6;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;overflow:hidden;transition:box-shadow .2s ease}.ea-card:hover{box-shadow:0 6px 16px #00000014}.ea-thumb{align-items:center;background-color:#fff;border-top:1px solid #f0f0f0;display:flex;height:140px;justify-content:center}.ea-thumb img{max-height:100%;max-width:100%}.ea-thumb-placeholder{color:#999;font-size:.9rem}.ea-card-body{background-color:#fff;padding:1rem 1rem .5rem}.ea-card-title{color:#333;font-size:1.1rem;font-weight:600;margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ea-meta{grid-row-gap:2px;color:#444;display:grid;font-size:.85rem;grid-template-columns:1fr;margin-top:.35rem;row-gap:2px}.ea-meta-row{line-height:1.2;word-break:break-word}.ea-filetype{color:#777;font-size:.8rem}.ea-email-timestamp{color:#666;font-size:.8rem;font-style:italic;line-height:1.2;margin-top:.25rem}.ea-modal-backdrop{align-items:center;background:#00000080;display:flex;inset:0;justify-content:center;position:fixed;z-index:9999}.ea-modal{background:#fff;border-radius:8px;display:flex;flex-direction:column;height:90vh;width:90vw}.ea-modal-header{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;padding:.75rem 1rem}.ea-modal-title{margin:0}.ea-modal-close{background:#0000;border:none;cursor:pointer;font-size:1.25rem}.ea-modal-nav{align-items:center;background:#fff;border:1px solid #ddd;border-radius:6px;box-shadow:0 1px 2px #0000000d;color:#333;cursor:pointer;display:inline-flex;justify-content:center;line-height:1;padding:4px 10px}.ea-modal-nav:hover:not(:disabled){background:#f7f7f7}.ea-modal-nav:disabled{cursor:not-allowed;opacity:.5}.ea-modal-body{flex:1 1}.ea-modal-iframe{border:none;height:100%;width:100%}.ea-sender-info{color:#555;font-size:.85rem;margin-top:.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.transaction-team-container{background:#0000;border-radius:0;box-shadow:none;margin-bottom:2rem;overflow:visible}.team-content{padding:2rem 0 0}.section-header{border-radius:8px;box-shadow:0 4px 20px #00000014;padding:1.5rem 2rem}.key-people-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr 2fr}.column-card{background:#fdfdfd;border:1px solid #dee2e6;border-radius:8px;display:flex;flex-direction:column;height:100%;overflow:hidden}.column-header{border-bottom:none!important;color:#fff;font-size:.9rem!important;font-weight:600;letter-spacing:.5px;margin:0!important;padding:10px 15px;text-transform:uppercase}.column-header-navy{background-color:#2c3e50}.column-header-green{background-color:#669654}.column-content{display:flex;flex-direction:column;flex-grow:1;gap:15px;padding:15px}.grid-others{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.column-others .column-card{background-color:#f1f8ee;border-color:#c3e6cb}.team-member-card{background:#fdfdfd;border:1px solid #dee2e6;border-radius:8px;overflow:hidden;transition:box-shadow .2s}.team-member-card:hover{box-shadow:0 4px 12px #0000000d}.card-minimal{padding:12px}.card-branded{padding:0}.card-branded .member-info{padding:12px}.card-custom-header{align-items:center;background-color:#2c3e50;display:flex;justify-content:space-between;padding:8px 12px}.header-role{color:#fff;font-size:.8rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.header-edit{color:#ffffffb3!important}.header-edit:hover{color:#fff!important}.member-info{display:flex;flex-direction:column;gap:2px}.member-name-row{align-items:flex-start;display:flex;justify-content:space-between}.member-name-group{display:flex;flex-direction:column}.member-name{color:#2c3e50;font-size:.95rem;font-weight:600}.member-email{color:#7f8c8d;font-size:.85rem}.member-company{color:#777;font-size:.8rem;font-style:italic;margin-bottom:2px}.status-badges{display:flex;flex-wrap:wrap;gap:8px;margin-top:5px}.member-status{border-radius:12px;display:inline-block;font-size:.75rem;padding:3px 8px}.status-pending{background-color:#fff3cd;color:#856404}.status-active{background-color:#d4edda;color:#155724}.status-missing{background-color:#fff3cd;border:1px solid #ffeeba;color:#856404}.section-header{align-items:center;background-color:#2c3e50;cursor:pointer;display:flex;justify-content:space-between;padding:16px 20px}.section-header h2{color:#fff;font-family:Playfair Display,serif;font-size:1.5rem;font-weight:600;margin:0}.section-controls{align-items:center;display:flex;gap:1rem}.add-member-header-btn{align-items:center;background-color:#7fb069;border:none;border-radius:30px;box-shadow:0 4px 10px #7fb0694d;color:#fff;cursor:pointer;display:flex;font-family:Inter,sans-serif;font-size:.9rem;font-weight:500;gap:6px;margin-right:0;padding:8px 16px;transition:all .2s}.add-member-header-btn:hover{background-color:#6a9655;box-shadow:0 6px 12px #7fb06966;transform:translateY(-1px)}.expand-button-chevron{align-items:center;background:none;border:none;color:#fff;cursor:pointer;display:flex;justify-content:center;min-height:40px;min-width:40px;opacity:.9;padding:8px;transition:opacity .2s;z-index:10}.expand-button-chevron:hover{opacity:1}.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{background:#fff;border-radius:8px;box-shadow:0 4px 6px #0000001a;max-width:500px;padding:25px;width:90%}.modal-header{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.modal-header h3{color:#2c3e50;font-size:1.2rem;margin:0}.close-modal-btn{background:none;border:none;color:#666;cursor:pointer;font-size:1.5rem;padding:0 8px}.form-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.btn-secondary{background-color:#6c757d}.btn-primary,.btn-secondary{border:none;border-radius:4px;color:#fff;cursor:pointer;padding:8px 16px}.btn-primary{background-color:#007bff}.card-header-row{align-items:center;display:flex;justify-content:space-between;margin-bottom:5px}.edit-icon-btn{background:none;border:none;color:#999;cursor:pointer;font-size:1.1rem;line-height:1;padding:0}.edit-icon-btn:hover{color:#007bff}.btn-danger{background-color:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:8px 16px}.btn-danger:hover{background-color:#c82333}.disabled-input{background-color:#e9ecef;color:#6c757d;cursor:not-allowed}.checkbox-group{align-items:center;display:flex;gap:10px;margin-top:10px}.contract-detail-container{background-color:#fbf7f4;min-height:100vh}.contract-detail-container .app-header{background:#fff;box-shadow:0 2px 10px #0000001a;color:#2c3e50;height:120px;padding:0;position:-webkit-sticky;position:sticky;top:0;z-index:100}.header-content{align-items:center;display:flex;height:120px;justify-content:space-between;margin:0 auto;max-width:1200px;padding:0 2rem}.header-content .site-logo{display:block;height:96px;object-fit:contain;width:auto}.header-left{align-items:center;display:flex;gap:1rem}.header-title-section{display:flex;flex-direction:column;gap:.5rem}.property-address-title{color:#2c3e50;font-size:1.8rem;font-weight:600;margin:0}.contract-parties-subtitle{color:#2c3e50;font-size:1.15rem;font-weight:500;margin-bottom:4px;opacity:.8}.back-button{align-items:center;background-color:#2c3e501a;border:1px solid #2c3e504d;color:#2c3e50;display:flex;font-size:.9rem;gap:.5rem;padding:8px 16px}.back-button:hover{background-color:#2c3e5033}.header-content h1{font-size:1.8rem;font-weight:600;margin:0}.header-right,.user-info{align-items:center;display:flex;gap:1rem}.user-info span{font-size:.9rem;opacity:.9}.logout-button{background-color:#2c3e501a;border:1px solid #2c3e504d;color:#2c3e50;font-size:.8rem;padding:6px 12px}.logout-button:hover{background-color:#2c3e5033}.main-content{margin:0 auto;max-width:1200px;padding:2rem}.contract-info-section,.emails-section,.milestone-section{margin-bottom:2rem}.error-container{align-items:center;background:#f5f5f5;display:flex;justify-content:center;min-height:100vh}.error-content{background:#fff;border-radius:16px;box-shadow:0 10px 30px #0000001a;max-width:500px;padding:3rem;text-align:center;width:90%}.error-content h2{color:#dc3545;margin-bottom:1rem}.error-content p{color:#666;font-size:1.1rem;margin-bottom:2rem}.error-actions{display:flex;gap:1rem;justify-content:center}.retry-button{background-color:#007bff;color:#fff}.retry-button:hover{background-color:#0056b3}.back-button.error-back{background-color:#6c757d;color:#fff}.back-button.error-back:hover{background-color:#545b62}@media (max-width:768px){.header-content{flex-direction:column;gap:1rem;text-align:center}.header-left{flex-direction:column;gap:.5rem}.header-title-section{text-align:center}.header-content h1{font-size:1.5rem}.contract-summary{text-align:center}.main-content{padding:1rem}.error-actions{flex-direction:column}.error-content{margin:1rem;padding:2rem}}.task-list-section{margin-bottom:2rem}.task-list-section .task-list{margin-bottom:0}.top-alerts-section{animation:fadeIn .5s ease-in;display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2rem}.alert-banner{border-radius:8px;box-shadow:0 2px 4px #0000000d;padding:1.5rem}.overdue-banner{background-color:#fdf6ec;border:1px solid #e74c3c}.compliance-banner{background-color:#fdf6ec;border:1px solid #d4a574}.alert-title{align-items:center;display:flex;font-size:1.1rem;font-weight:700;gap:.5rem;margin-bottom:1rem}.overdue-title{color:#e74c3c}.compliance-title{color:#856404}.alert-item{align-items:center;background-color:#fff;border-radius:6px;box-shadow:0 1px 2px #0000000d;display:flex;justify-content:space-between;margin-bottom:.75rem;padding:1rem}.alert-item:last-child{margin-bottom:0}.overdue-banner .task-row{align-items:center;background-color:#fff;border:1px solid #e74c3c;border-left-width:4px;border-radius:6px;display:flex;margin-bottom:12px;padding:16px 20px;transition:all .2s ease}.overdue-banner .task-row:last-child{margin-bottom:0}.overdue-banner .col-assignee{color:#e74c3c;flex-shrink:0;font-size:15px;font-weight:700;margin-right:1.5rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:200px}.overdue-banner .col-task-name{color:#1f2937;flex-grow:1;font-size:15px;font-weight:500;margin-right:1.5rem}.overdue-banner .col-date{color:#e74c3c;flex-shrink:0;font-size:14px;font-weight:700;text-align:right;width:180px}.status-badge-overdue{color:#e74c3c;font-size:13px;font-weight:700;margin-left:8px}.compliance-item{border-left:4px solid #e74c3c}.badge-alert-gold{background-color:#d4a5741a;border-radius:.25rem;color:#856404;font-size:.75em;font-weight:700;padding:.35em .65em;text-transform:uppercase}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#fbf7f4;color:#333;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.6}.App{display:flex;flex-direction:column;min-height:100vh}button{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .2s ease}button:hover{box-shadow:0 4px 8px #0000001a;transform:translateY(-1px)}button:active{transform:translateY(0)}input,select,textarea{border:1px solid #ddd;border-radius:6px;font-size:14px;padding:8px 12px;transition:border-color .2s ease}input:focus,select:focus,textarea:focus{border-color:#007bff;box-shadow:0 0 0 3px #007bff1a;outline:none}.text-center{text-align:center}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:1rem}.mt-4{margin-top:1.5rem}.mt-5{margin-top:3rem}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:1rem}.mb-4{margin-bottom:1.5rem}.mb-5{margin-bottom:3rem}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:1rem}.p-4{padding:1.5rem}.p-5{padding:3rem}.global-footer{border-top:1px solid #0000000d;color:#6c757d;font-size:.85rem;margin-top:auto;padding:2rem 1rem;text-align:center}.waitlist-container{align-items:center;background:linear-gradient(180deg,#f2f1ea 0,#fcf7f5);display:flex;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;justify-content:center;min-height:100vh;padding:20px}.waitlist-content{align-items:center;background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000014;display:flex;flex-direction:column;max-width:700px;padding:60px 40px;text-align:center;width:100%}.waitlist-headline{color:#1a1a1a;font-size:32px;font-weight:700;line-height:1.2;margin-bottom:16px;margin-top:30px}.waitlist-sub-headline{color:#4a5568;font-size:18px;line-height:1.5;margin-bottom:24px}.waitlist-text{color:#718096;font-size:16px;line-height:1.6;margin-bottom:12px}.video-placeholder{aspect-ratio:16/9;background-color:#2d3748;border-radius:8px;max-width:600px;overflow:hidden;position:relative}.video-overlay,.video-placeholder{align-items:center;display:flex;justify-content:center;width:100%}.video-overlay{background:linear-gradient(135deg,#4299e14d,#3182ce4d);height:100%}.video-text{color:#fff;font-size:24px;font-weight:600;text-shadow:0 2px 4px #0000004d}.video-responsive{border-radius:8px;height:0;margin-top:6px;max-width:640px;overflow:hidden;padding-bottom:56.25%;position:relative;width:100%}.signup-container{align-items:center;background:linear-gradient(180deg,#f2f1ea 0,#fcf7f5);display:flex;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;justify-content:center;min-height:100vh;padding:20px}.signup-content{align-items:center;background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000014;display:flex;flex-direction:column;max-width:600px;padding:60px 40px;text-align:center;width:100%}.signup-headline{color:#7fb069;font-size:32px;font-weight:700;line-height:1.3;margin-bottom:8px;margin-top:30px}.signup-subtitle{color:#4a5568;font-size:16px;font-weight:500;margin-bottom:24px}.signup-text{color:#4a5568;font-size:18px;line-height:1.5}.signup-link{color:#3182ce;font-weight:600;text-decoration:none;transition:color .2s ease}.signup-link:hover{color:#2c5282;text-decoration:underline}
/*# sourceMappingURL=main.cd4787da.css.map*/