@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";.my-project{display:flex;height:100vh;background:#f9fafb;font-family:Inter,system-ui,-apple-system,sans-serif}.my-project__navbar-gap{width:224px;flex-shrink:0;border-right:1px solid #e5e7eb;background:#fff}.my-project__main{flex:1;display:flex;flex-direction:column;min-width:0}.my-project__tabs{background:#fff;border-bottom:1px solid #e5e7eb;padding:0 24px;display:flex;gap:24px}.my-project__tab-btn{padding:12px 0;border-top:none;border-left:none;border-right:none;border-bottom:2px solid transparent;color:#6b7280;font-weight:600;font-size:.875rem;background:none;cursor:pointer;font-family:inherit;transition:color .15s,border-color .15s;line-height:1.25rem}.my-project__tab-btn:hover{color:#374151}.my-project__tab-btn--active{border-bottom-color:#27ae60;color:#27ae60}.my-project__content-area{flex:1;display:flex;overflow:hidden}.my-project__content{flex:1;overflow-y:auto;padding:24px}.panel{height:100%;overflow:hidden;width:0;transition:width .25s ease}.panel.s{width:384px;flex-shrink:0;padding:16px;overflow:auto;background:#fff;border-left:1px solid #e5e7eb;position:relative}.panel.s.responsive-panel{width:100%;height:90vh}.panel__actions{float:right;display:flex;gap:0;margin-bottom:24px}.panel.s .panel__actions{position:relative;z-index:1}.panel__icon{height:16px;width:16px;background-position:center;background-size:cover;margin-left:16px;cursor:pointer;transition:opacity .15s}.panel__icon:hover{opacity:1}.panel__icon--close{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' viewBox='0 0 24 24'%3E%3Cpath d='M6 18L18 6M6 6l12 12'/%3E%3C/svg%3E")}.panel__icon--expand{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' viewBox='0 0 24 24'%3E%3Cpath d='M4 8V4m0 0h4M4 4l5 5m11-1V4m0 0h-4m4 0l-5 5M4 16v4m0 0h4m-4 0l5-5m11 5l-5-5m5 5v-4m0 4h-4'/%3E%3C/svg%3E")}.panel .datatable-container{height:auto;max-height:calc(100vh - 200px);overflow:auto}.my-project-header{background:#fff;border-bottom:1px solid #e5e7eb;padding:12px 24px;display:flex;align-items:center;justify-content:space-between}.my-project-header__breadcrumb{display:flex;align-items:center;gap:8px;font-size:.875rem;line-height:1.25rem;font-weight:500}.my-project-header__breadcrumb-parent{color:#6b7280}.my-project-header__breadcrumb-sep{color:#d1d5db}.my-project-header__breadcrumb-current{color:#111827;font-weight:600}.my-project-header__actions{display:flex;align-items:center;gap:12px}.my-project-header__bell-wrapper{position:relative}.my-project-header__bell-btn{padding:8px;border-radius:8px;border:none;background:none;cursor:pointer;color:#6b7280;position:relative}.my-project-header__bell-btn:hover{background:#f3f4f6}.my-project-header__bell-badge{position:absolute;top:-2px;right:2px;background:#ef4444;color:#fff;font-size:.65rem;font-weight:700;width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center}.my-project-header__advisor-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;border:none;background:none;cursor:pointer;color:#374151;font-size:.875rem;border-radius:8px;font-family:inherit}.my-project-header__advisor-btn:hover{background:#f3f4f6}.my-project-header__advisor-btn-badge{background:#27ae60;color:#fff;font-size:.7rem;padding:2px 6px;border-radius:9999px;font-weight:600}.notification-panel{position:absolute;right:0;top:calc(100% + 8px);width:320px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 8px 24px #0000001f;z-index:50}.notification-panel__header{padding:12px 16px;border-bottom:1px solid #f3f4f6;display:flex;justify-content:space-between;align-items:center}.notification-panel__header-title{font-weight:600;font-size:.875rem;color:#111827}.notification-panel__header-count{font-size:.75rem;color:#6b7280}.notification-panel__item{padding:12px 16px;border-bottom:1px solid #f9fafb;background:#fff;cursor:pointer;display:flex;gap:8px;align-items:flex-start}.notification-panel__item--urgent{background:#fff7ed}.notification-panel__item-dot{width:8px;height:8px;border-radius:50%;background:#f97316;margin-top:4px;flex-shrink:0}.notification-panel__item-message{font-size:.875rem;color:#111827;margin-bottom:4px}.notification-panel__item-action{font-size:.75rem;color:#27ae60;font-weight:500;background:none;border:none;cursor:pointer;padding:0;font-family:inherit}.notification-panel__item-action:hover{text-decoration:underline}.workpackage-panel__header{margin-left:-16px;margin-right:-16px;padding-left:16px;padding-right:88px;border-bottom:1px solid #e5e7eb;padding-bottom:12px;margin-bottom:16px}.workpackage-panel__header-label{font-size:.75rem;color:#6b7280;margin-bottom:4px}.workpackage-panel__header-title{font-size:1.125rem;font-weight:600;color:#111827}.workpackage-panel__status{margin-bottom:24px}.workpackage-panel__honoraires-notice{margin-bottom:24px;padding:12px;background:#eef2ff;border-radius:8px;font-weight:500}.workpackage-panel__honoraires-notice p{font-size:.875rem;color:#4338ca;line-height:1.25rem}.workpackage-panel__honoraires-notice-sub{font-size:.75rem!important;color:#6366f1!important;margin-top:8px;line-height:1}.workpackage-panel__progress{margin-bottom:24px}.workpackage-panel__progress-header{display:flex;justify-content:space-between;font-size:.875rem;margin-bottom:8px}.workpackage-panel__progress-header span:first-child{color:#4b5563}.workpackage-panel__progress-header span:last-child{font-weight:500}.workpackage-panel__progress-next-milestone{font-size:.75rem;color:#6b7280;margin-top:8px;line-height:1rem}.workpackage-panel__info-block{margin-bottom:24px;padding:12px;background:#f9fafb;border-radius:8px}.workpackage-panel__info-block-label{font-size:.75rem;color:#6b7280;margin-bottom:4px;line-height:1rem;font-weight:500}.workpackage-panel__info-block-value{font-weight:600;color:#111827}.workpackage-panel__info-block-value--bold{font-weight:600}.workpackage-panel__quote-notice{font-size:.875rem;color:#4b5563;margin-bottom:12px;line-height:1.25rem;font-weight:500}.workpackage-panel__brokerage-notice{padding:12px;background:#fff7ed;border-radius:8px;margin-bottom:24px}.workpackage-panel__brokerage-notice p{font-size:.875rem;color:#c2410c;font-weight:500}.workpackage-panel__actions{margin-bottom:24px;display:flex;flex-direction:column;gap:8px}.workpackage-panel__btn{display:block;width:100%;padding:.825rem 1rem;border-radius:8px;font-weight:600;font-size:16px;cursor:pointer;font-family:inherit;text-align:center;transition:background .15s}.workpackage-panel__btn--primary{background:#2563eb;color:#fff;border:none}.workpackage-panel__btn--primary:hover{background:#1f8b4d}.workpackage-panel__btn--secondary{background:#fff;color:#374151;border:1px solid #e5e7eb;font-weight:600;padding:.625rem 1rem;font-size:100%}.workpackage-panel__btn--secondary:hover{background:#f9fafb}.status-badge{display:inline-block;padding:2px 10px;border-radius:9999px;font-size:.75rem;font-weight:600;line-height:1rem}.status-badge--pending{background:#f3f4f6;color:#374151}.status-badge--brokerage{background:#ffedd5;color:#c2410c}.status-badge--quote_selection{background:#f3e8ff;color:#7e22ce}.status-badge--work_in_progress{background:#dbeafe;color:#1d4ed8}.status-badge--acceptance{background:#ecfdf5;color:#065f46}.status-badge--closed{background:#f0fdf4;color:#166534}.status-badge--fees{background:#e0e7ff;color:#4338ca}.status-badge--to_validate{background:#ffedd5;color:#c2410c}.status-badge--validated{background:#dbeafe;color:#1d4ed8}.status-badge--paid{background:#ecfdf5;color:#059669}.status-badge.sided{padding-top:.25rem;padding-bottom:.25rem}.progress-bar{background:#f3f4f6;border-radius:9999px;overflow:hidden}.progress-bar__fill{height:100%;background:#27ae60;border-radius:9999px;transition:width .3s ease}.messaging-panel{position:absolute;top:0;right:0;bottom:0;left:0;background:#fff;display:flex;flex-direction:column;overflow:hidden}.messaging-panel__header{padding:16px 88px 16px 16px;border-bottom:1px solid #e5e7eb;flex-shrink:0}.messaging-panel__header h3{font-size:1.125rem;font-weight:600;color:#111827}.messaging-panel__messages{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:16px}.messaging-panel__message--mine{margin-left:32px}.messaging-panel__message--mine .messaging-panel__bubble{background:#27ae60;color:#fff}.messaging-panel__message--mine .messaging-panel__meta{text-align:right}.messaging-panel__message--theirs{margin-right:32px}.messaging-panel__message--theirs .messaging-panel__bubble{background:#f3f4f6;color:#111827}.messaging-panel__bubble{padding:12px;border-radius:8px}.messaging-panel__bubble p{font-size:.875rem;line-height:1.5}.messaging-panel__meta{font-size:.75rem;color:#6b7280;margin-top:4px}.messaging-panel__input-area{flex-shrink:0;padding:16px;border-top:1px solid #e5e7eb;display:flex;gap:8px;background:#fff}.messaging-panel__input{flex:1;padding:8px 12px;border:1px solid #e5e7eb;border-radius:8px;font-size:.875rem;font-family:inherit;outline:none}.messaging-panel__input:focus{border-color:#27ae60;box-shadow:0 0 0 2px #27ae6026}.messaging-panel__send-btn{padding:8px 14px;background:#27ae60;color:#fff;border:none;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center}.messaging-panel__send-btn:hover{background:#1f8b4d}.avancement-tab__cover{margin-bottom:24px;background:#e5e7eb;border-radius:12px;height:192px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.avancement-tab__cover-label{position:absolute;bottom:12px;left:12px;padding:4px 10px;background:#ffffffe6;color:#374151;font-size:.75rem;font-weight:500;border-radius:8px}.avancement-tab__header{margin-bottom:24px}.avancement-tab__header-title-row{display:flex;align-items:center;gap:12px;margin-bottom:8px}.avancement-tab__header-title-row h1{font-size:1.5rem;font-weight:700;color:#111827;line-height:2rem}.avancement-tab__header-scope-badge{padding:4px 10px;background:#f3e8ff;color:#7e22ce;border-radius:9999px;font-size:.75rem;font-weight:500;line-height:1rem;align-items:center;display:flex}.avancement-tab__header-address{color:#6b7280;margin-bottom:8px;font-size:16px;font-weight:500}.avancement-tab__header-meta{display:flex;align-items:center;gap:16px;font-size:.875rem;color:#6b7280;font-weight:500}.avancement-tab__header-meta-sep{color:#d1d5db}.avancement-tab__progress-card{background:#fff;border-radius:12px;border:1px solid #e5e7eb;margin-bottom:24px;padding:1.25rem}.avancement-tab__progress-card-top{display:flex;justify-content:space-between;margin-bottom:1rem}.avancement-tab__progress-card-percent-label{font-size:.875rem;color:#6b7280;line-height:1.25rem}.avancement-tab__progress-card-percent{font-size:30px;font-weight:700;color:#111827;line-height:2.25rem}.avancement-tab__progress-card-amount-col{text-align:right}.avancement-tab__progress-card-amount-label{font-size:.875rem;color:#6b7280;margin-bottom:4px;line-height:1.25rem}.avancement-tab__progress-card-amount{font-weight:700;color:#111827;font-size:1.25rem;line-height:1.25rem}.avancement-tab__progress-card-fees{font-size:.75rem;color:#9ca3af;margin-top:.125rem;font-weight:500}.avancement-tab__progress-card-footer{display:flex;justify-content:space-between;margin-top:.75rem;font-size:.75rem;line-height:1rem;color:#6b7280;font-weight:500}.avancement-tab__lots h2{font-size:1.125rem;font-weight:700;color:#111827;margin-bottom:16px}.avancement-tab__lots-list{display:flex;flex-direction:column;gap:12px}.avancement-tab__lot-card{background:#fff;border-radius:12px;border:1px solid #e5e7eb;padding:16px;cursor:pointer;transition:border-color .15s}.avancement-tab__lot-card--honoraires{border:1px solid #C7D2FE}.avancement-tab__lot-card:hover{border-color:#d1d5db}.avancement-tab__lot-card--selected{border:2px solid #27AE60}.avancement-tab__lot-card--selected.avancement-tab__lot-card--honoraires{border:1px solid #C7D2FE}.avancement-tab__lot-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:0}.avancement-tab__lot-card-top.has-body{margin-bottom:12px}.avancement-tab__lot-card-name-row{display:flex;align-items:center;gap:10px}.avancement-tab__lot-card-name-row h4{font-weight:600;color:#111827}.avancement-tab__lot-card-amount{font-size:.875rem;font-weight:600;color:#111827;line-height:1.25rem}.avancement-tab__lot-card-progress-row{display:flex;justify-content:space-between;font-size:.75rem;color:#6b7280;margin-bottom:6px;line-height:1rem}.avancement-tab__lot-card-photos{margin-top:12px;padding-top:12px;border-top:1px solid #f3f4f6}.avancement-tab__lot-card-photos-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.avancement-tab__lot-card-photos-header span{font-size:.75rem;font-weight:500;color:#6b7280;line-height:1rem}.avancement-tab__lot-card-photos-header button{font-size:.75rem;color:#27ae60;background:none;border:none;cursor:pointer;font-family:inherit;font-weight:500}.avancement-tab__lot-card-photos-thumbnails{display:flex;gap:8px}.avancement-tab__lot-card-photos-thumb{width:40px;height:40px;background:#f3f4f6;border-radius:8px;display:flex;align-items:center;justify-content:center}.avancement-tab__lot-card-quote-row{display:flex;justify-content:space-between;align-items:center;margin-top:8px}.avancement-tab__lot-card-quote-row-label{font-size:.875rem;color:#7c3aed;font-weight:600}.avancement-tab__lot-card-quote-row-deadline{font-size:.75rem;color:#6b7280}.avancement-tab__lot-card-brokerage-note,.avancement-tab__lot-card-honoraires-note{font-size:.875rem;color:#6b7280;margin-top:8px;font-weight:600}.documents-tab{padding-bottom:32px}.documents-tab__header{margin-bottom:24px}.documents-tab__title{font-size:1.5rem;font-weight:700;color:#111827;margin-bottom:6px;line-height:2rem}.documents-tab__subtitle{color:#6b7280;font-size:.9375rem;font-weight:500}.documents-tab__section{margin-bottom:24px}.documents-tab__section-title{color:#6b7280;text-transform:uppercase;margin-bottom:12px;letter-spacing:.025em;font-size:.875rem;line-height:1.25rem;font-weight:700}.documents-tab__section-title--orange{color:#ea580c}.documents-tab__to-sign-list{display:flex;flex-direction:column;gap:8px}.documents-tab__card-list{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.documents-tab__categories-row{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:10px}.documents-tab__categories-label{font-size:.75rem;color:#9ca3af}.documents-tab__bundle-empty{padding:24px;background:#f9fafb;border:1px dashed #E5E7EB;border-radius:12px;text-align:center}.documents-tab__bundle-icon{width:48px;height:48px;border-radius:9999px;background:#e5e7eb;display:flex;align-items:center;justify-content:center;color:#9ca3af;margin:0 auto 12px}.documents-tab__bundle-title{color:#6b7280;margin-bottom:4px;font-size:.875rem;line-height:1.25rem;font-weight:500}.documents-tab__bundle-desc{color:#9ca3af;font-size:.75rem;line-height:1rem}.documents-tab__bundle-available{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px;background:#f0faf4;border:1px solid #a7f3d0;border-radius:12px;font-size:.9375rem;color:#065f46}.documents-tab__btn-primary{padding:8px 20px;border-radius:8px;border:none;background:#006749;color:#fff;font-size:.875rem;font-weight:600;cursor:pointer;transition:background .12s}.documents-tab__btn-primary:hover{background:#005538}.project-list-item{display:flex;align-items:center;gap:12px;padding:1rem;transition:background .12s}.project-list-item:not(:last-child){border-bottom:1px solid #f3f4f6}.project-list-item:hover{background:#fafafa}.project-list-item--to_sign{background:#fff7ed;border:1px solid #fed7aa;border-radius:12px}.project-list-item--to_sign:not(:last-child){border-bottom:1px solid #fed7aa}.project-list-item--to_sign:hover{background:#fff7ed;border:1px solid #fed7aa;border-radius:12px}.project-list-item__icon{flex-shrink:0;width:40px;height:40px;border-radius:8px;background:#f3f4f6;display:flex;align-items:center;justify-content:center;color:#6b7280}.project-list-item__icon--to_sign{background:#ffedd5;color:#ea580c}.project-list-item__icon--signed{background:#ecfdf5;color:#059669}.project-list-item__body{flex:1;min-width:0}.project-list-item__name-row{display:flex;align-items:center;gap:8px;margin-bottom:3px}.project-list-item__name{font-size:16px;font-weight:600;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.project-list-item__new-badge{flex-shrink:0;padding:1px 7px;border-radius:9999px;background:#008e95;color:#fff;font-size:.625rem;font-weight:700;letter-spacing:.05em}.project-list-item__meta{font-size:.875rem;line-height:1.25rem;color:#6b7280;font-weight:500}.project-list-item__meta-row{display:flex;align-items:center;gap:8px;margin-top:2px}.project-list-item__category-pill{display:inline-block;padding:1px 8px;background:#f3f4f6;color:#4b5563;border-radius:9999px;font-size:.75rem;font-weight:500}.project-list-item__actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.project-list-item__btn-ghost{padding:6px 12px;border-radius:8px;border:none;background:transparent;color:#4b5563;font-weight:500;cursor:pointer;transition:background .12s;font-size:.875rem;line-height:1.25rem}.project-list-item__btn-ghost:hover{background:#ffedd5}.project-list-item__btn-sign{border-radius:8px;border:none;background:#27ae60;color:#fff;font-size:.875rem;font-weight:600;cursor:pointer;transition:background .12s;padding:.375rem 1rem;line-height:1.25rem}.project-list-item__btn-sign:hover{background:#1f8b4d}.project-list-item__download{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;border:none;background:transparent;color:#9ca3af;cursor:pointer;transition:background .12s,color .12s}.project-list-item__download:hover{background:#f3f4f6;color:#374151}.project-list-item__invoice-right{flex-shrink:0;display:flex;align-items:center;gap:12px}.project-list-item__amount{font-size:1rem;font-weight:700;color:#111827}.category-tag-list{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.category-tag{display:inline-flex;align-items:center;padding:2px 8px;background:#f3f4f6;color:#4b5563;border-radius:9999px;font-size:.75rem;font-weight:500;white-space:nowrap}.category-tag--add{background:transparent;border:1px dashed #d1d5db;color:#9ca3af;cursor:pointer;transition:border-color .15s,color .15s}.category-tag--add:hover{border-color:#27ae60;color:#27ae60}.category-tag--add-input{background:#fff;border:1px solid #27ae60;padding:1px 8px}.category-tag__input{border:none;outline:none;background:transparent;font-size:.75rem;font-weight:500;color:#111827;width:100px}.category-tag__input::-moz-placeholder{color:#9ca3af}.category-tag__input::placeholder{color:#9ca3af}.factures-tab{padding-bottom:32px}.factures-tab__header{margin-bottom:24px}.factures-tab__title{font-size:1.5rem;font-weight:700;color:#111827;margin-bottom:6px;line-height:2rem}.factures-tab__subtitle{color:#6b7280;font-size:.9375rem;font-weight:500}.factures-tab__summary{display:flex;gap:16px;margin-bottom:32px}.factures-tab__section{margin-bottom:24px}.factures-tab__section-title{font-weight:700;color:#6b7280;text-transform:uppercase;letter-spacing:.025em;font-size:.875rem;line-height:1.25rem;margin-bottom:12px}.factures-tab__section-title--orange{color:#ea580c}.factures-tab__card-list{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.factures-tab__to-validate-list{display:flex;flex-direction:column;gap:8px}.factures-tab__to-validate-card{background:#fff7ed;border:1px solid #fed7aa;border-radius:12px;padding:16px}.factures-tab__to-validate-card-top{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:12px}.factures-tab__to-validate-card-ref{font-weight:600;color:#111827;font-size:.9375rem;margin-bottom:2px}.factures-tab__to-validate-card-artisan{font-size:.875rem;color:#6b7280;line-height:1.25rem;font-weight:500}.factures-tab__to-validate-card-amount{font-size:1.125rem;font-weight:700;color:#111827}.factures-tab__to-validate-card-bottom{display:flex;align-items:center;justify-content:space-between}.factures-tab__to-validate-card-meta{display:flex;align-items:center;gap:8px}.factures-tab__to-validate-card-lot{display:inline-block;padding:1px 8px;background:#fff;border-radius:6px;font-size:.75rem;font-weight:600;color:#4b5563;line-height:1rem}.factures-tab__to-validate-card-desc{font-size:.875rem;color:#6b7280;line-height:1.25rem;font-weight:500}.factures-tab__to-validate-card-actions{display:flex;align-items:center;gap:8px}.factures-tab__btn-ghost{padding:6px 12px;border-radius:8px;border:none;background:transparent;color:#4b5563;font-weight:500;cursor:pointer;transition:background .12s;font-size:.875rem}.factures-tab__btn-ghost:hover{background:#ffedd5}.factures-tab__btn-validate{padding:6px 16px;border-radius:8px;border:none;background:#27ae60;color:#fff;font-size:.875rem;font-weight:600;cursor:pointer;transition:background .12s;line-height:1.25rem}.factures-tab__btn-validate:hover{background:#1f8b4d}.factures-tab__empty{padding:48px 24px;background:#f9fafb;border:1px dashed #e5e7eb;border-radius:12px;text-align:center;margin-top:8px}.factures-tab__empty-icon{width:48px;height:48px;border-radius:9999px;background:#e5e7eb;display:flex;align-items:center;justify-content:center;color:#9ca3af;margin:0 auto 12px}.factures-tab__empty-title{color:#6b7280;font-size:.875rem;font-weight:500;margin-bottom:4px}.factures-tab__empty-desc{color:#9ca3af;font-size:.75rem;line-height:1rem}.invoice-card{flex:1;padding:16px;border-radius:12px;border:1px solid #e5e7eb;background:#fff;display:flex;flex-direction:column;padding:1rem}.invoice-card__label{color:#6b7280;font-weight:500;margin-bottom:2px;font-size:.875rem;line-height:1.25rem}.invoice-card__amount{color:#111827;font-size:1.25rem;line-height:1.75rem;font-weight:700}.invoice-card--validated .invoice-card__amount{color:#2663eb;font-size:1.25rem;line-height:1.75rem;font-weight:700}.invoice-card--to_validate .invoice-card__amount{color:#ea580c;font-size:1.25rem;line-height:1.75rem;font-weight:700}.login-page{display:flex;min-height:100vh;background-color:#f9fafb}.login-page__left{width:50%;background:linear-gradient(to bottom right,#246470,#13333b);color:#fff;display:flex;flex-direction:column;padding:3rem;position:relative}.login-page__logo{font-size:.875rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;line-height:1.3}.login-page__logo span{display:block;font-size:.625rem;font-weight:400;letter-spacing:.08em;opacity:.75;margin-top:.2rem}.login-page__hero{flex:1;display:flex;flex-direction:column;justify-content:center}.login-page__hero h1{font-size:2.25rem;font-weight:700;line-height:1.25;margin-bottom:2.5rem;max-width:430px}.login-page__features{list-style:none;display:flex;flex-direction:column;gap:1rem}.login-page__feature{display:flex;align-items:flex-start;gap:.8rem}.login-page__feature-number{width:2rem;height:2rem;min-width:2rem;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1rem;font-weight:700;margin-top:.1rem;background-color:#fff3}.login-page__feature-text strong{display:block;font-weight:700;font-size:1rem;margin-bottom:.2rem}.login-page__feature-text p{font-size:.875rem;opacity:.7;line-height:1.25}.login-page__left-footer{display:flex;gap:1rem;align-items:center;font-size:.8125rem;opacity:.7;padding-top:2rem}.login-page__left-footer a{color:#7abfcc;text-decoration:underline;text-underline-offset:3px;font-size:.875rem;font-weight:600}.login-page__left-footer a:hover{color:#fff}.login-page__right{width:50%;display:flex;align-items:center;justify-content:center;padding:3rem 2rem}.login-page__form-container{width:100%;max-width:28rem;display:flex;flex-direction:column}.login-page__tabs{display:flex;background-color:#f3f4f6;border-radius:.5rem;padding:.25rem;gap:2px;margin-bottom:2rem}.login-page__tab{flex:1;padding:.5rem .75rem;border:none;background:transparent;border-radius:.375rem;font-size:.875rem;font-weight:550;color:#6b7280;cursor:pointer;transition:all .2s ease;line-height:1.25rem}.login-page__tab--active{background:#fff;color:#111827;box-shadow:0 1px 4px #0000001a}.login-page__tab:hover:not(.login-page__tab--active){color:#6b7280}.login-page__form-header h2{font-size:1.5rem;line-height:2rem;font-weight:700;color:#1a1a1a;margin-bottom:.5rem}.login-page__form-header p{font-size:.9375rem;color:#6b7280;font-weight:500;margin-bottom:1.5rem}.login-page__form{display:flex;flex-direction:column;gap:1.25rem;padding-bottom:1.2rem}.login-page__field{display:flex;flex-direction:column;gap:.25rem}.login-page__field label{font-size:.875rem;font-weight:550;color:#374151;line-height:1.25rem}.login-page__field input[type=email],.login-page__field input[type=text],.login-page__field input[type=password]{width:100%;padding:.75rem 1rem;border:1px solid #D1D5DB;border-radius:8px;font-size:.9375rem;color:#1a1a1a;background:#fff;outline:none;transition:border-color .15s ease}.login-page__field input[type=email]:-webkit-autofill,.login-page__field input[type=email]:-webkit-autofill:hover,.login-page__field input[type=email]:-webkit-autofill:focus,.login-page__field input[type=text]:-webkit-autofill,.login-page__field input[type=text]:-webkit-autofill:hover,.login-page__field input[type=text]:-webkit-autofill:focus,.login-page__field input[type=password]:-webkit-autofill,.login-page__field input[type=password]:-webkit-autofill:hover,.login-page__field input[type=password]:-webkit-autofill:focus{-webkit-box-shadow:0 0 0 1000px #ffffff inset;-webkit-text-fill-color:#1a1a1a}.login-page__field input[type=email],.login-page__field input[type=text],.login-page__field input[type=password]{font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0}.login-page__field input[type=email]::-moz-placeholder,.login-page__field input[type=text]::-moz-placeholder,.login-page__field input[type=password]::-moz-placeholder{color:#9ca3af}.login-page__field input[type=email]::placeholder,.login-page__field input[type=text]::placeholder,.login-page__field input[type=password]::placeholder{color:#9ca3af}.login-page__field input[type=email]:focus,.login-page__field input[type=text]:focus,.login-page__field input[type=password]:focus{border-color:#008e95;border-width:3px}.login-page__password-wrapper{position:relative}.login-page__password-wrapper input{padding-right:2.75rem}.login-page__password-toggle{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;padding:0;display:flex;align-items:center;color:#9ca3af}.login-page__password-toggle:hover{color:#6b7280}.login-page__row{display:flex;align-items:center;justify-content:space-between}.login-page__remember{display:flex;align-items:center;gap:.5rem;color:#4b5563;cursor:pointer;font-size:.875rem;line-height:1.25rem;font-weight:500}.login-page__remember input[type=checkbox]{width:13px;height:13px;cursor:pointer;accent-color:#4f6ef7}.login-page__forgot{font-size:.875rem;line-height:1.25rem;font-weight:600;text-decoration:none;color:#2d7d8a}.login-page__submit{width:100%;padding:.875rem;border:none;border-radius:8px;font-size:1rem;font-weight:600;color:#fff;cursor:pointer;transition:opacity .15s ease;background-color:#2d7d8a}.login-page__submit:hover{opacity:.9}.login-page__submit:active{opacity:.8}.login-page__error{background-color:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:.75rem 1rem;font-size:.875rem;color:#dc2626;line-height:1.5}.login-page__back{background:none;border:none;cursor:pointer;font-size:.875rem;color:#6b7280;padding:0;margin-bottom:.25rem}.login-page__back:hover{color:#1a1a1a}.login-page__forgot{background:none;border:none;cursor:pointer;padding:0;font-size:.875rem;font-weight:500}.login-page__forgot:hover{text-decoration:underline}.login-page__spinner{width:1.125rem;height:1.125rem;animation:login-spin .75s linear infinite;display:inline-block;vertical-align:middle;margin-right:.4rem}.login-page__spinner-track{opacity:.25}.login-page__spinner-fill{opacity:.75}@keyframes login-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.login-page__code-inputs{display:flex;justify-content:center;gap:.625rem}.login-page__code-input{width:3rem;height:3.5rem;text-align:center;font-size:1.25rem;font-weight:700;border:1.5px solid #e0e0e0;border-radius:8px;background:#fff;color:#1a1a1a;outline:none;transition:border-color .15s ease}.login-page__code-input:focus{border-color:#008e95}.login-page__first-visit{text-align:center;color:#6b7280;margin-bottom:1.5rem;font-weight:500;font-size:.875rem;line-height:1.25rem}.login-page__first-visit a{font-weight:500;-webkit-text-decoration:noen;text-decoration:noen;text-underline-offset:2px}.login-page__first-visit a:hover{text-decoration:underline}.login-page__resend{text-align:center;font-size:.875rem;color:#6b7280}.login-page__demo{background-color:#f0f7f8;border:1px solid #d3eaee;border-radius:8px;padding:.875rem 1rem;font-size:.8125rem;color:#1a1a1a;line-height:1.5}.login-page__demo strong{font-weight:600}.login-page__right-footer{text-align:center;border-top:1px solid #e0e0e0;padding-top:1.25rem;display:flex;flex-direction:column;gap:.5rem;font-weight:500}.login-page__right-footer p{color:#9ca3af;font-size:.75rem;line-height:1rem}.login-page__right-footer-links{display:flex;justify-content:center;gap:1rem;font-weight:500}.login-page__right-footer-links a{font-size:.75rem;color:#9ca3af}.login-page__right-footer-links a:hover{color:#4b5563}.login-page--sqh_staff .login-page__submit{background-color:#008e95}.login-page--sqh_staff .login-page__submit:hover{background-color:#246470}.login-page--sqh_staff .login-page__forgot,.login-page--sqh_staff .login-page__first-visit a{color:#008e95}.login-page--sqh_staff .login-page__field input:focus{border-color:#008e95}.login-page--sqh_staff .login-page__code-input:focus{border-color:#008e95}.login-page--client .login-page__submit{background-color:#27ae60}.login-page--client .login-page__submit:hover{background-color:#1f8b4d}.login-page--client .login-page__forgot,.login-page--client .login-page__first-visit a{color:#27ae60}.login-page--client .login-page__field input:focus{border-color:#27ae60}.login-page--client .login-page__code-input:focus{border-color:#27ae60}.login-page--contractor .login-page__submit{background-color:#e8a898}.login-page--contractor .login-page__submit:hover{background-color:#c4705a}.login-page--contractor .login-page__forgot,.login-page--contractor .login-page__first-visit a{color:#c4705a}.login-page--contractor .login-page__field input:focus{border-color:#c4705a}.login-page--contractor .login-page__code-input:focus{border-color:#c4705a}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{background-color:#fff;color:#1a1a1a;font-family:Inter,system-ui,-apple-system,sans-serif;font-size:1rem;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit;text-decoration:none}
