.portal-wrapper.svelte-rsgxqc{background:#f7f6f2;min-height:85vh;padding:1.5rem 2.5rem;font-family:inherit}@media (width<=1024px){.portal-wrapper.svelte-rsgxqc{padding:1.25rem}}@media (width<=768px){.portal-wrapper.svelte-rsgxqc{padding:1rem .75rem}}.loading-state.svelte-rsgxqc{color:#666;flex-direction:column;justify-content:center;align-items:center;padding:4rem 1rem;display:flex}.spinner.svelte-rsgxqc{border:3px solid #e0dbd3;border-top-color:var(--color-primary,#2c3527);border-radius:50%;width:40px;height:40px;margin-bottom:1rem;animation:.8s linear infinite svelte-rsgxqc-spin}@keyframes svelte-rsgxqc-spin{to{transform:rotate(360deg)}}.login-container.svelte-rsgxqc{justify-content:center;align-items:center;padding:2rem 1rem;display:flex}.login-card.svelte-rsgxqc{border:1px solid var(--color-border,#e0dbd3);background:#fff;border-radius:10px;width:100%;max-width:480px;padding:2.5rem;box-shadow:0 10px 30px #0000000a}.login-header.svelte-rsgxqc{text-align:center;margin-bottom:2rem}.portal-tag.svelte-rsgxqc{color:var(--color-primary,#2c3527);letter-spacing:.08em;background:#eef2eb;border-radius:4px;margin-bottom:.6rem;padding:.2rem .6rem;font-size:.72rem;font-weight:800;display:inline-block}.login-title.svelte-rsgxqc{color:var(--color-primary,#2c3527);margin:0 0 .5rem;font-size:1.6rem;font-weight:800}.login-subtitle.svelte-rsgxqc{color:#666;margin:0;font-size:.9rem;line-height:1.45}.form-section-title.svelte-rsgxqc{color:var(--color-primary,#2c3527);margin:0 0 1rem;font-size:1.1rem}.auth-form.svelte-rsgxqc{flex-direction:column;gap:1.25rem;display:flex}.form-group.svelte-rsgxqc{flex-direction:column;gap:.35rem;display:flex}.form-group.svelte-rsgxqc label:where(.svelte-rsgxqc){color:var(--color-primary,#2c3527);font-size:.85rem;font-weight:600}.form-control.svelte-rsgxqc{border:1px solid var(--color-border,#e0dbd3);background:#fff;border-radius:6px;outline:none;padding:.65rem .85rem;font-size:.92rem}.form-control.svelte-rsgxqc:focus{border-color:var(--color-primary,#2c3527)}.btn-block.svelte-rsgxqc{width:100%}.alert.svelte-rsgxqc{border-radius:6px;padding:.75rem 1rem;font-size:.85rem;line-height:1.4}.alert-danger.svelte-rsgxqc{color:#991b1b;background:#fee2e2;border:1px solid #fca5a5}.alert-success.svelte-rsgxqc{color:#065f46;background:#ecfdf5;border:1px solid #a7f3d0}.access-denied-container.svelte-rsgxqc{justify-content:center;padding:3rem 1rem;display:flex}.access-card.svelte-rsgxqc{border:1px solid var(--color-border,#e0dbd3);text-align:center;background:#fff;border-radius:10px;max-width:520px;padding:2.5rem}.access-title.svelte-rsgxqc{color:var(--color-primary,#2c3527);margin:0 0 1rem;font-size:1.4rem}.access-text.svelte-rsgxqc{color:#555;margin-bottom:1.75rem;font-size:.95rem;line-height:1.5}.access-actions.svelte-rsgxqc{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.dashboard-container.svelte-rsgxqc{width:100%;max-width:100%;margin:0 auto}.dashboard-header.svelte-rsgxqc{border-bottom:1px solid var(--color-border,#e0dbd3);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.75rem;padding-bottom:.75rem;display:flex}.header-tag.svelte-rsgxqc{letter-spacing:.08em;color:var(--color-secondary,#c3a165);margin-bottom:.1rem;font-size:.65rem;font-weight:800;display:block}.header-title.svelte-rsgxqc{color:var(--color-primary,#2c3527);margin:0;font-size:1.25rem;font-weight:800}.header-right.svelte-rsgxqc{align-items:center;gap:.75rem;display:flex}.user-greeting.svelte-rsgxqc{color:#666;font-size:.86rem}.btn-logout.svelte-rsgxqc{padding:.35rem .75rem;font-size:.78rem}.portal-nav.svelte-rsgxqc{border-bottom:1px solid var(--color-border,#e0dbd3);gap:1.75rem;margin-bottom:1.75rem;display:flex}.nav-tab.svelte-rsgxqc{color:#737373;cursor:pointer;background:0 0;border:none;align-items:center;gap:.45rem;padding:.45rem 0 .65rem;font-size:.95rem;font-weight:600;display:inline-flex;position:relative}.nav-tab.active.svelte-rsgxqc{color:var(--color-primary,#2c3527)}.nav-tab.active.svelte-rsgxqc:after{content:"";background:var(--color-secondary,#c3a165);border-radius:2px;height:2px;position:absolute;bottom:-1px;left:0;right:0}.nav-counter.svelte-rsgxqc{background:var(--color-primary,#2c3527);color:#fff;border-radius:12px;padding:.1rem .5rem;font-size:.75rem;font-weight:700}.projects-section.svelte-rsgxqc{margin-bottom:2.25rem}.section-title.svelte-rsgxqc{color:var(--color-primary,#2c3527);margin:0 0 .75rem;font-size:1.15rem;font-weight:800}.section-title.text-muted.svelte-rsgxqc{color:#737373;margin:0 0 .75rem;font-size:1.05rem}.empty-projects-card.svelte-rsgxqc{border:1px solid var(--color-border,#e0dbd3);text-align:center;color:#666;background:#fff;border-radius:8px;padding:2.5rem 1.5rem}.empty-projects-card.compact.svelte-rsgxqc{padding:1.5rem}.empty-projects-card.svelte-rsgxqc p:where(.svelte-rsgxqc){color:var(--color-primary,#2c3527);margin:0 0 .35rem;font-weight:600}.empty-sub.svelte-rsgxqc{font-size:.85rem}.projects-table-card.svelte-rsgxqc{box-sizing:border-box;border-radius:8px;width:100%;padding:.85rem 1.25rem;overflow-x:auto}.projects-table-card.active-table-card.svelte-rsgxqc{border:1px solid var(--color-border,#e0dbd3);background:#fff;box-shadow:0 2px 10px #00000005}.projects-table-card.archived-table-card.svelte-rsgxqc{box-shadow:none;background:#ece7de;border:1px solid #d8d2c4}.projects-table.svelte-rsgxqc{border-collapse:collapse;text-align:left;table-layout:fixed;width:100%}.col-type.svelte-rsgxqc,.col-name.svelte-rsgxqc{width:14%}.col-address.svelte-rsgxqc{width:20%}.col-status.svelte-rsgxqc{width:22%}.col-date.svelte-rsgxqc{width:14%}.col-action.svelte-rsgxqc{text-align:right;width:16%}.projects-table.svelte-rsgxqc thead:where(.svelte-rsgxqc) th:where(.svelte-rsgxqc){color:var(--color-primary,#2c3527);white-space:nowrap;border-bottom:none;padding:.5rem .4rem .75rem;font-size:.8rem;font-weight:700}.projects-table.svelte-rsgxqc tbody:where(.svelte-rsgxqc) tr:where(.svelte-rsgxqc){border-top:1px solid #f0eee9;transition:background-color .15s}.active-table-card.svelte-rsgxqc .projects-table:where(.svelte-rsgxqc) tbody:where(.svelte-rsgxqc) tr:where(.svelte-rsgxqc):hover{background-color:#faf9f6}.archived-table-card.svelte-rsgxqc .projects-table:where(.svelte-rsgxqc) tbody:where(.svelte-rsgxqc) tr:where(.svelte-rsgxqc){border-top:1px solid #dfd9cc}.archived-table-card.svelte-rsgxqc .projects-table:where(.svelte-rsgxqc) tbody:where(.svelte-rsgxqc) tr:where(.svelte-rsgxqc):hover{background-color:#e3ded4}.projects-table.svelte-rsgxqc tbody:where(.svelte-rsgxqc) td:where(.svelte-rsgxqc){vertical-align:middle;padding:.75rem .4rem;overflow:hidden}.service-pill.svelte-rsgxqc{color:var(--color-primary,#2c3527);white-space:nowrap;text-overflow:ellipsis;background:#f0eee9;border-radius:4px;max-width:100%;padding:.25rem .5rem;font-size:.74rem;font-weight:600;display:inline-block;overflow:hidden}.service-pill.gray.svelte-rsgxqc{color:#6d6a62;background:#dfdacf}.table-client-name.svelte-rsgxqc{color:var(--color-primary,#2c3527);white-space:nowrap;text-overflow:ellipsis;font-size:.86rem;font-weight:700;display:block;overflow:hidden}.table-address-text.svelte-rsgxqc{color:#737373;white-space:nowrap;text-overflow:ellipsis;font-size:.8rem;display:block;overflow:hidden}.table-status-cell.svelte-rsgxqc{flex-direction:column;align-items:flex-start;gap:.25rem;display:flex}.table-phase-text.svelte-rsgxqc{color:var(--color-primary,#2c3527);white-space:nowrap;text-overflow:ellipsis;font-size:.84rem;font-weight:700;display:block;overflow:hidden}.action-tag.svelte-rsgxqc{letter-spacing:.02em;white-space:nowrap;border-radius:4px;align-items:center;padding:.12rem .45rem;font-size:.68rem;font-weight:700;display:inline-flex}.action-tag.action-active.svelte-rsgxqc{color:#1b4b1a;background:#d8ead4;border:1px solid #b2d7aa}.action-tag.action-waiting.svelte-rsgxqc{color:#6d6a62;background:#ede9e1;border:1px solid #ddd7cc}.table-status-text.svelte-rsgxqc{color:var(--color-primary,#2c3527);white-space:nowrap;text-overflow:ellipsis;font-size:.82rem;font-weight:700;display:block;overflow:hidden}.table-status-text.archived-status-text.svelte-rsgxqc{color:#737373;font-weight:600}.table-date-text.svelte-rsgxqc{color:#8c8c8c;white-space:nowrap;text-overflow:ellipsis;font-size:.78rem;display:block;overflow:hidden}.btn-dossier-open.svelte-rsgxqc{color:#fff;letter-spacing:.02em;white-space:nowrap;text-transform:uppercase;cursor:pointer;background:#1b2418;border:1px solid #1b2418;border-radius:4px;align-items:center;gap:.35rem;padding:.45rem .75rem;font-size:.7rem;font-weight:800;transition:background-color .2s,opacity .2s;display:inline-flex}.btn-dossier-open.svelte-rsgxqc:hover{background:#2c3527}.btn-dossier-open.btn-outline.svelte-rsgxqc{color:var(--color-primary,#2c3527);border-color:var(--color-primary,#2c3527);background:0 0}.btn-dossier-open.btn-outline.svelte-rsgxqc:hover{background:var(--color-primary,#2c3527);color:#fff}.archived-table-card.svelte-rsgxqc thead:where(.svelte-rsgxqc) th:where(.svelte-rsgxqc){color:#7d786d}.archived-client-name.svelte-rsgxqc{color:#6b665c!important;font-weight:600!important}.archived-table-card.svelte-rsgxqc .table-address-text:where(.svelte-rsgxqc){color:#7d786d}.archived-status-text.svelte-rsgxqc{color:#7d786d!important;font-weight:600!important}.archived-table-card.svelte-rsgxqc .table-date-text:where(.svelte-rsgxqc){color:#8c877d}.btn-archived.svelte-rsgxqc{color:#666157!important;background:0 0!important;border:1px solid #b8b1a3!important}.btn-archived.svelte-rsgxqc:hover{color:#3b3833!important;background:#ddd7cb!important;border-color:#9f998c!important}@media (width<=1200px){.projects-table.svelte-rsgxqc thead:where(.svelte-rsgxqc) th:where(.svelte-rsgxqc){padding:.45rem .3rem .65rem;font-size:.76rem}.projects-table.svelte-rsgxqc tbody:where(.svelte-rsgxqc) td:where(.svelte-rsgxqc){padding:.65rem .3rem}.service-pill.svelte-rsgxqc{padding:.2rem .45rem;font-size:.7rem}.table-client-name.svelte-rsgxqc{font-size:.8rem}.table-address-text.svelte-rsgxqc{font-size:.75rem}.table-status-text.svelte-rsgxqc{font-size:.76rem}.table-date-text.svelte-rsgxqc{font-size:.72rem}.btn-dossier-open.svelte-rsgxqc{padding:.4rem .65rem;font-size:.66rem}}@media (width<=1024px){.projects-table-card.svelte-rsgxqc{padding:.85rem 1rem}.col-type.svelte-rsgxqc,.col-name.svelte-rsgxqc{width:13%}.col-address.svelte-rsgxqc{width:20%}.col-status.svelte-rsgxqc{width:23%}.col-date.svelte-rsgxqc{width:14%}.col-action.svelte-rsgxqc{width:17%}.projects-table.svelte-rsgxqc thead:where(.svelte-rsgxqc) th:where(.svelte-rsgxqc){padding:.4rem .25rem .6rem;font-size:.72rem}.projects-table.svelte-rsgxqc tbody:where(.svelte-rsgxqc) td:where(.svelte-rsgxqc){padding:.55rem .25rem}.service-pill.svelte-rsgxqc{padding:.18rem .4rem;font-size:.65rem}.table-client-name.svelte-rsgxqc{font-size:.76rem}.table-address-text.svelte-rsgxqc{font-size:.7rem}.table-status-text.svelte-rsgxqc{font-size:.72rem}.table-date-text.svelte-rsgxqc{font-size:.68rem}.btn-dossier-open.svelte-rsgxqc{letter-spacing:.01em;padding:.35rem .55rem;font-size:.62rem}}@media (width<=860px){.header-title.svelte-rsgxqc{font-size:1.35rem}.dashboard-header.svelte-rsgxqc{flex-direction:column;align-items:flex-start;gap:.75rem}.header-right.svelte-rsgxqc{justify-content:space-between;width:100%}.portal-nav.svelte-rsgxqc{gap:1.25rem}.nav-tab.svelte-rsgxqc{font-size:.92rem}.projects-table-card.svelte-rsgxqc{padding:.65rem .75rem}.projects-table.svelte-rsgxqc thead:where(.svelte-rsgxqc) th:where(.svelte-rsgxqc){padding:.35rem .2rem .5rem;font-size:.68rem}.projects-table.svelte-rsgxqc tbody:where(.svelte-rsgxqc) td:where(.svelte-rsgxqc){padding:.5rem .2rem}.service-pill.svelte-rsgxqc{padding:.15rem .35rem;font-size:.6rem}.table-client-name.svelte-rsgxqc{font-size:.72rem}.table-address-text.svelte-rsgxqc{font-size:.66rem}.table-status-text.svelte-rsgxqc{font-size:.68rem}.table-date-text.svelte-rsgxqc{font-size:.64rem}.btn-dossier-open.svelte-rsgxqc{padding:.3rem .45rem;font-size:.6rem}}.profile-cards-grid.svelte-rsgxqc{grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:1.5rem;display:grid}.profile-card.svelte-rsgxqc{border:1px solid var(--color-border,#e0dbd3);background:#fff;border-radius:8px;padding:2rem}.profile-card-title.svelte-rsgxqc{color:var(--color-primary,#2c3527);margin:0 0 .4rem;font-size:1.2rem;font-weight:800}.profile-card-desc.svelte-rsgxqc{color:#666;margin:0 0 1.5rem;font-size:.88rem;line-height:1.4}.avatar-upload-section.svelte-rsgxqc{border-bottom:1px solid var(--color-border,#e0dbd3);align-items:center;gap:1.25rem;margin-bottom:1.25rem;padding-bottom:1.25rem;display:flex}.avatar-preview-wrap.svelte-rsgxqc{border:2px solid var(--color-border,#e0dbd3);background:#f0eee9;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:72px;height:72px;display:flex;overflow:hidden}.avatar-preview-img.svelte-rsgxqc{object-fit:cover;width:100%;height:100%}.avatar-preview-placeholder.svelte-rsgxqc{color:var(--color-primary,#2c3527);font-size:1.6rem;font-weight:800;line-height:1}.avatar-upload-controls.svelte-rsgxqc{flex-direction:column;align-items:flex-start;gap:.35rem;display:flex}.btn-avatar-upload.svelte-rsgxqc{cursor:pointer;padding:.4rem .85rem;font-size:.8rem;font-weight:700;display:inline-block}.hidden-file-input.svelte-rsgxqc{display:none}.avatar-hint.svelte-rsgxqc{color:#737373;font-size:.74rem}.avatar-error-text.svelte-rsgxqc{color:#c53030;font-size:.76rem;font-weight:600}.profile-form.svelte-rsgxqc{flex-direction:column;gap:1.2rem;display:flex}.form-row.svelte-rsgxqc{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.btn.svelte-rsgxqc{cursor:pointer;border:1px solid #0000;border-radius:4px;justify-content:center;align-items:center;padding:.65rem 1.25rem;font-size:.88rem;font-weight:700;text-decoration:none;transition:all .15s;display:inline-flex}.btn-sm.svelte-rsgxqc{padding:.45rem .9rem;font-size:.82rem}.btn-primary.svelte-rsgxqc{background-color:var(--color-primary,#2c3527);color:#fff}.btn-primary.svelte-rsgxqc:hover:not(:disabled){background-color:#1a2017}.btn-outline.svelte-rsgxqc{border-color:var(--color-primary,#2c3527);color:var(--color-primary,#2c3527);background-color:#0000}.btn-outline.svelte-rsgxqc:hover:not(:disabled){background-color:#eef2eb}.btn-link.svelte-rsgxqc{color:var(--color-primary,#2c3527);background:0 0;border:none;padding:.5rem;text-decoration:underline}.btn.svelte-rsgxqc:disabled{opacity:.6;cursor:not-allowed}@media (width<=600px){.portal-wrapper.svelte-rsgxqc{padding:1rem .5rem}.login-card.svelte-rsgxqc{padding:1.5rem}.form-row.svelte-rsgxqc{grid-template-columns:1fr}}
