@import"https://fonts.googleapis.com/css2?family=Comfortaa:wght@300;400;500;600;700&display=swap";.settings-sidebar-groups{display:flex;flex-direction:column;gap:18px}.settings-sidebar-ungrouped{list-style:none;margin:0 0 12px;padding:0}.settings-general-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}@media(max-width:900px){.settings-general-groups{grid-template-columns:1fr}}.settings-general-group{min-width:0;padding:14px}.settings-general-group h2{margin-bottom:4px}.settings-general-group p{margin-bottom:10px;font-size:13px}.settings-general-links{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.settings-general-link{display:flex;flex-direction:column;gap:2px;width:100%;padding:8px 10px;border:1px solid var(--color-divider);border-radius:var(--radius-medium);background:var(--color-sidebar-secondary-background);color:var(--color-body-text);text-align:left;font:inherit;text-decoration:none;cursor:pointer}.settings-general-link:hover{border-color:var(--color-accent);background:var(--color-hover-light)}.settings-general-link-label{display:inline-flex;align-items:center;gap:6px;color:var(--color-accent);font-weight:600;font-size:14px}.settings-general-link-desc{color:var(--color-body-text);font-size:13px;line-height:1.4;opacity:.72}.settings-content{padding:32px}.settings-content-header{max-width:760px;margin-bottom:28px}.settings-content-kicker{display:inline-flex;margin-bottom:8px;color:var(--color-body-text);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;opacity:.6}.settings-content-header h1{margin:0 0 10px;color:var(--color-body-text);font-size:32px}.settings-content-header p{margin:0;color:var(--color-body-text);font-size:16px;line-height:1.5;opacity:.72}.settings-content-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;max-width:920px}.settings-section-page{display:flex;flex-direction:column;gap:16px;max-width:980px}.settings-section-page.settings-general-page{max-width:1100px}.settings-account-page.settings-general-page{max-width:760px}.account-settings-avatar{display:flex;align-items:center;gap:14px;margin-top:4px}.account-settings-avatar-preview{width:64px;height:64px;border-radius:50%;overflow:hidden;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:var(--color-sidebar-secondary-background);border:1px solid var(--color-divider);color:var(--color-body-text);font-weight:700;font-size:18px}.account-settings-avatar-preview img{width:100%;height:100%;object-fit:cover}.account-settings-avatar-meta{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:0}.account-settings-avatar-meta strong{color:var(--color-body-text);font-size:15px}.account-settings-avatar-meta>span{color:var(--color-body-text);font-size:13px;opacity:.7}.account-settings-error{margin:4px 0 0;color:var(--color-danger, #c45b5b);font-size:12px}.account-settings-ok{margin:8px 0 0;color:var(--color-accent);font-size:12px}.account-settings-panel{display:flex;flex-direction:column;gap:20px;min-width:min(640px,100%)}.account-settings-block h3{margin:0 0 6px;font-size:15px;color:var(--color-body-text)}.account-settings-block p{margin:0 0 10px;font-size:13px;color:var(--color-body-text);opacity:.78}.account-settings-status.is-empty{color:var(--color-danger, #c45b5b);opacity:1}.account-settings-status.is-saved{color:var(--color-accent);opacity:1}.account-settings-phones{list-style:none;margin:0 0 10px;padding:0;display:flex;flex-direction:column;gap:8px}.account-settings-phones li{display:grid;grid-template-columns:110px 1fr auto auto;gap:8px;align-items:center}.account-settings-phones input,.account-mail-form input[type=text],.account-mail-form input[type=email],.account-mail-form input[type=password],.account-mail-form input[type=number],.account-mail-form textarea{width:100%;min-height:34px;border:1px solid var(--color-divider);background:var(--color-sidebar-secondary-background);color:var(--color-body-text);border-radius:6px;padding:6px 10px}.account-mail-form textarea{min-height:96px;resize:vertical;font-family:inherit;line-height:1.45}.account-signature-preview{display:flex;flex-direction:column;gap:6px;padding:10px 12px;border:1px dashed var(--color-divider);border-radius:6px;background:var(--color-stat-item-background, transparent)}.account-signature-preview-label{font-size:11px;font-weight:600;letter-spacing:.03em;text-transform:uppercase;opacity:.7;color:var(--color-body-text)}.account-signature-preview-body{margin:0;white-space:pre-wrap;word-break:break-word;font-size:12px;line-height:1.45;color:var(--color-body-text);opacity:.88;font-family:inherit}.account-signature-empty{margin:0;font-size:12px;color:var(--color-body-text);opacity:.7}.account-settings-primary{display:flex;align-items:center;gap:4px;font-size:12px;white-space:nowrap}.account-settings-actions{display:flex;flex-wrap:wrap;gap:8px}.account-settings-actions button,.account-mail-form button{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:6px 12px;border-radius:6px;border:1px solid var(--color-divider);background:var(--color-sidebar-secondary-background);color:var(--color-body-text);cursor:pointer}.account-settings-actions button:hover,.account-mail-form button:hover{border-color:var(--color-accent)}.account-mail-form{display:flex;flex-direction:column;gap:12px}.account-mail-form label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--color-body-text)}.account-mail-grid{display:grid;grid-template-columns:1fr 90px auto;gap:8px;align-items:end}.account-mail-check{flex-direction:row!important;align-items:center;gap:6px;min-height:34px}.mail-view-empty .mail-compose-button{margin-top:8px;width:auto;padding:8px 14px}.messages-main:has(.messages-content){padding:0;height:auto}.messages-general-page p a{color:var(--color-accent);text-decoration:underline;text-underline-offset:2px}.messages-general-meta{color:var(--color-accent);font-size:12px;font-weight:600}.messages-general-empty{color:var(--color-body-text);font-size:13px;opacity:.72;padding:4px 2px}.secondary-messages .secondary-project-name{display:flex;align-items:center;justify-content:space-between;gap:8px}.secondary-project-name .messages-sidebar-count{margin-left:8px}.settings-card{border:1px solid var(--color-divider);border-radius:var(--radius-large);background:var(--color-sidebar-main-background);padding:18px}.settings-card-wide{grid-column:1 / -1}.settings-card h2{margin:0 0 8px;color:var(--color-body-text);font-size:16px}.settings-card p{margin:0;color:var(--color-body-text);font-size:14px;line-height:1.5;opacity:.72}.settings-card code{color:var(--color-body-text);font-family:var(--font-family-number);font-size:.95em}.settings-status-pill{display:inline-flex;align-items:center;width:fit-content;margin-top:12px;padding:5px 8px;border:1px solid var(--color-divider);border-radius:var(--radius-small);color:var(--color-body-text);font-size:12px;opacity:.85}.settings-readonly-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}.settings-tab-bar{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.settings-tab-btn{padding:8px 14px;border:1px solid var(--color-divider);border-radius:var(--radius-small);background:transparent;color:var(--color-body-text);cursor:pointer;font-size:13px}.settings-tab-btn.is-active{border-color:var(--color-accent, #2f80ed);background:color-mix(in srgb,var(--color-accent, #2f80ed) 12%,transparent)}.settings-card-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.settings-card-header h2{margin:0}.settings-primary-btn,.settings-catalog-admin .settings-primary-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border:none;border-radius:var(--radius-small);background:var(--color-accent, #2f80ed);color:#fff;cursor:pointer;font-size:13px}.settings-table-wrap{overflow-x:auto}.settings-data-table{width:100%;border-collapse:collapse;font-size:13px}.settings-data-table th,.settings-data-table td{padding:8px 10px;border-bottom:1px solid var(--color-divider);text-align:left;vertical-align:middle}.settings-data-table input,.settings-data-table select{width:100%;min-width:72px;padding:6px 8px;border:1px solid var(--color-divider);border-radius:var(--radius-small);background:var(--color-main-background);color:var(--color-body-text);font-size:13px}.settings-table-actions{display:flex;gap:6px;white-space:nowrap}.settings-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--color-divider);border-radius:var(--radius-small);background:transparent;color:var(--color-body-text);cursor:pointer}.settings-icon-btn.danger{color:#e03131}.settings-hint,.settings-success,.settings-error{margin:0 0 12px;font-size:14px}.settings-error{color:#e03131}.settings-success{color:#2f9e44}.audit-log-pagination{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:14px}.audit-log-pagination button{padding:6px 12px;border:1px solid var(--color-divider);border-radius:var(--radius-small);background:transparent;color:var(--color-body-text);cursor:pointer}.audit-log-pagination button:disabled{opacity:.45;cursor:not-allowed}.settings-table{display:flex;flex-direction:column;gap:6px}.settings-table-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;padding:9px 10px;border:1px solid var(--color-divider);border-radius:var(--radius-small);color:var(--color-body-text);font-size:13px}.settings-table-head{background:var(--color-body-background);font-weight:700;opacity:.82}.settings-bullet-list{display:flex;flex-direction:column;gap:7px;margin:0;padding-left:18px;color:var(--color-body-text);font-size:14px;line-height:1.45;opacity:.75}.settings-branding-form,.settings-server-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;max-width:980px}.settings-form-card{display:flex;flex-direction:column;gap:14px}.remote-security-card,.remote-connection-card{gap:16px;grid-column:1 / -1}.remote-security-card h2,.remote-connection-card h2{display:inline-flex;align-items:center;gap:8px}.remote-security-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.remote-security-grid span,.remote-check-status{border:1px solid var(--color-divider);border-radius:var(--radius-small);background:var(--color-sidebar-main-background);color:var(--color-body-text);padding:7px 9px;font-size:12px}.remote-settings-toolbar{display:flex;justify-content:flex-end}.remote-settings-toolbar-wrap{justify-content:flex-start;flex-wrap:wrap;gap:8px;grid-column:1 / -1}.cloud-oauth-box{display:flex;flex-direction:column;gap:10px;padding:12px;border:1px solid var(--color-divider);border-radius:var(--radius-small);background:var(--color-sidebar-main-background)}.cloud-oauth-box p{margin:0;display:flex;align-items:flex-start;gap:8px}.cloud-folder-picker{display:flex;flex-direction:column;gap:10px}.cloud-folder-list{display:flex;flex-direction:column;gap:8px;max-height:220px;overflow:auto}.cloud-folder-row{display:flex;gap:8px;align-items:center}.cloud-folder-row .settings-secondary-button{flex:1;justify-content:flex-start}.cloud-work-folder{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid var(--color-divider);border-radius:var(--radius-small);background:var(--color-sidebar-main-background)}.cloud-work-folder-name{margin:4px 0 0;font-weight:600}.cloud-folder-breadcrumbs{display:flex;flex-wrap:wrap;align-items:center;gap:4px;font-size:.9rem}.cloud-folder-breadcrumb{border:0;background:transparent;color:var(--color-body-text);cursor:pointer;padding:0;text-decoration:underline}.cloud-folder-breadcrumb:disabled{text-decoration:none;cursor:default;font-weight:600}.cloud-folder-breadcrumb-sep{opacity:.5;margin:0 2px}.cloud-oauth-setup{margin:8px 0 0;padding-left:1.2rem}.cloud-oauth-setup li{margin:4px 0}.remote-connection-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.remote-connection-card-header h2{margin:3px 0 5px}.remote-connection-card-header p{margin:0;color:var(--color-body-text);opacity:.66}.remote-check-status.is-success{border-color:var(--color-success);color:var(--color-success)}.remote-check-status.is-failed{border-color:var(--color-danger);color:var(--color-danger)}.remote-paths-heading,.remote-connection-actions{display:flex;align-items:center;justify-content:space-between;gap:10px}.remote-paths-heading h3{margin:0;color:var(--color-body-text);font-size:14px}.remote-paths-list{display:flex;flex-direction:column;gap:8px}.remote-path-row{display:grid;grid-template-columns:minmax(110px,.75fr) minmax(150px,1fr) minmax(180px,1.2fr) auto auto;gap:8px;align-items:center}.remote-path-row input{min-width:0}.settings-checkbox-inline{display:inline-flex;align-items:center;gap:7px;color:var(--color-body-text);font-size:12px;white-space:nowrap}.settings-checkbox-inline input{width:auto}.remote-connection-actions{justify-content:flex-start;flex-wrap:wrap}.remote-check-message{margin:0;border-radius:var(--radius-small);padding:8px 10px;background:var(--color-body-background);color:var(--color-body-text);opacity:.84}.remote-check-message.is-success{color:var(--color-success)}.remote-check-message.is-failed{color:var(--color-danger)}.folder-templates-page{display:flex;flex-direction:column;gap:16px}.folder-family-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:14px}.folder-family-card{display:flex;flex-direction:column;gap:10px}.folder-family-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.folder-family-head h3{display:inline-flex;align-items:center;gap:8px;margin:0;color:var(--color-body-text)}.folder-family-letter{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:999px;background:var(--color-accent);color:var(--color-on-accent);font-size:12px;font-weight:700}.folder-family-list{display:flex;flex-direction:column;gap:7px}.folder-template-row{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;align-items:center;gap:8px;border:1px solid var(--color-divider);border-radius:var(--radius-small);background:var(--color-body-background);padding:8px 9px}.folder-template-row input{width:100%;border:1px solid var(--color-divider);border-radius:var(--radius-small);background:var(--color-sidebar-main-background);color:var(--color-body-text);padding:7px 8px;font:inherit}.folder-drag-handle{display:inline-flex;color:var(--color-body-text);opacity:.65;cursor:grab}.folder-code{min-width:40px;color:var(--color-accent);font-size:12px;font-weight:700}.folder-drop-ghost{border:1px dashed var(--color-accent);border-radius:var(--radius-small);background:color-mix(in srgb,var(--color-accent) 12%,transparent);color:var(--color-accent);font-size:12px;padding:7px 10px}.folder-drop-line{height:8px;border-radius:999px;background:color-mix(in srgb,var(--color-accent) 38%,transparent)}.folder-templates-actions{display:flex;justify-content:flex-end}.settings-card-heading-row{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.settings-card-heading-actions{display:inline-flex;align-items:center;gap:8px;margin-left:auto}.settings-icon-button{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-small);cursor:pointer;padding:0;font:inherit;transition:border-color .15s ease,background-color .15s ease,color .15s ease,box-shadow .15s ease,filter .15s ease}.settings-icon-button-primary{border:1px solid var(--color-accent);background:var(--color-accent);color:var(--color-on-accent)}.settings-icon-button-secondary{border:1px solid var(--color-divider);background:transparent;color:var(--color-body-text)}.settings-icon-button:hover{border-color:var(--color-accent);color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-shadow)}.settings-icon-button-primary:hover{color:var(--color-on-accent);filter:brightness(1.08)}.settings-icon-button:disabled{cursor:wait;opacity:.65}.settings-field{display:flex;flex-direction:column;gap:7px;color:var(--color-body-text);font-size:13px}.settings-field span{opacity:.72}.settings-field input,.settings-field select,.settings-field textarea{width:100%;border:1px solid var(--color-divider);border-radius:var(--radius-medium);background:var(--color-body-background);color:var(--color-body-text);padding:9px 10px;font:inherit}.settings-field textarea{resize:vertical;min-height:44px}.settings-field input:focus,.settings-field select:focus,.settings-field textarea:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-shadow)}.settings-field-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.settings-checkbox-row{display:flex;flex-wrap:wrap;gap:12px 18px;color:var(--color-body-text);font-size:13px}.settings-checkbox-row label{display:inline-flex;align-items:center;gap:7px}.settings-checkbox-row input{accent-color:var(--color-accent)}.settings-color-field{display:grid;grid-template-columns:1fr 44px minmax(96px,130px);align-items:center}.settings-color-field span{min-width:0}.settings-color-field input[type=color]{height:38px;padding:3px}.settings-token-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px 18px}.settings-brand-preview{display:grid;grid-template-columns:52px 1fr;min-height:118px;overflow:hidden;border:1px solid var(--color-divider);border-radius:var(--radius-large)}.settings-brand-preview-sidebar{border-right:1px solid var(--color-divider)}.settings-brand-preview-content{display:flex;align-items:center;gap:18px;padding:18px}.settings-brand-preview-content img{width:112px;height:64px;object-fit:contain;border-radius:var(--radius-medium);background:var(--color-sidebar-main-background)}.settings-brand-preview-content div{display:flex;flex-direction:column;gap:6px}.settings-brand-preview-content strong{font-size:18px}.settings-form-actions{grid-column:1 / -1;display:flex;justify-content:flex-end;gap:10px}.settings-legal-form{display:flex;flex-direction:column;gap:16px;max-width:980px}.settings-legal-tabs{display:flex;gap:8px;flex-wrap:wrap}.settings-legal-tabs button{padding:8px 14px;border-radius:var(--radius-medium);border:1px solid var(--color-divider);background:var(--color-sidebar-main-background);color:inherit;cursor:pointer;font:inherit}.settings-legal-tabs button.active{border-color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 16%,transparent)}.settings-legal-dirty{margin:8px 0 0;color:var(--color-accent);font-size:13px}.settings-legal-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.settings-legal-stack{display:flex;flex-direction:column;gap:12px}.settings-legal-entity-card{display:flex;flex-direction:column;gap:12px;padding:12px;border:1px solid var(--color-divider);border-radius:var(--radius-medium);background:var(--color-sidebar-main-background)}.settings-legal-entity-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.settings-legal-preview-line{display:flex;flex-direction:column;gap:4px;margin:0 0 8px}.settings-legal-preview-mentions{margin:0;font-size:13px;line-height:1.45;opacity:.85}.settings-legal-form .settings-field select,.settings-legal-form .settings-field textarea{width:100%;box-sizing:border-box;border:1px solid var(--color-divider);border-radius:var(--radius-small);background:var(--color-body-background);color:var(--color-body-text);padding:8px 10px;font:inherit}.settings-primary-button,.settings-secondary-button{border:1px solid var(--color-divider);border-radius:var(--radius-medium);color:var(--color-body-text);cursor:pointer;padding:9px 13px;font:inherit}.settings-primary-button{background:var(--color-accent);color:var(--color-on-accent);border-color:var(--color-accent)}.settings-secondary-button{background:var(--color-sidebar-main-background)}.settings-danger-button{color:var(--color-danger)}.settings-danger-button:hover{border-color:var(--color-danger);color:var(--color-danger)}.settings-status-category-list{display:flex;flex-wrap:wrap;gap:8px}.settings-status-category-edit-list{margin-top:14px}.settings-status-category{display:inline-flex;align-items:center;border:1px solid var(--color-divider);border-radius:var(--radius-small);background:var(--color-body-background);color:var(--color-body-text);padding:6px 9px;font-size:13px}.settings-status-category.is-active{border-color:var(--color-success)}.settings-status-category.is-prospect{border-color:var(--color-info)}.settings-status-category.is-paused{border-color:var(--color-warning)}.settings-status-category.is-archived{opacity:.75}.settings-status-category-card{display:grid;grid-template-columns:minmax(86px,.8fr) minmax(180px,1.4fr) minmax(80px,.6fr) minmax(150px,1fr) minmax(92px,.6fr) auto;align-items:end;gap:10px;width:100%;border:1px solid var(--color-divider);border-radius:var(--radius-small);background:var(--color-body-background);padding:10px}.settings-status-category-card.is-active{border-left:3px solid var(--color-success)}.settings-status-category-card.is-prospect{border-left:3px solid var(--color-info)}.settings-status-category-card.is-paused{border-left:3px solid var(--color-warning)}.settings-status-category-card.is-archived{border-left:3px solid var(--color-divider)}.settings-status-category-code{align-self:center;color:var(--color-body-text);font-family:var(--font-family-number);font-size:12px;opacity:.78}.settings-status-category-meta{align-self:center;color:var(--color-body-text);font-size:13px;opacity:.72}.settings-status-table{display:flex;flex-direction:column;gap:8px}.settings-status-row{display:grid;grid-template-columns:36px 54px minmax(150px,1fr) minmax(180px,1.4fr) minmax(130px,.9fr) 64px 58px minmax(72px,auto);align-items:center;gap:10px;border:1px solid var(--color-divider);border-radius:var(--radius-small);padding:10px;color:var(--color-body-text);font-size:13px}.settings-category-row{grid-template-columns:36px 54px minmax(150px,1fr) minmax(180px,1.4fr) minmax(112px,.8fr) 72px 72px 58px minmax(72px,auto);border-left:3px solid var(--color-divider)}.settings-status-row.is-dragging{border-color:var(--color-accent);opacity:.58}.settings-status-drop-ghost{display:flex;align-items:center;min-height:38px;border:1px dashed var(--color-accent);border-radius:var(--radius-small);background:rgba(var(--color-accent-rgb),.12);color:var(--color-accent);padding:0 12px 0 58px;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.settings-status-row-head{background:var(--color-body-background);font-weight:700;opacity:.82}.settings-status-drag-handle{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid var(--color-divider);border-radius:var(--radius-small);background:var(--color-body-background);color:var(--color-body-text);cursor:grab}.settings-status-drag-handle:active{cursor:grabbing}.settings-status-drag-handle:hover{border-color:var(--color-accent);color:var(--color-accent)}.settings-status-order,.settings-status-code{font-family:var(--font-family-number)}.settings-status-code{display:inline-flex;align-items:center;gap:8px;min-width:0}.settings-status-label-field{gap:0}.settings-status-category-field{position:relative;gap:0}.settings-status-category-field select{padding-left:30px}.settings-status-category-field .settings-status-category-dot{position:absolute;left:10px;top:50%;z-index:1;transform:translateY(-50%)}.settings-status-category-dot{display:inline-flex;flex:0 0 auto;width:10px;height:10px;border-radius:999px;background:var(--color-accent)}.settings-status-category-dot.is-active{background:var(--color-success)}.settings-status-category-dot.is-prospect{background:var(--color-info)}.settings-status-category-dot.is-paused{background:var(--color-warning)}.settings-status-category-dot.is-archived{background:var(--color-divider)}.settings-category-color-field{display:grid;grid-template-columns:34px 1fr;align-items:center;gap:8px}.settings-category-color-field input[type=color]{width:34px;height:32px;padding:2px}.settings-category-color-field span{color:var(--color-body-text);font-family:var(--font-family-number);font-size:12px;opacity:.72}.settings-status-reasons-panel{margin-left:46px;border:1px solid var(--color-divider);border-radius:var(--radius-small);background:var(--color-body-background);padding:12px}.settings-status-reasons-panel h3{margin:0 0 4px;color:var(--color-body-text);font-size:14px}.settings-status-reasons-panel p{margin:0;color:var(--color-body-text);font-size:12px;opacity:.68}.settings-status-reason-list{display:flex;flex-direction:column;gap:8px;margin-top:12px}.settings-status-reason-row{display:grid;grid-template-columns:minmax(150px,1fr) minmax(220px,1.6fr) 58px 92px minmax(44px,auto);align-items:center;gap:10px;border:1px solid var(--color-divider);border-radius:var(--radius-small);padding:9px 10px;color:var(--color-body-text);font-size:13px}.settings-status-active{display:inline-flex;justify-content:center}.settings-status-active input{accent-color:var(--color-accent)}.settings-status-actions{display:inline-flex;justify-content:flex-end;gap:6px}.settings-status-actions .settings-primary-button,.settings-status-actions .settings-secondary-button{display:inline-flex;align-items:center;justify-content:center;min-width:34px;padding:8px 9px}.settings-secondary-button:hover,.settings-primary-button:hover{filter:brightness(1.08)}.settings-primary-button:disabled{cursor:wait;opacity:.65}.settings-save-status{grid-column:1 / -1;margin:0;color:var(--color-success);font-size:13px}.settings-save-error{color:var(--color-danger)}.contacts-page{display:flex;flex-direction:column;gap:18px;padding:32px}.contacts-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.contacts-header h1{margin:0 0 8px;color:var(--color-body-text);font-size:32px}.contacts-header p{max-width:720px;margin:0;color:var(--color-body-text);font-size:15px;line-height:1.5;opacity:.72}.contacts-stats{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.contacts-stats span,.contacts-type{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--color-divider);border-radius:var(--radius-small);background:var(--color-sidebar-main-background);color:var(--color-body-text);padding:6px 9px;font-size:12px}.contacts-type.is-user{border-color:var(--color-accent);color:var(--color-accent)}.contacts-search{display:flex;align-items:center;gap:10px;max-width:680px;border:1px solid var(--color-divider);border-radius:var(--radius-medium);background:var(--color-sidebar-main-background);color:var(--color-body-text);padding:10px 12px}.contacts-search input{width:100%;border:0;outline:0;background:transparent;color:var(--color-body-text);font:inherit}.contacts-table{display:flex;flex-direction:column;gap:7px}.contacts-row{display:grid;grid-template-columns:minmax(220px,1.4fr) minmax(200px,1.2fr) minmax(220px,1.2fr) minmax(150px,.9fr) minmax(118px,.6fr);align-items:center;gap:12px;border:1px solid var(--color-divider);border-radius:var(--radius-small);background:var(--color-sidebar-main-background);color:var(--color-body-text);padding:11px 12px;font-size:13px}.contacts-row-button{width:100%;border-color:var(--color-divider);text-align:left;cursor:pointer;font:inherit}.contacts-row-button:hover,.contacts-row-button.active{border-color:var(--color-accent);box-shadow:0 0 0 1px color-mix(in srgb,var(--color-accent) 45%,transparent)}.contacts-row-head{background:var(--color-body-background);font-weight:700;opacity:.82}.contacts-identity,.contacts-row div{display:flex;flex-direction:column;gap:4px;min-width:0}.contacts-row small{color:var(--color-body-text);font-size:12px;opacity:.62}.contacts-inline{display:inline-flex;align-items:center;gap:7px;min-width:0}.contacts-empty{border:1px dashed var(--color-divider);border-radius:var(--radius-small);color:var(--color-body-text);padding:20px;opacity:.7}.secondary-contacts{display:flex;flex-direction:column;gap:16px}.contacts-sidebar-sort{display:flex;flex-direction:column;gap:6px;padding:0 4px;color:var(--color-body-text);font-size:12px}.contacts-sidebar-sort select{border:1px solid var(--color-divider);border-radius:var(--radius-small);background:var(--color-sidebar-main-background);color:var(--color-body-text);padding:8px 10px}.contact-preview,.contact-preview-empty{color:var(--color-body-text);padding:20px}.contact-preview{display:flex;flex-direction:column;gap:18px}.contact-preview-empty{display:flex;flex-direction:column;gap:8px;opacity:.78}.contact-preview-error{color:var(--color-danger)}.contact-preview-header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.contact-preview-header h2{margin:4px 0 6px;font-size:24px}.contact-preview-header p{display:inline-flex;align-items:center;gap:6px;margin:0;color:var(--color-body-text);opacity:.68}.contact-preview-actions{display:flex;align-items:center;gap:8px}.contact-preview-section{display:flex;flex-direction:column;gap:10px;border:1px solid var(--color-divider);border-radius:var(--radius-medium);background:var(--color-sidebar-main-background);padding:14px}.contact-preview-section h3{display:inline-flex;align-items:center;gap:8px;margin:0;font-size:14px}.contact-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.contact-form-grid label,.contact-toggle{display:flex;flex-direction:column;gap:5px;color:var(--color-body-text);font-size:12px;opacity:.86}.contact-toggle{flex-direction:row;align-items:center}.contact-preview input,.contact-preview textarea{width:100%;border:1px solid var(--color-divider);border-radius:var(--radius-small);background:var(--color-body-background);color:var(--color-body-text);padding:8px 9px;font:inherit}.contact-preview textarea{resize:vertical}.contact-section-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.contact-section-heading button{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--color-divider);border-radius:var(--radius-small);background:transparent;color:var(--color-accent);padding:6px 9px;cursor:pointer}.contact-repeat-row{display:grid;grid-template-columns:minmax(80px,.45fr) minmax(160px,1fr) auto auto;gap:8px;align-items:center}.contact-address-card{display:flex;flex-direction:column;gap:8px}.contact-address-row{grid-template-columns:minmax(72px,.4fr) minmax(150px,1fr) minmax(86px,.55fr) minmax(120px,.75fr) auto}.contact-primary-radio{display:inline-flex;align-items:center;gap:5px;white-space:nowrap;font-size:12px}.contact-primary-radio input,.contact-toggle input{width:auto}.settings-warning{margin-top:10px!important;color:var(--color-warning)!important;opacity:1!important}:root{--sidebar-main-width: 75px;--sidebar-secondary-width: 300px;--preview-width: 0px;--sidebar-secondary-max-percent: 25;--main-main-percent: 60;--sidebar-secondary-min-width: 300px;--sidebar-secondary-resizer-width: 6px}.layout{display:grid;grid-template-columns:var(--sidebar-main-width) var(--sidebar-secondary-width) 1fr;grid-template-rows:1fr;height:100dvh;max-height:100dvh}.layout>.sidebar-main{grid-column:1;grid-row:1}.layout>.sidebar-secondary{grid-column:2;grid-row:1}.layout>.main{grid-column:3;grid-row:1}.layout.secondary-closed{grid-template-columns:var(--sidebar-main-width) 0px 1fr}.sidebar-main{background:var(--color-sidebar-main-background);display:flex;flex-direction:column;align-items:center;padding:8px 0;gap:16px;border-right:1px solid var(--color-divider);width:var(--sidebar-main-width);min-width:0;box-sizing:border-box;height:100dvh;max-height:100dvh;padding-top:calc(var(--header-height) + 8px)}.sidebar-section{display:flex;flex-direction:column;align-items:center;gap:12px;width:100%;padding:0 8px;box-sizing:border-box}.sidebar-section-secondary{margin-top:auto;padding-top:16px}.nav-button{display:flex;flex-direction:column;align-items:center;font-size:12px;cursor:pointer;background:none;border:none;color:inherit;padding:6px 0;width:100%;transition:opacity .2s}.nav-button .icon{font-size:var(--1st-icon-size-nav);display:flex;align-items:center;justify-content:center;color:inherit;transition:box-shadow .2s,color .2s,background .2s;padding:8px;border-radius:var(--radius-medium)}.nav-button:not(.active):not(.nav-button--utility):hover .icon{color:#fff;box-shadow:0 0 0 1px #ffffffd9;background:#ffffff0f}.nav-button.active .icon{color:var(--color-accent);box-shadow:none;background:transparent}.nav-button.active:hover .icon{color:var(--color-accent);box-shadow:0 0 0 1px var(--color-accent);background:#3b82f61a}.nav-button--utility:hover .icon{color:#fff;box-shadow:0 0 0 1px #ffffffa6;background:#ffffff0d}.sidebar-section-secondary .nav-button .icon{font-size:var(--2nd-icon-size-nav)}.nav-button:hover{opacity:.8}.nav-button.active{opacity:1;font-weight:600}.sidebar-main.compact .label{display:none}.sidebar-main.narrow{width:44px}.sidebar-main.narrow .label{display:none}.sidebar-main.narrow .nav-button .icon{font-size:calc(var(--1st-icon-size-nav) * .67);padding:5px}.sidebar-main.narrow .sidebar-section-secondary .nav-button .icon{font-size:calc(var(--2nd-icon-size-nav) * .67)}.sidebar-main.narrow .sidebar-section{padding:0 4px;gap:8px}.sidebar-view-mode-toggle{opacity:.4;transition:opacity .2s}.sidebar-view-mode-toggle:hover{opacity:1}.nav-button-wrapper{position:relative}.nav-button-tooltip{position:absolute;left:calc(100% + 12px);top:50%;transform:translateY(-50%);background:var(--color-body-background);border:1px solid var(--color-divider);border-radius:var(--radius-medium);padding:8px 12px;font-size:12px;color:var(--color-body-text);white-space:nowrap;box-shadow:0 4px 12px #0000004d;z-index:100;pointer-events:none}.nav-button-tooltip:after{content:"";position:absolute;right:100%;top:50%;transform:translateY(-50%);border:6px solid transparent;border-right-color:var(--color-body-background)}.sidebar-secondary{background:var(--color-sidebar-secondary-background);padding:calc(var(--header-height) + 8px) 8px 0 8px;overflow:hidden;border-right:1px solid var(--color-divider);min-width:0;box-sizing:border-box;position:relative;display:flex;flex-direction:column;height:100dvh;max-height:100dvh}.sidebar-secondary-route-icon{position:absolute;top:0;left:8px;right:8px;height:var(--header-height);display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:0;color:var(--color-body-text);overflow:hidden}.sidebar-secondary-route-icon-logo{position:absolute;top:6px;right:6px;bottom:6px;left:6px;width:auto;max-width:calc(100% - 12px);height:calc(100% - 12px);object-fit:contain;opacity:.16}.sidebar-secondary-route-icon svg{position:relative;z-index:1;width:min(78%,112px);height:min(78%,112px);flex-shrink:0;opacity:.06}.sidebar-secondary-content{flex:1;min-height:0;position:relative;z-index:1;overflow-y:auto;overflow-x:hidden;padding-bottom:44px;box-sizing:border-box}.sidebar-secondary.is-closed{padding:0;border-right:none;overflow:hidden;min-width:0;width:0;pointer-events:none}.sidebar-secondary-resizer{position:absolute;top:var(--header-height);right:0;width:var(--sidebar-secondary-resizer-width);height:calc(100% - var(--header-height));cursor:col-resize;background:transparent;z-index:10}.sidebar-secondary-resizer:hover{background:var(--color-drag-handle-background)}.layout.secondary-closed .sidebar-secondary-resizer,.sidebar-secondary.is-closed .sidebar-secondary-resizer{display:none}.sidebar-secondary.is-compact{font-size:.88em}.sidebar-secondary-toggle{position:absolute;bottom:8px;right:8px;background:none;border:1px solid var(--color-divider);border-radius:var(--radius-small);color:inherit;cursor:pointer;padding:4px 6px;font-size:14px;display:flex;align-items:center;justify-content:center;opacity:.35;transition:opacity .2s,background .2s;z-index:2}.sidebar-secondary-toggle:hover{opacity:1;background:var(--color-sidebar-main-background)}.main{display:grid;grid-template-rows:var(--header-height) 1fr;grid-template-columns:1fr var(--preview-width);grid-template-areas:"header header" "content preview";position:relative;transition:grid-template-columns .25s ease;height:100dvh;max-height:100dvh;overflow:hidden}.main-chrome{grid-area:header;display:flex;flex-direction:column;min-height:0;overflow:visible;position:relative;z-index:40}.main.has-context-nav{grid-template-rows:auto 1fr}.main-header{grid-area:unset;background:var(--color-main-header-background);display:flex;flex-direction:column;height:100%;box-sizing:border-box;padding:8px 12px;gap:8px;min-height:0;overflow:visible}.header-top{height:var(--header-top-height);flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:16px}.header-search{flex:2 1 0;min-width:0;display:flex;align-items:center;background:var(--color-body-background);border:1px solid var(--color-divider);border-radius:var(--radius-small);padding:8px 12px;gap:8px;transition:background .2s}.header-search:focus-within{background:var(--color-hover-light)}.search-icon{color:var(--color-body-text);opacity:.6;font-size:18px}.search-input{flex:1;background:transparent;border:none;color:var(--color-body-text);font-family:var(--font-family-base);font-size:14px;outline:none}.search-input::placeholder{color:var(--color-body-text);opacity:.5}.header-user-info{flex:1 1 0;display:flex;justify-content:flex-end;align-items:center;gap:12px;position:relative}.user-name{color:var(--color-body-text);font-family:var(--font-family-base);font-size:14px}.user-avatar{width:36px;height:36px;border-radius:50%;background:var(--color-sidebar-main-background);display:flex;align-items:center;justify-content:center;color:var(--color-body-text);border:1px solid var(--color-divider);cursor:pointer;overflow:hidden;transition:background .2s}.user-avatar:hover{background:var(--color-hover-light)}.user-avatar img{width:100%;height:100%;object-fit:cover}.user-avatar-initials{font-family:var(--font-family-number);font-size:14px;font-weight:700}.user-menu{position:absolute;top:calc(100% + 12px);right:0;width:360px;max-height:min(80vh,720px);overflow-y:auto;background:var(--color-sidebar-main-background);border:1px solid var(--color-divider);border-radius:var(--radius-large);box-shadow:0 12px 32px #00000059;display:flex;flex-direction:column;gap:16px;padding:16px;z-index:20}.user-menu-section{display:flex;flex-direction:column;gap:12px}.user-menu-header{border-bottom:1px solid var(--color-divider);padding-bottom:12px}.user-menu-avatar-wrapper{display:flex;align-items:center;gap:12px}.user-menu-avatar{width:48px;height:48px;border-radius:50%;background:var(--color-body-background);display:flex;align-items:center;justify-content:center;overflow:hidden;border:1px solid var(--color-divider)}.user-menu-avatar span{font-family:var(--font-family-number);font-size:18px}.user-menu-avatar img{width:100%;height:100%;object-fit:cover}.user-menu-identity{display:flex;flex-direction:column;gap:4px}.user-menu-name{font-weight:600;color:var(--color-body-text)}.user-menu-email{font-size:13px;color:var(--color-body-text);opacity:.7}.user-menu-upload{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;background:transparent;border:1px solid var(--color-divider);border-radius:var(--radius-small);padding:6px 8px;color:var(--color-body-text);cursor:pointer;transition:background .2s}.user-menu-upload:hover{background:var(--color-hover-light)}.user-menu-section-title{font-size:13px;text-transform:uppercase;letter-spacing:.04em;color:var(--color-body-text);opacity:.6}.user-menu-role{font-weight:600;color:var(--color-body-text);font-size:13px}.user-menu-role-preview{font-weight:500;opacity:.65}.user-menu-admin-preview{border-top:1px solid var(--color-divider);padding-top:12px}.user-menu-admin-preview-hint{margin:0;font-size:12px;line-height:1.35;color:var(--color-body-text);opacity:.7}.user-menu-admin-preview-field{display:flex;flex-direction:column;gap:6px;font-size:12px;color:var(--color-body-text)}.user-menu-admin-preview-field>span{opacity:.7;text-transform:uppercase;letter-spacing:.03em}.user-menu-admin-preview-field select,.user-menu-admin-preview-search{background:var(--color-body-background);border:1px solid var(--color-divider);border-radius:var(--radius-small);color:var(--color-body-text);padding:6px 8px;width:100%}.user-menu-admin-preview-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.user-menu-admin-preview-action{background:transparent;border:1px solid var(--color-divider);border-radius:var(--radius-small);color:var(--color-body-text);padding:4px 8px;font-size:11px;cursor:pointer}.user-menu-admin-preview-action:hover{background:var(--color-hover-light)}.user-menu-admin-preview-count{margin-left:auto;font-size:11px;opacity:.65}.user-menu-admin-preview-projects{list-style:none;margin:0;max-height:160px;overflow-y:auto;display:flex;flex-direction:column;gap:2px;border:1px solid var(--color-divider);border-radius:var(--radius-small);padding:4px}.user-menu-admin-preview-item{display:flex;align-items:flex-start;gap:8px;font-size:12px;line-height:1.3;cursor:pointer;padding:4px;border-radius:calc(var(--radius-small) - 2px)}.user-menu-admin-preview-item:hover{background:var(--color-hover-light)}.user-menu-admin-preview-item input{margin-top:1px}.admin-preview-badge{display:inline-flex;align-items:center;padding:.2rem .55rem;border-radius:4px;font-size:.7rem;font-weight:600;letter-spacing:.03em;color:#1a1918;background:linear-gradient(135deg,#7dd3c7,#3aa89a);box-shadow:0 0 0 1px #00000026}.user-menu-categories,.user-menu-devices{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.user-menu-categories li,.user-menu-devices li{display:flex;align-items:center;gap:8px;color:var(--color-body-text);font-size:13px}.user-menu-devices li.is-current{opacity:1}.user-menu-device-meta{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.user-menu-device-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu-device-seen{font-size:11px;opacity:.6}.user-menu-device-revoke{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border:1px solid var(--color-divider);border-radius:var(--radius-small);background:transparent;color:var(--color-body-text);cursor:pointer;opacity:.7}.user-menu-device-revoke:hover:not(:disabled){opacity:1;background:var(--color-hover-light)}.user-menu-device-revoke:disabled{opacity:.4;cursor:wait}.user-menu-revoke-others{align-self:flex-start;margin-top:4px;background:transparent;border:1px solid var(--color-divider);border-radius:var(--radius-small);color:var(--color-body-text);padding:4px 8px;font-size:11px;cursor:pointer}.user-menu-revoke-others:hover:not(:disabled){background:var(--color-hover-light)}.user-menu-revoke-others:disabled{opacity:.5;cursor:wait}.device-icon{opacity:.7}.user-menu-preferences{border-top:1px solid var(--color-divider);padding-top:12px;gap:12px}.user-menu-preference{display:flex;justify-content:space-between;align-items:center;gap:12px}.preference-label{display:flex;align-items:center;gap:6px;color:var(--color-body-text);font-size:13px}.preference-label svg{font-size:16px;opacity:.8}.user-menu-preference select{background:var(--color-body-background);border:1px solid var(--color-divider);border-radius:var(--radius-small);color:var(--color-body-text);padding:4px 8px}.user-menu-toggle{display:flex;gap:2px;background:var(--color-sidebar-main-background);border:1px solid var(--color-divider);border-radius:var(--radius-small);padding:2px}.user-menu-toggle--triple{width:100%}.user-menu-toggle--triple .toggle-option-button{flex:1;min-width:0;padding:4px 6px;font-size:10px}.toggle-option-button{background:transparent;border:none;color:var(--color-body-text);cursor:pointer;padding:4px 10px;border-radius:calc(var(--radius-small) - 2px);display:flex;align-items:center;justify-content:center;transition:all .2s;opacity:.6;font-size:11px;font-weight:500;min-width:36px}.toggle-option-button:hover{opacity:.9;background:var(--color-body-background)}.toggle-option-button.active{background:var(--color-body-background);opacity:1}.user-menu-logout{align-self:flex-start;background:transparent;border:1px solid var(--color-divider);border-radius:var(--radius-small);padding:6px 10px;color:var(--color-body-text);cursor:pointer;transition:background .2s}.user-menu-logout:hover{background:var(--color-hover-light)}.header-actions{height:var(--header-actions-height);flex:1 1 auto;min-height:0;display:flex;align-items:stretch;gap:8px;padding:0;overflow:visible;position:relative;z-index:1}.action-button{height:100%;padding:7px 8px;background:var(--color-body-background);border:1px solid var(--color-divider);color:var(--color-body-text);cursor:pointer;border-radius:var(--radius-small);font-family:var(--font-family-base);font-size:12px;transition:all .2s;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:4px;width:var(--header-action-width);flex-shrink:0}.action-button:hover{background:var(--color-hover-light)}.action-button:active,.action-button[aria-pressed=true]{background:var(--color-body-background)}.action-button-icon,.action-button-preview-icon{font-size:24px;width:24px;height:24px;flex-shrink:0;opacity:.9;line-height:1}.action-button-text{font-weight:700;font-size:12px}.action-button-label{font-weight:inherit}.action-button-upload{border-style:dashed}.action-button-upload.upload-dragging{border-color:var(--color-accent);background:#22c55e1f}.action-button-more{position:relative;display:flex;flex-direction:column;width:var(--header-action-width);flex-shrink:0;height:100%;align-self:stretch;z-index:2}.action-button-more.is-expanded{height:auto;align-self:flex-start;z-index:100}.action-button-more-panel{display:flex;flex-direction:column;flex:1;min-height:100%;background:var(--color-body-background);border:1px solid var(--color-divider);border-radius:var(--radius-small);overflow:hidden;transition:box-shadow .2s}.action-button-more.is-expanded .action-button-more-panel{box-shadow:0 12px 24px #00000073}.action-button-more-trigger{flex:1;width:100%;min-height:100%;border:none;border-radius:0}.action-button-more-trigger:hover{background:var(--color-hover-light)}.action-button-more-list{display:flex;flex-direction:column;padding:6px;gap:2px;min-height:100%}.action-button-more-item{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;border:none;border-radius:var(--radius-small);background:transparent;color:var(--color-body-text);font-family:var(--font-family-base);font-size:13px;font-weight:600;line-height:1.25;text-align:left;cursor:pointer;transition:background .2s}.action-button-more-item:hover{background:var(--color-hover-light)}.action-button-more-item-icon{font-size:20px;flex-shrink:0;opacity:.9;line-height:1}.main-content{grid-area:content;padding:12px;overflow-y:auto;overflow-x:hidden;min-height:0}.dashboard{padding:24px}.dashboard-header{margin-bottom:32px}.dashboard-header-content{display:flex;justify-content:space-between;align-items:flex-start}.dashboard-header h1{margin:0 0 8px;color:var(--color-body-text);font-size:32px;font-weight:600}.dashboard-header p{margin:0;color:var(--color-body-text);opacity:.7;font-size:16px}.dashboard-status{margin:0 0 16px;color:var(--color-body-text);opacity:.75;font-size:14px}.dashboard-status-error{color:var(--color-danger, #e57373);opacity:1}.view-toggle{display:flex;align-items:center;gap:4px;background:var(--color-sidebar-main-background);border:1px solid var(--color-divider);border-radius:4px;padding:4px}.dashboard-project-find{width:3.25rem;min-width:3.25rem;padding:6px 8px;border:none;border-radius:4px;background:var(--color-body-background);color:var(--color-body-text);font-size:13px;font-variant-numeric:tabular-nums;text-align:center}.dashboard-project-find::placeholder{color:var(--color-body-text);opacity:.45}.dashboard-project-find:focus{outline:1px solid var(--color-divider);opacity:1}.view-toggle-button{background:transparent;border:none;color:var(--color-body-text);cursor:pointer;padding:8px;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .2s;opacity:.6}.view-toggle-button:hover{opacity:.9;background:var(--color-body-background)}.view-toggle-button.active{background:var(--color-body-background);opacity:1}.view-toggle-button svg{font-size:20px}.home-section{margin-bottom:32px}.home-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.home-section-head h2{margin:0;font-size:18px;font-weight:600;color:var(--color-body-text)}.home-section-head .dashboard-ai-create{margin-top:0}.home-section-hint{margin:0 0 16px;color:var(--color-body-text);opacity:.7;font-size:13px}.home-section-link{display:inline-flex;align-items:center;gap:4px;background:none;border:none;color:var(--color-body-text);opacity:.75;font-family:var(--font-family-base);font-size:13px;font-weight:600;cursor:pointer;padding:0}.home-section-link:hover{opacity:1}.home-actions{display:flex;flex-wrap:wrap;gap:8px}.home-actions .action-button{height:var(--header-actions-height)}.home-shortcuts{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}.home-shortcut{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:14px 14px 12px;background:var(--color-body-background);border:1px solid var(--color-divider);border-radius:var(--radius-large);color:var(--color-body-text);font-family:var(--font-family-base);text-align:left;cursor:pointer;transition:border .2s,background .2s,transform .2s}.home-shortcut:hover{background:var(--color-hover-light);border-color:var(--color-body-text);transform:translateY(-1px)}.home-shortcut-icon{font-size:22px;opacity:.9}.home-shortcut-label{font-size:14px;font-weight:700}.home-shortcut-hint{font-size:12px;opacity:.65;line-height:1.35}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px}.projects-list{display:flex;flex-direction:column;gap:12px}.project-widget{background:var(--color-body-background);border:1px solid var(--color-divider);border-radius:var(--radius-large);padding:0;transition:all .2s;cursor:pointer;overflow:hidden;display:flex;flex-direction:column}.project-widget-selected{border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-shadow)}.project-widget:hover{border-color:var(--color-body-text);opacity:.9;transform:translateY(-2px);box-shadow:0 4px 12px #0000004d}.project-widget-content{padding:20px;display:flex;flex-direction:column;gap:16px}.project-widget-list{flex-direction:row;padding:0}.project-widget-list .project-widget-content{flex:1;flex-direction:row;align-items:center;gap:16px;padding:12px 16px}.project-widget-list .project-widget-header{flex:1;margin-bottom:0;padding-bottom:0;border-bottom:none;border-right:1px solid var(--color-divider);padding-right:16px;display:flex;align-items:center;gap:12px}.project-widget-image-small{flex-shrink:0;overflow:hidden;border-radius:var(--radius-small);background:var(--color-sidebar-main-background)}.project-widget-image-small img{width:100%;height:100%;object-fit:cover}.project-widget-image-placeholder{background:var(--color-body-background)}.project-widget-image-placeholder img{object-fit:contain;padding:6px;opacity:.85}.project-widget-list .project-widget-image-small{width:60px;height:60px}.project-widget-image-card{width:80px;height:80px}.project-widget-header-text{flex:1;min-width:0}.project-widget-progress{display:flex;flex-direction:row;gap:4px;margin-top:8px;flex-wrap:wrap}.project-widget-progress-bar-wrapper{flex:1;min-width:20px;max-width:40px;position:relative;cursor:help}.project-widget-progress-bar-wrapper.current{min-width:24px;max-width:44px}.project-widget-progress-bar{width:100%;height:4px;background:var(--color-divider);border-radius:var(--radius-small);overflow:hidden;position:relative}.project-widget-progress-bar-wrapper.current .project-widget-progress-bar{height:5px;border:1px solid var(--color-accent);background:rgba(var(--color-accent-rgb),.1)}.project-widget-progress-bar-fill{height:100%;background:linear-gradient(90deg,var(--color-accent),rgba(var(--color-accent-rgb),.8));border-radius:var(--radius-small);transition:width .3s ease-out}.project-widget-progress-bar-wrapper.current .project-widget-progress-bar-fill{background:linear-gradient(90deg,var(--color-accent),rgba(var(--color-accent-rgb),1));box-shadow:0 0 4px rgba(var(--color-accent-rgb),.3)}.project-widget-progress-bar-wrapper:after{content:attr(title);position:absolute;bottom:100%;left:50%;transform:translate(-50%) translateY(-4px);background:var(--color-body-background);color:var(--color-body-text);padding:4px 8px;border-radius:var(--radius-small);font-size:11px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;border:1px solid var(--color-divider);z-index:1000;margin-bottom:4px}.project-widget-progress-bar-wrapper:hover:after{opacity:1;transform:translate(-50%) translateY(0)}.project-widget-progress--empty{margin-top:8px;min-height:4px}.project-widget-progress-empty-label{font-size:11px;opacity:.55;font-style:italic}.project-widget-progress--pending .project-widget-progress-bar-wrapper.no-fill .project-widget-progress-bar{background:color-mix(in srgb,var(--color-divider) 70%,transparent)}.project-widget-progress-bar--skeleton{animation:widget-progress-pulse 1.2s ease-in-out infinite;background:var(--color-divider)}@keyframes widget-progress-pulse{0%,to{opacity:.45}50%{opacity:.9}}.project-widget-list .project-name{font-size:16px;margin-bottom:4px}.project-widget-list .project-description{font-size:13px}.project-widget-list .project-widget-stats{flex-direction:row;gap:8px;flex:0 0 30%}.project-widget-list .stat-item{flex:0 0 calc(33.333% - 6px);padding:8px;gap:6px;min-width:0}.project-widget-list .stat-top{gap:6px}.project-widget-list .stat-icon,.project-widget-list .stat-value{font-size:18px}.project-widget-list .stat-label{font-size:11px}.project-widget:hover{background:var(--color-hover-light);border-color:var(--color-body-text);opacity:.9}.project-widget-header{margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid var(--color-divider);display:flex;align-items:flex-start;gap:12px}.project-name{margin:0 0 8px;color:var(--color-body-text);font-size:20px;font-weight:600;display:flex;align-items:center;gap:8px}.project-number-prefix{font-family:var(--font-family-number);font-size:20px;font-weight:600;opacity:.8}.project-name-separator{opacity:.6}.project-description{margin:0;color:var(--color-body-text);opacity:.7;font-size:14px}.project-widget-stats{display:flex;flex-direction:row;gap:8px}.stat-item{flex:0 0 calc(33.333% - 6px);display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:10px;border-radius:var(--radius-small);background:var(--color-stat-item-background);min-width:0}.stat-top{display:flex;align-items:center;gap:8px}.stat-icon{font-size:20px;color:var(--color-body-text);opacity:.8;flex-shrink:0}.stat-value{font-size:20px;font-weight:600;color:var(--color-body-text);line-height:1}.stat-label{font-size:12px;color:var(--color-body-text);opacity:.7;line-height:1.2}.stat-deadline .stat-top .stat-value.deadline-date{font-size:20px;font-weight:600}.stat-deadline .stat-label.deadline-label{font-size:12px;color:var(--color-body-text);opacity:.7}.deadline-overdue .stat-top .stat-value.deadline-date{color:var(--color-deadline-overdue)}.deadline-urgent .stat-top .stat-value.deadline-date{color:var(--color-deadline-urgent)}.deadline-warning .stat-top .stat-value.deadline-date{color:var(--color-deadline-warning)}.deadline-normal .stat-top .stat-value.deadline-date{color:var(--color-deadline-normal)}.stat-deadline.deadline-overdue{background:var(--color-priority-high-bg)}.stat-deadline.deadline-urgent{background:var(--color-priority-medium-bg)}.stat-deadline.deadline-warning{background:var(--color-priority-low-bg)}.action-item.priority-high{border-left-color:var(--color-priority-high);background:var(--color-priority-high-bg)}.action-item.priority-medium{border-left-color:var(--color-priority-medium);background:var(--color-priority-medium-bg)}.action-item.priority-low{border-left-color:var(--color-priority-low);background:var(--color-priority-low-bg)}.action-item.priority-high .priority-icon{color:var(--color-priority-high)}.action-item.priority-medium .priority-icon{color:var(--color-priority-medium)}.action-item.priority-low .priority-icon{color:var(--color-priority-low)}.action-due-date{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--color-body-text);opacity:.7}.action-due-icon{font-size:14px}.action-title{font-weight:600;color:var(--color-body-text);margin-bottom:6px;font-size:14px}.action-assignee{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--color-body-text);opacity:.7}.action-assignee-icon{font-size:14px}.project-details-empty-section{padding:24px;text-align:center;color:var(--color-body-text);opacity:.6}.project-details{display:flex;flex-direction:column;gap:24px;padding:0;height:100%;overflow-y:auto;overflow-x:hidden}.project-details-header{padding-bottom:16px;border-bottom:1px solid var(--color-divider)}.project-details-header-sticky{position:sticky;top:0;background:var(--color-preview-background);z-index:10;padding-top:40px;padding-bottom:16px;margin-bottom:0}.project-details-title{display:flex;align-items:center;gap:12px;margin-bottom:8px}.project-details-title-clickable{cursor:pointer;transition:opacity .2s;padding:4px;margin:-4px;border-radius:var(--radius-small)}.project-details-title-clickable:hover{opacity:.8;background:var(--color-hover-light)}.project-details-title-clickable:focus{outline:2px solid var(--color-accent);outline-offset:2px}.project-details-number{font-family:var(--font-family-number);font-size:22px;font-weight:600;color:var(--color-body-text);opacity:.8}.project-details-title h2{margin:0;font-size:24px;font-weight:600;color:var(--color-body-text)}.project-details-description{margin:0;color:var(--color-body-text);opacity:.7;font-size:14px}.project-details-section{display:flex;flex-direction:column;gap:16px}.project-details-section-header{display:flex;align-items:center;gap:8px;margin-bottom:4px}.project-details-section-header h3{margin:0;font-size:18px;font-weight:600;color:var(--color-body-text)}.section-icon{font-size:20px;color:var(--color-body-text);opacity:.8}.project-details-emails,.project-details-actions{display:flex;flex-direction:column;gap:12px}.email-item,.action-item{padding:12px;background:var(--color-sidebar-main-background);border-radius:var(--radius-medium);border:1px solid var(--color-divider);transition:background .2s}.email-item:hover,.action-item:hover{background:var(--color-hover-light)}.email-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.email-from{font-weight:600;color:var(--color-body-text);font-size:14px}.email-date{font-size:12px;color:var(--color-body-text);opacity:.6}.email-subject{font-weight:600;color:var(--color-body-text);margin-bottom:6px;font-size:14px}.email-preview{font-size:13px;color:var(--color-body-text);opacity:.7;line-height:1.4}.preview{grid-area:preview;background:var(--color-preview-background);display:flex;flex-direction:column;padding:40px 16px 16px;gap:16px;overflow-y:auto;overflow-x:hidden;min-width:0;box-sizing:border-box;position:relative}.preview-close-button{position:absolute;top:8px;left:8px;background:var(--color-body-background);border:1px solid var(--color-divider);border-radius:var(--radius-small);width:24px;height:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--color-body-text);z-index:20;transition:all .2s;padding:0}.preview-close-button:hover{background:var(--color-hover-light);border-color:var(--color-body-text);opacity:.9}.preview-close-button:focus{outline:2px solid var(--color-accent);outline-offset:2px}.preview-close-button svg{font-size:16px}.preview+.drag-handle,.drag-handle{position:absolute;top:var(--header-height);right:var(--preview-width);width:6px;height:calc(100% - var(--header-height));cursor:col-resize;background:transparent;border-left:1px solid var(--color-divider);border-right:1px solid transparent;z-index:10;transition:background .2s}.drag-handle:hover{background:var(--color-drag-handle-background)}.preview-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:16px;border-bottom:1px solid var(--color-divider)}.preview-header-title{font-size:20px;font-weight:600;color:var(--color-body-text)}.preview-header-actions{display:flex;gap:8px}.preview-header-action-button{background:transparent;border:none;color:var(--color-body-text);cursor:pointer;padding:8px;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .2s;opacity:.6}.preview-header-action-button:hover{opacity:.9;background:var(--color-body-background)}.preview-header-action-button.active{background:var(--color-body-background);opacity:1}.preview-header-action-button svg{font-size:20px}.preview-content{flex:1;overflow-y:auto;overflow-x:hidden;min-height:0}.preview-content-inner{padding:0 16px}.preview-content-inner .project-widget{margin-bottom:16px}.preview-content-inner .project-widget:last-child{margin-bottom:0}.preview-content-inner .project-widget-list{padding:0}.preview-content-inner .project-widget-list .project-widget-content{flex:1;flex-direction:row;align-items:center;gap:16px;padding:12px 16px}.preview-content-inner .project-widget-list .project-widget-header{flex:1;margin-bottom:0;padding-bottom:0;border-bottom:none;border-right:1px solid var(--color-divider);padding-right:16px;display:flex;align-items:center;gap:12px}.preview-content-inner .project-widget-image-small{flex-shrink:0;overflow:hidden;border-radius:var(--radius-small);background:var(--color-sidebar-main-background)}.preview-content-inner .project-widget-image-small img{width:100%;height:100%;object-fit:cover}.preview-content-inner .project-widget-image-card{width:80px;height:80px}.preview-content-inner .project-widget-header-text{flex:1;min-width:0}.preview-content-inner .project-widget-list .project-widget-stats{flex-direction:row;gap:8px;flex:0 0 30%}.preview-content-inner .project-widget-list .stat-item{flex:0 0 calc(33.333% - 6px);padding:8px;gap:6px;min-width:0}.preview-content-inner .project-widget-list .stat-top{gap:6px}.preview-content-inner .project-widget-list .stat-icon,.preview-content-inner .project-widget-list .stat-value{font-size:18px}.preview-content-inner .project-widget-list .stat-label{font-size:11px}.preview-content-inner .project-widget-list .project-name{font-size:16px;margin-bottom:4px}.preview-content-inner .project-widget-list .project-description{font-size:13px}.secondary-projects{display:flex;flex-direction:column;gap:12px;color:var(--color-body-text)}.secondary-projects h2{font-size:18px;font-weight:600;margin:0}.secondary-projects ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.secondary-project-item{width:100%;border:1px solid var(--color-divider);background:var(--color-sidebar-secondary-background);color:inherit;padding:10px 12px;border-radius:var(--radius-medium);display:flex;flex-direction:column;gap:4px;text-align:left;cursor:pointer;transition:all .2s}.secondary-project-item:hover{border-color:var(--color-body-text);background:var(--color-hover-light)}.secondary-project-item.active{border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-shadow)}.secondary-project-number{font-family:var(--font-family-number);font-size:16px;opacity:.8}.secondary-project-name{font-weight:600;font-size:14px}.secondary-project-row{display:flex;align-items:stretch;gap:6px}.secondary-project-row .secondary-project-item{flex:1}.secondary-project-edit{flex-shrink:0;width:36px;border:1px solid var(--color-divider);border-radius:var(--radius-medium);background:var(--color-sidebar-secondary-background);color:var(--color-body-text);cursor:pointer;display:flex;align-items:center;justify-content:center}.secondary-project-edit:hover{border-color:var(--color-body-text);background:var(--color-hover-light)}.project-form-error{margin:0 0 1rem;padding:.5rem .75rem;border-radius:6px;background:#f8717126;color:#f87171;font-size:.9rem}.project-number-field .field-hint{font-size:.75rem;opacity:.7}.secondary-project-description{color:var(--color-body-text);font-size:12px;line-height:1.35;opacity:.65}.projects-sidebar-section h3{margin:0 0 4px;color:var(--color-body-text);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;opacity:.65}.projects-sidebar-search{width:100%;position:relative}.projects-sidebar-search input{width:100%;box-sizing:border-box;background:var(--color-body-background);border:1px solid var(--color-divider);border-radius:var(--radius-medium);padding:10px 32px 10px 12px;color:var(--color-body-text);font-size:14px;transition:border .2s,box-shadow .2s}.projects-sidebar-search input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-shadow)}.projects-sidebar-filter-group{display:flex;flex-direction:column;gap:8px}.projects-sidebar-filter-group h3{margin:0;font-size:13px;font-weight:600;opacity:.8}.projects-sidebar-filters{display:flex;flex-wrap:wrap;gap:8px}.projects-sidebar-filters button{background:transparent;border:1px solid var(--color-divider);border-radius:var(--radius-small);color:var(--color-body-text);padding:6px 10px;font-size:12px;cursor:pointer;transition:border .2s,background .2s}.projects-sidebar-filters button:hover{border-color:var(--color-body-text);background:var(--color-hover-light)}.projects-sidebar-filters button.active{background:var(--color-body-background);border-color:var(--color-accent)}.projects-sidebar-reset{align-self:flex-start;background:transparent;border:1px solid var(--color-divider);border-radius:var(--radius-small);color:var(--color-body-text);padding:6px 10px;font-size:12px;cursor:pointer}.projects-sidebar-reset:hover{background:var(--color-hover-light)}.projects-sidebar-section{display:flex;flex-direction:column;gap:8px}.projects-sidebar-section h2{font-size:18px;font-weight:600;margin:0}.secondary-project-detail{display:flex;flex-direction:column;gap:12px;color:var(--color-body-text)}.project-detail-sidebar-header{display:flex;flex-direction:row;align-items:center;gap:12px;padding:8px 0}.project-detail-back-button{background:transparent;border:1px solid var(--color-divider);border-radius:var(--radius-medium);color:var(--color-body-text);padding:0;width:32px;height:32px;min-width:32px;min-height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.project-detail-back-button:hover{background:var(--color-hover-light);border-color:var(--color-accent);color:var(--color-accent)}.secondary-dpgf-detail{display:flex;flex-direction:column;height:100%;overflow-y:auto}.secondary-dpgf-detail .project-detail-sidebar-header{padding:12px 16px;border-bottom:1px solid var(--color-divider);flex-shrink:0}.secondary-dpgf-detail .project-detail-sidebar-section{padding:10px}.secondary-dpgf-detail .project-detail-sidebar-section h3{font-size:12px;font-weight:700;color:var(--color-body-text);margin:0 0 8px;text-transform:uppercase;letter-spacing:1px;opacity:.8;font-family:var(--font-family-number)}.secondary-dpgf-detail .project-detail-sidebar-list{display:flex;flex-direction:column;gap:4px}.secondary-dpgf-detail .project-detail-sidebar-item{padding:10px 12px;text-align:left;border-radius:var(--radius-small);transition:all .2s}.secondary-dpgf-detail .project-detail-sidebar-item.active:not(.dpgf-category-item){background:var(--color-accent);color:#fff;font-weight:500}.secondary-dpgf-detail .project-detail-sidebar-item{cursor:pointer}.secondary-dpgf-detail .project-detail-sidebar-item:not(.active):hover{background:var(--color-hover-light)}.dpgf-view-mode-selector{display:flex;gap:0;border:1px solid var(--color-divider);border-radius:var(--radius-small);overflow:hidden;background:var(--color-body-background)}.dpgf-view-mode-button{flex:1;padding:8px 12px;background:var(--color-body-background);border:none;border-right:1px solid var(--color-divider);color:var(--color-body-text);font-size:13px;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap;font-family:var(--font-family-base)}.dpgf-view-mode-button:last-child{border-right:none}.dpgf-view-mode-button:hover{background:var(--color-hover-light)}.dpgf-view-mode-button.active{background:var(--color-accent);color:#fff;font-weight:600}.dpgf-lot-selection-indicator{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;font-size:14px;font-weight:600;color:var(--color-accent);margin-right:8px;flex-shrink:0;opacity:1}.dpgf-lot-unselected .dpgf-lot-header{opacity:.6}.dpgf-lot-unselected .dpgf-lot-header:hover{opacity:.8}.dpgf-sidebar-separator{height:1px;background:var(--color-divider);margin:6px 0;width:100%}.dpgf-sidebar-category{display:flex;flex-direction:column;margin-bottom:2px}.dpgf-sidebar-category:not(:last-child){margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid var(--color-divider)}.dpgf-category-item{font-weight:700;font-size:14px;text-transform:uppercase;letter-spacing:.5px;font-family:var(--font-family-number);padding:6px 10px!important;margin-bottom:1px;border-radius:var(--radius-small)}.dpgf-category-item:hover{background:var(--color-hover-light)!important;border-color:var(--color-accent)!important}.project-detail-sidebar-item.dpgf-category-item.active,.dpgf-category-item.active{border-color:var(--color-accent)!important;background:rgba(var(--color-accent-rgb),.1)!important;box-shadow:0 0 0 2px var(--color-accent-shadow)!important;color:var(--color-accent)!important}.dpgf-lot-item{font-size:13px;padding:5px 10px!important;margin-left:0;border-left:2px solid transparent;transition:all .2s;display:flex;align-items:center;gap:6px;font-family:var(--font-family-number)}.dpgf-lot-item:hover{background:var(--color-hover-light)!important;border-left-color:var(--color-accent)!important}.project-detail-sidebar-item.dpgf-lot-item.active,.dpgf-lot-item.active{border-left-color:var(--color-accent)!important;background:rgba(var(--color-accent-rgb),.08)!important;box-shadow:none!important}.dpgf-sidebar-lot-code{font-weight:600;margin-right:0;font-family:var(--font-family-number);font-size:13px;min-width:36px;flex-shrink:0}.dpgf-lot-item span:not(.dpgf-sidebar-lot-code){flex:1;line-height:1.4}.project-detail-back-button:hover{border-color:var(--color-body-text);background:var(--color-hover-light)}.project-detail-back-button svg{width:18px;height:18px}.project-detail-sidebar-title{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.project-detail-sidebar-number{font-family:var(--font-family-number);font-size:14px;opacity:.8;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-detail-sidebar-name{font-weight:600;font-size:14px;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-detail-sidebar-section{display:flex;flex-direction:column;gap:8px}.project-detail-sidebar-section h3{font-size:16px;font-weight:600;margin:0}.project-detail-sidebar-list{display:flex;flex-direction:column;gap:6px}.project-detail-sidebar-item{width:100%;background:transparent;border:1px solid transparent;color:var(--color-body-text);padding:10px 12px;border-radius:var(--radius-medium);text-align:left;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:8px;transition:background .2s,border .2s}.project-detail-sidebar-item:hover{background:var(--color-hover-light);border-color:var(--color-divider)}.project-detail-sidebar-item.active{border-color:var(--color-accent);background:rgba(var(--color-accent-rgb),.05);box-shadow:0 0 0 2px var(--color-accent-shadow)}body.modal-open{overflow:hidden}.action-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000bf;display:flex;align-items:center;justify-content:center;z-index:2000;padding:24px;box-sizing:border-box}.action-modal{background:var(--color-main-header-background);border:1px solid var(--color-divider);border-radius:var(--radius-large);width:min(640px,95vw);max-height:90vh;display:flex;flex-direction:column;box-shadow:0 16px 48px #00000073}.action-modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--color-divider)}.action-modal-header h3{margin:0;font-size:20px;font-weight:600;color:var(--color-body-text)}.action-modal-header-actions{display:flex;align-items:center;gap:2px;flex-shrink:0}.action-modal-expand,.action-modal-close{background:none;border:none;color:var(--color-body-text);font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-medium);padding:4px;transition:background .2s,color .2s}.action-modal-expand:hover,.action-modal-close:hover{background:var(--color-hover-light);color:var(--color-body-text)}.action-modal--expanded{width:min(96vw,1520px);max-height:94vh;overflow:hidden}.action-modal--expanded .action-modal-content{flex:1;min-height:0;overflow:hidden}.action-modal:has(.project-form--wizard) .action-modal-header{border-bottom:none;padding-bottom:8px}.action-modal:has(.project-form--wizard) .action-modal-header h3{overflow-wrap:anywhere;line-height:1.3}.action-modal--expanded:has(.project-form--wizard){width:min(96vw,1520px);height:94vh}.action-modal-content:has(.project-form--wizard){padding:0;display:flex;flex-direction:column}.action-modal--expanded .action-modal-content:has(.project-form--wizard){overflow:hidden;flex:1;min-height:0}.action-modal--expanded .project-form--wizard{height:100%}.action-modal--expanded .upload-modal{max-height:calc(94vh - 120px);min-height:0}.action-modal--expanded .upload-file-list{max-height:none;flex:1;min-height:0}.project-form-auto-title-hint{margin:0 0 12px;font-size:.9rem;opacity:.85}.project-copro-summary{margin-top:8px;padding:10px 12px;border-radius:var(--radius-medium);background:color-mix(in srgb,var(--color-body-background) 90%,var(--color-accent));font-size:.88rem;line-height:1.45}.project-copro-summary p{margin:0 0 4px}.project-copro-summary p:last-child{margin-bottom:0}.project-copro-selected{display:flex;flex-direction:column;gap:10px;margin-bottom:12px}.project-copro-change-btn{align-self:flex-start}.project-copro-change-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:10px}.project-copro-results{display:flex;flex-direction:column;gap:8px;max-height:280px;overflow-y:auto;margin-bottom:12px;padding:4px;border:1px solid var(--color-divider);border-radius:var(--radius-medium);background:color-mix(in srgb,var(--color-body-background) 96%,var(--color-accent))}.project-copro-result-tag{display:flex;flex-direction:column;align-items:flex-start;gap:4px;width:100%;padding:10px 12px;border:1px solid var(--color-divider);border-radius:var(--radius-medium);background:var(--color-sidebar-main-background);text-align:left;cursor:pointer;transition:border-color .15s ease,background .15s ease}.project-copro-result-tag:hover,.project-copro-result-tag:focus-visible{border-color:var(--color-accent);background:color-mix(in srgb,var(--color-sidebar-main-background) 88%,var(--color-accent));outline:none}.project-copro-result-name{font-weight:600;font-size:.92rem;color:var(--color-body-text);line-height:1.35}.project-copro-result-address{font-size:.86rem;color:var(--color-body-text);opacity:.82;line-height:1.4}.project-copro-result-immat{font-size:.78rem;font-family:var(--font-mono, ui-monospace, monospace);color:var(--color-body-text);opacity:.6}.project-info-panel{margin:8px 0 12px;padding:12px 14px;border-radius:var(--radius-medium);background:color-mix(in srgb,var(--color-body-background) 92%,var(--color-accent));border:1px solid color-mix(in srgb,var(--color-divider) 80%,transparent)}.project-info-panel h5{margin:0 0 8px;font-size:.92rem;font-weight:600}.project-info-dl{display:grid;grid-template-columns:minmax(120px,34%) 1fr;gap:6px 12px;margin:0;font-size:.88rem}.project-info-dl dt{margin:0;opacity:.75;font-weight:500}.project-info-dl dd{margin:0;font-weight:500}.project-info-panel-hint{margin:0 0 12px}.project-delegate-readonly-name{display:flex;flex-direction:column;gap:4px}.project-delegate-readonly-name .field-label{font-size:.85rem;opacity:.8}.project-form-error--inline{font-size:.88rem;margin:4px 0}.upload-folder-hint{grid-column:1 / -1;margin:0}.upload-file-fields--row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;grid-column:1 / -1}.action-modal-content{padding:20px;color:var(--color-body-text);overflow-y:auto;display:flex;flex-direction:column;gap:16px}.mail-composer{display:flex;flex-direction:column;gap:16px}.mail-field-group{display:flex;flex-direction:column;gap:6px}.mail-field-group label{font-size:13px;font-weight:600;color:var(--color-body-text)}.mail-field-group input,.mail-field-group select,.mail-field-group textarea{background:var(--color-body-background);border:1px solid var(--color-divider);border-radius:var(--radius-medium);padding:10px 12px;color:var(--color-body-text);font-family:var(--font-family-base);font-size:14px;transition:border .2s,background .2s}.mail-field-group input:focus,.mail-field-group select:focus,.mail-field-group textarea:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-shadow)}.mail-field-group textarea{resize:vertical;min-height:160px}.mail-subject-wrapper{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.mail-subject-prefix{background:var(--color-sidebar-main-background);border:1px solid var(--color-divider);border-radius:var(--radius-medium);padding:8px 12px;font-family:var(--font-family-number);font-size:13px;opacity:.85;white-space:nowrap}.mail-subject-prefix--client{font-family:var(--font-family-number)}.mail-subject-sep{color:var(--color-body-text);opacity:.5;font-size:13px;-webkit-user-select:none;user-select:none}.mail-subject-reply-prefix{font-size:13px;font-weight:600;color:var(--color-body-text);white-space:nowrap}.mail-subject-client-input{max-width:160px}.mail-subject-hint{font-size:11px;opacity:.65;line-height:1.4}.mail-subject-preview{display:block;margin-top:6px;font-size:11px;opacity:.55;font-family:var(--font-family-number);word-break:break-word}.mail-subject-wrapper input{flex:1;min-width:120px}.mail-recipient-actions{display:flex;gap:12px}.mail-recipient-actions button{background:transparent;border:1px dashed var(--color-divider);color:var(--color-body-text);padding:8px 12px;border-radius:var(--radius-small);cursor:pointer;font-size:13px;transition:border .2s,color .2s}.mail-recipient-actions button:hover{border-color:var(--color-body-text);color:var(--color-body-text)}.mail-actions{display:flex;justify-content:flex-end;margin-top:8px}.mail-actions button{background:var(--color-accent);color:#0f172a;border:none;padding:10px 18px;border-radius:var(--radius-medium);font-weight:600;cursor:pointer;transition:opacity .2s,transform .2s}.mail-actions button:disabled{opacity:.4;cursor:not-allowed;transform:none}.mail-actions button:not(:disabled):hover{opacity:.85;transform:translateY(-1px)}.secondary-mail,.secondary-messages{display:flex;flex-direction:column;gap:16px;color:var(--color-body-text)}.messages-sidebar-search{width:100%}.messages-sidebar-search input{width:100%;background:var(--color-body-background);border:1px solid var(--color-divider);border-radius:var(--radius-medium);padding:10px 12px;color:var(--color-body-text);font-size:14px;transition:border .2s,box-shadow .2s}.messages-sidebar-search input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-shadow)}.messages-sidebar-filters{display:flex;flex-wrap:wrap;gap:8px}.messages-sidebar-filters button{background:transparent;border:1px solid var(--color-divider);border-radius:var(--radius-small);color:var(--color-body-text);padding:6px 10px;font-size:12px;cursor:pointer;transition:border .2s,background .2s}.messages-sidebar-filters button:hover{border-color:var(--color-body-text);background:var(--color-hover-light)}.mail-sidebar-search{position:relative}.mail-sidebar-search input{width:100%;box-sizing:border-box;background:var(--color-body-background);border:1px solid var(--color-divider);border-radius:var(--radius-medium);padding:10px 32px 10px 12px;color:var(--color-body-text);font-size:14px;transition:border .2s,box-shadow .2s}.mail-sidebar-search input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-shadow)}.sidebar-search-clear{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:transparent;border:none;color:var(--color-body-text);opacity:.65;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:4px;border-radius:var(--radius-small)}.sidebar-search-clear:hover{opacity:1;background:var(--color-hover-light)}.mail-sidebar-section-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.mail-sidebar-section-head h3{margin:0}.mail-sidebar-add-tag{background:transparent;border:1px dashed var(--color-divider);color:var(--color-body-text);width:28px;height:28px;border-radius:var(--radius-small);display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0}.mail-sidebar-add-tag:hover{border-color:var(--color-accent);color:var(--color-accent)}.mail-sidebar-folder{display:flex;align-items:center;gap:8px;border:1px solid transparent;border-radius:var(--radius-medium);padding:4px 6px 4px 4px;transition:background .2s,border-color .2s}.mail-sidebar-folder:hover{background:var(--color-hover-light)}.mail-sidebar-folder.active{border-color:var(--color-accent);background:rgba(var(--color-accent-rgb),.08)}.mail-sidebar-pill{width:14px;height:14px;border-radius:50%;border:2px solid transparent;flex-shrink:0;cursor:pointer;padding:0;transition:border-color .2s,transform .15s}.mail-sidebar-pill:hover{transform:scale(1.1)}.mail-sidebar-pill.active{border-color:var(--color-body-text);box-shadow:0 0 0 1px var(--color-accent)}.mail-sidebar-folder-label{flex:1;background:transparent;border:none;color:var(--color-body-text);padding:6px 4px;text-align:left;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:inherit}.mail-sidebar-filters{display:flex;flex-wrap:wrap;gap:8px}.mail-sidebar-filters button{background:transparent;border:1px solid var(--color-divider);border-radius:var(--radius-small);color:var(--color-body-text);padding:6px 10px;font-size:12px;cursor:pointer;transition:border .2s,background .2s}.mail-sidebar-filters button:hover{border-color:var(--color-body-text);background:var(--color-hover-light)}.mail-sidebar-filters button.active{border-color:var(--color-accent);box-shadow:0 0 0 1px var(--color-accent-shadow)}.mail-sidebar-section{display:flex;flex-direction:column;gap:8px}.mail-sidebar-section h3,.messages-sidebar-section h3{font-size:16px;font-weight:600;margin:0}.mail-sidebar-list,.messages-sidebar-list,.agenda-sidebar-list{display:flex;flex-direction:column;gap:6px}.mail-sidebar-item,.messages-sidebar-item{width:100%;background:transparent;border:1px solid transparent;color:var(--color-body-text);padding:10px 12px;border-radius:var(--radius-medium);text-align:left;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:8px;transition:background .2s,border .2s}.mail-sidebar-item:hover,.messages-sidebar-item:hover{background:var(--color-hover-light);border-color:var(--color-divider)}.mail-sidebar-item.active,.messages-sidebar-item.active{border-color:var(--color-accent)}.mail-sidebar-item-color-indicator{width:12px;height:12px;border-radius:50%;flex-shrink:0}.mail-sidebar-count,.messages-sidebar-count{font-size:12px;opacity:.6}.messages-main{display:flex;flex-direction:column;gap:16px;padding:20px;color:var(--color-body-text);height:100%}.messages-empty{text-align:center;padding:40px 20px;opacity:.7}.messages-main-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.messages-main-header h1{margin:0;font-size:22px;font-weight:600}.messages-main-header p{margin:6px 0 0;display:inline-flex;align-items:center;gap:6px;font-size:12px;opacity:.7}.messages-main-actions{display:flex;gap:8px}.messages-main-actions button{background:transparent;border:1px solid var(--color-divider);color:var(--color-body-text);padding:8px 12px;border-radius:var(--radius-medium);font-size:12px;cursor:pointer;transition:border-color .2s,background .2s}.messages-main-actions button:hover{border-color:var(--color-accent);background:var(--color-hover-light)}.messages-thread{display:flex;flex-direction:column;gap:12px}.chat-message{display:flex;gap:10px;align-items:flex-start}.chat-message.mine{flex-direction:row-reverse}.chat-message-avatar{width:32px;height:32px;border-radius:50%;background:var(--color-hover-light);display:flex;align-items:center;justify-content:center;font-weight:600;color:var(--color-body-text)}.chat-message-bubble{background:var(--color-stat-item-background);border:1px solid var(--color-divider);padding:10px 12px;border-radius:12px;max-width:70%}.chat-message.mine .chat-message-bubble{background:rgba(var(--color-accent-rgb),.08);border-color:var(--color-accent-shadow)}.chat-message-meta{display:flex;flex-wrap:wrap;gap:6px;font-size:11px;opacity:.7;margin-bottom:6px}.chat-message-text{font-size:13px;line-height:1.5;white-space:pre-wrap}.messages-composer{display:flex;gap:10px;align-items:flex-end}.messages-composer textarea{flex:1;resize:none;background:var(--color-body-background);border:1px solid var(--color-divider);color:var(--color-body-text);border-radius:var(--radius-medium);padding:10px 12px;font-size:13px}.messages-composer textarea:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-shadow)}.messages-send-button{background:var(--color-accent);border:none;color:#0f172a;padding:10px 14px;border-radius:var(--radius-medium);font-weight:600;display:inline-flex;align-items:center;gap:6px;cursor:pointer;transition:opacity .2s,transform .2s}.messages-send-button:hover{opacity:.85;transform:translateY(-1px)}.messages-sidebar-section{display:flex;flex-direction:column;gap:8px}.secondary-agenda{display:flex;flex-direction:column;gap:16px;color:var(--color-body-text)}.agenda-sidebar-section{display:flex;flex-direction:column;gap:10px}.agenda-sidebar-views{display:flex;gap:8px}.agenda-view-button{flex:1;background:transparent;border:1px solid var(--color-divider);border-radius:var(--radius-small);color:var(--color-body-text);padding:8px 12px;font-size:13px;cursor:pointer;transition:border .2s,background .2s}.agenda-view-button.active{border-color:var(--color-accent);background:#22c55e1a}.agenda-view-button:hover{border-color:var(--color-body-text)}.agenda-calendar-item-wrapper{position:relative}.agenda-calendar-item-wrapper.active .agenda-calendar-item{border-color:var(--color-accent);background:rgba(var(--color-accent-rgb),.05);box-shadow:0 0 0 2px var(--color-accent-shadow)}.agenda-calendar-item{width:100%;background:transparent;border:1px solid transparent;color:var(--color-body-text);padding:10px 12px;border-radius:var(--radius-medium);text-align:left;cursor:pointer;display:flex;align-items:center;gap:10px;font-size:13px;transition:background .2s,border .2s}.agenda-calendar-item:hover{background:var(--color-hover-light);border-color:var(--color-divider)}.agenda-calendar-color-dot{width:14px;height:14px;border-radius:50%;flex-shrink:0;cursor:pointer;border:2px solid var(--color-body-background);box-shadow:0 0 0 1px var(--color-divider);transition:transform .2s,box-shadow .2s}.agenda-calendar-color-dot:hover{transform:scale(1.2);box-shadow:0 0 0 2px var(--color-accent)}.agenda-calendar-color-picker{position:absolute;left:0;top:100%;margin-top:4px;background:var(--color-body-background);border:1px solid var(--color-divider);border-radius:var(--radius-medium);padding:8px;display:flex;flex-wrap:wrap;gap:6px;z-index:1000;box-shadow:0 4px 12px #0000004d;min-width:200px}.agenda-calendar-color-option{width:24px;height:24px;border-radius:50%;border:2px solid var(--color-body-background);cursor:pointer;transition:transform .2s,box-shadow .2s;flex-shrink:0}.agenda-calendar-color-option:hover{transform:scale(1.2);box-shadow:0 0 0 2px var(--color-accent)}input[type=checkbox]{width:18px;height:18px;margin:0;cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none;background:var(--color-body-background);border:1px solid var(--color-divider);border-radius:var(--radius-medium);transition:border .2s,box-shadow .2s,background .2s;position:relative;flex-shrink:0}input[type=checkbox]:hover{border-color:var(--color-body-text)}input[type=checkbox]:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-shadow)}input[type=checkbox]:checked{background:var(--color-accent);border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-shadow)}input[type=checkbox]:checked:after{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) rotate(45deg);width:4px;height:8px;border:solid white;border-width:0 2px 2px 0}.agenda-quick-actions{display:flex;flex-direction:column;gap:8px}.agenda-quick-actions button{background:transparent;border:1px solid var(--color-divider);border-radius:var(--radius-small);color:var(--color-body-text);padding:10px 12px;font-size:13px;text-align:left;cursor:pointer;transition:border .2s,background .2s}.agenda-quick-actions button:hover{border-color:var(--color-body-text);background:var(--color-hover-light)}.agenda-content{display:flex;flex-direction:column;gap:16px;height:100%;min-height:0}.agenda-grid{display:flex;flex-direction:column;gap:12px;background:var(--color-body-background);border:1px solid var(--color-divider);border-radius:var(--radius-large);padding:16px;color:var(--color-body-text);flex:1 1 auto;min-height:0}.agenda-grid-header{display:flex;justify-content:space-between;align-items:center}.agenda-grid-header h2{margin:0;font-size:22px;font-weight:600}.agenda-grid-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;font-size:12px;text-transform:uppercase;opacity:.75}.agenda-grid-cells{flex:1 1 auto;display:grid;grid-template-columns:repeat(7,1fr);grid-auto-rows:minmax(90px,1fr);gap:6px;min-height:0}.agenda-cell{background:#ffffff05;border:1px solid rgba(255,255,255,.05);border-radius:var(--radius-medium);padding:8px;display:flex;flex-direction:column;gap:6px;transition:border .2s,background .2s,box-shadow .2s;cursor:pointer}.agenda-cell:hover{border-color:#fff3;box-shadow:none}.agenda-cell-today{border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-shadow);background:rgba(var(--color-accent-rgb),.08)}.agenda-cell-label{font-size:13px;font-weight:600}.agenda-cell-events{display:flex;flex-direction:column;gap:4px;font-size:10px}.agenda-cell-event{background:#ffffff14;border-radius:var(--radius-small);padding:4px 6px;cursor:pointer;transition:background .2s,box-shadow .2s}.agenda-cell-event:hover{background:#ffffff26}.agenda-planning{display:flex;flex-direction:column;gap:20px;flex:1 1 auto;min-height:0}.agenda-planning-empty{align-items:center;justify-content:center;padding:40px 0;opacity:.7}.agenda-planning-day{background:var(--color-body-background);border:1px solid var(--color-divider);border-radius:var(--radius-large);padding:16px;display:flex;flex-direction:column;gap:12px}.agenda-planning-day-header h3{margin:0;font-size:18px;font-weight:600;text-transform:capitalize}.agenda-planning-day ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.agenda-planning-event{width:100%;background:#ffffff0a;border:1px solid transparent;border-radius:var(--radius-medium);padding:12px;color:var(--color-body-text);display:flex;gap:16px;align-items:flex-start;text-align:left;cursor:pointer;transition:border .2s,background .2s,transform .2s}.agenda-planning-event:hover{background:#ffffff14;border-color:var(--color-divider);transform:translateY(-1px)}.agenda-planning-event.active{border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-shadow)}.agenda-planning-event-times{display:flex;flex-direction:column;gap:4px;min-width:120px;font-family:var(--font-family-number);font-size:13px}.agenda-planning-event-hour{font-weight:600}.agenda-planning-event-project{opacity:.8}.agenda-planning-event-body{display:flex;flex-direction:column;gap:4px;flex:1}.agenda-planning-event-title{font-weight:600;font-size:15px}.agenda-planning-event-location{font-size:13px;opacity:.8}.event-form{display:flex;flex-direction:column;gap:16px}.event-form-row{display:flex;gap:16px}.event-form-field{display:flex;flex-direction:column;gap:6px;flex:1}.event-form-field label{font-size:13px;font-weight:600}.event-form-field input,.event-form-field select,.event-form-field textarea{background:var(--color-body-background);border:1px solid var(--color-divider);border-radius:var(--radius-medium);padding:10px 12px;color:var(--color-body-text);font-family:var(--font-family-base);font-size:14px}.event-form-field input:focus,.event-form-field select:focus,.event-form-field textarea:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-shadow)}.event-form-field textarea{resize:vertical;min-height:120px}.event-form-actions{display:flex;justify-content:flex-end}.event-form-actions button{background:var(--color-accent);color:#0f172a;border:none;padding:10px 18px;border-radius:var(--radius-medium);font-weight:600;cursor:pointer;transition:opacity .2s,transform .2s}.event-form-actions button:hover{opacity:.85;transform:translateY(-1px)}.event-details{display:flex;flex-direction:column;gap:16px;color:var(--color-body-text)}.event-details-header{display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:1px solid var(--color-divider);padding-top:40px;padding-bottom:12px}.event-details-times{display:flex;align-items:center;gap:8px;font-weight:600}.event-details-date{font-size:14px;opacity:.8}.event-details-title{margin:0;font-size:22px;font-weight:600}.event-details-project{display:flex;gap:12px;align-items:flex-start;padding:12px;border-radius:var(--radius-medium);background:#22c55e14}.event-details-project-name{font-weight:600}.event-details-project-description{font-size:13px;opacity:.8}.event-details-location{display:flex;align-items:center;gap:8px;font-size:14px}.event-details-notes{font-size:14px;line-height:1.5}.event-details-empty{padding:40px 0;text-align:center;opacity:.7}.agenda-sidebar-weekend{display:flex;flex-direction:column;gap:6px;margin-top:12px}.agenda-weekend-toggle{display:flex;align-items:center;gap:8px;font-size:13px;cursor:pointer}.upload-modal{display:flex;flex-direction:column;gap:20px}.upload-dropzone{border:1px dashed var(--color-divider);border-radius:var(--radius-large);padding:24px;text-align:center;color:var(--color-body-text);background:#ffffff05;transition:border .2s,background .2s}.upload-dropzone button{margin-top:12px;padding:8px 16px;border-radius:var(--radius-medium);border:1px solid var(--color-divider);background:transparent;color:var(--color-body-text);cursor:pointer;transition:border .2s,background .2s}.upload-dropzone button:hover{border-color:var(--color-body-text);background:var(--color-hover-light)}.upload-dropzone.is-dragging{border-color:var(--color-accent);background:#22c55e14}.upload-file-list{display:flex;flex-direction:column;gap:16px;max-height:320px;overflow-y:auto}.upload-file-item{border:1px solid var(--color-divider);border-radius:var(--radius-large);padding:16px;background:#ffffff05;display:flex;flex-direction:column;gap:12px;min-width:0;overflow:hidden}.upload-file-summary{display:flex;justify-content:space-between;align-items:center;gap:12px}.upload-file-name{font-weight:600;font-size:15px}.upload-file-meta{font-size:12px;opacity:.7}.upload-file-remove{border:none;background:transparent;color:var(--color-body-text);cursor:pointer;font-size:13px;text-decoration:underline;text-underline-offset:4px}.upload-file-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;min-width:0}.document-naming-panel{grid-column:1 / -1;min-width:0}.document-naming-fields{min-width:0}.upload-locked-hint{font-size:12px;color:var(--color-body-text);opacity:.7;margin:-4px 0 4px}.upload-file-fields label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600}.upload-file-fields input,.upload-file-fields select{background:var(--color-body-background);border:1px solid var(--color-divider);border-radius:var(--radius-medium);padding:10px 12px;color:var(--color-body-text);font-size:14px}.upload-file-fields input:focus,.upload-file-fields select:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-shadow)}.upload-actions{display:flex;justify-content:flex-end;gap:12px}.upload-primary,.upload-secondary{padding:10px 18px;border-radius:var(--radius-medium);font-weight:600;font-size:14px;cursor:pointer;transition:opacity .2s,transform .2s}.upload-primary{background:var(--color-accent);border:none;color:#0f172a}.project-detail-page-planning{padding:0;margin:0;overflow:hidden;height:100%;display:flex;flex-direction:column}.project-detail-page{display:flex;flex-direction:column;height:100%;min-height:0;padding:0;overflow-y:auto;overflow-x:hidden;gap:24px}.project-detail-page>.project-file-explorer--dual{flex:1 1 auto;min-height:min(900px,calc(100vh - 200px))}.project-detail-page>.project-file-explorer--dual.tree-collapsed{flex:0 0 auto;min-height:0}.project-detail-page-empty{display:flex;align-items:center;justify-content:center;height:100%;color:var(--color-body-text);opacity:.6;font-size:16px}.project-detail-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.project-detail-header-main{flex:1;min-width:0}.project-detail-header-aside{display:flex;flex-direction:row;align-items:flex-start;gap:12px;flex-shrink:0}.project-detail-header-buttons{display:flex;flex-direction:column;gap:8px;align-items:stretch;justify-content:flex-start;flex-shrink:0}.project-detail-header-image{box-sizing:border-box;flex-shrink:0;border-radius:var(--radius-medium);overflow:hidden;border:1px solid var(--color-divider);background:var(--color-sidebar-secondary-background);position:relative}.project-detail-number{font-family:var(--font-family-number);letter-spacing:.15em;text-transform:uppercase;font-size:14px;opacity:.7;margin:0 0 4px}.project-detail-header h1{margin:0;font-size:28px;color:var(--color-body-text)}.project-detail-description{margin:8px 0 0;font-size:14px;color:var(--color-body-text);opacity:.75}.project-detail-header-image.is-placeholder{cursor:pointer}.project-detail-header-image.is-placeholder:hover{border-color:var(--color-accent)}.project-detail-header-image.has-image{cursor:default}.project-detail-header-image img{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}.project-detail-header-image-hint{position:absolute;inset:auto 0 0;padding:4px 6px;font-size:10px;text-align:center;background:#0000008c;color:#fff;letter-spacing:.04em;text-transform:uppercase}.action-modal-content:has(.project-image-modal){overflow:hidden;display:flex;flex-direction:column;min-height:0;flex:1}.project-image-modal{display:flex;flex-direction:column;gap:12px;min-width:min(560px,90vw);max-height:min(72vh,680px);min-height:0}.project-image-modal-body{flex:1;min-height:0;overflow-y:auto;padding-right:4px}.project-image-modal-footer{flex-shrink:0;display:flex;justify-content:flex-end;gap:8px;padding-top:12px;margin-top:4px;border-top:1px solid var(--color-divider);background:var(--color-main-header-background)}.project-image-step-badge{margin:0;font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;opacity:.65}.project-image-step-intro{margin:0 0 12px;font-size:13px;opacity:.8;line-height:1.45}.project-image-modal-error{margin:0;padding:8px 12px;border-radius:var(--radius-medium);background:#b43c3c26;color:var(--color-body-text);font-size:13px}.project-image-dropzone{border:2px dashed var(--color-divider);border-radius:var(--radius-medium);padding:32px 20px;text-align:center;cursor:pointer;transition:border-color .2s,background .2s}.project-image-dropzone:hover,.project-image-dropzone.drag-active{border-color:var(--color-accent);background:rgba(var(--color-accent-rgb, 64, 96, 138),.08)}.project-image-dropzone p{margin:0 0 6px}.project-image-dropzone-sub{opacity:.75;font-size:13px}.project-image-dropzone-formats{margin-top:12px!important;font-size:11px;opacity:.55}.project-image-url-block label{display:block;font-size:13px;margin-bottom:6px}.project-image-url-row{display:flex;gap:8px}.project-image-url-row input{flex:1;min-width:0}.project-image-url-btn{flex-shrink:0;padding:8px 14px;border-radius:var(--radius-medium);border:1px solid var(--color-divider);background:transparent;color:var(--color-body-text);cursor:pointer}.project-image-url-btn:disabled{opacity:.5;cursor:not-allowed}.project-image-checkbox{display:flex;align-items:flex-start;gap:8px;font-size:13px;margin-bottom:12px;cursor:pointer}.project-image-preview-grid{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:start}.project-image-preview-grid figcaption{font-size:12px;opacity:.75;margin-bottom:6px}.project-image-preview-header{max-width:100%;width:360px;height:auto;border-radius:var(--radius-medium);border:1px solid var(--color-divider)}.project-image-preview-thumb{width:120px;height:120px;object-fit:cover;border-radius:var(--radius-medium);border:1px solid var(--color-divider)}.project-image-source-name{margin:0;font-size:11px;opacity:.5}.image-crop-editor-label{margin:0 0 8px;font-size:13px;font-weight:600}.image-crop-editor-toolbar{display:flex;align-items:center;gap:8px;margin-bottom:8px;flex-wrap:wrap}.image-crop-zoom-btn{padding:4px 10px;font-size:12px;border-radius:var(--radius-small, 4px);border:1px solid var(--color-divider);background:transparent;color:var(--color-body-text);cursor:pointer}.image-crop-editor-hint{font-size:11px;opacity:.6}.image-crop-editor-viewport{overflow:hidden;cursor:grab;border:1px solid var(--color-divider);border-radius:var(--radius-medium);touch-action:none;-webkit-user-select:none;user-select:none;max-height:min(42vh,360px)}.image-crop-editor-viewport:active{cursor:grabbing}.image-crop-editor-stage{position:relative;overflow:hidden;margin:0 auto}.image-crop-editor-size{margin:8px 0 0;font-size:11px;opacity:.55}.project-detail-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--color-divider);border-radius:var(--radius-medium);padding:8px 12px;background:transparent;color:var(--color-body-text);cursor:pointer;transition:background .2s,color .2s,border .2s;min-width:180px;white-space:nowrap}.project-detail-button:hover{background:var(--color-hover-light);border-color:var(--color-body-text)}.project-detail-upload-button{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--color-divider);border-radius:var(--radius-medium);padding:8px 12px;background:transparent;color:var(--color-body-text);cursor:pointer;transition:background .2s,color .2s,border .2s}.project-detail-upload-button:hover{background:var(--color-hover-light);border-color:var(--color-body-text)}.project-progress{border:1px solid var(--color-divider);border-radius:var(--radius-large);background:var(--color-stat-item-background);padding:12px 16px;margin-bottom:16px}.project-progress-phases{display:flex;flex-direction:row;gap:8px;flex-wrap:wrap;align-items:stretch}.project-progress-phase{border:1px solid var(--color-divider);border-radius:var(--radius-medium);padding:8px 10px;background:var(--color-body-background);transition:border .2s,background .2s;flex:1;min-width:80px;max-width:120px;display:flex;flex-direction:column;gap:6px}.project-progress-phase.current{border-color:var(--color-accent);border-width:2px;background:rgba(var(--color-accent-rgb),.05)}.project-progress-phase-header{display:flex;justify-content:space-between;align-items:center;gap:4px}.project-progress-phase-label{font-weight:600;font-size:11px;color:var(--color-body-text);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.project-progress-phase.current .project-progress-phase-label{color:var(--color-accent)}.project-progress-phase-percentage{font-size:10px;color:var(--color-body-text);opacity:.7;font-weight:500;white-space:nowrap}.project-progress-bar{width:100%;height:6px;background:var(--color-divider);border-radius:var(--radius-small);overflow:hidden;position:relative}.project-progress-bar-fill{height:100%;background:linear-gradient(90deg,var(--color-accent),rgba(var(--color-accent-rgb),.8));border-radius:var(--radius-small);transition:width .3s ease-out}.project-progress-phase.current .project-progress-bar-fill{background:linear-gradient(90deg,var(--color-accent),rgba(var(--color-accent-rgb),1));box-shadow:0 0 6px rgba(var(--color-accent-rgb),.3)}.project-detail-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.project-section-placeholder{padding:20px;background:var(--color-stat-item-background);border:1px solid var(--color-divider);border-radius:var(--radius-medium);display:flex;flex-direction:column;gap:16px;color:var(--color-body-text)}.project-section-placeholder h2{margin:0 0 6px;font-size:20px;font-weight:600}.project-section-placeholder p{margin:0;opacity:.75}.project-section-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.project-section-card{border:1px solid var(--color-divider);border-radius:var(--radius-medium);padding:14px;background:var(--color-body-background)}.project-section-card h3{margin:0 0 6px;font-size:14px}.project-section-card p{margin:0;font-size:13px;opacity:.7}.project-detail-panel{padding:16px;background:var(--color-stat-item-background);border:1px solid var(--color-divider);border-radius:var(--radius-medium);display:flex;flex-direction:column;gap:12px}.project-detail-panel h3{margin:0;font-size:16px}.project-tasks-section{padding:16px;background:var(--color-stat-item-background);border:1px solid var(--color-divider);border-radius:var(--radius-medium);display:flex;flex-direction:column;gap:12px}.project-tasks-header h3{margin:0 0 4px;font-size:16px}.project-tasks-header p{margin:0;font-size:13px;opacity:.75}.project-tasks-hint{margin:0;font-size:13px;opacity:.7}.project-tasks-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.project-task-item{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border:1px solid var(--color-divider);border-radius:var(--radius-medium);background:var(--color-body-background)}.project-task-check{flex-shrink:0;width:28px;height:28px;border:1px solid var(--color-divider);border-radius:var(--radius-small);background:transparent;color:var(--color-body-text);cursor:pointer;display:flex;align-items:center;justify-content:center}.project-task-check.is-done{background:var(--color-accent);border-color:var(--color-accent);color:#fff}.project-task-check:disabled{cursor:default;opacity:.5}.project-task-body{flex:1;min-width:0}.project-task-title{display:block;font-size:14px}.project-task-desc{margin:4px 0 0;font-size:13px;opacity:.75}.project-task-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px;font-size:12px;opacity:.7}.project-task-auto{font-style:italic}.project-task-form{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.project-task-form input[type=text]{flex:1;min-width:180px}.project-deadlines-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.project-deadlines-list li{display:flex;justify-content:space-between;gap:12px}.project-detail-summary-card{border:1px solid var(--color-divider);border-radius:var(--radius-medium);padding:12px;display:flex;flex-direction:column;gap:8px;background:var(--color-body-background);text-align:left;cursor:pointer;transition:border .2s,transform .2s;opacity:.8;color:var(--color-body-text);font:inherit;outline:none}.project-detail-summary-card.active,.project-detail-summary-card:hover{border-color:var(--color-body-text);opacity:1;transform:translateY(-1px)}.project-detail-summary-card:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.project-detail-summary-card .summary-top{display:flex;align-items:center;gap:8px;font-size:20px;color:var(--color-body-text)}.project-detail-summary-card .summary-top span{font-weight:700}.project-detail-summary-card p{margin:0;font-size:13px;opacity:.65}.project-detail-list{display:flex;flex-direction:column;gap:12px}.project-detail-empty{margin:0;color:var(--color-body-text);opacity:.6}.project-mail-item,.project-action-item,.project-deadline-item{border:1px solid var(--color-divider);border-radius:var(--radius-medium);padding:12px;display:flex;flex-direction:column;gap:8px;background:var(--color-stat-item-background)}.project-mail-item header,.project-action-item header,.project-deadline-item header{display:flex;justify-content:space-between;font-size:12px;opacity:.7}.project-mail-item h4,.project-action-item h4,.project-deadline-item h4{margin:0;font-size:15px}.project-mail-item p,.project-action-item p,.project-deadline-item p{margin:0;font-size:13px;opacity:.8}.mail-view{display:flex;flex-direction:column;gap:20px;padding:20px;color:var(--color-body-text)}.mail-view-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.mail-view-header h1{margin:0;font-size:24px;font-weight:600}.mail-view-actions{display:flex;gap:12px}.mail-mark-read-button{background:transparent;color:var(--color-body-text);border:1px solid var(--color-divider);padding:10px 14px;border-radius:var(--radius-medium);font-weight:600;cursor:pointer;transition:opacity .2s,transform .2s,border-color .2s;font-size:14px;display:inline-flex;align-items:center;justify-content:center;gap:8px}.mail-mark-read-button:disabled{opacity:.4;cursor:not-allowed}.mail-mark-read-button:not(:disabled):hover{border-color:var(--color-accent);transform:translateY(-1px)}.mail-compose-button{background:transparent;color:var(--color-body-text);border:1px solid var(--color-divider);padding:10px 14px;border-radius:var(--radius-medium);font-weight:600;cursor:pointer;transition:opacity .2s,transform .2s,border-color .2s;font-size:14px;display:inline-flex;align-items:center;justify-content:center}.mail-compose-button:hover{border-color:var(--color-accent);transform:translateY(-1px)}.mail-bulk-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.mail-bulk-count{font-size:12px;font-weight:600;color:var(--color-body-text);margin-right:4px;white-space:nowrap}.mail-bulk-button{background:var(--color-stat-item-background);border:1px solid var(--color-divider);color:var(--color-body-text);width:36px;height:36px;border-radius:var(--radius-medium);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:border-color .2s,background .2s}.mail-bulk-button:hover:not(:disabled){border-color:var(--color-accent);background:var(--color-hover-light)}.mail-bulk-button-danger:hover:not(:disabled){border-color:var(--color-priority-high);color:var(--color-priority-high)}.mail-bulk-button-text{background:transparent;border:none;color:var(--color-body-text);font-size:12px;cursor:pointer;padding:6px 8px;opacity:.8}.mail-bulk-button-text:hover{opacity:1;text-decoration:underline}.mail-view-empty{text-align:center;padding:60px 20px;color:var(--color-body-text);opacity:.6}.mail-list,.mail-group{display:flex;flex-direction:column;gap:8px}.mail-group-header{display:flex;align-items:center;gap:8px;width:100%;padding:8px 0;margin:0;border:none;border-bottom:1px solid var(--color-divider);border-radius:0;background:transparent;color:var(--color-body-text);font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;cursor:pointer;transition:border-color .2s,color .2s}.mail-group-header:hover{border-bottom-color:var(--color-accent);color:var(--color-body-text)}.mail-group-toggle{display:inline-flex;align-items:center;justify-content:center}.mail-group-title{flex:1;text-align:left}.mail-group-list{display:flex;flex-direction:column;gap:8px}.mail-item{border:1px solid var(--color-divider);border-radius:var(--radius-medium);padding:12px;background:var(--color-stat-item-background);transition:border-color .2s,background .2s;cursor:pointer;display:grid;grid-template-columns:auto 1fr;align-items:start;gap:12px}.mail-item-read .mail-item-from,.mail-item-read .mail-item-subject,.mail-item-read .mail-item-preview{font-weight:400;opacity:.7}.mail-item-unread{border-left:3px solid var(--color-accent);background:rgba(var(--color-accent-rgb),.1)}.mail-item-unread .mail-item-from,.mail-item-unread .mail-item-subject,.mail-item-unread .mail-item-subject-text,.mail-item-unread .mail-item-preview{font-weight:700;opacity:1;color:var(--color-body-text)}.mail-item-unread .mail-item-date{font-weight:600;opacity:.85}.mail-item:hover{border-color:var(--color-accent);background:var(--color-hover-light)}.mail-item.selected{border-color:var(--color-accent);box-shadow:0 0 0 1px var(--color-accent)}.mail-item-checkbox{display:flex;align-items:flex-start;padding-top:2px}.mail-checkbox{width:12px;height:12px;accent-color:var(--color-accent);cursor:pointer}.mail-item-body{display:flex;flex-direction:column;gap:6px;min-width:0;overflow:hidden}.mail-item-header{display:flex;justify-content:space-between;align-items:center;gap:8px;min-width:0}.mail-item-from{font-weight:600;font-size:13px;color:var(--color-body-text);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mail-item-date{font-size:11px;opacity:.7;color:var(--color-body-text);flex-shrink:0}.mail-item-subject{font-size:14px;font-weight:600;color:var(--color-body-text);display:flex;align-items:center;gap:8px;min-width:0}.mail-item-subject-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mail-item-attachment{flex-shrink:0;display:inline-flex;align-items:center;color:var(--color-accent);opacity:.9;font-size:14px}.mail-item-project-number{font-family:var(--font-family-number);font-size:13px;font-weight:700;color:var(--color-accent);opacity:.9}.mail-item-preview{font-size:12px;opacity:.8;color:var(--color-body-text);line-height:1.4;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mail-item-footer{display:flex;align-items:center;gap:12px;min-width:0}.mail-item-footer .mail-item-preview{flex:1;min-width:0}.mail-item-tags{display:flex;flex-wrap:wrap;gap:6px;margin-left:auto;justify-content:flex-end}.mail-tag{display:inline-block;padding:3px 8px;border-radius:var(--radius-small);font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.mail-tag-project{background:var(--color-accent);color:#0f172a}.mail-tag-user{color:#fff}.mail-preview{display:flex;flex-direction:column;gap:16px;color:var(--color-body-text)}.mail-preview-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.mail-preview-subject{margin:0 0 8px;font-size:20px;display:flex;align-items:center;gap:8px}.mail-preview-project-number{font-family:var(--font-family-number);font-size:14px;font-weight:700;color:var(--color-accent)}.mail-preview-meta{display:flex;flex-direction:column;gap:6px;font-size:12px;opacity:.8}.mail-preview-meta-row{display:flex;gap:8px;align-items:center}.mail-preview-meta-row-tags{align-items:flex-start}.mail-preview-meta-label{min-width:70px;font-weight:600;opacity:.9}.mail-preview-meta-value{flex:1;min-width:0}.mail-preview-tags-inline{margin-left:auto;display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.mail-preview-actions{display:flex;gap:8px;position:relative}.mail-preview-actions button{padding:6px 8px;border-radius:var(--radius-medium);border:1px solid var(--color-divider);background:transparent;color:var(--color-body-text);cursor:pointer;font-size:12px;display:inline-flex;align-items:center;justify-content:center;min-width:32px}.mail-preview-actions .mail-delete-button{border-color:#ff5a5a80;color:#ffb3b3}.mail-action-button{position:relative}.mail-action-menu{position:absolute;right:0;top:36px;background:var(--color-stat-item-background);border:1px solid var(--color-divider);border-radius:var(--radius-medium);padding:6px;display:flex;flex-direction:column;gap:4px;min-width:180px;z-index:5;box-shadow:0 6px 20px #0003}.mail-action-menu button{border:none;background:transparent;color:var(--color-body-text);text-align:left;padding:6px 8px;border-radius:var(--radius-small);cursor:pointer;font-size:12px}.mail-action-menu button:hover{background:var(--color-hover-light)}.mail-preview-attachments{border-top:1px solid var(--color-divider);padding-top:16px;display:flex;flex-direction:column;gap:10px}.mail-preview-attachments-title{margin:0;font-size:14px;font-weight:600;display:flex;align-items:center;gap:8px;color:var(--color-body-text)}.mail-preview-attachments-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.mail-preview-attachment-item{width:100%;display:flex;align-items:center;gap:10px;padding:10px 12px;background:var(--color-stat-item-background);border:1px solid var(--color-divider);border-radius:var(--radius-medium);color:var(--color-body-text);cursor:pointer;text-align:left;transition:border-color .2s,background .2s}.mail-preview-attachment-item:hover{border-color:var(--color-accent);background:var(--color-hover-light)}.mail-preview-attachment-name{flex:1;font-size:13px;font-weight:500;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mail-preview-attachment-size{font-size:11px;opacity:.65}.mail-preview-attachment-dl{flex-shrink:0;opacity:.7}.mail-tag-editor{padding:20px;display:flex;flex-direction:column;gap:16px}.mail-tag-editor-field{display:flex;flex-direction:column;gap:8px;font-size:13px;color:var(--color-body-text)}.mail-tag-editor-field input[type=text]{background:var(--color-body-background);border:1px solid var(--color-divider);border-radius:var(--radius-medium);padding:10px 12px;color:var(--color-body-text)}.mail-tag-editor-label{font-weight:600}.mail-tag-editor-colors{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.mail-tag-editor-swatch{width:28px;height:28px;border-radius:50%;border:2px solid transparent;cursor:pointer;padding:0}.mail-tag-editor-swatch.active{border-color:var(--color-body-text);box-shadow:0 0 0 2px var(--color-accent-shadow)}.mail-tag-editor-color-input{width:36px;height:28px;padding:0;border:1px solid var(--color-divider);border-radius:var(--radius-small);cursor:pointer;background:transparent}.mail-tag-editor-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.mail-tag-editor-actions-right{display:flex;gap:8px;margin-left:auto}.mail-tag-editor-delete{background:transparent;border:1px solid var(--color-priority-high);color:var(--color-priority-high);padding:8px 14px;border-radius:var(--radius-medium);cursor:pointer;font-size:13px}.mail-tag-editor-delete:hover{background:var(--color-priority-high-bg)}.mail-preview-body{font-size:14px;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;max-width:100%;background:var(--color-stat-item-background);border-radius:var(--radius-medium);padding:16px;border:1px solid var(--color-divider)}.mail-preview-html{display:block;width:100%;min-height:240px;height:70vh;max-width:100%;border:1px solid var(--color-divider);border-radius:var(--radius-medium);background:#fff}.mail-preview-tags{display:flex;gap:8px;flex-wrap:wrap}.mail-preview-empty{color:var(--color-body-text);opacity:.7}.compta-view{display:flex;flex-direction:column;gap:16px;color:var(--color-body-text)}.compta-view-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.compta-view-header h1{margin:0 0 6px;font-size:22px}.compta-view-header p{margin:0;opacity:.7}.compta-view-badge{border:1px solid var(--color-divider);border-radius:var(--radius-pill);padding:6px 12px;font-size:12px;background:var(--color-stat-item-background);text-transform:capitalize}.compta-list{display:flex;flex-direction:column;gap:12px}.compta-card{border:1px solid var(--color-divider);border-radius:var(--radius-medium);padding:14px 16px;display:flex;justify-content:space-between;gap:16px;background:var(--color-body-background);align-items:center}.compta-card-main{display:flex;flex-direction:column;gap:6px}.compta-card h3{margin:0 0 6px;font-size:15px}.compta-card-meta{display:flex;gap:12px;font-size:12px;opacity:.75}.compta-card-amount{font-family:var(--font-family-number);font-weight:700;color:var(--color-accent);white-space:nowrap}.compta-empty{padding:18px;border:1px dashed var(--color-divider);border-radius:var(--radius-medium);text-align:center;opacity:.7}.project-mail-from,.project-action-priority{font-weight:600;text-transform:uppercase;letter-spacing:.05em}.project-mail-date,.project-action-date,.project-deadline-date{font-size:12px;opacity:.7}.project-action-assignee{font-size:12px;opacity:.75}.project-action-item.priority-high{border-color:var(--color-priority-high)}.project-action-item.priority-medium{border-color:var(--color-priority-medium)}.project-action-item.priority-low{border-color:var(--color-priority-low)}.project-upload-dropzone{border:1px dashed var(--color-divider);border-radius:var(--radius-large);padding:10px 14px;display:flex;gap:16px;align-items:center;cursor:pointer;transition:border .2s,background .2s;min-width:200px}.project-upload-dropzone svg{font-size:18px}.project-upload-dropzone.is-dragging{border-color:var(--color-accent);background:rgba(var(--color-accent-rgb),.08)}.project-upload-dropzone h3{margin:0;font-size:14px}.project-upload-dropzone p{margin:4px 0 0;font-size:11px;opacity:.75}.project-upload-hint{font-size:10px;opacity:.6;display:block;margin-top:2px}.project-file-explorer{border:1px solid var(--color-divider);border-radius:var(--radius-large);background:var(--color-stat-item-background)}.project-file-explorer header,.project-file-explorer .project-file-explorer-toolbar{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--color-divider);gap:16px;flex-shrink:0}.project-file-explorer.tree-collapsed header{border-bottom:1px solid var(--color-divider)}.project-file-header-title{display:flex;align-items:center;gap:8px}.project-file-toggle-button{display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid transparent;border-radius:var(--radius-small);padding:4px;cursor:pointer;color:var(--color-body-text);transition:border .2s,background .2s,transform .2s;font-size:18px}.project-file-toggle-button:hover{border-color:var(--color-divider);background:var(--color-hover-light)}.project-file-toggle-button:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.project-file-header-actions{display:flex;align-items:center;gap:8px;flex:1 1 auto;justify-content:flex-end;min-width:0;flex-wrap:wrap}.project-file-header-actions .project-detail-button.project-file-sync-btn{min-width:0;font-size:.8rem;font-weight:500;line-height:1.2;padding:8px 12px;gap:6px}.project-file-header-actions .project-detail-button.project-file-sync-btn svg{flex-shrink:0;font-size:1rem}.project-file-search{background:var(--color-body-background);border:1px solid var(--color-divider);border-radius:var(--radius-medium);padding:8px 12px;color:var(--color-body-text);font-size:.8rem;font-family:inherit;flex:1 1 180px;min-width:140px;max-width:280px}.project-file-explorer.is-drag-active{border-color:var(--color-accent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--color-accent, #5b8def) 35%,transparent)}.project-folder-tree{padding:16px;overflow:hidden;animation:slideDown .3s ease-out}@keyframes slideDown{0%{max-height:0;opacity:0}to{max-height:2000px;opacity:1}}.project-folder-tree-inner{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px}.project-folder-node{display:flex;flex-direction:column;gap:6px}.project-folder-children{padding-left:12px;border-left:1px dashed rgba(255,255,255,.1);display:flex;flex-direction:column;gap:6px}.project-folder-leaf{display:flex;flex-direction:column;gap:4px}.project-folder-link{display:inline-flex;align-items:center;width:fit-content;padding:4px 8px;border-radius:var(--radius-small);border:1px solid transparent;background:transparent;color:var(--color-body-text);cursor:pointer;transition:border .2s,background .2s,transform .2s;font-size:13px;position:relative;z-index:1}.project-folder-label{font-weight:600;text-transform:uppercase;letter-spacing:.08em;font-size:12px}.project-folder-link:hover{border-color:var(--color-divider);background:var(--color-hover-light)}.project-folder-link:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.project-file-search-hint{margin:0 0 8px;font-size:12px;opacity:.6}.project-form{display:flex;flex-direction:column;gap:16px}.project-form--wizard{container-type:inline-size;container-name:project-form;gap:0;flex:1;min-height:0;height:100%}.project-form-wizard-header{flex-shrink:0;display:flex;align-items:center;padding:10px 20px 14px;border-bottom:1px solid var(--color-divider);background:var(--color-main-header-background)}.project-form-stepper{width:100%;overflow-x:auto}.project-form-stepper-list{display:flex;align-items:flex-start;width:100%;margin:0;padding:0;list-style:none}.project-form-stepper-item{display:flex;align-items:center;flex:1;min-width:0}.project-form-stepper-item:last-child{flex:1}.project-form-stepper-connector{flex:1;height:2px;min-width:6px;margin:13px 4px 0;align-self:flex-start;background:var(--color-divider);border-radius:1px}.project-form-stepper-connector.is-filled{background:var(--color-accent)}.project-form-stepper-btn{display:flex;flex-direction:column;align-items:center;gap:4px;padding:0;border:none;background:none;color:var(--color-body-text);cursor:default;min-width:0;max-width:88px}.project-form-stepper-item.is-done .project-form-stepper-btn,.project-form-stepper-item.is-clickable .project-form-stepper-btn{cursor:pointer}.project-form-stepper-item.is-upcoming.is-clickable .project-form-stepper-index,.project-form-stepper-item.is-upcoming.is-clickable .project-form-stepper-label{opacity:.85}.project-form-stepper-item.is-done .project-form-stepper-btn:hover .project-form-stepper-index{background:color-mix(in srgb,var(--color-accent) 40%,transparent)}.project-form-stepper-index{width:28px;height:28px;flex-shrink:0;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-family-number);font-size:12px;font-weight:600;border:2px solid var(--color-divider);background:var(--color-stat-item-background);transition:background .2s,border-color .2s,color .2s}.project-form-stepper-index svg{width:16px;height:16px}.project-form-stepper-item.is-current .project-form-stepper-index{border-color:var(--color-accent);background:var(--color-accent);color:var(--color-on-accent)}.project-form-stepper-item.is-done .project-form-stepper-index{border-color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 22%,transparent);color:var(--color-body-text)}.project-form-stepper-item.is-upcoming .project-form-stepper-index,.project-form-stepper-item.is-upcoming .project-form-stepper-label{opacity:.5}.project-form-stepper-label{font-size:11px;line-height:1.15;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.project-form-stepper-item.is-current .project-form-stepper-label{font-weight:600;color:var(--color-body-text)}.project-form-wizard-body{flex:1;min-height:0;display:grid;grid-template-columns:minmax(240px,1fr) minmax(0,2fr);gap:16px;padding:16px 20px;align-items:stretch}.project-form-summary{min-height:0;overflow-y:auto;border:1px solid var(--color-divider);border-radius:var(--radius-large);padding:14px 16px;background:var(--color-stat-item-background);display:flex;flex-direction:column;gap:14px}.project-form-summary-title{margin:0;font-size:14px;font-weight:600}.project-form-summary-group{display:flex;flex-direction:column;gap:8px}.project-form-summary-group.is-current{padding-left:10px;border-left:2px solid var(--color-accent)}.project-form-summary-heading{align-self:flex-start;margin:0;padding:0;border:none;background:none;color:var(--color-body-text);font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;cursor:default}.project-form-summary-group:not(.is-pending) .project-form-summary-heading{cursor:pointer}.project-form-summary-group:not(.is-pending) .project-form-summary-heading:hover{color:var(--color-body-text);text-decoration:underline}.project-form-summary dl{display:grid;grid-template-columns:auto 1fr;gap:6px 12px;margin:0}.project-form-summary-row{display:contents}.project-form-summary dt{font-size:12px;opacity:.65}.project-form-summary dd{margin:0;font-size:13px;word-break:break-word}.project-form-summary-row.is-empty dd{opacity:.4}.project-form-wizard-pane{min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:12px}.project-form-pane-kicker{margin:0 0 12px;font-size:18px;font-weight:600;line-height:1.3;letter-spacing:0;text-transform:none;opacity:1;color:var(--color-body-text)}.project-form--wizard .project-form-section>header{display:none}.project-form--wizard .project-form-section{border:none;border-radius:0;padding:0;background:transparent;gap:16px}.coowners-intro{margin:0;font-size:14px;line-height:1.45;opacity:.75;max-width:42rem}.coowners-block{display:flex;flex-direction:column;gap:16px}.coowners-header{display:flex;align-items:center}.coowner-card{display:flex;flex-direction:column;gap:12px;padding:14px 16px;border:1px solid var(--color-divider);border-radius:var(--radius-large);background:var(--color-stat-item-background)}.coowner-card-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.coowner-card-title{margin:0;font-size:14px;font-weight:600;letter-spacing:.02em}.coowner-remove{width:28px;height:28px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;padding:0;border:1px solid var(--color-divider);border-radius:var(--radius-medium);background:transparent;color:var(--color-body-text);font-size:18px;font-weight:500;line-height:1;cursor:pointer;opacity:.7}.coowner-remove:hover{opacity:1;border-color:var(--color-priority-high);color:var(--color-priority-high)}.project-form-section--owner-kind{flex:1;min-height:0;display:flex;flex-direction:column}.project-owner-kind-intro{margin:0;font-size:14px;line-height:1.45;opacity:.75;max-width:42rem}.project-owner-kind{flex:1;min-height:0;display:grid;grid-template-columns:1fr;grid-template-rows:repeat(3,minmax(7.5rem,1fr));gap:12px}.project-owner-kind-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px 18px;width:100%;min-height:0;margin:0;padding:18px 20px;text-align:left;border:1px solid var(--color-divider);border-radius:var(--radius-large);background:var(--color-stat-item-background);color:var(--color-body-text);cursor:pointer;transition:border-color .15s,background .15s,box-shadow .15s}.project-owner-kind-card:hover{border-color:color-mix(in srgb,var(--color-accent) 45%,var(--color-divider));background:color-mix(in srgb,var(--color-accent) 6%,var(--color-stat-item-background))}.project-owner-kind-card.is-selected{border-color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 12%,var(--color-stat-item-background));box-shadow:0 0 0 1px var(--color-accent)}.project-owner-kind-card-icon{width:44px;height:44px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:color-mix(in srgb,var(--color-body-background) 80%,var(--color-divider))}.project-owner-kind-card.is-selected .project-owner-kind-card-icon{background:color-mix(in srgb,var(--color-accent) 22%,transparent);color:var(--color-body-text)}.project-owner-kind-card-icon svg{width:22px;height:22px}.project-owner-kind-card-body{display:flex;flex-direction:column;gap:4px;min-width:0}.project-owner-kind-card-title{font-size:16px;font-weight:600;line-height:1.25}.project-owner-kind-card-desc{font-size:13px;line-height:1.4;opacity:.8}.project-owner-kind-card-next{margin-top:4px;font-size:12px;line-height:1.4;opacity:.7}.project-owner-kind-card-next-label{display:inline-block;margin-right:6px;font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;opacity:.85}.project-owner-kind-card-check{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;opacity:0}.project-owner-kind-card-check.is-visible{opacity:1;background:var(--color-accent);color:var(--color-on-accent)}.project-owner-kind-card-check svg{width:16px;height:16px}.project-form--wizard .project-info-panel{margin:0;padding:0;border:none;border-radius:0;background:transparent}.project-form--wizard .project-copro-results{padding:0;border:none;background:transparent;border-radius:0}.project-form--wizard .project-copro-result-tag{border:none;border-bottom:1px solid var(--color-divider);border-radius:0;background:transparent}.project-form-finalize-subtitle{margin:0 0 4px;font-size:14px;font-weight:600}.project-form-finalize-empty{margin:0;font-size:13px;line-height:1.45;opacity:.8}.project-form-error--footer{margin:0 20px 8px;flex-shrink:0}.project-form--wizard .form-actions{flex-shrink:0;justify-content:space-between;align-items:center;padding:12px 20px 16px;border-top:1px solid var(--color-divider);background:var(--color-main-header-background)}.project-form-wizard-nav{display:flex;gap:12px;align-items:center}.project-form-wizard-nav-left{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.project-copro-retry{margin-top:10px}.project-wizard-incomplete-alert{display:flex;gap:12px;align-items:flex-start;margin:12px 0 4px;padding:.75rem .95rem;border-radius:10px;background:#f59f001f;border:1px solid rgba(245,159,0,.4);color:var(--color-body-text)}.project-wizard-incomplete-alert svg{flex-shrink:0;margin-top:2px;width:20px;height:20px;color:#f59f00}.project-wizard-incomplete-alert-body{display:flex;flex-direction:column;gap:6px;min-width:0}.project-wizard-incomplete-alert-title{margin:0;font-weight:650}.project-wizard-incomplete-alert-body p{margin:0;font-size:.92rem;line-height:1.45}.project-wizard-incomplete-alert-btn{align-self:flex-start;margin-top:4px;padding:6px 12px;border-radius:8px;border:1px solid rgba(245,159,0,.55);background:#f59f0029;color:inherit;cursor:pointer}.project-wizard-incomplete-alert-btn:hover{background:#f59f0047}@container project-form (max-width: 860px){.project-form-wizard-body{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr)}.project-form-summary{max-height:200px}}@container project-form (max-width: 560px){.project-form-stepper-btn{max-width:56px}.project-form-stepper-label{font-size:10px}.project-form-stepper-index{width:24px;height:24px;font-size:11px}.project-owner-kind{grid-template-rows:repeat(3,minmax(6.25rem,1fr));gap:8px}.project-owner-kind-card{padding:14px;gap:12px}}.project-form-section{border:1px solid var(--color-divider);border-radius:var(--radius-large);padding:16px;background:var(--color-stat-item-background);display:flex;flex-direction:column;gap:12px}.project-form-section h4{margin:0;font-size:16px}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.project-address-block{display:flex;flex-direction:column;gap:12px;margin-top:4px}.project-address-subheading{margin:0 0 4px;font-size:14px;font-weight:600;color:var(--color-body-text)}.project-address-hint{margin:0;font-size:12px;line-height:1.45;opacity:.75;color:var(--color-body-text)}.project-reuse-address-btn{display:flex;align-items:center;gap:14px;width:100%;margin:0;padding:14px 16px;text-align:left;border:1px solid var(--color-accent);border-radius:var(--radius-large);background:var(--color-accent);color:var(--color-on-accent);cursor:pointer;transition:opacity .15s,transform .15s,box-shadow .15s}.project-reuse-address-btn:hover:not(:disabled){opacity:.92;transform:translateY(-1px);box-shadow:0 6px 16px color-mix(in srgb,var(--color-accent) 35%,transparent)}.project-reuse-address-btn:disabled{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none}.project-reuse-address-btn-icon{width:40px;height:40px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:color-mix(in srgb,var(--color-on-accent) 16%,transparent)}.project-reuse-address-btn-icon svg{width:20px;height:20px}.project-reuse-address-btn-body{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.project-reuse-address-btn-title{font-size:15px;font-weight:700;line-height:1.25}.project-reuse-address-btn-address{font-size:13px;font-weight:500;line-height:1.35;opacity:.85;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-reuse-address-btn-action{display:inline-flex;align-items:center;gap:6px;flex-shrink:0;padding:8px 12px;border-radius:var(--radius-medium);background:color-mix(in srgb,var(--color-on-accent) 16%,transparent);font-size:13px;font-weight:700;letter-spacing:.02em}.project-reuse-address-btn-action svg{width:15px;height:15px}.project-address-search{gap:8px;padding:14px 16px;border-radius:var(--radius-large);background:color-mix(in srgb,var(--color-accent) 9%,var(--color-body-background));border:1px solid color-mix(in srgb,var(--color-accent) 38%,var(--color-divider))}.project-address-search input{width:100%;font-size:16px;padding:12px 14px}.form-grid-address{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));align-items:start}@media(min-width:720px){.form-grid-address .project-address-street-name{grid-column:span 2}.form-grid-address .project-address-commune{grid-column:1 / -1}}.project-form label{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--color-body-text)}.project-form input,.project-form select,.project-form textarea{background:var(--color-body-background);border:1px solid var(--color-divider);border-radius:var(--radius-medium);padding:10px 12px;color:var(--color-body-text);font-size:14px}.project-form input:focus,.project-form select:focus,.project-form textarea:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-shadow)}.checkbox-inline{align-items:center;flex-direction:row!important;gap:8px}.toggle-switch-wrapper{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.toggle-switch-label{font-size:13px}.toggle-switch{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--color-divider);border-radius:999px;padding:4px 8px;background:var(--color-sidebar-main-background);cursor:pointer;transition:all .2s;color:var(--color-body-text)}.toggle-switch.on{background:var(--color-body-background);border-color:var(--color-body-text);opacity:1}.toggle-switch.off{opacity:.7}.toggle-thumb{width:16px;height:16px;border-radius:50%;background:var(--color-body-text);display:inline-block}.toggle-text{font-size:12px;font-weight:600}.toggle-hint{margin:0;font-size:12px;opacity:.6;width:100%}.label-with-autocomplete{position:relative}.autocomplete-panel{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--color-body-background);border:1px solid var(--color-divider);border-radius:var(--radius-small);box-shadow:0 12px 24px #0006;z-index:30;display:flex;flex-direction:column;max-height:220px;overflow-y:auto}.autocomplete-item{border:none;background:transparent;color:var(--color-body-text);text-align:left;padding:8px 10px;cursor:pointer;transition:background .2s}.autocomplete-item:hover{background:var(--color-hover-light)}.form-actions{display:flex;justify-content:flex-end;gap:12px}.upload-primary:disabled{opacity:.4;cursor:not-allowed;transform:none}.upload-primary:not(:disabled):hover{opacity:.85;transform:translateY(-1px)}.upload-secondary{background:transparent;border:1px solid var(--color-divider);color:var(--color-body-text)}.upload-secondary:hover{border-color:var(--color-body-text)}.project-planning{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;height:100%;width:100%;overflow:hidden;background:var(--color-body-background);color:var(--color-body-text)}.planning-toolbar{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--color-divider);background:var(--color-sidebar-secondary-background);gap:16px;flex-shrink:0}.planning-toolbar-button{display:flex;align-items:center;justify-content:center;padding:6px 10px;background:var(--color-body-background);border:1px solid var(--color-divider);border-radius:var(--radius-small);color:var(--color-body-text);cursor:pointer;transition:all .2s;font-size:16px}.planning-toolbar-button:hover:not(:disabled){background:var(--color-hover-light);border-color:var(--color-accent);color:var(--color-accent)}.planning-toolbar-button:disabled{opacity:.4;cursor:not-allowed}.planning-zoom-level{min-width:50px;text-align:center;font-size:12px;font-weight:600;color:var(--color-body-text);font-family:var(--font-family-number)}.planning-toolbar-separator{width:1px;height:24px;background:var(--color-divider);margin:0 8px}.planning-toolbar-button-today{gap:6px;margin-left:12px;padding-left:12px;padding-right:12px;font-family:var(--font-family-base)}.planning-legend{display:flex;align-items:center;gap:16px;padding:8px 16px;background:var(--color-body-background);border-radius:var(--radius-small);border:1px solid var(--color-divider)}.planning-legend-title{font-size:12px;font-weight:600;color:var(--color-body-text);margin-right:8px}.planning-legend-items{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.planning-legend-item{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--color-body-text)}.planning-legend-bar{width:24px;height:12px;border-radius:var(--radius-small);flex-shrink:0}.project-planning-gantt{flex:1;overflow:auto;position:relative;border:1px solid var(--color-divider)}.planning-gantt-header{display:flex;min-width:100%}.planning-gantt-labels{min-width:250px;max-width:250px;border-right:1px solid var(--color-divider);background:var(--color-sidebar-secondary-background);position:sticky;left:0;z-index:10}.planning-label-column{display:flex;flex-direction:column}.planning-label-header{padding:6px 12px;font-weight:600;border-bottom:1px solid var(--color-divider);background:var(--color-body-background);position:sticky;top:0;z-index:5;display:flex;justify-content:space-between;align-items:center;height:48px;box-sizing:border-box}.planning-label-header-right{display:flex;flex-direction:column;gap:4px;font-size:10px;font-weight:500;text-align:right;opacity:.7}.planning-label-row{padding:6px 12px;border-bottom:1px solid var(--color-divider);height:48px;display:flex;justify-content:space-between;align-items:center;transition:background-color .2s;gap:12px;box-sizing:border-box}.planning-label-row:hover{background-color:#ffffff05}.planning-label-phase-name{font-weight:500;flex-shrink:0}.planning-label-status{display:flex;flex-direction:column;gap:4px;align-items:flex-end;flex-shrink:0}.planning-label-status-item{font-size:10px;padding:2px 6px;border-radius:var(--radius-small);transition:all .2s;text-align:right;min-width:60px}.planning-label-status-item.has-data{background-color:#4a86e833;color:var(--planning-realization-prevision);font-weight:500}.planning-label-status-item.no-data{color:var(--color-body-text);opacity:.4}.planning-gantt-timeline{flex:1;min-width:800px;position:relative}.planning-timeline-header{position:relative;border-bottom:1px solid var(--color-divider);background:var(--color-body-background);position:sticky;top:0;z-index:5;height:48px}.planning-month-column{border-right:1px solid var(--color-divider);padding:8px;text-align:center;height:48px;display:flex;flex-direction:column;box-sizing:border-box;position:absolute;top:0}.planning-month-label{font-size:12px;font-weight:600;color:var(--color-body-text);margin-bottom:4px}.planning-weeks-container{display:flex;flex-wrap:wrap;gap:4px;justify-content:center;margin-top:4px}.planning-week-cell{font-size:9px;padding:2px 6px;border-radius:2px;color:var(--color-body-text);opacity:.6;text-align:center;font-weight:500}.planning-timeline-body{position:relative;min-height:400px;min-width:100%}.planning-month-columns{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;z-index:1}.planning-month-column-vertical{position:absolute;top:0;bottom:0;border-right:1px solid var(--color-divider);pointer-events:none;z-index:1}.planning-month-column-vertical:last-child{border-right:none}.planning-bars-container{position:relative;z-index:2}.planning-phase-row{position:relative;height:48px;border-bottom:1px solid rgba(128,128,128,.1);transition:background-color .2s;box-sizing:border-box}.planning-phase-row:hover{background-color:#ffffff05}.planning-phase-cell-content{position:absolute;top:0;left:0;right:0;bottom:0;z-index:1}.planning-phase-cell{flex:1;border-right:1px solid rgba(128,128,128,.3);height:100%;position:relative}.planning-phase-cell:last-child{border-right:none}.planning-phase-cell:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:repeating-linear-gradient(90deg,transparent,transparent calc(100% / 7 * 5 - 1px),rgba(128,128,128,.03) calc(100% / 7 * 5 - 1px),rgba(128,128,128,.03) calc(100% / 7 * 5),transparent calc(100% / 7 * 5),transparent calc(100% / 7 * 6 - 1px),rgba(128,128,128,.03) calc(100% / 7 * 6 - 1px),rgba(128,128,128,.03) calc(100% / 7 * 6));pointer-events:none;opacity:.5}.planning-phase-bar-content{position:absolute;top:0;left:0;right:0;bottom:0;z-index:2}.planning-works-row{position:relative;height:48px;border-bottom:1px solid rgba(128,128,128,.3);transition:background-color .2s;box-sizing:border-box}.planning-works-row:hover{background-color:#ffffff05}.planning-bar{position:absolute;height:6px;border-radius:var(--radius-small);cursor:pointer;transition:all .2s ease;z-index:2;box-shadow:0 1px 2px #0000001a}.planning-bar:hover{opacity:.9;transform:translateY(-50%) scaleY(1.4);z-index:3;box-shadow:0 2px 4px #0003}.planning-bar:after{content:attr(data-tooltip);position:absolute;bottom:100%;left:50%;transform:translate(-50%) translateY(-8px);background:var(--color-sidebar-secondary-background);color:var(--color-body-text);padding:8px 12px;border-radius:var(--radius-small);font-size:11px;white-space:pre-line;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;z-index:100;border:1px solid var(--color-divider);box-shadow:0 4px 8px #0000004d;min-width:200px;text-align:left;line-height:1.4}.planning-bar:hover:after{opacity:1;transform:translate(-50%) translateY(-12px)}.planning-bar-realization-prevision{background-color:var(--planning-realization-prevision)}.planning-bar-realization-reality{background-color:var(--planning-realization-reality)}.planning-bar-validation-prevision{background-color:var(--planning-validation-prevision)}.planning-bar-validation-reality{background-color:var(--planning-validation-reality)}.planning-bar-instruction-prevision{background-color:var(--planning-instruction-prevision)}.planning-bar-instruction-reality{background-color:var(--planning-instruction-reality)}.planning-bar-works{background-color:var(--color-accent);border:1px solid rgba(255,255,255,.1)}.planning-bar-reality{border:2px solid currentColor;box-shadow:0 0 0 1px #fff3}.planning-bar-construction-prevision{background-color:var(--planning-realization-prevision);opacity:.7;border:1px solid rgba(255,255,255,.1)}.planning-bar-construction-reality{background-color:var(--planning-realization-reality);border:1px solid rgba(255,255,255,.15)}.planning-current-day-marker{position:absolute;top:0;bottom:0;width:1px;background-color:var(--planning-current-day);z-index:20;pointer-events:none;box-shadow:0 0 4px var(--planning-current-day)}.planning-current-day-marker:before{content:"";position:absolute;top:-6px;left:-6px;width:8px;height:8px;background-color:var(--planning-current-day);border-radius:50%;box-shadow:0 0 6px var(--planning-current-day);border:2px solid var(--color-body-background)}.planning-works-item{display:flex;flex-direction:column}.planning-works-label-row{display:flex;align-items:center;gap:8px;padding:12px;border-bottom:1px solid var(--color-divider);min-height:48px;transition:background-color .2s}.planning-works-label-row:hover{background-color:#ffffff05}.planning-expand-button{background:transparent;border:none;color:var(--color-body-text);cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;transition:transform .2s}.planning-expand-button:hover{opacity:.8}.planning-works-code{font-family:var(--font-family-number);font-size:12px;font-weight:600;min-width:50px}.planning-works-label{font-size:13px;flex:1}.planning-works-bar-container{position:relative;height:20px;margin-left:34px}.planning-works-children{margin-left:20px;border-left:1px dashed var(--color-divider);padding-left:12px}.planning-closure-day{background-color:var(--planning-closure-bg);position:absolute;top:0;bottom:0;z-index:1}.project-detail-page-consultations{padding:0;overflow-y:auto;overflow-x:hidden;height:100%}.allotissement-view{padding:8px;height:100%;overflow-y:auto;box-sizing:border-box}.allotissement-header{margin-bottom:32px;display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.allotissement-header h2{font-size:28px;font-weight:600;color:var(--color-body-text);margin-bottom:8px}.allotissement-subtitle{color:var(--color-body-text);opacity:.7;font-size:14px}.allotissement-filters{display:flex;gap:16px;margin-bottom:24px;flex-wrap:wrap}.allotissement-search{flex:1;min-width:300px}.allotissement-search-input{width:100%;padding:12px 16px;background:var(--color-sidebar-secondary-background);border:1px solid var(--color-divider);border-radius:var(--radius-medium);color:var(--color-body-text);font-size:14px;transition:border-color .2s}.allotissement-search-input:focus{outline:none;border-color:var(--color-accent)}.allotissement-category-filter{min-width:250px}.allotissement-category-select{width:100%;padding:12px 16px;background:var(--color-sidebar-secondary-background);border:1px solid var(--color-divider);border-radius:var(--radius-medium);color:var(--color-body-text);font-size:14px;cursor:pointer;transition:border-color .2s}.allotissement-category-select:focus{outline:none;border-color:var(--color-accent)}.allotissement-stats{display:flex;gap:24px;margin-bottom:24px;padding:12px 16px;background:var(--color-sidebar-secondary-background);border-radius:var(--radius-medium);border:1px solid var(--color-divider)}.allotissement-stat{font-size:13px;color:var(--color-body-text);font-weight:500}.allotissement-lots{display:flex;flex-direction:column;gap:32px}.allotissement-category-group{display:flex;flex-direction:column;gap:16px}.allotissement-category-title{font-size:18px;font-weight:600;color:var(--color-body-text);padding-bottom:8px;border-bottom:2px solid var(--color-divider)}.allotissement-lots-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.allotissement-lot-card{padding:16px;background:var(--color-sidebar-secondary-background);border:2px solid var(--color-divider);border-radius:var(--radius-medium);cursor:pointer;transition:all .2s;display:flex;flex-direction:column;gap:8px}.allotissement-lot-card:hover{border-color:var(--color-accent);background:var(--color-hover-light);transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.allotissement-lot-card.selected{border-color:var(--color-accent);background:rgba(var(--color-accent-rgb),.1)}.allotissement-lot-header{display:flex;align-items:center;gap:12px}.allotissement-lot-checkbox{width:18px;height:18px;cursor:pointer;accent-color:var(--color-accent)}.allotissement-lot-code{font-family:var(--font-family-number);font-size:14px;font-weight:600;color:var(--color-accent)}.allotissement-lot-label{font-size:15px;font-weight:500;color:var(--color-body-text);margin-top:4px}.allotissement-lot-description{font-size:12px;color:var(--color-body-text);opacity:.7;line-height:1.4}.allotissement-empty{text-align:center;padding:48px;color:var(--color-body-text);opacity:.6}.allotissement-edit-btn{display:flex;align-items:center;gap:8px;padding:8px 16px;background:var(--color-accent);color:#fff;border:none;border-radius:var(--radius-medium);font-size:13px;font-weight:500;cursor:pointer;transition:all .2s;margin-left:auto}.allotissement-edit-btn:hover{background:var(--color-accent-hover, var(--color-accent));transform:translateY(-1px);box-shadow:0 2px 8px #00000026}.allotissement-header-actions{display:flex;align-items:center;gap:12px}.edit-lots-modal{display:flex;flex-direction:column;gap:20px}.edit-lots-modal-actions{display:flex;justify-content:flex-end;gap:12px;padding-bottom:16px;border-bottom:1px solid var(--color-divider)}.edit-lots-btn-cancel,.edit-lots-btn-save{padding:8px 16px;border:none;border-radius:var(--radius-medium);font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.edit-lots-btn-cancel{background:var(--color-sidebar-secondary-background);color:var(--color-body-text);border:1px solid var(--color-divider)}.edit-lots-btn-cancel:hover{background:var(--color-hover-light)}.edit-lots-btn-save{background:var(--color-accent);color:#fff}.edit-lots-btn-save:hover{background:var(--color-accent-hover, var(--color-accent))}.edit-lots-modal-content{padding:20px;overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:24px}.edit-lots-category-group{display:flex;flex-direction:column;gap:12px}.edit-lots-category-header{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--color-sidebar-secondary-background);border:1px solid var(--color-divider);border-radius:var(--radius-medium);cursor:pointer;transition:all .2s}.edit-lots-category-header:hover{background:var(--color-hover-light);border-color:var(--color-accent)}.edit-lots-category-toggle{display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;background:transparent;border:none;color:var(--color-body-text);cursor:pointer;transition:transform .2s;flex-shrink:0}.edit-lots-category-toggle:hover{color:var(--color-accent)}.edit-lots-category-header h4{margin:0;font-size:16px;font-weight:600;color:var(--color-body-text);display:flex;align-items:center;gap:8px;flex:1}.edit-lots-category-count{font-size:13px;font-weight:400;opacity:.6;color:var(--color-body-text)}.edit-lots-add-btn{display:flex;align-items:center;gap:4px;padding:6px 10px;background:var(--color-sidebar-secondary-background);color:var(--color-body-text);border:1px solid var(--color-divider);border-radius:var(--radius-medium);font-size:12px;font-weight:500;cursor:pointer;transition:all .2s;margin-left:auto;flex-shrink:0}.edit-lots-add-btn:hover{background:var(--color-hover-light);border-color:var(--color-accent)}.edit-lots-list{display:flex;flex-direction:column;gap:12px;overflow:hidden;transition:max-height .3s ease-out,opacity .2s ease-out;max-height:5000px;opacity:1}.edit-lots-list.collapsed{max-height:0;opacity:0;margin:0;padding:0;gap:0}.edit-lots-list.expanded{margin-top:12px}.edit-lots-item-wrapper{display:flex;flex-direction:column}.edit-lots-item-compact{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--color-sidebar-secondary-background);border:1px solid var(--color-divider);border-radius:var(--radius-medium);transition:all .2s;cursor:pointer}.edit-lots-item-compact:hover{border-color:var(--color-accent);background:var(--color-hover-light)}.edit-lots-compact-controls{display:flex;flex-direction:column;gap:4px;flex-shrink:0;align-items:flex-start}.edit-lots-compact-content{display:flex;align-items:center;gap:12px;flex:1}.edit-lots-compact-code{font-family:var(--font-family-number);font-size:14px;font-weight:600;min-width:40px;flex-shrink:0}.edit-lots-compact-label{font-size:14px;color:var(--color-body-text);font-weight:500;flex:1}.edit-lots-item{display:flex;align-items:flex-start;gap:12px;padding:16px;background:var(--color-sidebar-secondary-background);border:1px solid var(--color-divider);border-radius:var(--radius-medium);transition:all .2s}.edit-lots-item:hover{border-color:var(--color-accent);background:var(--color-hover-light)}.edit-lots-item-controls{display:flex;flex-direction:column;gap:4px;flex-shrink:0;align-items:flex-start}.edit-lots-usage-badge{display:flex;align-items:center;gap:4px;padding:4px 8px;background:#f59e0b26;border:1px solid rgba(245,158,11,.3);border-radius:var(--radius-small);color:#f59e0b;font-size:11px;font-weight:600;margin-bottom:4px;width:auto}.edit-lots-usage-badge svg{flex-shrink:0;width:14px;height:14px}.edit-lots-usage-badge span{font-family:var(--font-family-number)}.edit-lots-move-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:var(--color-body-background);border:1px solid var(--color-divider);border-radius:var(--radius-small);color:var(--color-body-text);cursor:pointer;transition:all .2s}.edit-lots-move-btn:hover:not(:disabled){background:var(--color-hover-light);border-color:var(--color-accent);color:var(--color-accent)}.edit-lots-move-btn:disabled{opacity:.3;cursor:not-allowed}.edit-lots-item-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;flex:1}.edit-lots-field-group{display:flex;flex-direction:column;gap:6px}.edit-lots-field-group label{font-size:12px;font-weight:600;color:var(--color-body-text);opacity:.8}.edit-lots-input,.edit-lots-select,.edit-lots-textarea{padding:8px 12px;background:var(--color-body-background);border:1px solid var(--color-divider);border-radius:var(--radius-medium);color:var(--color-body-text);font-size:13px;transition:border-color .2s;font-family:inherit}.edit-lots-input:focus,.edit-lots-select:focus,.edit-lots-textarea:focus{outline:none;border-color:var(--color-accent)}.edit-lots-textarea{resize:vertical;min-height:60px}.edit-lots-color-input{display:flex;align-items:center;gap:8px}.edit-lots-color-picker{width:40px;height:32px;padding:0;border:1px solid var(--color-divider);border-radius:var(--radius-medium);cursor:pointer;background:none}.edit-lots-color-text{flex:1;font-family:var(--font-family-number);padding:8px 12px;background:var(--color-body-background);border:1px solid var(--color-divider);border-radius:var(--radius-medium);color:var(--color-body-text);font-size:13px;transition:border-color .2s}.edit-lots-color-text:focus{outline:none;border-color:var(--color-accent)}.edit-lots-input-readonly{background:var(--color-sidebar-secondary-background);cursor:not-allowed;opacity:.7}.edit-lots-code-hint{font-size:11px;font-weight:400;opacity:.6;margin-left:6px;font-style:italic}.edit-lots-item-wrapper.used-in-projects .edit-lots-item-compact,.edit-lots-item-wrapper.used-in-projects .edit-lots-item{border-left:3px solid #f59e0b}.edit-lots-item-actions{display:flex;flex-direction:column;gap:4px;flex-shrink:0}.edit-lots-collapse-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:transparent;border:1px solid var(--color-divider);border-radius:var(--radius-medium);color:var(--color-body-text);cursor:pointer;transition:all .2s;flex-shrink:0}.edit-lots-collapse-btn:hover{background:var(--color-hover-light);border-color:var(--color-accent);color:var(--color-accent)}.edit-lots-delete-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:transparent;border:1px solid var(--color-divider);border-radius:var(--radius-medium);color:#e74c3c;cursor:pointer;transition:all .2s;flex-shrink:0}.edit-lots-delete-btn:hover{background:#e74c3c1a;border-color:#e74c3c}.options-variantes-view{padding:24px;max-width:1600px;margin:0 auto;height:100%;overflow-y:auto}.options-variantes-header{margin-bottom:32px}.options-variantes-header h2{font-size:28px;font-weight:600;color:var(--color-body-text);margin-bottom:8px}.options-variantes-subtitle{color:var(--color-body-text);opacity:.7;font-size:14px}.options-variantes-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;align-items:start}.options-variantes-column{display:flex;flex-direction:column;gap:16px;background:var(--color-sidebar-secondary-background);border:1px solid var(--color-divider);border-radius:var(--radius-medium);padding:20px;min-height:400px}.options-variantes-column-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;padding-bottom:12px;border-bottom:2px solid var(--color-divider)}.options-variantes-column-header h3{font-size:18px;font-weight:600;color:var(--color-body-text);margin:0}.options-variantes-add-tag-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;background:var(--color-accent);color:#fff;border:none;border-radius:var(--radius-medium);font-size:12px;font-weight:500;cursor:pointer;transition:all .2s}.options-variantes-add-tag-btn:hover{background:var(--color-accent-hover, var(--color-accent));transform:translateY(-1px)}.options-variantes-tags-list{display:flex;flex-direction:column;gap:12px;flex:1}.options-variantes-empty{text-align:center;padding:32px;color:var(--color-body-text);opacity:.5;font-size:13px}.options-variantes-tag{background:var(--color-body-background);border:1px solid var(--color-divider);border-radius:var(--radius-medium);padding:12px;transition:all .2s}.options-variantes-tag:hover{border-color:var(--color-accent);background:var(--color-hover-light)}.options-variantes-tag-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.options-variantes-tag-info{display:flex;flex-direction:column;gap:6px;flex:1}.options-variantes-tag-code{font-family:var(--font-family-number);font-size:12px;font-weight:600;color:var(--color-accent)}.options-variantes-tag-label{font-size:14px;font-weight:500;color:var(--color-body-text)}.options-variantes-tag-impact{font-size:12px;color:var(--color-accent);font-weight:600}.options-variantes-tag-montant{font-family:var(--font-family-number);font-size:12px;color:var(--color-body-text);opacity:.7}.options-variantes-tag-actions{display:flex;gap:4px;flex-shrink:0}.options-variantes-tag-action-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;background:transparent;border:1px solid var(--color-divider);border-radius:var(--radius-small);color:var(--color-body-text);cursor:pointer;transition:all .2s;font-size:14px}.options-variantes-tag-action-btn:hover{background:var(--color-hover-light);border-color:var(--color-accent);color:var(--color-accent)}.options-variantes-tag-delete-btn:hover{background:#e74c3c1a;border-color:#e74c3c;color:#e74c3c}.options-variantes-tag-lots{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;padding-top:8px;border-top:1px solid var(--color-divider)}.options-variantes-tag-lot{display:inline-block;padding:2px 8px;background:var(--color-sidebar-secondary-background);border:1px solid var(--color-divider);border-left:3px solid;border-radius:var(--radius-small);font-size:11px;font-family:var(--font-family-number);font-weight:600;color:var(--color-body-text)}.options-variantes-tag.selected{border-color:var(--color-accent);background:var(--color-hover-light);border-width:2px}.options-variantes-tag{cursor:pointer}.tag-preview{padding:18px 20px;height:100%;overflow-y:auto}.tag-preview-header{margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid var(--color-divider)}.tag-preview-header h3{font-size:20px;font-weight:600;color:var(--color-body-text);margin:0 0 8px;display:flex;align-items:center;gap:12px}.tag-preview-type{font-size:12px;font-weight:500;padding:4px 10px;background:var(--color-sidebar-secondary-background);border:1px solid var(--color-divider);border-radius:var(--radius-small);text-transform:uppercase;letter-spacing:.5px}.tag-preview-code{font-family:var(--font-family-number);font-size:18px;font-weight:600;color:var(--color-accent)}.tag-preview-label{font-size:18px;font-weight:500;color:var(--color-body-text)}.tag-preview-description{font-size:13px;color:var(--color-body-text);opacity:.7;line-height:1.6;margin:8px 0 0}.tag-preview-lots{display:flex;align-items:center;gap:8px;margin-top:12px;flex-wrap:wrap}.tag-preview-lots-label{font-size:12px;color:var(--color-body-text);opacity:.6;font-weight:500}.tag-preview-lot{display:inline-block;padding:4px 10px;background:var(--color-sidebar-secondary-background);border:1px solid var(--color-divider);border-left:3px solid;border-radius:var(--radius-small);font-size:12px;font-family:var(--font-family-number);font-weight:600;color:var(--color-body-text)}.tag-preview-empty{text-align:center;padding:48px 24px;color:var(--color-body-text);opacity:.6}.tag-preview-content{display:flex;flex-direction:column;gap:24px}.tag-preview-category{display:flex;flex-direction:column;gap:16px}.tag-preview-category-title{font-size:16px;font-weight:600;color:var(--color-body-text);margin:0 0 12px;padding-bottom:8px;border-bottom:2px solid var(--color-divider)}.tag-preview-lot-group{display:flex;flex-direction:column;gap:12px;padding:12px;background:var(--color-sidebar-secondary-background);border:1px solid var(--color-divider);border-radius:var(--radius-medium)}.tag-preview-lot-header{display:flex;align-items:center;gap:10px;margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid var(--color-divider)}.tag-preview-lot-code{font-family:var(--font-family-number);font-size:14px;font-weight:600;min-width:50px}.tag-preview-lot-label{font-size:14px;font-weight:500;color:var(--color-body-text)}.tag-preview-section{display:flex;flex-direction:column;gap:8px;margin-left:12px;padding-left:12px;border-left:2px solid var(--color-divider)}.tag-preview-section-title{font-size:13px;font-weight:600;color:var(--color-body-text);margin:0 0 8px}.tag-preview-posts{display:flex;flex-direction:column;gap:8px}.tag-preview-post{padding:10px;background:var(--color-body-background);border:1px solid var(--color-divider);border-radius:var(--radius-small)}.tag-preview-post-header{display:flex;flex-direction:column;gap:6px}.tag-preview-post-intitule{font-size:13px;font-weight:500;color:var(--color-body-text)}.tag-preview-post-localisation{font-size:11px;color:var(--color-body-text);opacity:.7}.tag-preview-post-meta{display:flex;align-items:center;gap:12px;margin-top:6px;font-size:12px;color:var(--color-body-text)}.tag-preview-post-tva{font-family:var(--font-family-number);font-weight:600;color:var(--color-accent)}.tag-preview-post-montant{font-family:var(--font-family-number);font-weight:600;color:var(--color-accent);margin-left:auto}.tag-preview-souspostes{display:flex;flex-direction:column;gap:6px;margin-top:8px;padding-top:8px;border-top:1px solid var(--color-divider);padding-left:12px}.tag-preview-sousposte{display:flex;flex-direction:column;gap:4px;padding:8px;background:var(--color-sidebar-secondary-background);border:1px solid var(--color-divider);border-radius:var(--radius-small)}.tag-preview-sousposte-intitule{font-size:12px;font-weight:500;color:var(--color-body-text);opacity:.9}.tag-preview-sousposte-localisation{font-size:10px;color:var(--color-body-text);opacity:.6}.tag-preview-sousposte-meta{display:flex;align-items:center;gap:12px;margin-top:4px;font-size:11px;color:var(--color-body-text)}.tag-preview-sousposte-tva{font-family:var(--font-family-number);font-weight:600;color:var(--color-accent)}.tag-preview-sousposte-montant{font-family:var(--font-family-number);font-weight:600;color:var(--color-accent);margin-left:auto}.edit-tag-form{display:flex;flex-direction:column;gap:16px;padding:20px}.edit-tag-field{display:flex;flex-direction:column;gap:6px}.edit-tag-field label{font-size:13px;font-weight:600;color:var(--color-body-text)}.edit-tag-field input,.edit-tag-field textarea,.edit-tag-field select{padding:10px 12px;background:var(--color-body-background);border:1px solid var(--color-divider);border-radius:var(--radius-medium);color:var(--color-body-text);font-size:14px;font-family:inherit;transition:border-color .2s}.edit-tag-field input:focus,.edit-tag-field textarea:focus,.edit-tag-field select:focus{outline:none;border-color:var(--color-accent)}.edit-tag-field textarea{resize:vertical;min-height:80px}.edit-tag-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.edit-tag-lots{display:flex;flex-direction:column;gap:8px;max-height:200px;overflow-y:auto;padding:12px;background:var(--color-sidebar-secondary-background);border:1px solid var(--color-divider);border-radius:var(--radius-medium)}.edit-tag-lot-checkbox{display:flex;align-items:center;gap:8px;padding:6px;cursor:pointer;border-radius:var(--radius-small);transition:background .2s}.edit-tag-lot-checkbox:hover{background:var(--color-hover-light)}.edit-tag-lot-checkbox input[type=checkbox]{margin:0;cursor:pointer}.edit-tag-lot-code{font-family:var(--font-family-number);font-size:12px;font-weight:600;min-width:40px}.edit-tag-lot-label{font-size:13px;color:var(--color-body-text)}.edit-tag-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:16px;border-top:1px solid var(--color-divider);margin-top:8px}.edit-tag-actions button{padding:10px 20px;border:1px solid var(--color-divider);border-radius:var(--radius-medium);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.edit-tag-actions button[type=button]{background:var(--color-sidebar-secondary-background);color:var(--color-body-text)}.edit-tag-actions button[type=button]:hover{background:var(--color-hover-light)}.edit-tag-actions button[type=submit]{background:var(--color-accent);color:#fff;border-color:var(--color-accent)}.edit-tag-actions button[type=submit]:hover{background:var(--color-accent-hover, var(--color-accent))}.options-variantes-list{display:flex;flex-direction:column;gap:12px}.options-variantes-item{background:var(--color-sidebar-secondary-background);border:1px solid var(--color-divider);border-radius:var(--radius-medium);overflow:hidden;transition:all .2s}.options-variantes-item:hover{border-color:var(--color-accent);background:var(--color-hover-light)}.options-variantes-item-header{display:flex;align-items:center;gap:12px;padding:16px;cursor:pointer;transition:background .2s}.options-variantes-item-header:hover{background:var(--color-hover-light)}.options-variantes-expand-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;background:transparent;border:none;color:var(--color-body-text);cursor:pointer;transition:color .2s;flex-shrink:0}.options-variantes-expand-btn:hover{color:var(--color-accent)}.options-variantes-item-info{display:flex;flex-direction:column;gap:8px;flex:1}.options-variantes-item-main{display:flex;align-items:center;gap:12px}.options-variantes-code{font-family:var(--font-family-number);font-size:14px;font-weight:600;color:var(--color-accent);min-width:80px}.options-variantes-label{font-size:16px;font-weight:600;color:var(--color-body-text);flex:1}.options-variantes-category{font-size:12px;color:var(--color-body-text);opacity:.6;padding:4px 10px;background:var(--color-body-background);border-radius:var(--radius-small)}.options-variantes-item-meta{display:flex;align-items:center;gap:16px}.options-variantes-impact{font-size:13px;color:var(--color-accent);font-weight:600}.options-variantes-montant{font-family:var(--font-family-number);font-size:14px;font-weight:600;color:var(--color-accent);min-width:120px}.options-variantes-status{font-size:12px;font-weight:500;padding:4px 10px;border-radius:var(--radius-small)}.options-variantes-status.status-proposée{background:#f59e0b26;color:#f59e0b}.options-variantes-status.status-validée{background:#22c55e26;color:#22c55e}.options-variantes-status.status-en_étude,.options-variantes-status.status-actif{background:#3b82f626;color:#3b82f6}.options-variantes-item-actions{display:flex;gap:8px;flex-shrink:0}.options-variantes-action-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:transparent;border:1px solid var(--color-divider);border-radius:var(--radius-medium);color:var(--color-body-text);cursor:pointer;transition:all .2s}.options-variantes-action-btn:hover{background:var(--color-hover-light);border-color:var(--color-accent);color:var(--color-accent)}.options-variantes-delete-btn:hover{background:#e74c3c1a;border-color:#e74c3c;color:#e74c3c}.options-variantes-item-content{padding:0 16px 16px;border-top:1px solid var(--color-divider);margin-top:8px;display:flex;flex-direction:column;gap:16px}.options-variantes-description{color:var(--color-body-text);opacity:.8;line-height:1.6}.options-variantes-description p{margin:0}.options-variantes-lots,.options-variantes-options,.options-variantes-variantes{display:flex;flex-direction:column;gap:8px}.options-variantes-lots h4,.options-variantes-options h4,.options-variantes-variantes h4{font-size:13px;font-weight:600;color:var(--color-body-text);margin:0}.options-variantes-lots-list,.options-variantes-options-list,.options-variantes-variantes-list{display:flex;flex-wrap:wrap;gap:8px}.options-variantes-lot-tag,.options-variantes-option-tag,.options-variantes-variante-tag{display:flex;align-items:center;gap:8px;padding:6px 12px;background:var(--color-body-background);border:1px solid var(--color-divider);border-radius:var(--radius-medium);font-size:12px}.options-variantes-lot-code,.options-variantes-option-code,.options-variantes-variante-code{font-family:var(--font-family-number);font-weight:600;min-width:40px}.options-variantes-lot-label,.options-variantes-option-label,.options-variantes-variante-label{color:var(--color-body-text);flex:1}.options-variantes-option-montant,.options-variantes-variante-montant{font-family:var(--font-family-number);font-weight:600;color:var(--color-accent);margin-left:8px}.options-variantes-total{display:flex;flex-direction:column;gap:8px;padding:16px;background:var(--color-body-background);border:1px solid var(--color-divider);border-radius:var(--radius-medium);margin-top:8px}.options-variantes-total-base,.options-variantes-total-options,.options-variantes-total-variantes{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:var(--color-body-text)}.options-variantes-total-final{display:flex;justify-content:space-between;align-items:center;padding-top:12px;margin-top:8px;border-top:2px solid var(--color-divider);font-size:16px;font-weight:600;color:var(--color-body-text)}.options-variantes-total-final span:last-child{font-family:var(--font-family-number);color:var(--color-accent);font-size:18px}.options-variantes-add-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;background:var(--color-sidebar-secondary-background);border:2px dashed var(--color-divider);border-radius:var(--radius-medium);color:var(--color-body-text);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;margin-top:8px}.options-variantes-add-btn:hover{background:var(--color-hover-light);border-color:var(--color-accent);border-style:solid;color:var(--color-accent)}.selected-lots-preview{padding:18px 20px;height:100%;overflow-y:auto}.selected-lots-preview-header{margin-bottom:16px;padding-bottom:12px;border-bottom:2px solid var(--color-divider)}.selected-lots-preview-header-top{display:flex;justify-content:space-between;align-items:center;gap:12px}.selected-lots-preview-header h3{font-size:18px;font-weight:600;color:var(--color-body-text);margin:0}.selected-lots-preview-count{font-size:11px;color:var(--color-accent);font-weight:500;padding:4px 10px;background:rgba(var(--color-accent-rgb),.1);border-radius:var(--radius-small);display:inline-block}.selected-lots-preview-empty{text-align:center;padding:48px 24px;color:var(--color-body-text);opacity:.6}.selected-lots-preview-hint{font-size:12px;margin-top:8px;opacity:.5}.selected-lots-preview-content{display:flex;flex-direction:column;gap:12px}.selected-lots-category-block{padding:12px 14px;background:var(--color-sidebar-secondary-background);border:1px solid var(--color-divider);border-radius:var(--radius-medium);transition:all .2s}.selected-lots-category-block:hover{border-color:var(--color-accent);background:var(--color-hover-light)}.selected-lots-category-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid var(--color-divider)}.selected-lots-category-title{font-size:13px;font-weight:600;color:var(--color-body-text);text-transform:uppercase;letter-spacing:.5px;margin:0}.selected-lots-category-count{font-size:11px;color:var(--color-body-text);opacity:.6;font-weight:500}.selected-lots-category-items{display:flex;flex-direction:column;gap:6px}.selected-lot-compact{display:flex;align-items:center;gap:10px;padding:4px 0;font-size:13px}.selected-lot-compact-code{font-family:var(--font-family-number);font-size:12px;font-weight:600;min-width:36px;flex-shrink:0}.selected-lot-compact-label{font-size:13px;color:var(--color-body-text);font-weight:400;flex:1}.dpgf-cctp-view{padding:24px;max-width:1400px;margin:0 auto;height:100%;overflow-y:auto}.dpgf-cctp-header{margin-bottom:32px}.dpgf-cctp-header h2{font-size:28px;font-weight:600;color:var(--color-body-text);margin-bottom:8px}.dpgf-cctp-subtitle{color:var(--color-body-text);opacity:.7;font-size:14px}.dpgf-cctp-filters{display:flex;gap:16px;margin-bottom:24px;flex-wrap:wrap;align-items:center}.dpgf-cctp-search{flex:1;min-width:300px}.dpgf-cctp-search-input{width:100%;padding:12px 16px;background:var(--color-sidebar-secondary-background);border:1px solid var(--color-divider);border-radius:var(--radius-medium);color:var(--color-body-text);font-size:14px;transition:border-color .2s}.dpgf-cctp-search-input:focus{outline:none;border-color:var(--color-accent)}.dpgf-cctp-type-filter{display:flex;gap:8px}.dpgf-cctp-type-button{padding:10px 16px;background:var(--color-sidebar-secondary-background);border:1px solid var(--color-divider);border-radius:var(--radius-medium);color:var(--color-body-text);font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.dpgf-cctp-type-button:hover{background:var(--color-hover-light);border-color:var(--color-accent)}.dpgf-cctp-type-button.active{background:var(--color-accent);border-color:var(--color-accent);color:#fff}.dpgf-cctp-stats{display:flex;gap:24px;margin-bottom:24px;padding:12px 16px;background:var(--color-sidebar-secondary-background);border-radius:var(--radius-medium);border:1px solid var(--color-divider)}.dpgf-cctp-stat{font-size:13px;color:var(--color-body-text);font-weight:500}.dpgf-cctp-content{display:flex;flex-direction:column;gap:24px}.dpgf-cctp-lot-group{display:flex;flex-direction:column;gap:16px}.dpgf-cctp-lot-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:var(--color-sidebar-secondary-background);border:1px solid var(--color-divider);border-radius:var(--radius-medium)}.dpgf-cctp-lot-info{display:flex;align-items:center;gap:12px}.dpgf-cctp-lot-code{font-family:var(--font-family-number);font-size:14px;font-weight:600;min-width:40px}.dpgf-cctp-lot-label{font-size:15px;font-weight:500;color:var(--color-body-text)}.dpgf-cctp-lot-count{font-size:12px;color:var(--color-body-text);opacity:.7}.dpgf-cctp-documents{display:flex;flex-direction:column;gap:12px;padding-left:20px}.dpgf-cctp-document-card{padding:16px;background:var(--color-sidebar-secondary-background);border:1px solid var(--color-divider);border-radius:var(--radius-medium);transition:all .2s;cursor:pointer}.dpgf-cctp-document-card:hover{border-color:var(--color-accent);background:var(--color-hover-light);transform:translate(4px)}.dpgf-cctp-document-header{margin-bottom:12px}.dpgf-cctp-document-title-row{display:flex;align-items:center;gap:12px;margin-bottom:8px}.dpgf-cctp-document-type-badge{padding:4px 10px;border-radius:var(--radius-small);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;flex-shrink:0}.dpgf-cctp-document-type-badge[data-type=DPGF]{background:#c87a2a33;color:#c87a2a}.dpgf-cctp-document-type-badge[data-type=CCTP]{background:#2a60c833;color:#2a60c8}.dpgf-cctp-document-title{font-size:16px;font-weight:600;color:var(--color-body-text);margin:0;flex:1}.dpgf-cctp-document-meta{display:flex;align-items:center;gap:16px;font-size:12px}.dpgf-cctp-document-status{display:flex;align-items:center;gap:6px;font-weight:500}.dpgf-cctp-document-version{color:var(--color-body-text);opacity:.6;font-family:var(--font-family-number)}.dpgf-cctp-document-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;font-size:12px;color:var(--color-body-text);opacity:.7}.dpgf-cctp-document-author{display:flex;align-items:center;gap:6px}.dpgf-cctp-document-author-label{opacity:.6}.dpgf-cctp-document-author-name{font-weight:500}.dpgf-cctp-document-sections{padding-top:12px;border-top:1px solid var(--color-divider)}.dpgf-cctp-document-sections-label{font-size:11px;color:var(--color-body-text);opacity:.6;margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.dpgf-cctp-document-sections-list{display:flex;flex-wrap:wrap;gap:6px}.dpgf-cctp-document-section-tag{padding:4px 10px;background:rgba(var(--color-accent-rgb),.1);border:1px solid var(--color-divider);border-radius:var(--radius-small);font-size:11px;color:var(--color-body-text)}.dpgf-cctp-empty{text-align:center;padding:48px 24px;color:var(--color-body-text);opacity:.6}.dpgf-view{padding:0;max-width:1600px;margin:0 auto;height:100%;overflow-y:auto;width:100%;box-sizing:border-box}.dpgf-view-header{margin-bottom:32px;padding:24px 24px 0}.dpgf-view-title-wrapper{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:8px}.dpgf-view-header h2{font-size:28px;font-weight:600;color:var(--color-body-text);margin:0}.dpgf-view-total-montant{font-family:var(--font-family-number);font-size:24px;font-weight:600;color:var(--color-accent)}.dpgf-view-subtitle-wrapper{display:flex;align-items:center;justify-content:space-between;gap:16px}.dpgf-view-subtitle{color:var(--color-body-text);opacity:.7;font-size:14px;margin:0;flex:1}.dpgf-view-actions{display:flex;align-items:center;gap:8px}.dpgf-action-button{display:flex;align-items:center;gap:6px;padding:6px 12px;background:var(--color-body-background);border:1px solid var(--color-divider);border-radius:var(--radius-small);color:var(--color-body-text);font-family:var(--font-family-base);font-size:12px;cursor:pointer;transition:all .2s;white-space:nowrap}.dpgf-action-button:hover:not(:disabled){background:var(--color-hover-light);border-color:var(--color-accent);color:var(--color-accent)}.dpgf-action-button:disabled{opacity:.4;cursor:not-allowed}.dpgf-collapse-all-button{padding:6px 12px;background:var(--color-body-background);border:1px solid var(--color-divider);border-radius:var(--radius-small);color:var(--color-body-text);font-family:var(--font-family-base);font-size:12px;cursor:pointer;transition:all .2s;white-space:nowrap}.dpgf-collapse-all-button:hover{background:var(--color-hover-light);border-color:var(--color-accent);color:var(--color-accent)}.dpgf-view-empty{text-align:center;padding:48px 24px;color:var(--color-body-text);opacity:.6}.dpgf-content{display:flex;flex-direction:column;gap:12px;width:100%;box-sizing:border-box;padding:0 24px 24px}.dpgf-category{border:1px solid var(--color-divider);border-radius:var(--radius-medium);background:var(--color-sidebar-secondary-background);overflow:hidden;width:100%;box-sizing:border-box}.dpgf-category-header{display:flex;align-items:center;gap:12px;padding:14px 16px;cursor:pointer;transition:border-color .2s;font-weight:600;text-transform:uppercase;width:100%;box-sizing:border-box;background:var(--dpgf-category-bg);border-left:3px solid transparent}.dpgf-category-header:hover{border-left-color:var(--color-accent)}.dpgf-expand-icon{display:flex;align-items:center;justify-content:center;width:20px;color:var(--color-body-text);flex-shrink:0}.dpgf-category-title{flex:1;font-size:14px;font-weight:600;color:#ffffff8c;font-family:var(--font-family-number)}.dpgf-category-montant{font-family:var(--font-family-number);font-size:14px;font-weight:600;color:#ffffff8c;min-width:120px;text-align:right}.dpgf-category-content{border-top:1px solid var(--color-divider);background:var(--dpgf-category-content-bg);width:100%;box-sizing:border-box}.dpgf-lot{border-bottom:1px solid var(--color-divider);width:100%;box-sizing:border-box}.dpgf-lot:last-child{border-bottom:none}.dpgf-lot-header{display:flex;align-items:center;gap:12px;padding:12px 16px 12px 24px;cursor:pointer;transition:border-color .2s;font-weight:600;width:100%;box-sizing:border-box;background:var(--dpgf-lot-bg);border-left:3px solid transparent}.dpgf-lot-header:hover{border-left-color:var(--color-accent)}.dpgf-lot-header.selected{background:var(--dpgf-selected-bg)!important;border-left:3px solid var(--color-accent)}.dpgf-lot-code{font-family:var(--font-family-number);font-size:13px;font-weight:600;min-width:40px}.dpgf-lot-label{flex:1;font-size:14px;color:var(--color-body-text);font-family:var(--font-family-number)}.dpgf-lot-montant{font-family:var(--font-family-number);font-size:13px;font-weight:600;min-width:120px;text-align:right}.dpgf-lot-content{border-top:1px solid var(--color-divider);background:var(--dpgf-lot-content-bg);width:100%;box-sizing:border-box}.dpgf-section{border-bottom:1px solid var(--color-divider);width:100%;box-sizing:border-box;position:relative}.dpgf-section.dpgf-dragging{opacity:.4;pointer-events:none}.dpgf-section.dpgf-drop-before,.dpgf-section.dpgf-drop-after{position:relative}.dpgf-drop-indicator{position:absolute;left:0;right:0;height:3px;background:var(--color-accent);z-index:100;pointer-events:none;box-shadow:0 0 8px var(--color-accent-shadow),0 0 4px var(--color-accent);border-radius:2px;animation:dpgf-drop-pulse 1s ease-in-out infinite}@keyframes dpgf-drop-pulse{0%,to{opacity:1;transform:scaleY(1)}50%{opacity:.7;transform:scaleY(1.2)}}.dpgf-drop-indicator.dpgf-drop-before{top:-2px}.dpgf-drop-indicator.dpgf-drop-after{bottom:-2px}.dpgf-section:last-child{border-bottom:none}.dpgf-drag-handle{display:flex;align-items:center;justify-content:center;width:16px;height:16px;cursor:move;color:var(--color-body-text);opacity:.5;flex-shrink:0;transition:opacity .2s}.dpgf-drag-handle:hover{opacity:1;color:var(--color-accent)}.dpgf-drag-handle:active{cursor:grabbing}.dpgf-checkbox{width:14px;height:14px;cursor:pointer;flex-shrink:0;accent-color:var(--color-accent)}.dpgf-section-header{display:flex;align-items:center;gap:8px;padding:10px 16px 10px 32px;cursor:pointer;transition:border-color .2s;font-weight:500;width:100%;box-sizing:border-box;position:relative;background:var(--dpgf-section-bg);border-left:3px solid transparent}.dpgf-section-header:hover{border-left-color:var(--color-accent)}.dpgf-section-number{font-family:var(--font-family-number);font-size:12px;font-weight:600;margin-right:8px;flex-shrink:0}.dpgf-section-title{flex:1;font-size:13px;color:var(--color-body-text)}.dpgf-section-montant{font-family:var(--font-family-number);font-size:12px;font-weight:600;color:var(--color-accent);min-width:120px;text-align:right}.dpgf-section-content{border-top:1px solid var(--color-divider);background:var(--dpgf-section-content-bg);width:100%;box-sizing:border-box}.dpgf-post{border-bottom:1px solid var(--color-divider);width:100%;box-sizing:border-box;position:relative}.dpgf-post.dpgf-dragging{opacity:.4;pointer-events:none}.dpgf-post.dpgf-drop-before,.dpgf-post.dpgf-drop-after{position:relative}.dpgf-post:last-child{border-bottom:none}.dpgf-post-header{display:grid;grid-template-columns:16px 14px 20px 2fr 80px 60px 100px 50px 120px 40px;gap:8px;align-items:center;padding:10px 16px 10px 40px;cursor:pointer;transition:border-color .2s;font-size:12px;width:100%;box-sizing:border-box;position:relative;background:var(--dpgf-post-bg);border-left:3px solid transparent}.dpgf-post-header:hover{border-left-color:var(--color-accent)}.dpgf-post-header.selected{background:var(--dpgf-selected-bg)!important;border-left:3px solid var(--color-accent)}.dpgf-post-intitule-wrapper{display:flex;flex-direction:column;gap:2px;text-align:left}.dpgf-post-intitule{color:var(--color-body-text);font-weight:500;line-height:1.3}.dpgf-post-number{font-family:var(--font-family-number);font-size:11px;font-weight:600;margin-right:4px}.dpgf-post-localisation{color:var(--color-body-text);opacity:.7;font-size:11px;line-height:1.2}.dpgf-post-quantite{font-family:var(--font-family-number);color:var(--color-body-text);text-align:right;padding-right:4px}.dpgf-post-unite{color:var(--color-body-text);opacity:.7;font-size:11px;text-align:right;padding-right:4px}.dpgf-post-prix,.dpgf-post-tva{font-family:var(--font-family-number);color:var(--color-body-text);text-align:right;font-size:11px;padding-right:4px}.dpgf-post-montant{font-family:var(--font-family-number);font-weight:600;color:var(--color-accent);text-align:right;padding-right:4px}.dpgf-souspostes{border-top:1px solid var(--color-divider);background:var(--dpgf-souspostes-bg);padding-left:48px;width:100%;box-sizing:border-box}.dpgf-sousposte{display:grid;grid-template-columns:16px 14px 2fr 80px 60px 100px 50px 120px 40px;gap:8px;align-items:center;padding:8px 16px;border-bottom:1px solid var(--color-divider);font-size:11px;width:100%;box-sizing:border-box;position:relative;background:var(--dpgf-sousposte-bg)}.dpgf-sousposte.dpgf-dragging{opacity:.4;pointer-events:none}.dpgf-sousposte.dpgf-drop-before,.dpgf-sousposte.dpgf-drop-after{position:relative}.dpgf-sousposte:last-child{border-bottom:none}.dpgf-sousposte-intitule-wrapper{display:flex;flex-direction:column;gap:2px;text-align:left;padding-left:8px}.dpgf-sousposte-intitule{color:var(--color-body-text);opacity:.8;line-height:1.3}.dpgf-sousposte-number{font-family:var(--font-family-number);font-size:10px;font-weight:600;margin-right:4px}.dpgf-sousposte-localisation{color:var(--color-body-text);opacity:.6;font-size:10px;line-height:1.2}.dpgf-sousposte-quantite{font-family:var(--font-family-number);color:var(--color-body-text);text-align:right;padding-right:4px}.dpgf-sousposte-unite{color:var(--color-body-text);opacity:.7;text-align:right;padding-right:4px}.dpgf-sousposte-prix,.dpgf-sousposte-tva{font-family:var(--font-family-number);color:var(--color-body-text);text-align:right;padding-right:4px}.dpgf-sousposte-montant{font-family:var(--font-family-number);font-weight:600;color:var(--color-accent);text-align:right;padding-right:4px}.dpgf-add-buttons-group{display:flex;gap:8px;margin:4px 0 8px}.dpgf-add-button{display:flex;align-items:center;gap:4px;padding:4px 8px;background-color:transparent;color:var(--color-body-text);border:1px dashed var(--color-divider);border-radius:4px;font-size:11px;font-weight:400;cursor:pointer;transition:all .2s;opacity:.6;width:fit-content}.dpgf-add-button:hover{opacity:1;border-color:var(--color-accent);color:var(--color-accent);background-color:rgba(var(--color-accent-rgb),.05)}.dpgf-edit-button{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;margin-left:auto;background-color:transparent;color:var(--color-body-text);border:1px solid var(--color-divider);border-radius:4px;cursor:pointer;transition:all .2s;opacity:.6}.dpgf-edit-button:hover{opacity:1;background-color:var(--color-bg-secondary);border-color:var(--color-accent);color:var(--color-accent)}.dpgf-section-header,.dpgf-post-header,.dpgf-sousposte{position:relative}.dpgf-edit-form{display:flex;flex-direction:column;gap:16px}.dpgf-edit-field{display:flex;flex-direction:column;gap:6px}.dpgf-edit-field label{font-size:13px;font-weight:500;color:var(--color-body-text)}.dpgf-edit-field input{padding:8px 12px;border:1px solid var(--color-divider);border-radius:4px;font-size:14px;font-family:inherit;background-color:var(--color-bg);color:var(--color-body-text);transition:border-color .2s}.dpgf-edit-field input:focus{outline:none;border-color:var(--color-accent)}.dpgf-edit-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.dpgf-edit-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:8px;padding-top:16px;border-top:1px solid var(--color-divider)}.dpgf-edit-actions button{padding:10px 20px;border:1px solid var(--color-divider);border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.dpgf-edit-actions button[type=button]{background-color:transparent;color:var(--color-body-text)}.dpgf-edit-actions button[type=button]:hover{background-color:var(--color-bg-secondary)}.dpgf-edit-actions button[type=submit]{background-color:var(--color-accent);color:#fff;border-color:var(--color-accent)}.dpgf-edit-actions button[type=submit]:hover{background-color:var(--color-accent-dark)}.cctp-preview{padding:18px 20px;height:100%;overflow-y:auto}.cctp-preview-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:2px solid var(--color-divider)}.cctp-preview-header h3{font-size:18px;font-weight:600;color:var(--color-body-text);margin:0}.cctp-preview-count{font-size:11px;color:var(--color-accent);font-weight:500;padding:4px 10px;background:rgba(var(--color-accent-rgb),.1);border-radius:var(--radius-small)}.cctp-preview-empty{text-align:center;padding:48px 24px;color:var(--color-body-text);opacity:.6}.cctp-preview-content{display:flex;flex-direction:column;gap:16px}.cctp-preview-lot-group{display:flex;flex-direction:column;gap:8px}.cctp-preview-lot-header{display:flex;align-items:center;gap:10px;padding:8px 12px;background:var(--color-sidebar-secondary-background);border-radius:var(--radius-small);font-size:13px}.cctp-preview-lot-code{font-family:var(--font-family-number);font-size:12px;font-weight:600;min-width:36px}.cctp-preview-lot-label{font-size:13px;color:var(--color-body-text);font-weight:500}.cctp-preview-documents{display:flex;flex-direction:column;gap:6px;padding-left:12px}.cctp-preview-document{display:flex;align-items:center;gap:10px;padding:8px 12px;background:var(--color-sidebar-secondary-background);border:1px solid var(--color-divider);border-radius:var(--radius-small);cursor:pointer;transition:all .2s;font-size:12px}.cctp-preview-document:hover{border-color:var(--color-accent);background:var(--color-hover-light)}.cctp-preview-document.active{border-color:var(--color-accent);background:rgba(var(--color-accent-rgb),.1)}.cctp-preview-document-title{flex:1;color:var(--color-body-text)}.cctp-preview-detail{margin-top:20px;padding-top:20px;border-top:2px solid var(--color-divider)}.cctp-preview-detail-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.cctp-preview-detail-header h4{font-size:15px;font-weight:600;color:var(--color-body-text);margin:0;display:flex;align-items:center}.cctp-preview-detail-code{font-family:var(--font-family-number);font-size:13px;font-weight:600;margin-right:8px}.cctp-preview-close{background:transparent;border:none;color:var(--color-body-text);font-size:24px;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;opacity:.6;transition:opacity .2s}.cctp-preview-close:hover{opacity:1}.cctp-preview-detail-content{display:flex;flex-direction:column;gap:16px}.cctp-preview-section{padding:12px;background:var(--color-sidebar-secondary-background);border-radius:var(--radius-small);border:1px solid var(--color-divider)}.cctp-preview-section-title{font-size:13px;font-weight:600;color:var(--color-body-text);margin:0 0 8px}.cctp-preview-section-content{font-size:12px;color:var(--color-body-text);opacity:.8;line-height:1.6}.cctp-preview-section-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.cctp-edit-button{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background-color:transparent;color:var(--color-body-text);border:1px solid var(--color-divider);border-radius:4px;cursor:pointer;transition:all .2s;opacity:.6;flex-shrink:0}.cctp-edit-button:hover{opacity:1;background-color:var(--color-bg-secondary);border-color:var(--color-accent);color:var(--color-accent)}.cctp-edit-content{display:flex;flex-direction:column;gap:12px;margin-top:8px}.cctp-edit-textarea{width:100%;min-height:120px;padding:12px;border:1px solid var(--color-divider);border-radius:4px;font-size:14px;font-family:inherit;background-color:var(--color-bg);color:var(--color-body-text);line-height:1.6;resize:vertical;transition:border-color .2s;box-sizing:border-box}.cctp-edit-textarea:focus{outline:none;border-color:var(--color-accent)}.cctp-edit-actions{display:flex;justify-content:flex-end;gap:8px}.cctp-edit-save,.cctp-edit-cancel{display:flex;align-items:center;gap:6px;padding:8px 16px;border:1px solid var(--color-divider);border-radius:4px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.cctp-edit-save{background-color:var(--color-accent);color:#fff;border-color:var(--color-accent)}.cctp-edit-save:hover{background-color:var(--color-accent-dark)}.cctp-edit-cancel{background-color:transparent;color:var(--color-body-text)}.cctp-edit-cancel:hover{background-color:var(--color-bg-secondary)}.frappe-gantt-container,.frappe-gantt-container.gantt-container,.gantt-container{width:100%;height:600px!important;min-height:600px;overflow:auto;position:relative}.frappe-gantt-container,.frappe-gantt-container.gantt-container,.gantt-container{--gv-grid-height: 600px}.frappe-gantt .bar-wrapper .bar{height:6px!important;border-radius:3px}.frappe-gantt .bar-wrapper .bar.gantt-realization-prevision{fill:var(--planning-realization-prevision)!important}.frappe-gantt .bar-wrapper .bar.gantt-realization-reality{fill:var(--planning-realization-reality)!important}.frappe-gantt .bar-wrapper .bar.gantt-validation-prevision{fill:var(--planning-validation-prevision)!important}.frappe-gantt .bar-wrapper .bar.gantt-validation-reality{fill:var(--planning-validation-reality)!important}.frappe-gantt .bar-wrapper .bar.gantt-instruction-prevision{fill:var(--planning-instruction-prevision)!important}.frappe-gantt .bar-wrapper .bar.gantt-instruction-reality{fill:var(--planning-instruction-reality)!important}.frappe-gantt .bar-wrapper .bar.gantt-prevision{fill:var(--planning-construction-prevision)!important}.frappe-gantt .bar-wrapper .bar.gantt-reality{fill:var(--planning-construction-reality)!important}.frappe-gantt .bar-wrapper .bar.gantt-works-level-0{fill:#4a86e8!important}.frappe-gantt .bar-wrapper .bar.gantt-works-level-1{fill:#6aa84f!important}.frappe-gantt .bar-wrapper .bar.gantt-works-level-2{fill:#e69138!important}.planning-legend-bar.gantt-realization-prevision{background-color:var(--planning-realization-prevision);height:6px;width:24px;border-radius:3px}.planning-legend-bar.gantt-realization-reality{background-color:var(--planning-realization-reality);height:6px;width:24px;border-radius:3px}.planning-legend-bar.gantt-validation-prevision{background-color:var(--planning-validation-prevision);height:6px;width:24px;border-radius:3px}.planning-legend-bar.gantt-validation-reality{background-color:var(--planning-validation-reality);height:6px;width:24px;border-radius:3px}.planning-legend-bar.gantt-instruction-prevision{background-color:var(--planning-instruction-prevision);height:6px;width:24px;border-radius:3px}.planning-legend-bar.gantt-instruction-reality{background-color:var(--planning-instruction-reality);height:6px;width:24px;border-radius:3px}.document-naming-panel{margin-top:.75rem;padding:.75rem;border:1px solid var(--color-divider);border-radius:var(--radius-medium);background:var(--color-body-background)}.document-naming-mode{display:flex;gap:1rem;margin-bottom:.75rem;font-size:.85rem}.document-naming-fields{display:grid;grid-template-columns:1fr 1fr;gap:.5rem .75rem}.document-naming-fields label{display:flex;flex-direction:column;gap:.25rem;font-size:.8rem}.naming-preview{margin-top:.75rem;padding:.5rem .65rem;border-radius:6px;display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.naming-preview.is-compliant{border:1px solid rgba(34,197,94,.45);background:#22c55e14}.naming-preview.is-non-compliant{border:1px solid rgba(248,113,113,.45);background:#f8717114}.naming-preview-value{flex:1 1 100%;font-size:.8rem;word-break:break-all}.naming-status.ok{color:#4ade80;font-size:.75rem;font-weight:600}.naming-status.ko{color:#f87171;font-size:.75rem;font-weight:600}.naming-copy-btn{font-size:.75rem;padding:.2rem .5rem;border-radius:4px;border:1px solid var(--color-divider);background:transparent;color:inherit;cursor:pointer}.naming-xref-warning{grid-column:1 / -1;font-size:.75rem;color:#fbbf24;margin:0}.compta-view{padding:1.5rem}.compta-view-header h1{margin:0 0 .35rem}.compta-section{margin-top:1.5rem}.compta-list{list-style:none;padding:0;margin:.5rem 0 0}.compta-list li{padding:.5rem 0;border-bottom:1px solid var(--color-divider)}.compta-muted{color:var(--color-text-muted, #9ca3af);font-size:.85rem}.compta-error{color:#f87171}.compta-header-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.compta-btn{font-size:.8rem;padding:.35rem .75rem;border-radius:6px;border:1px solid var(--color-divider);background:var(--color-surface, #1f2937);color:inherit;cursor:pointer}.compta-btn:disabled{opacity:.45;cursor:not-allowed}.compta-btn--ghost{background:transparent}.compta-qonto-badge{font-size:.75rem;padding:.2rem .5rem;border-radius:4px}.compta-qonto-badge.is-ok{border:1px solid rgba(34,197,94,.4);color:#4ade80}.compta-qonto-badge.is-off{border:1px solid var(--color-divider);color:var(--color-text-muted, #9ca3af)}.compta-table{width:100%;border-collapse:collapse;font-size:.85rem;margin-top:.5rem}.compta-table th,.compta-table td{text-align:left;padding:.45rem .5rem;border-bottom:1px solid var(--color-divider)}.compta-table--compact th,.compta-table--compact td{padding:.3rem .4rem}.compta-empty{color:var(--color-text-muted, #9ca3af);font-style:italic}.compta-fee-card{margin-bottom:1.25rem;padding:.75rem 1rem;border:1px solid var(--color-divider);border-radius:var(--radius-medium)}.compta-fee-card header{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem;margin-bottom:.5rem}.compta-fee-card h3{margin:0;font-size:1rem}.compta-section-toolbar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.5rem}.compta-section-toolbar h2{margin:0}.compta-section-toolbar-actions{display:flex;align-items:center;gap:.5rem}.compta-refresh-meta{font-size:.75rem;white-space:nowrap}.compta-sandbox-banner{margin-bottom:1rem;padding:.6rem .85rem;border-radius:8px;border:1px solid rgba(56,189,248,.35);background:#38bdf814;font-size:.85rem;color:#7dd3fc}.compta-demo-tag{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:#fbbf24;opacity:.9}.compta-operations-summary{margin:0 0 .5rem;font-size:.8rem}.compta-qonto-hint{margin-top:1.5rem;padding:.75rem 1rem;border-radius:8px;border:1px dashed var(--color-divider);font-size:.8rem}.compta-view-header{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;margin-bottom:1rem}.project-status-banner{margin-bottom:1rem;padding:.85rem 1rem;border-radius:var(--radius-large);border:1px solid color-mix(in srgb,var(--project-status-color, var(--color-accent)) 45%,transparent);background:color-mix(in srgb,var(--project-status-color, var(--color-accent)) 12%,transparent)}.project-status-banner-main{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem 1rem}.project-status-banner-label{font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;opacity:.8}.project-status-banner-select{min-width:220px;background:var(--color-body-background);border:1px solid var(--color-divider);border-radius:var(--radius-medium);color:var(--color-body-text);padding:.45rem .6rem;font:inherit}.project-status-banner-chip{font-size:.8rem;padding:.2rem .55rem;border-radius:999px;background:var(--color-body-background);border:1px solid var(--color-divider)}.project-status-banner-meta{margin:.55rem 0 0;font-size:.85rem;opacity:.9}.project-header-meta{display:grid;grid-template-columns:auto 1fr;gap:.75rem 1.25rem;align-items:stretch;margin-top:.65rem}.project-header-meta-col--status{display:flex;align-items:stretch;align-self:stretch}.project-header-meta .project-status-banner-chip{display:inline-flex;align-items:center;justify-content:center;align-self:stretch;height:100%;min-height:100%;padding:.35rem .7rem;border-radius:var(--radius-medium);border:1px solid color-mix(in srgb,var(--project-status-color, var(--color-accent)) 45%,transparent);background:color-mix(in srgb,var(--project-status-color, var(--color-accent)) 12%,transparent);font-size:.8rem;font-weight:600;line-height:1.25;white-space:nowrap}.project-header-meta-col--details{display:flex;flex-direction:column;justify-content:center}.project-header-meta-line{margin:0 0 .35rem;font-size:.88rem;opacity:.9}.project-header-meta-line:last-child{margin-bottom:0}.project-progress-empty{margin:0;font-size:.9rem;opacity:.85}.project-progress-cta{margin-top:.65rem;border:1px solid var(--color-divider);background:transparent;color:var(--color-body-text);border-radius:var(--radius-medium);padding:.45rem .85rem;cursor:pointer;font:inherit}.project-progress-cta:hover{background:var(--color-hover-light)}.project-progress-hint{margin:0 0 .65rem;font-size:.82rem;opacity:.8}.project-progress-phase.no-bar .project-progress-bar--placeholder{height:4px;background:color-mix(in srgb,var(--color-divider) 60%,transparent);border-radius:999px}.user-menu-empty{margin:0;font-size:.82rem;opacity:.75}.user-menu-devices li.is-current{font-weight:600}.project-finances-section{display:flex;flex-direction:column;gap:1.25rem}.project-form-program-destinations{margin-top:.75rem;padding:1rem 1.15rem;border:1px solid var(--color-border, rgba(255, 255, 255, .12));border-radius:10px;display:flex;flex-direction:column;gap:1.25rem}.project-form-program-destinations .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.program-destination-change-toggle{margin:0}.program-destination-after-works{display:flex;flex-direction:column;gap:1rem;padding-top:1rem;margin-top:.25rem;border-top:1px dashed var(--color-border, rgba(255, 255, 255, .12))}.catalog-radio-field{display:flex;flex-direction:column;gap:.5rem}.catalog-radio-field-label{font-size:.85rem;font-weight:600}.categorized-radio-picker{border:none;margin:0;padding:0;min-inline-size:0}.categorized-radio-picker--scroll{max-height:16rem;overflow-y:auto;padding-right:.25rem}.catalog-radio-group+.catalog-radio-group{margin-top:.85rem}.catalog-radio-group-title{margin:0 0 .4rem;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;opacity:.72}.catalog-radio-group-options{display:flex;flex-direction:column;gap:.35rem}.catalog-radio-option{display:flex;align-items:flex-start;gap:.55rem;padding:.5rem .65rem;border:1px solid var(--color-border, rgba(255, 255, 255, .12));border-radius:8px;cursor:pointer;transition:border-color .15s,background .15s}.catalog-radio-option:hover{background:var(--color-surface-elevated, rgba(255, 255, 255, .04))}.catalog-radio-option.is-selected{border-color:var(--color-accent, #5b8def);background:color-mix(in srgb,var(--color-accent, #5b8def) 12%,transparent)}.catalog-radio-option input[type=radio]{margin-top:.2rem;flex-shrink:0}.catalog-radio-option-body{display:flex;flex-direction:column;gap:.15rem;min-width:0}.catalog-radio-option-title{font-size:.88rem;font-weight:600;line-height:1.3}.catalog-radio-option-subtitle{font-size:.78rem;line-height:1.35;opacity:.75}.catalog-radio-field--operation-type .categorized-radio-picker{max-height:none}.catalog-picker-field{display:flex;flex-direction:column;gap:.35rem}.catalog-picker-field.has-error .catalog-picker-field-trigger{border-color:var(--color-danger, #e05252)}.catalog-picker-field-label{font-size:.85rem;font-weight:600}.catalog-picker-field-row{display:flex;align-items:stretch;gap:.4rem}.catalog-picker-field-trigger{flex:1;display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.55rem .7rem;border:1px solid var(--color-border, rgba(255, 255, 255, .12));border-radius:8px;background:var(--color-surface-elevated, rgba(255, 255, 255, .03));color:inherit;cursor:pointer;text-align:left;min-height:2.75rem}.catalog-picker-field-trigger:hover{border-color:var(--color-accent, #5b8def)}.catalog-picker-field-trigger-content{display:flex;flex-direction:column;gap:.1rem;min-width:0}.catalog-picker-field-category{font-size:.72rem;text-transform:uppercase;letter-spacing:.03em;opacity:.65}.catalog-picker-field-title{font-size:.88rem;font-weight:600;line-height:1.3}.catalog-picker-field-subtitle{font-size:.76rem;opacity:.75;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.catalog-picker-field-placeholder{font-size:.88rem;opacity:.55}.catalog-picker-field-trigger-action{display:inline-flex;align-items:center;gap:.2rem;font-size:.8rem;font-weight:600;color:var(--color-accent, #5b8def);white-space:nowrap;flex-shrink:0}.catalog-picker-field-clear{border:1px solid var(--color-border, rgba(255, 255, 255, .12));border-radius:8px;background:transparent;color:inherit;width:2.25rem;cursor:pointer;font-size:1.1rem;line-height:1;opacity:.7}.catalog-picker-field-clear:hover{opacity:1}.catalog-picker-field-error{margin:0;font-size:.82rem;color:var(--color-danger, #e05252)}.catalog-picker-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2500;background:#0000008c;display:flex;align-items:center;justify-content:center;padding:1rem}.catalog-picker-modal{width:560px;height:520px;max-width:calc(100vw - 2rem);max-height:calc(100vh - 2rem);display:flex;flex-direction:column;border-radius:12px;background:var(--color-surface, #1a1d24);border:1px solid var(--color-border, rgba(255, 255, 255, .12));box-shadow:0 16px 48px #00000073;overflow:hidden}.catalog-picker-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;padding:.85rem 1rem;border-bottom:1px solid var(--color-border, rgba(255, 255, 255, .12));flex-shrink:0}.catalog-picker-modal-heading{display:flex;flex-direction:column;gap:.3rem;min-width:0}.catalog-picker-modal-hint{margin:0;font-size:.82rem;line-height:1.35;font-weight:500;color:var(--color-accent, #5b8def)}.catalog-picker-field-hint{margin:0 0 .35rem;font-size:.8rem;line-height:1.35;opacity:.75}.catalog-picker-modal-footer{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.75rem 1rem;border-top:1px solid var(--color-border, rgba(255, 255, 255, .12));flex-shrink:0}.catalog-picker-modal-footer-count{margin:0;font-size:.82rem;opacity:.75}.catalog-picker-modal-header h3{margin:0;font-size:1rem}.catalog-picker-modal-close{border:none;background:transparent;color:inherit;cursor:pointer;font-size:1.1rem;opacity:.75;padding:.25rem}.catalog-picker-modal-close:hover{opacity:1}.catalog-picker-modal-body{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding:.75rem;display:block}.catalog-picker-modal-body>.catalog-picker-empty-option,.catalog-picker-modal-body>.catalog-picker-accordion{margin-bottom:.5rem}.catalog-picker-modal-body>.catalog-picker-empty-option:last-child,.catalog-picker-modal-body>.catalog-picker-accordion:last-child{margin-bottom:0}.catalog-picker-empty-option{width:100%;text-align:left;padding:.55rem .7rem;border:1px dashed var(--color-border, rgba(255, 255, 255, .18));border-radius:8px;background:transparent;color:inherit;cursor:pointer;font-size:.88rem}.catalog-picker-empty-option.is-selected,.catalog-picker-empty-option:hover{border-color:var(--color-accent, #5b8def);background:color-mix(in srgb,var(--color-accent, #5b8def) 10%,transparent)}.catalog-picker-accordion{border:1px solid var(--color-border, rgba(255, 255, 255, .12));border-radius:8px}.catalog-picker-accordion-summary{display:flex;align-items:center;justify-content:space-between;gap:.5rem;width:100%;padding:.6rem .75rem;border:none;cursor:pointer;font-weight:600;font-size:.85rem;background:var(--color-surface-elevated, rgba(255, 255, 255, .04));color:inherit;text-align:left;border-radius:8px}.catalog-picker-accordion.is-open .catalog-picker-accordion-summary{border-radius:8px 8px 0 0}.catalog-picker-accordion-chevron{flex-shrink:0;font-size:1rem;opacity:.65;transition:transform .2s ease}.catalog-picker-accordion.is-open .catalog-picker-accordion-chevron{transform:rotate(180deg)}.catalog-picker-accordion-summary:hover{background:color-mix(in srgb,var(--color-accent, #5b8def) 8%,transparent)}.catalog-picker-accordion-title{flex:1;line-height:1.35;min-width:0}.catalog-picker-accordion-count{font-size:.75rem;opacity:.6;font-weight:500}.catalog-picker-accordion-content{display:flex;flex-direction:column;gap:.35rem;padding:.5rem;border-top:1px solid var(--color-border, rgba(255, 255, 255, .08))}.catalog-picker-option{display:grid!important;grid-template-columns:1.125rem minmax(0,1fr);grid-template-rows:auto auto;flex-direction:unset!important;column-gap:.55rem;row-gap:.1rem;padding:.45rem .55rem;border:1px solid transparent;border-radius:6px;cursor:pointer;align-items:center;font-size:inherit;color:inherit;margin:0}.catalog-picker-option:not(.has-subtitle){grid-template-rows:auto}.catalog-picker-option.has-subtitle{align-items:start}.catalog-picker-option:hover{background:var(--color-surface-elevated, rgba(255, 255, 255, .04))}.catalog-picker-option.is-selected{border-color:var(--color-accent, #5b8def);background:color-mix(in srgb,var(--color-accent, #5b8def) 12%,transparent)}.catalog-picker-option input[type=radio],.catalog-picker-option input[type=checkbox]{grid-column:1;grid-row:1;margin:0;padding:0;width:1.125rem;height:1.125rem;flex-shrink:0;align-self:center;justify-self:center;-webkit-appearance:auto;-moz-appearance:auto;appearance:auto;background:transparent;border:none;box-shadow:none}.catalog-picker-option.has-subtitle input[type=radio],.catalog-picker-option.has-subtitle input[type=checkbox]{align-self:start;margin-top:.1rem}.catalog-picker-option-title{grid-column:2;grid-row:1;font-size:.86rem;font-weight:600;line-height:1.3;min-width:0}.catalog-picker-option-subtitle{grid-column:2;grid-row:2;font-size:.76rem;line-height:1.35;opacity:.75;min-width:0}.project-form-program-destinations--programme{border:none;padding:0;margin:0;gap:1.5rem}.project-programme-section{display:flex;flex-direction:column;gap:1.5rem;padding:.25rem 0 2rem;max-width:52rem}.project-programme-header h2{margin:0 0 .4rem;font-size:1.35rem}.project-programme-header p{margin:0;font-size:.92rem;line-height:1.5;color:var(--color-body-text);opacity:.72}.project-programme-loading{margin:0;padding:1rem 0;opacity:.7}.project-programme-alert{margin:0;padding:.65rem .85rem;border-radius:8px;font-size:.9rem;line-height:1.45}.project-programme-alert--error{background:#e052521f;border:1px solid rgba(224,82,82,.35)}.project-programme-alert--success{background:#3d9a6a1f;border:1px solid rgba(61,154,106,.35);color:var(--color-success, #3d9a6a)}.project-programme-layout{display:flex;flex-direction:column;gap:1.5rem}.project-programme-panel{border:1px solid var(--color-border, rgba(255, 255, 255, .12));border-radius:12px;background:var(--color-surface-elevated, rgba(255, 255, 255, .02));overflow:hidden}.project-programme-panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1.15rem 1.35rem;border-bottom:1px solid var(--color-border, rgba(255, 255, 255, .1))}.project-programme-panel-header h3{margin:0 0 .35rem;font-size:1.05rem;font-weight:600}.project-programme-panel-header p{margin:0;font-size:.88rem;line-height:1.45;opacity:.72}.project-programme-status{flex-shrink:0;padding:.25rem .6rem;border-radius:999px;font-size:.75rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase;background:#ffffff0f;opacity:.8}.project-programme-status--saved{background:#3d9a6a26;color:var(--color-success, #3d9a6a);opacity:1}.project-programme-panel-body{display:flex;flex-direction:column;gap:1.25rem;padding:1.35rem}.project-programme-panel-hint{margin:0;font-size:.88rem;line-height:1.5;opacity:.72}.project-programme-panel-footer{display:flex;justify-content:flex-end;padding:1rem 1.35rem;border-top:1px solid var(--color-border, rgba(255, 255, 255, .1));background:#00000014}.program-destinations-intro{margin:0;font-size:.88rem;opacity:.75}.programme-step{display:flex;flex-direction:column;gap:1rem}.programme-step+.programme-step{padding-top:1.35rem;border-top:1px solid var(--color-border, rgba(255, 255, 255, .1))}.programme-step-title{margin:0;font-size:.8rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;opacity:.65}.programme-step-fields{display:flex;flex-direction:column;gap:1.15rem}.programme-step-fields--nested{margin-top:.25rem;padding:1.15rem 1.2rem;border-radius:10px;border:1px solid var(--color-border, rgba(255, 255, 255, .1));background:#0000001f}.programme-step--toggle.is-expanded .programme-toggle-row{margin-bottom:.15rem}.programme-toggle-row{display:flex;align-items:flex-start;gap:.75rem;margin:0;padding:.85rem 1rem;border-radius:10px;border:1px solid var(--color-border, rgba(255, 255, 255, .1));background:#ffffff08;cursor:pointer;transition:border-color .15s,background .15s}.programme-toggle-row:has(input:checked){border-color:var(--color-accent, #5b8def);background:#5b8def14}.programme-toggle-row input{margin-top:.2rem;flex-shrink:0}.programme-toggle-copy{display:flex;flex-direction:column;gap:.25rem;min-width:0}.programme-toggle-title{font-size:.92rem;font-weight:600;line-height:1.35}.programme-toggle-hint{font-size:.82rem;line-height:1.4;opacity:.68}.programme-field-label{display:flex;flex-direction:column;gap:.5rem;font-size:.85rem;font-weight:600;color:var(--color-body-text)}.programme-field-label textarea,.programme-field-label input{font-weight:400;background:var(--color-body-background);border:1px solid var(--color-divider);border-radius:var(--radius-medium, 8px);padding:.65rem .75rem;color:var(--color-body-text);font-size:.9rem;line-height:1.45}.programme-field-label textarea{resize:vertical;min-height:4.5rem}.programme-field-label textarea:focus,.programme-field-label input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-shadow, rgba(91, 141, 239, .25))}.project-form-program-destinations--flat{margin:0;padding:0;border:none;background:none;gap:1.25rem}.project-form-program-destinations--flat .programme-step-fields--nested{margin:0;padding:.25rem 0 0;border:none;background:none}.project-form-program-destinations--flat .programme-toggle-row{display:flex;flex-direction:row;align-items:center;gap:10px;padding:0;border:none;background:none}.project-form-program-destinations--flat .programme-toggle-row:has(input:checked){border:none;background:none}.project-form-program-destinations--flat .programme-toggle-row input[type=checkbox]{width:18px;height:18px;margin:0;padding:0;flex-shrink:0}.project-form-program-destinations--flat .programme-toggle-copy{display:flex;flex-direction:row;flex-wrap:wrap;align-items:baseline;gap:.2rem .65rem;min-width:0}.project-form-program-destinations--flat .program-regulatory-block{padding:0;border:none;background:none}.project-form-program-destinations--programme .catalog-picker-field{gap:.5rem}.project-form-program-destinations--programme .catalog-picker-field-label{font-size:.85rem;font-weight:600}.program-regulatory-block{display:flex;flex-direction:column;gap:.85rem;padding:1rem 1.1rem;border-radius:10px;border:1px solid var(--color-border, rgba(255, 255, 255, .12));background:#ffffff0a}.program-regulatory-block-header{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap}.program-regulatory-badge{display:inline-flex;align-items:center;padding:.2rem .55rem;border-radius:6px;font-size:.72rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;background:var(--color-accent, #5b8def);color:#fff}.program-regulatory-block--logement .program-regulatory-badge{background:#6b8f71}.program-regulatory-block--tertiaire .program-regulatory-badge{background:#8a7b6b}.program-regulatory-block-title{font-size:.88rem;font-weight:600;line-height:1.35}.program-regulatory-block-value{margin:0;font-size:.95rem;font-weight:600;line-height:1.4}.program-regulatory-block-hint{margin:0;font-size:.84rem;line-height:1.45;opacity:.72}.project-form-program-destinations--flat .programme-step+.programme-step{padding-top:.35rem;border-top:none}.project-form-program-destinations--flat .program-regulatory-block{padding:0;border:none;border-radius:0;background:none}.housing-family-fields{display:flex;flex-direction:column;gap:.65rem}.housing-family-fields-label{font-size:.85rem;font-weight:600}.housing-family-fields-row{display:flex;gap:.65rem;align-items:stretch;flex-wrap:wrap}.housing-family-fields-row select{flex:1 1 14rem;min-width:0;padding:.6rem .75rem;border:1px solid var(--color-divider);border-radius:var(--radius-medium, 8px);background:var(--color-body-background);color:var(--color-body-text);font-size:.9rem}.housing-family-wizard-btn{flex-shrink:0;align-self:stretch}.housing-family-hint{margin:0;display:flex;flex-direction:column;gap:.2rem;font-size:.82rem;line-height:1.45}.housing-family-hint strong{font-size:.88rem}.housing-family-hint--muted{opacity:.68}.project-programme-erp-catalog{margin:0 1.35rem .5rem;padding-bottom:.5rem}.project-programme-erp-catalog summary{cursor:pointer;font-size:.82rem;opacity:.7;padding:.35rem 0;-webkit-user-select:none;user-select:none}.project-programme-erp-catalog summary:hover{opacity:1}.project-programme-erp-ref{margin:.65rem 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:.4rem;max-height:11rem;overflow-y:auto;font-size:.82rem}.project-programme-erp-ref li{display:flex;gap:.5rem;line-height:1.4;padding:.2rem 0}.project-programme-erp-ref strong{min-width:1.5rem}.project-programme-sync-btn{align-self:flex-start}.project-programme-parcel-list{margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:.55rem}.project-programme-parcel-tag{display:inline-flex;align-items:center;gap:.45rem;padding:.45rem .65rem;border-radius:8px;border:1px solid var(--color-border, rgba(255, 255, 255, .12));background:#ffffff0d;font-size:.85rem;line-height:1.3}.project-programme-parcel-ref{font-weight:600;letter-spacing:.02em}.project-programme-parcel-area{font-size:.78rem;opacity:.75}.project-programme-parcel-source{font-size:.78rem;opacity:.6;text-transform:lowercase}.project-programme-parcel-remove{border:none;background:transparent;color:inherit;cursor:pointer;font-size:1.15rem;line-height:1;padding:0 .15rem;margin-left:.15rem;opacity:.55}.project-programme-parcel-remove:hover{opacity:1}.project-programme-parcel-add{display:flex;align-items:flex-end;gap:.75rem;flex-wrap:wrap;padding-top:.25rem}.project-programme-parcel-add-label{flex:1 1 16rem;margin:0}.project-programme-parcel-add input{width:100%}.housing-family-wizard-body{display:flex;flex-direction:column;gap:1.25rem}.housing-family-wizard-step{display:flex;flex-direction:column;gap:.85rem}.housing-family-wizard-question{margin:0;font-weight:600;line-height:1.45}.housing-family-wizard-actions{display:flex;flex-wrap:wrap;gap:.55rem}.housing-family-wizard-checklist{margin:0;padding-left:1.25rem;line-height:1.5}.housing-family-wizard-result{padding:.85rem 1rem;border-radius:8px;border:1px solid var(--color-divider);display:flex;flex-direction:column;gap:.35rem}.housing-family-wizard-reference summary{cursor:pointer;font-size:.88rem;opacity:.85}.housing-family-ref-table{width:100%;border-collapse:collapse;font-size:.82rem;margin-top:.65rem}.housing-family-ref-table th,.housing-family-ref-table td{border:1px solid var(--color-divider);padding:.45rem .55rem;text-align:left;vertical-align:top;line-height:1.4}.programme-territorial-actions{display:flex;flex-direction:column;gap:.65rem;align-items:flex-start}.programme-territorial-sources{margin:0;font-size:.8rem;line-height:1.45;opacity:.72}.programme-territorial-sources a{color:inherit;text-decoration:underline;text-underline-offset:2px}.programme-territorial-warnings{margin:0;padding:.65rem .85rem;list-style:none;border-radius:8px;background:#e0a03c1f;border:1px solid rgba(224,160,60,.35);font-size:.85rem;line-height:1.45}.programme-territorial-warnings li+li{margin-top:.35rem}.programme-territorial-block{display:flex;flex-direction:column;gap:.65rem;padding-top:.25rem}.programme-territorial-block+.programme-territorial-block{padding-top:1.15rem;border-top:1px solid var(--color-border, rgba(255, 255, 255, .1))}.programme-territorial-block h4{margin:0;font-size:.8rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;opacity:.7}.programme-territorial-empty{margin:0;font-size:.88rem;opacity:.65}.programme-territorial-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:.4rem;font-size:.9rem;line-height:1.45}.programme-territorial-muted{opacity:.72}.programme-territorial-parcel-grid{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(11rem,1fr));gap:.55rem}.programme-territorial-parcel-card{display:flex;flex-direction:column;gap:.2rem;padding:.65rem .75rem;border-radius:8px;border:1px solid var(--color-border, rgba(255, 255, 255, .12));font-size:.85rem;line-height:1.35}.programme-territorial-area{font-weight:600;color:var(--color-accent, #5b8def)}.programme-territorial-doc-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:.75rem}.programme-territorial-doc-list li{padding:.75rem .85rem;border-radius:8px;border:1px solid var(--color-border, rgba(255, 255, 255, .1));display:flex;flex-direction:column;gap:.35rem;font-size:.88rem;line-height:1.45}.programme-territorial-doc-head{display:flex;align-items:center;gap:.5rem}.programme-territorial-badge{font-size:.7rem;font-weight:700;padding:.15rem .45rem;border-radius:4px;background:#5b8def33;text-transform:uppercase}.programme-territorial-doc-list a,.programme-territorial-link{font-size:.84rem;color:var(--color-accent, #5b8def)}.programme-territorial-risk-grid{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(12rem,1fr));gap:.55rem}.programme-territorial-risk-grid li{display:flex;flex-direction:column;gap:.25rem;padding:.65rem .75rem;border-radius:8px;border:1px solid var(--color-border, rgba(255, 255, 255, .1));font-size:.82rem}.programme-territorial-risk-grid li span{opacity:.72}.programme-territorial-risk-grid li strong{font-size:.9rem}@media(max-width:900px){.project-programme-section{max-width:none}.project-programme-panel-header{flex-direction:column;align-items:stretch}.project-programme-panel-footer{justify-content:stretch}.project-programme-panel-footer .upload-primary{width:100%}.project-programme-parcel-add{flex-direction:column;align-items:stretch}.project-form-program-destinations .form-grid{grid-template-columns:1fr}}.project-finances-header h2{margin:0 0 .35rem}.project-finances-hint{margin:0;font-size:.85rem;opacity:.75}.project-finances-block h3{margin:0 0 .5rem;font-size:1rem}.project-finances-empty,.project-finances-error{margin:0;font-size:.9rem;opacity:.8}.project-finances-error{color:var(--color-danger)}.project-form-server-sync{margin-top:.75rem}.project-file-sync-hint{display:block;margin-top:.25rem;font-size:.75rem;opacity:.75}.project-file-sync-hint.is-error{color:var(--color-danger);opacity:1}.project-file-sync-btn{display:inline-flex;align-items:center;gap:6px;font-size:.8rem;padding:.35rem .65rem}.project-file-header-actions .project-file-sync-btn{padding:8px 12px}.project-file-refresh-spin{animation:project-file-spin .8s linear infinite}@keyframes project-file-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.project-folder-file{display:flex;align-items:center;gap:.5rem;padding:.2rem 0 .2rem 1.25rem;font-size:.85rem}.project-folder-file-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-folder-file-meta{font-size:.75rem;opacity:.65}.project-folder-missing{color:var(--color-warning);opacity:.6;font-size:.75rem}.project-folder-code{display:inline-block;margin-right:6px;padding:1px 6px;font-size:11px;font-weight:600;border-radius:var(--radius-small);background:rgba(var(--color-accent-rgb),.15);color:var(--color-accent)}.project-folder-file-count{margin-left:8px;font-size:11px;opacity:.65}.project-file-audit-badge{font-size:11px;padding:2px 8px;border-radius:var(--radius-small);border:1px solid var(--color-divider)}.project-file-audit-badge.is-ok{color:#3d9a5f;border-color:#3d9a5f66}.project-file-audit-badge.is-warn{color:#d4a017;border-color:#d4a01766}.project-file-count-badge{font-size:11px;opacity:.7}.project-folder-orphans-label{cursor:default;font-style:italic}.project-folder-separator{margin:.65rem 0 .25rem;padding:.35rem 0;border-top:1px solid rgba(255,255,255,.08)}.folder-compliance-list{max-height:240px;overflow:auto;margin:.5rem 0 1rem;padding-left:1.25rem;font-size:.85rem}.folder-compliance-modal .form-actions{margin-top:1rem}.project-folder-separator-label{display:block;font-size:.78rem;font-weight:600;letter-spacing:.02em;opacity:.85;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.project-file-explorer--dual{display:flex;flex-direction:column;flex:1 1 auto;height:min(1280px,calc(100vh - 140px));min-height:min(900px,calc(100vh - 200px));max-height:min(1280px,calc(100vh - 140px));overflow:hidden}.project-file-explorer--dual.tree-collapsed{height:auto;min-height:0;max-height:none;flex:0 0 auto;overflow:visible}.project-file-explorer--dual .project-file-dual-pane{display:grid;grid-template-columns:minmax(220px,36%) 1fr;flex:1 1 auto;min-height:0;overflow:hidden}.project-file-tree-pane,.project-file-list-pane{display:flex;flex-direction:column;min-height:0;overflow:hidden}.project-file-tree-pane{border-right:1px solid var(--color-divider)}.project-file-pane-scroll{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden}.project-file-pane-title{flex-shrink:0}.project-file-pane-title{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;opacity:.65;padding:10px 12px 6px;margin:0}.project-file-tree-list{list-style:none;margin:0;padding:0 6px}.project-file-tree-item{display:flex;align-items:center;gap:6px;width:100%;text-align:left;padding:6px 8px;border:none;background:transparent;border-radius:var(--radius-small);cursor:pointer;font-size:.85rem;color:var(--color-body-text);transition:background .15s}.project-file-tree-item:hover{background:var(--color-hover-light)}.project-file-tree-item.is-active{background:var(--color-hover-light);font-weight:600}.project-file-tree-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-file-tree-separator{font-size:.72rem;font-weight:600;opacity:.55;padding:10px 12px 4px;list-style:none}.project-file-tree-group{margin-bottom:2px}.project-file-tree-group-header{display:flex;align-items:center;gap:4px;width:100%;text-align:left;padding:7px 8px;border:none;background:transparent;border-radius:var(--radius-small);cursor:pointer;font-size:.82rem;font-weight:600;color:var(--color-body-text);transition:background .15s}.project-file-tree-group-header:hover{background:var(--color-hover-light)}.project-file-tree-group-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-file-tree-children{list-style:none;margin:0;padding:0 0 4px 18px}.project-file-tree-item--leaf{padding-left:4px}.project-file-list{list-style:none;margin:0;padding:0 8px}.project-file-list-item{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;align-items:center;gap:2px 8px;width:100%;text-align:left;padding:8px 10px;border:none;background:transparent;border-radius:var(--radius-small);cursor:pointer;color:var(--color-body-text);transition:background .15s}.project-file-list-item:hover{background:var(--color-hover-light)}.project-file-list-item.is-active{background:var(--color-hover-light);font-weight:600}.project-file-list-name{grid-column:2;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-file-list-meta{grid-column:2;font-size:.75rem;opacity:.65}.project-file-preview{display:flex;flex-direction:column;height:100%;overflow:hidden}.project-file-preview-header{display:flex;justify-content:space-between;align-items:flex-start;padding:12px 16px;border-bottom:1px solid var(--color-divider);gap:12px;flex-shrink:0}.project-file-preview-title{font-size:1rem;margin:0;word-break:break-word}.project-file-preview-meta{font-size:.8rem;opacity:.7;margin:4px 0 0}.project-file-preview-download{display:flex;align-items:center;justify-content:center;padding:6px;border:1px solid var(--color-divider);border-radius:var(--radius-small);background:transparent;cursor:pointer;color:var(--color-body-text)}.project-file-preview-image-wrap{flex:1;overflow:auto;display:flex;align-items:center;justify-content:center;padding:12px}.project-file-preview-image{max-width:100%;max-height:100%;object-fit:contain}.project-file-preview-text{flex:1;overflow:auto;margin:0;padding:12px 16px;font-size:.8rem;white-space:pre-wrap;word-break:break-word}.project-file-preview-pdf{flex:1;overflow:auto;display:flex;flex-direction:column;align-items:center;padding-bottom:12px}.project-file-preview-pdf-canvas{max-width:100%}.project-file-preview-unsupported,.project-file-preview-empty{padding:24px 16px;text-align:center}@media(max-width:900px){.project-file-explorer--dual{height:auto;min-height:min(560px,60vh);max-height:none}.project-file-explorer--dual .project-file-dual-pane{grid-template-columns:1fr;height:min(560px,60vh);min-height:min(560px,60vh)}.project-file-tree-pane{border-right:none;border-bottom:1px solid var(--color-divider);max-height:min(280px,35vh)}}.compta-import-view .compta-view-header h1{margin-top:4px}.compta-import-toolbar{display:flex;gap:12px;flex-wrap:wrap}.compta-import-search{flex:1;min-width:200px;padding:8px 12px;border:1px solid var(--color-divider);border-radius:var(--radius-medium);background:var(--color-body-background);color:var(--color-body-text)}.compta-import-filter{min-width:180px;padding:8px 12px;border:1px solid var(--color-divider);border-radius:var(--radius-medium);background:var(--color-body-background);color:var(--color-body-text)}.compta-import-alert{display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:var(--radius-medium);border:1px solid color-mix(in srgb,var(--color-danger, #c0392b) 40%,transparent);background:color-mix(in srgb,var(--color-danger, #c0392b) 8%,var(--color-body-background));color:var(--color-body-text)}.compta-import-type-filters{display:flex;flex-wrap:wrap;gap:8px;width:100%}.compta-import-type-chip{border:1px solid var(--color-divider);border-radius:var(--radius-pill);padding:6px 14px;font-size:12px;background:var(--color-body-background);color:var(--color-body-text);cursor:pointer}.compta-import-type-chip.active{border-color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 12%,var(--color-body-background));color:var(--color-accent)}.compta-import-list-panel--full{min-height:520px}.compta-import-item-title-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.compta-import-type-tag{font-size:10px;text-transform:uppercase;letter-spacing:.04em;padding:2px 8px;border-radius:var(--radius-pill);border:1px solid var(--color-divider);opacity:.85}.compta-import-project-tag{font-size:10px;padding:2px 8px;border-radius:var(--radius-pill);border:1px solid color-mix(in srgb,var(--color-accent) 45%,transparent);color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 10%,var(--color-body-background))}.compta-import-preview{height:100%;min-height:0}.compta-import-preview .compta-import-pdf-viewer{min-height:100%}.compta-import-client-form{display:flex;flex-direction:column;gap:12px}.compta-import-client-field{display:flex;flex-direction:column;gap:6px;font-size:13px}.compta-import-client-field input,.compta-import-client-field textarea{padding:8px 10px;border:1px solid var(--color-divider);border-radius:var(--radius-medium);background:var(--color-body-background);color:var(--color-body-text)}.compta-import-client-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.compta-import-insee-results{list-style:none;margin:0;padding:0;border:1px solid var(--color-divider);border-radius:var(--radius-medium);max-height:160px;overflow-y:auto}.compta-import-insee-results button{width:100%;text-align:left;padding:8px 10px;border:none;background:transparent;color:var(--color-body-text);cursor:pointer;font-size:12px}.compta-import-insee-results button:hover{background:var(--color-stat-item-background)}.compta-import-client-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:8px}.compta-import-field-note{opacity:.7;cursor:help}.compta-import-list-panel,.compta-import-preview-panel{border:1px solid var(--color-divider);border-radius:var(--radius-medium);background:var(--color-body-background);overflow:hidden;display:flex;flex-direction:column}.compta-import-list-panel{min-height:0}.compta-import-year-list{list-style:none;margin:0;padding:0;overflow-y:auto;flex:1}.compta-import-year-group{border-bottom:1px solid var(--color-divider)}.compta-import-year-head{display:flex;align-items:center;gap:10px;width:100%;padding:14px 12px;border:none;background:color-mix(in srgb,var(--color-body-background) 92%,var(--color-accent));color:var(--color-text);font:inherit;font-weight:600;text-align:left;cursor:pointer}.compta-import-year-head:hover{background:color-mix(in srgb,var(--color-body-background) 85%,var(--color-accent))}.compta-import-year-label{font-size:1.05rem}.compta-import-year-count{margin-left:auto;font-size:.85rem;font-weight:500;color:var(--color-text-muted, var(--color-muted));opacity:.85}.compta-import-list{list-style:none;margin:0;padding:0;overflow-y:auto;flex:1}.compta-import-list--nested{flex:none;overflow:visible;background:var(--color-body-background)}.compta-import-item{border-bottom:1px solid var(--color-divider)}.compta-import-item.is-selected .compta-import-item-head{background:color-mix(in srgb,var(--color-accent) 8%,var(--color-body-background))}.compta-import-item-head{display:flex;align-items:flex-start;gap:8px;padding:12px}.compta-import-expand{flex-shrink:0;margin-top:2px;border:none;background:transparent;color:var(--color-body-text);cursor:pointer;padding:4px;border-radius:var(--radius-small)}.compta-import-expand:hover{background:var(--color-stat-item-background)}.compta-import-item-summary{flex:1;display:flex;flex-direction:column;gap:6px;min-width:0}.compta-import-filename{font-size:13px;word-break:break-all}.compta-import-progress{display:grid;grid-template-columns:72px 1fr 40px;gap:8px;align-items:center;font-size:11px}.compta-import-progress-track{height:6px;border-radius:var(--radius-pill);background:var(--color-stat-item-background);overflow:hidden}.compta-import-progress-fill{height:100%;background:var(--color-accent);border-radius:var(--radius-pill);transition:width .25s ease}.compta-import-badge{display:inline-flex;align-self:flex-start;font-size:11px;padding:3px 8px;border-radius:var(--radius-pill);border:1px solid var(--color-divider);background:var(--color-stat-item-background)}.compta-import-badge--pending{opacity:.85}.compta-import-badge--ocr_running{border-color:color-mix(in srgb,var(--color-accent) 50%,transparent);color:var(--color-accent)}.compta-import-badge--ocr_done{border-color:color-mix(in srgb,#3498db 40%,transparent);color:#3498db}.compta-import-badge--partial_validation{border-color:color-mix(in srgb,#e67e22 50%,transparent);color:#e67e22}.compta-import-badge--full_validation{border-color:color-mix(in srgb,#27ae60 50%,transparent);color:#27ae60}.compta-import-badge--injected{background:color-mix(in srgb,#27ae60 12%,var(--color-body-background));border-color:#27ae60;color:#27ae60}.compta-import-badge--error{border-color:color-mix(in srgb,#c0392b 50%,transparent);color:#c0392b}.compta-import-item-body{padding:0 12px 12px 40px;animation:compta-import-expand .2s ease}@keyframes compta-import-expand{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.compta-import-detail-meta{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-bottom:10px;font-size:12px;opacity:.85}.compta-import-fields-table{width:100%;border-collapse:collapse;font-size:12px}.compta-import-fields-table th,.compta-import-fields-table td{padding:8px 6px;border-bottom:1px solid var(--color-divider);text-align:left;vertical-align:middle}.compta-import-fields-table tr.is-ok td{color:#27ae60}.compta-import-fields-table tr.is-ambiguous td{color:#e67e22}.compta-import-fields-table tr.is-missing td{color:#c0392b}.compta-import-fields-table tr.is-pending td{color:#3498db}.compta-import-field-status.is-ok{color:#27ae60}.compta-import-field-status.is-ambiguous{color:#e67e22}.compta-import-field-status.is-missing{color:#c0392b}.compta-import-field-status.is-pending{color:#3498db}.compta-import-pagination{display:flex;justify-content:center;align-items:center;gap:12px;padding:12px;border-top:1px solid var(--color-divider);font-size:13px}.compta-import-pdf-viewer{display:flex;flex-direction:column;height:100%;min-height:480px}.compta-import-pdf-empty{display:flex;align-items:center;justify-content:center;height:100%;min-height:480px;color:var(--color-body-text);opacity:.65;padding:24px;text-align:center}.compta-import-pdf-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;border-bottom:1px solid var(--color-divider);flex-shrink:0}.compta-import-pdf-filename{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:50%}.compta-import-pdf-controls{display:flex;align-items:center;gap:6px}.compta-import-pdf-page,.compta-import-pdf-zoom{font-size:12px;min-width:56px;text-align:center}.compta-import-pdf-canvas-wrap{flex:1;overflow:auto;padding:12px;display:flex;justify-content:center;align-items:flex-start;background:color-mix(in srgb,var(--color-divider) 20%,var(--color-body-background))}.compta-import-pdf-canvas{box-shadow:0 2px 12px #00000026;background:#fff}.compta-btn--icon{display:inline-flex;align-items:center;justify-content:center;padding:6px}.compta-btn--sm{font-size:12px;padding:4px 8px}.is-spinning{animation:compta-spin .8s linear infinite}@keyframes compta-spin{to{transform:rotate(360deg)}}.compta-section-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.75rem}.compta-section-header h2{margin:0}.project-detail-sidebar-section-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.35rem}.project-detail-sidebar-section-head h3{margin:0}.project-detail-sidebar-add{width:1.75rem;height:1.75rem;border-radius:6px;border:1px solid var(--color-divider);background:transparent;color:inherit;cursor:pointer;font-size:1.1rem;line-height:1}.project-detail-sidebar-add:hover{background:var(--color-hover-light)}.action-modal--expanded .proposal-modal{display:flex;flex-direction:column;height:100%;min-height:0;gap:12px}.proposal-modal-steps{display:flex;flex-wrap:wrap;gap:8px}.proposal-modal-step{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;border:1px solid var(--color-divider);background:transparent;color:inherit;font-size:.85rem;cursor:pointer}.proposal-modal-step.active{border-color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 12%,transparent)}.proposal-modal-step.done:not(.active){opacity:.75}.proposal-modal-step:disabled{cursor:default;opacity:.45}.proposal-modal-step-index{display:inline-flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;border-radius:50%;font-size:.75rem;background:var(--color-hover-light)}.proposal-modal-body{flex:1;min-height:0;overflow:auto}.proposal-modal-body--split{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,420px);gap:16px;overflow:hidden}.proposal-modal-main{min-height:0;overflow-y:auto;padding-right:4px}.proposal-modal-preview-pane{min-height:0;overflow-y:auto;border-left:1px solid var(--color-divider);padding-left:16px}.proposal-modal-preview-pane h4{margin:0 0 12px;font-size:.95rem}.proposal-modal-section h4{margin:0 0 8px}.proposal-modal-hint{margin:0 0 12px;font-size:.85rem;color:var(--color-muted, #94a3b8)}.proposal-modal-error{margin:0;color:#f87171;font-size:.9rem}.proposal-modal-search{width:100%;margin-bottom:12px;padding:8px 10px;border-radius:8px;border:1px solid var(--color-divider);background:transparent;color:inherit}.proposal-modal-project-list{list-style:none;margin:0 0 12px;padding:0;max-height:280px;overflow-y:auto;border:1px solid var(--color-divider);border-radius:8px}.proposal-modal-project-item{display:flex;gap:10px;width:100%;padding:10px 12px;border:none;border-bottom:1px solid var(--color-divider);background:transparent;color:inherit;text-align:left;cursor:pointer}.proposal-modal-project-item:last-child{border-bottom:none}.proposal-modal-project-item.selected,.proposal-modal-project-item:hover{background:var(--color-hover-light)}.proposal-modal-empty{padding:12px;color:var(--color-muted, #94a3b8)}.proposal-modal-link-btn{border:none;background:none;color:var(--color-accent);cursor:pointer;padding:0;font-size:.9rem}.proposal-modal-context-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin-bottom:16px}.proposal-modal-context-card{padding:12px;border-radius:8px;border:1px solid var(--color-divider);font-size:.9rem}.proposal-modal-context-card h5{margin:0 0 8px;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;color:var(--color-muted, #94a3b8)}.proposal-modal-context-card p{margin:0 0 4px}.proposal-modal-field{display:flex;flex-direction:column;gap:6px;margin-bottom:12px;font-size:.85rem}.proposal-modal-field input,.proposal-modal-field textarea{padding:8px 10px;border-radius:8px;border:1px solid var(--color-divider);background:transparent;color:inherit}.proposal-modal-field-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.proposal-modal-phase-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px}.proposal-modal-phase-chip{display:flex;align-items:flex-start;gap:8px;padding:10px 12px;border-radius:8px;border:1px solid var(--color-divider);cursor:pointer}.proposal-modal-phase-chip.checked{border-color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 8%,transparent)}.proposal-modal-phase-chip input{margin-top:2px}.proposal-modal-phase-code{font-weight:700;min-width:2.5rem}.proposal-modal-phase-label{font-size:.85rem}.proposal-modal-detail-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.proposal-modal-phase-tabs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.proposal-modal-phase-tab{padding:6px 12px;border-radius:6px;border:1px solid var(--color-divider);background:transparent;color:inherit;cursor:pointer;font-weight:600}.proposal-modal-phase-tab.active{border-color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 12%,transparent)}.proposal-modal-phase-editor{margin-bottom:12px;padding:12px;border-radius:8px;border:1px solid var(--color-divider)}.proposal-modal-total{margin:8px 0 0;font-size:.95rem}.proposal-modal-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:8px;border-top:1px solid var(--color-divider)}.proposal-modal-footer-right{display:flex;gap:8px}.proposal-preview-doc{padding:16px;border-radius:8px;border:1px solid var(--color-divider);background:color-mix(in srgb,var(--color-surface, #111) 92%,white);font-size:.85rem}.proposal-preview-doc-header{display:flex;align-items:center;gap:12px;margin-bottom:12px}.proposal-preview-doc-logo{max-height:40px;max-width:120px;object-fit:contain}.proposal-preview-doc-agency{margin:0;font-weight:700}.proposal-preview-doc-muted{margin:0;color:var(--color-muted, #94a3b8);font-size:.8rem}.proposal-preview-doc-title{margin:0 0 12px;font-size:1rem}.proposal-preview-doc-block{margin-bottom:12px}.proposal-preview-doc-block h5{margin:0 0 6px;font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;color:var(--color-muted, #94a3b8)}.proposal-preview-doc-block p{margin:0 0 4px}.proposal-preview-doc-notes{white-space:pre-wrap}.proposal-preview-table{width:100%;border-collapse:collapse;font-size:.8rem}.proposal-preview-table th,.proposal-preview-table td{padding:6px 4px;border-bottom:1px solid var(--color-divider);text-align:left}.proposal-preview-table td:last-child,.proposal-preview-table th:last-child{text-align:right}.proposal-preview-table-total td{font-weight:700;border-top:2px solid var(--color-divider)}.proposal-preview-table--totals{margin-top:12px}.proposal-preview-table--totals td:last-child{text-align:right}.proposal-modal-field--checkbox{flex-direction:row;align-items:center;gap:8px}.proposal-lines-editor{margin-bottom:16px}.proposal-lines-toolbar{margin-bottom:8px}.proposal-lines-add{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.proposal-lines-table-wrap{overflow-x:auto}.proposal-lines-table{width:100%;border-collapse:collapse;font-size:.8rem}.proposal-lines-table th,.proposal-lines-table td{padding:6px 4px;border-bottom:1px solid var(--color-divider);vertical-align:middle}.proposal-lines-input{width:100%;min-width:0;padding:4px 6px;border-radius:4px;border:1px solid var(--color-divider);background:transparent;color:inherit;font-size:inherit}.proposal-lines-input--num{max-width:5rem}.proposal-lines-input--unit{max-width:3.5rem}.proposal-lines-amount{text-align:right;white-space:nowrap;font-weight:600}.proposal-lines-remove{border:none;background:transparent;color:#f87171;cursor:pointer;font-size:1.1rem;line-height:1}.proposal-lines-empty{text-align:center;color:var(--color-muted, #94a3b8);padding:12px}.proposal-lines-muted{color:var(--color-muted, #94a3b8);font-size:.75rem}.settings-hint{font-size:.8rem;color:var(--color-muted, #94a3b8)}.settings-error{color:#f87171;margin:0 0 12px}.settings-success{color:#4ade80;margin:0 0 12px}.settings-muted{color:var(--color-muted, #94a3b8)}.settings-field--checkbox{flex-direction:row;align-items:center;gap:8px}.compta-devis-settings-tabs{display:flex;gap:8px;margin-bottom:16px}.compta-devis-settings-tabs button{padding:8px 14px;border-radius:8px;border:1px solid var(--color-divider);background:transparent;color:inherit;cursor:pointer}.compta-devis-settings-tabs button.active{border-color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 12%,transparent)}.compta-devis-settings-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);gap:20px;align-items:start}.compta-devis-settings-preview{position:sticky;top:12px}.compta-devis-settings-preview h3{margin:0 0 12px;font-size:.95rem}.compta-devis-cgps-editor{font-family:ui-monospace,Cascadia Code,monospace;font-size:.85rem;line-height:1.45;min-height:420px}.compta-devis-preview,.proposal-preview-doc{background:#fff;color:#333}.compta-devis-preview-header-rule,.proposal-preview-doc-header-rule{height:3px;background:var(--proposal-accent, #40608a);margin-bottom:12px}.compta-devis-preview--header-rule,.proposal-preview-doc--header-rule{border:none;box-shadow:none}.compta-devis-preview-header,.proposal-preview-doc-header{display:flex;align-items:flex-start;gap:12px;margin-bottom:12px}.compta-devis-preview-logo,.proposal-preview-doc-logo{max-height:44px;max-width:120px;object-fit:contain}.compta-devis-preview-agency,.proposal-preview-doc-agency{margin:0;font-weight:700;color:var(--proposal-accent, #40608a)}.compta-devis-preview-meta{margin:4px 0 0;font-size:.85em;color:var(--proposal-text, #333)}.compta-devis-preview-title{margin:0 0 12px;color:var(--proposal-title, #1a1a1a)}.compta-devis-preview-table{width:100%;border-collapse:collapse;font-size:.9em}.compta-devis-preview-table th,.compta-devis-preview-table td{padding:6px 8px;border-bottom:1px solid #e5e7eb;text-align:left}.compta-devis-preview-table th:last-child,.compta-devis-preview-table td:last-child{text-align:right}.compta-devis-preview-footer,.proposal-preview-doc-footer{margin-top:16px;padding-top:8px;border-top:1px solid #e5e7eb;font-size:.8em;color:var(--proposal-text, #666)}.proposal-preview-table thead{background:var(--proposal-table-header, #f3f4f6)}.proposal-preview-doc-title{color:var(--proposal-title, inherit)}.compta-devis-layout-settings-split{display:grid;grid-template-columns:minmax(240px,320px) minmax(0,1fr);gap:20px;align-items:start}.compta-devis-layout-intro{margin-bottom:16px}.compta-devis-layout-canvas-panel{min-width:0}.devis-layout-editor-toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px;margin-bottom:12px}.devis-layout-editor-doc-type{min-width:220px}.devis-layout-editor-body{display:grid;grid-template-columns:160px minmax(0,1fr);gap:12px;align-items:start}.devis-layout-palette h3{margin:0 0 8px;font-size:.9rem}.devis-layout-palette-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.devis-layout-palette-item{width:100%;text-align:left;padding:8px 10px;border-radius:8px;border:1px dashed var(--color-divider);background:color-mix(in srgb,var(--color-accent) 6%,transparent);color:inherit;font-size:.82rem;cursor:grab}.devis-layout-palette-item--placed{opacity:.55;border-style:solid}.devis-layout-page-tabs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:6px}.devis-layout-page-tabs button{padding:6px 10px;border-radius:8px;border:1px solid var(--color-divider);background:transparent;color:inherit;font-size:.82rem;cursor:pointer}.devis-layout-page-tabs button.active{border-color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 12%,transparent)}.devis-layout-page-hint{margin:0 0 10px}.devis-layout-a4-shell{width:100%;max-width:620px;margin:0 auto;box-shadow:0 4px 24px #0000001f}.devis-layout-a4-canvas{position:relative;width:100%;height:100%;min-height:100%;background:#fff;color:#333;box-sizing:border-box;overflow:hidden}.devis-layout-a4-header-rule{position:absolute;top:0;left:0;right:0;height:3px;background:var(--proposal-accent, #40608a);z-index:1}.devis-layout-block{position:absolute;box-sizing:border-box;border:1px dashed rgba(64,96,138,.45);background:#ffffffeb;cursor:move;overflow:hidden;border-radius:2px}.devis-layout-block--selected{border:2px solid var(--color-accent, #40608a);box-shadow:0 0 0 1px #40608a33;z-index:2}.devis-layout-block-label{position:absolute;top:0;left:0;padding:1px 5px;font-size:.65rem;background:var(--color-accent, #40608a);color:#fff;border-bottom-right-radius:4px;z-index:1;pointer-events:none}.devis-layout-block-content{width:100%;height:100%;padding:14px 6px 4px;font-size:.72em;line-height:1.3;overflow:hidden;pointer-events:none}.devis-layout-block-remove{position:absolute;top:2px;right:2px;width:20px;height:20px;border:none;border-radius:4px;background:#0000008c;color:#fff;cursor:pointer;z-index:3;line-height:1}.devis-layout-block-resize{position:absolute;right:0;bottom:0;width:12px;height:12px;cursor:nwse-resize;background:linear-gradient(135deg,transparent 50%,var(--color-accent) 50%);z-index:3}.devis-layout-canvas-empty{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;color:#999;font-size:.85rem;pointer-events:none}.devis-layout-block-logo{max-width:100%;max-height:100%;object-fit:contain}.devis-layout-block-ref{display:flex;flex-direction:column;gap:2px;font-size:.95em}.devis-layout-block-title{margin:0;font-size:1.1em}.devis-layout-block-meta{margin:0;color:var(--proposal-accent)}.devis-layout-block-mission pre{margin:4px 0 0;white-space:pre-wrap;font-family:inherit;font-size:.95em}.devis-layout-block-mission table{width:100%;border-collapse:collapse;margin-top:4px}.devis-layout-block-mission th,.devis-layout-block-mission td{border:1px solid #e5e7eb;padding:2px 4px;text-align:left}.devis-layout-block-mission th{background:var(--proposal-table-header, #f3f4f6)}.devis-layout-block-totals table{width:100%;border-collapse:collapse}.devis-layout-block-totals td{padding:2px 4px;border-bottom:1px solid #eee}.devis-layout-block-totals td:last-child{text-align:right}.devis-layout-block-totals-sum td{font-weight:600;border-top:1px solid #ccc}.devis-layout-block-legal{margin:0;font-size:.85em;color:#666}.cgps-sections-editor{display:flex;flex-direction:column;gap:16px}.cgps-sections-toolbar{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-end;justify-content:space-between}.cgps-sections-title-field{flex:1;min-width:240px;margin:0}.cgps-sections-toolbar-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.cgps-sections-layout{display:grid;grid-template-columns:minmax(280px,360px) minmax(0,1fr);gap:20px;align-items:start}.cgps-sections-list{list-style:none;margin:0;padding:0;border:1px solid var(--color-divider);border-radius:8px;max-height:520px;overflow-y:auto;background:var(--color-sidebar-main-background);color:var(--color-body-text)}.cgps-sections-item{display:flex;align-items:center;gap:6px;border-bottom:1px solid var(--color-divider);padding:6px 8px 6px 4px}.cgps-sections-item:last-child{border-bottom:none}.cgps-sections-item.selected{background:color-mix(in srgb,var(--color-accent) 10%,transparent)}.cgps-sections-item-move{display:flex;flex-direction:column;gap:0}.cgps-sections-move-btn{display:flex;align-items:center;justify-content:center;width:1.75rem;height:1.35rem;padding:0;border:none;background:transparent;color:inherit;cursor:pointer;opacity:.85}.cgps-sections-move-btn:disabled{opacity:.25;cursor:not-allowed}.cgps-sections-move-btn:not(:disabled):hover{color:var(--color-accent)}.cgps-sections-item-main{flex:1;display:flex;align-items:center;gap:8px;min-width:0;border:none;background:transparent;color:inherit;text-align:left;cursor:pointer;padding:4px 0}.cgps-sections-badge{flex-shrink:0;font-size:.65rem;text-transform:uppercase;letter-spacing:.04em;padding:2px 6px;border-radius:4px;background:var(--color-hover-light)}.cgps-sections-badge.level-0{background:color-mix(in srgb,var(--color-muted, #94a3b8) 25%,transparent)}.cgps-sections-badge.level-1{background:color-mix(in srgb,var(--color-accent) 18%,transparent)}.cgps-sections-badge.level-2{background:color-mix(in srgb,var(--color-accent) 8%,transparent)}.cgps-sections-badge.level-3{background:color-mix(in srgb,var(--color-accent) 5%,transparent)}.cgps-rich-text-editor{display:flex;flex-direction:column;gap:6px}.cgps-rich-text-toolbar{display:flex;gap:6px;padding:6px;border:1px solid var(--color-divider);border-radius:8px;background:var(--color-sidebar-main-background)}.cgps-rich-text-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--color-divider);border-radius:6px;background:var(--color-body-background);color:inherit;cursor:pointer}.cgps-rich-text-btn:hover{border-color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 10%,transparent)}.cgps-rich-text-area{min-height:280px;max-height:480px;overflow-y:auto;padding:10px 12px;border:1px solid var(--color-divider);border-radius:8px;background:var(--color-body-background);color:var(--color-body-text);caret-color:var(--color-body-text);line-height:1.5;-moz-appearance:none;appearance:none;-webkit-appearance:none}.cgps-rich-text-area:empty:before{content:attr(data-placeholder);color:var(--color-muted, #888);pointer-events:none}.cgps-rich-text-area ul{margin:.4em 0;padding-left:1.4em}.cgps-rich-text-area p{margin:0 0 .6em}.cgps-sections-item-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.9rem}.cgps-sections-delete{border:none;background:transparent;color:#f87171;cursor:pointer;padding:4px}.cgps-sections-detail h3{margin:0 0 12px;font-size:1rem}.app-toast-container{position:fixed;bottom:1.25rem;right:1.25rem;z-index:10040;display:flex;flex-direction:column;gap:.5rem;max-width:min(360px,calc(100vw - 2rem));pointer-events:none}.app-toast{padding:.75rem 1rem;border-radius:8px;font-size:.85rem;line-height:1.4;color:#f5f5f5;background:#2a2b2c;border:1px solid #3a3b3c;box-shadow:0 8px 24px #00000059;opacity:0;transform:translateY(8px);transition:opacity .25s,transform .25s}.app-toast.is-visible{opacity:1;transform:translateY(0)}.app-toast--success{border-color:#34a853;background:#1e2e22}.app-toast--info{border-color:#5b8def;background:#1a2438}.project-task-assign{display:flex;flex-direction:column;gap:4px;margin-top:8px;font-size:.8rem;color:var(--color-body-text-muted, #9aa0a6)}.project-task-assign select{max-width:240px}.project-task-form select{min-width:140px}.upload-naming-warn,.project-file-naming-warn{color:#e8a317;font-weight:600}.company-verified-badge{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;margin-top:6px;padding:6px 10px;border-radius:var(--radius-small, 6px);background:#5b8def14;border:1px solid rgba(91,141,239,.25);font-size:.78rem;color:var(--color-body-text-muted, #b0b8c4)}.company-verified-badge.is-loading{opacity:.7}.company-verified-badge__title{color:#8ab4f8;font-weight:600}.company-verified-badge__indicator{white-space:nowrap}.companies-page{padding:32px;max-width:1200px}.companies-page-header{margin-bottom:24px}.companies-page-header h1{margin:0 0 8px}.company-search-input{position:relative;max-width:640px;margin-top:16px}.company-search-input input{width:100%;padding:12px 14px;border:1px solid var(--color-divider);border-radius:var(--radius-small);background:var(--color-main-background);color:var(--color-body-text);font-size:15px}.company-search-input__hint{position:absolute;right:12px;top:50%;transform:translateY(-50%);font-size:12px;opacity:.6}.company-search-input__results{position:absolute;z-index:20;top:calc(100% + 6px);left:0;right:0;margin:0;padding:6px;list-style:none;border:1px solid var(--color-divider);border-radius:var(--radius-small);background:var(--color-sidebar-main-background);box-shadow:0 8px 24px #00000040;max-height:320px;overflow-y:auto}.company-search-input__results button{width:100%;display:grid;gap:4px;padding:10px 12px;border:none;border-radius:var(--radius-small);background:transparent;color:var(--color-body-text);text-align:left;cursor:pointer}.company-search-input__results button:hover{background:#ffffff0f}.company-search-input__name{font-weight:600}.company-search-input__meta{font-size:12px;opacity:.75}.company-search-input__status{font-size:11px;width:fit-content;padding:2px 6px;border-radius:4px}.company-search-input__status.is-active{background:#2f9e4433;color:#69db7c}.company-search-input__status.is-closed{background:#e0313126;color:#ff8787}.company-dossier-panel{margin-top:8px}.company-dossier-header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.company-dossier-header h2{margin:0 0 8px}.company-dossier-badges{display:flex;flex-wrap:wrap;gap:8px}.company-status-badge{display:inline-flex;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:600}.company-status-badge.is-active{background:#2f9e4433;color:#69db7c}.company-status-badge.is-closed{background:#e0313126;color:#ff8787}.company-status-badge.is-warning{background:#f59f0033;color:#fcc419}.company-status-badge.is-info{background:#2f80ed33;color:#74c0fc}.company-dossier-actions{display:flex;flex-wrap:wrap;gap:8px}.company-dossier-tabs{margin-bottom:16px}.company-dossier-tab-panel{border:1px solid var(--color-divider);border-radius:var(--radius-large);background:var(--color-sidebar-main-background);padding:18px}.company-dossier-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.company-dossier-field span{display:block;font-size:12px;opacity:.65;margin-bottom:4px}.company-dossier-field strong{font-weight:600;font-size:14px}.company-dossier-stack{display:flex;flex-direction:column;gap:12px}.company-dossier-empty,.company-dossier-empty-state{opacity:.75;font-size:14px}.company-dossier-empty-state{display:flex;flex-direction:column;align-items:center;gap:12px;padding:48px 24px;border:1px dashed var(--color-divider);border-radius:var(--radius-large)}.company-timeline{list-style:none;margin:0;padding:0;border-left:2px solid var(--color-divider)}.company-timeline li{position:relative;padding:0 0 20px 20px}.company-timeline li:before{content:"";position:absolute;left:-6px;top:4px;width:10px;height:10px;border-radius:50%;background:var(--color-accent, #2f80ed)}.company-timeline time{display:block;font-size:12px;opacity:.7;margin-bottom:4px}.company-synthesis-card{padding:14px;border-radius:var(--radius-small);background:#2f80ed14;border:1px solid rgba(47,128,237,.2)}.company-synthesis-card h3{margin:0 0 8px;font-size:14px}.company-indicators-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.company-indicators-grid article{padding:12px;border:1px solid var(--color-divider);border-radius:var(--radius-small)}.company-indicators-grid h4{margin:0 0 6px;font-size:13px}.company-doc-list{list-style:none;margin:0;padding:0}.company-doc-list li{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--color-divider)}.notes-item{grid-template-columns:1fr}.notes-preview .mail-preview-actions button{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;width:auto}.notes-preview-body{white-space:pre-wrap;line-height:1.55}.notes-page .mail-compose-button{gap:8px}.notes-preview-meta-icon{display:inline-flex;align-items:center;gap:6px}.company-dossier-link{color:var(--color-accent, #2f80ed)}.project-finances-hub{display:flex;flex-direction:column;gap:1rem}.project-finances-hub-header{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px 16px;margin-bottom:4px}.project-finances-hub-header h2{margin:0 0 4px;font-size:1.2rem;color:var(--color-body-text, inherit)}.project-finances-hub-hint{margin:0;font-size:.9rem;opacity:.72;color:var(--color-body-text, inherit)}.project-finances-hub-tabs{display:inline-flex;flex-wrap:wrap;gap:6px;padding:4px;border-radius:10px;border:1px solid var(--color-border, rgba(255, 255, 255, .12));background:var(--color-surface, rgba(255, 255, 255, .03))}.project-finances-hub-tab{border:none;background:transparent;color:var(--color-body-text, inherit);opacity:.75;border-radius:7px;padding:.45rem .85rem;font:inherit;font-size:.9rem;cursor:pointer}.project-finances-hub-tab:hover{opacity:1;background:color-mix(in srgb,var(--color-accent, #2f80ed) 10%,transparent)}.project-finances-hub-tab.active{opacity:1;background:color-mix(in srgb,var(--color-accent, #2f80ed) 18%,transparent);color:var(--color-body-text, inherit)}.project-finances-section--embedded{margin-top:0}.project-finances-header--embedded h3{margin:0 0 4px;font-size:1.05rem}.project-finances-hub .project-honoraires-section{margin-top:0}.project-mission-section,.project-honoraires-section{margin:16px 0 24px;padding:16px 18px;background:var(--color-surface-elevated, rgba(255, 255, 255, .03));border:1px solid var(--color-border, rgba(255, 255, 255, .12));border-radius:12px;color:var(--color-body-text, inherit)}.project-honoraires-section--empty{background:transparent;border:none;padding:0}.project-honoraires-empty-banner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 16px;margin-top:4px;padding:.85rem 1rem;border-radius:var(--radius-large, 10px);border:1px solid color-mix(in srgb,var(--color-accent, #2f80ed) 40%,transparent);background:color-mix(in srgb,var(--color-accent, #2f80ed) 12%,transparent);color:var(--color-body-text, inherit)}.project-honoraires-empty-banner-text{margin:0;flex:1 1 240px;font-size:.95rem;line-height:1.45;opacity:.92}.project-mission-header,.project-honoraires-header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.project-mission-header h2,.project-honoraires-header h2{margin:0 0 4px;font-size:1.15rem;color:var(--color-body-text, inherit)}.project-mission-hint,.project-honoraires-hint{margin:0;color:var(--color-body-text, inherit);opacity:.72;font-size:.9rem}.project-mission-phase-grid{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.project-mission-phase-chip{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border:1px solid var(--color-border, rgba(255, 255, 255, .14));border-radius:6px;background:var(--color-surface, rgba(255, 255, 255, .04));color:var(--color-body-text, inherit);cursor:pointer;font-size:.9rem}.project-mission-phase-chip.checked{border-color:var(--color-accent, #2f80ed);background:color-mix(in srgb,var(--color-accent, #2f80ed) 18%,transparent)}.project-mission-phase-chip.contracted{border-color:var(--color-success, #3d9a6a)}.project-mission-phase-code{font-weight:700;letter-spacing:.02em}.project-mission-badge{font-size:.7rem;text-transform:uppercase;color:var(--color-success, #3d9a6a);font-weight:600}.project-mission-selected h3{margin:0 0 8px;font-size:.95rem}.project-mission-selected-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.project-mission-selected-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--color-border, rgba(255, 255, 255, .12));border-radius:6px;background:var(--color-surface, rgba(255, 255, 255, .03))}.project-mission-to-quote{display:inline-flex;align-items:center;gap:6px;margin-left:auto;font-size:.85rem}.project-mission-order-btns{display:inline-flex;gap:4px}.project-mission-order-btn{border:1px solid var(--color-border, rgba(255, 255, 255, .16));background:var(--color-surface-elevated, rgba(255, 255, 255, .04));color:var(--color-body-text, inherit);border-radius:4px;width:28px;height:28px;cursor:pointer}.project-mission-order-btn:disabled{opacity:.4;cursor:default}.project-mission-summary,.project-honoraires-empty{margin:10px 0 0;color:var(--color-body-text, inherit);opacity:.72}.project-mission-empty{margin:10px 0 0;padding:.85rem 1rem;border-radius:var(--radius-large, 10px);border:1px solid color-mix(in srgb,var(--color-accent, #2f80ed) 32%,transparent);background:color-mix(in srgb,var(--color-accent, #2f80ed) 10%,transparent);color:var(--color-body-text, inherit)}.project-mission-error,.project-honoraires-error{color:var(--color-danger, #e05252);margin:8px 0}.project-mission-success,.project-honoraires-success{color:var(--color-success, #3d9a6a);margin:8px 0}.project-honoraires-actions{display:flex;flex-wrap:wrap;gap:8px}.project-honoraires-context{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin-bottom:14px}.project-honoraires-context-card{padding:10px 12px;border:1px solid var(--color-border, rgba(255, 255, 255, .12));border-radius:6px;background:var(--color-surface, rgba(255, 255, 255, .03))}.project-honoraires-context-card h5{margin:0 0 6px;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;color:var(--color-body-text, inherit);opacity:.7}.project-honoraires-context-card p{margin:0 0 4px;font-size:.9rem}.project-honoraires-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-bottom:14px}.proposal-shell-preview{padding:12px 16px 24px;overflow:auto;height:100%}.proposal-shell-preview-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.proposal-shell-preview-toolbar h2{margin:0;font-size:1rem}.project-progress-cta:disabled,.project-progress-cta--mission{opacity:1;cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none;background:color-mix(in srgb,var(--color-accent, #2f80ed) 12%,transparent);border-color:color-mix(in srgb,var(--color-accent, #2f80ed) 40%,transparent);color:var(--color-body-text, inherit)}.project-progress-cta:disabled{opacity:.7;cursor:not-allowed}@media print{body.proposal-print-mode *{visibility:hidden}body.proposal-print-mode .proposal-preview-doc,body.proposal-print-mode .proposal-preview-doc *{visibility:visible}body.proposal-print-mode .proposal-preview-doc{position:absolute;left:0;top:0;width:210mm;min-height:297mm;margin:0;box-shadow:none;border:none}body.proposal-print-mode .no-print{display:none!important}}.main:has(.header-search){grid-template-rows:minmax(var(--header-height),auto) 1fr}.header-top:has(.header-search){height:auto;min-height:var(--header-top-height);align-items:flex-end}.header-search{position:relative;align-items:flex-end}.header-search-field{flex:1;min-width:0;display:flex;align-items:flex-end;gap:8px}.header-search .search-icon{flex-shrink:0;margin-bottom:2px}.header-search-input{flex:1;min-width:0;min-height:22px;max-height:72px;resize:none;overflow-y:auto;background:transparent;border:none;color:var(--color-body-text);font-family:var(--font-family-base);font-size:14px;line-height:1.35;outline:none;padding:0}.header-search-input::placeholder{color:var(--color-body-text);opacity:.5}.header-search-send{flex-shrink:0;width:26px;height:26px;margin-bottom:0;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:50%;background:var(--color-accent);color:var(--color-on-accent, #fff);cursor:pointer;padding:0;line-height:0}.header-search-send svg{width:14px;height:14px}.header-search-send:disabled{opacity:.4;cursor:not-allowed}.header-search-send:not(:disabled):hover{filter:brightness(1.08)}.header-search-panel{position:fixed;z-index:80;display:flex;flex-direction:column;max-height:min(420px,calc(100dvh - 88px));overflow:hidden;background:var(--color-sidebar-secondary-background);border:1px solid var(--color-divider);border-radius:var(--radius-medium);box-shadow:var(--shadow-panel)}.header-search-panel-scroll{overflow-y:auto;padding:8px 0 10px;min-height:0}.header-search-group{padding:4px 0 6px}.header-search-group-title{margin:0 12px 4px;font-size:11px;letter-spacing:.04em;text-transform:uppercase;opacity:.55}.header-search-hit{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:7px 12px;border:none;background:transparent;color:var(--color-body-text);font-family:var(--font-family-base);font-size:13px;text-align:left;cursor:pointer}.header-search-hit:hover,.header-search-hit:focus-visible{background:var(--color-hover-light);outline:none}.header-search-hit-title{display:flex;align-items:center;gap:8px;min-width:0}.header-search-hit-title svg{flex-shrink:0;opacity:.7}.header-search-hit-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-search-hit-meta{margin-left:24px;font-size:11px;opacity:.6;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:calc(100% - 24px)}.header-search-empty{margin:4px 12px 8px;font-size:12px;opacity:.7;line-height:1.4}.header-search-thread{padding:4px 12px 8px;display:flex;flex-direction:column;gap:8px;border-top:1px solid var(--color-divider)}.header-search-msg{margin:0;padding:8px 10px;border-radius:var(--radius-medium);font-size:13px;line-height:1.45;white-space:pre-wrap;word-break:break-word}.header-search-msg--user{align-self:flex-end;background:var(--color-accent);color:var(--color-on-accent, #fff);max-width:92%}.header-search-msg--assistant{align-self:flex-start;background:var(--color-stat-item-background);border:1px solid var(--color-divider);max-width:96%}.header-search-msg--pending{opacity:.7;font-style:italic}.header-search-error{margin:0 12px 8px;font-size:12px;color:var(--color-danger, #e74c3c)}.header-search-hint{margin:0;padding:6px 12px 8px;font-size:11px;opacity:.5;border-top:1px solid var(--color-divider)}html[data-bottom-nav=true] .header-search-input{font-size:16px}.project-agent{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(240px,.8fr);min-height:min(70vh,640px);max-height:min(78vh,720px)}.project-agent-chat{display:flex;flex-direction:column;min-width:0;min-height:0;border-right:1px solid var(--color-divider)}.project-agent-messages{flex:1;min-height:0;overflow-y:auto;padding:16px 18px}.project-agent-empty{display:flex;flex-direction:column;gap:10px;color:var(--color-body-text);font-size:14px;line-height:1.5}.project-agent-empty svg{font-size:22px;color:var(--color-accent)}.project-agent-empty p{margin:0}.project-agent-hint{font-size:12px;opacity:.6}.project-agent-msg{margin-bottom:10px;max-width:92%}.project-agent-msg--user{margin-left:auto}.project-agent-msg-text{margin:0;padding:8px 11px;border-radius:var(--radius-medium);font-size:13px;line-height:1.45;white-space:pre-wrap;word-break:break-word}.project-agent-msg--user .project-agent-msg-text{background:var(--color-accent);color:var(--color-body-background)}.project-agent-msg--assistant .project-agent-msg-text{background:var(--color-stat-item-background);border:1px solid var(--color-divider);color:var(--color-body-text)}.project-agent-msg--pending .project-agent-msg-text{opacity:.7;font-style:italic}.project-agent-error{margin:8px 0 0;font-size:12px;color:var(--color-danger, #c0392b)}.project-agent-suggestions{display:flex;flex-direction:column;gap:6px;padding:0 16px 12px}.project-agent-suggestion{padding:8px 10px;border:1px solid var(--color-divider);border-radius:var(--radius-small);background:var(--color-stat-item-background);color:var(--color-body-text);font-family:var(--font-family-base);font-size:12px;text-align:left;cursor:pointer}.project-agent-suggestion:hover:not(:disabled){border-color:var(--color-accent)}.project-agent-suggestion:disabled{cursor:not-allowed;opacity:.55}.project-agent-compose{display:flex;align-items:flex-end;gap:8px;padding:12px 16px 16px;border-top:1px solid var(--color-divider);background:var(--color-main-header-background)}.project-agent-input{flex:1;min-height:72px;max-height:140px;resize:vertical;padding:10px 12px;font-family:var(--font-family-base);font-size:13px;line-height:1.45;color:var(--color-body-text);background:var(--color-stat-item-background);border:1px solid var(--color-divider);border-radius:var(--radius-medium)}.project-agent-input:focus{outline:none;border-color:var(--color-accent)}.project-agent-send{display:flex;align-items:center;justify-content:center;width:40px;height:40px;flex-shrink:0;border:1px solid var(--color-divider);border-radius:var(--radius-medium);background:var(--color-accent);color:var(--color-body-background);cursor:pointer}.project-agent-send:disabled{cursor:not-allowed;opacity:.45}.project-agent-draft{display:flex;flex-direction:column;min-width:0;padding:16px;background:var(--color-sidebar-secondary-background)}.project-agent-draft header{display:flex;align-items:flex-start;gap:10px;margin-bottom:14px}.project-agent-draft header svg{margin-top:2px;font-size:20px;color:var(--color-accent)}.project-agent-draft h3{margin:0;font-size:15px}.project-agent-draft header p{margin:4px 0 0;font-size:12px;opacity:.6}.project-agent-draft dl{margin:0;display:flex;flex-direction:column;gap:10px}.project-agent-draft-row dt{font-size:11px;letter-spacing:.04em;text-transform:uppercase;opacity:.55}.project-agent-draft-row dd{margin:3px 0 0;font-size:13px;line-height:1.4}.project-agent-draft-row dd.is-empty{opacity:.45;font-style:italic}.project-agent-missing,.project-agent-ready{display:flex;align-items:flex-start;gap:8px;margin:16px 0 0;font-size:12px;line-height:1.4}.project-agent-missing{color:var(--color-body-text);opacity:.8}.project-agent-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:16px}.project-agent-secondary,.project-agent-primary{border-radius:var(--radius-small);font-family:var(--font-family-base);font-size:13px;font-weight:600;cursor:pointer;padding:8px 12px}.project-agent-secondary{background:transparent;border:1px solid var(--color-divider);color:var(--color-body-text)}.project-agent-primary{background:var(--color-accent);border:1px solid var(--color-accent);color:var(--color-body-background)}.project-agent-primary:disabled{cursor:not-allowed;opacity:.45}.dashboard-ai-create{display:inline-flex;align-items:center;gap:8px;margin-top:12px;padding:8px 12px;border:1px solid var(--color-divider);border-radius:var(--radius-small);background:var(--color-stat-item-background);color:var(--color-body-text);font-family:var(--font-family-base);font-size:13px;font-weight:600;cursor:pointer}.dashboard-ai-create:hover{border-color:var(--color-accent)}.dashboard-ai-create svg{color:var(--color-accent)}.project-form--wizard .project-form-ai-banner{flex-shrink:0}.project-form-ai-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 20px;padding:10px 12px;border-bottom:1px solid var(--color-divider);background:var(--color-stat-item-background)}.project-form-ai-banner p{margin:0;font-size:13px;line-height:1.4}.project-form-ai-banner button{flex-shrink:0;border:1px solid var(--color-divider);border-radius:var(--radius-small);background:var(--color-body-background);color:var(--color-body-text);font-family:var(--font-family-base);font-size:12px;font-weight:700;padding:7px 10px;cursor:pointer}.action-modal-content:has(.project-agent){padding:0;display:flex;flex-direction:column;overflow:hidden;min-height:0}.action-modal--expanded:has(.project-agent){width:min(96vw,1100px);height:90vh}.action-modal--expanded .action-modal-content:has(.project-agent){flex:1}.action-modal--expanded .project-agent{flex:1;min-height:0;max-height:none}@media(max-width:840px){.project-agent{grid-template-columns:1fr;max-height:none;min-height:0}.project-agent-chat{border-right:none;border-bottom:1px solid var(--color-divider);min-height:360px}}:root{--g-arrow-color: #1f2937;--g-bar-color: #fff;--g-bar-border: #fff;--g-tick-color-thick: #ededed;--g-tick-color: #f3f3f3;--g-actions-background: #f3f3f3;--g-border-color: #ebeff2;--g-text-muted: #7c7c7c;--g-text-light: #fff;--g-text-dark: #171717;--g-progress-color: #dbdbdb;--g-handle-color: #37352f;--g-weekend-label-color: #dcdce4;--g-expected-progress: #c4c4e9;--g-header-background: #fff;--g-row-color: #fdfdfd;--g-row-border-color: #c7c7c7;--g-today-highlight: #37352f;--g-popup-actions: #ebeff2;--g-weekend-highlight-color: #f7f7f7}html[data-theme=dark]{--g-arrow-color: #e5e5e5;--g-bar-color: #2a2a2a;--g-bar-border: #3a3a3a;--g-tick-color-thick: #1a1a1a;--g-tick-color: #0a0a0a;--g-actions-background: #1a1a1a;--g-border-color: #2a2a2a;--g-text-muted: #999999;--g-text-light: #ffffff;--g-text-dark: #f5f5f5;--g-progress-color: #4a4a4a;--g-handle-color: #d0d0d0;--g-weekend-label-color: #3a3a3a;--g-expected-progress: #5a5a5a;--g-header-background: #0a0a0a;--g-row-color: #141414;--g-row-border-color: #2a2a2a;--g-today-highlight: #999999;--g-popup-actions: #1a1a1a;--g-weekend-highlight-color: #0f0f0f}.gantt-container{line-height:14.5px;position:relative;overflow:auto;font-size:12px;height:var(--gv-grid-height);width:100%;border-radius:8px;isolation:isolate}.gantt-container .popup-wrapper{position:absolute;top:0;left:0;background:var(--g-header-background);box-shadow:0 10px 24px -3px #0003;padding:10px;border-radius:5px;width:max-content;z-index:1000}.gantt-container .popup-wrapper .title{margin-bottom:2px;color:var(--g-text-dark);font-size:.85rem;font-weight:650;line-height:15px}.gantt-container .popup-wrapper .subtitle{color:var(--g-text-dark);font-size:.8rem;margin-bottom:5px}.gantt-container .popup-wrapper .details{color:var(--g-text-muted);font-size:.7rem}.gantt-container .popup-wrapper .actions{margin-top:10px;margin-left:3px}.gantt-container .popup-wrapper .action-btn{border:none;padding:5px 8px;background-color:var(--g-popup-actions);border-right:1px solid var(--g-border-color)}.gantt-container .popup-wrapper .action-btn:hover{filter:brightness(97%)}.gantt-container .popup-wrapper .action-btn:first-child{border-top-left-radius:4px;border-bottom-left-radius:4px}.gantt-container .popup-wrapper .action-btn:last-child{border-right:none;border-top-right-radius:4px;border-bottom-right-radius:4px}.gantt-container .grid-header{height:calc(var(--gv-lower-header-height) + var(--gv-upper-header-height) + 10px);background-color:var(--g-header-background);position:sticky;top:0;left:0;border-bottom:1px solid var(--g-row-border-color);z-index:1000}.gantt-container .lower-text,.gantt-container .upper-text{text-anchor:middle}.gantt-container .upper-header{height:var(--gv-upper-header-height)}.gantt-container .lower-header{height:var(--gv-lower-header-height)}.gantt-container .lower-text{font-size:12px;position:absolute;width:calc(var(--gv-column-width) * .8);height:calc(var(--gv-lower-header-height) * .8);margin:0 calc(var(--gv-column-width) * .1);align-content:center;text-align:center;color:var(--g-text-muted)}.gantt-container .upper-text{position:absolute;width:fit-content;font-weight:500;font-size:14px;color:var(--g-text-dark);height:calc(var(--gv-lower-header-height) * .66)}.gantt-container .current-upper{position:sticky;left:0!important;padding-left:17px;background:var(--g-header-background)}.gantt-container .side-header{position:sticky;top:0;right:0;float:right;z-index:1000;line-height:20px;font-weight:400;width:max-content;margin-left:auto;padding-right:10px;padding-top:10px;background:var(--g-header-background);display:flex}.gantt-container .side-header *{transition-property:background-color;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;background-color:var(--g-actions-background);border-radius:.5rem;border:none;padding:5px 8px;color:var(--g-text-dark);font-size:14px;letter-spacing:.02em;font-weight:420;box-sizing:content-box;margin-right:5px}.gantt-container .side-header *:last-child{margin-right:0}.gantt-container .side-header *:hover{filter:brightness(97.5%)}.gantt-container .side-header select{width:60px;padding-top:2px;padding-bottom:2px}.gantt-container .side-header select:focus{outline:none}.gantt-container .date-range-highlight{background-color:var(--g-progress-color);border-radius:12px;height:calc(var(--gv-lower-header-height) - 6px);top:calc(var(--gv-upper-header-height) + 5px);position:absolute}.gantt-container .current-highlight{position:absolute;background:var(--g-today-highlight);width:1px;z-index:999}.gantt-container .current-ball-highlight{position:absolute;background:var(--g-today-highlight);z-index:1001;border-radius:50%}.gantt-container .current-date-highlight{background:var(--g-today-highlight);color:var(--g-text-light);border-radius:5px}.gantt-container .holiday-label{position:absolute;top:0;left:0;opacity:0;z-index:1000;background:var(--g-weekend-label-color);border-radius:5px;padding:2px 5px}.gantt-container .holiday-label.show{opacity:100}.gantt-container .extras{position:sticky;left:0}.gantt-container .extras .adjust{position:absolute;left:8px;top:calc(var(--gv-grid-height) - 60px);background-color:var(--g-actions-background);color:var(--g-text-light);border:none;padding:8px;border-radius:3px}.gantt-container .hide{display:none}.gantt{user-select:none;-webkit-user-select:none;position:absolute}.gantt .grid-background{fill:none}.gantt .grid-row{fill:var(--g-row-color)}.gantt .row-line{stroke:var(--g-border-color)}.gantt .tick{stroke:var(--g-tick-color);stroke-width:.4}.gantt .tick.thick{stroke:var(--g-tick-color-thick);stroke-width:.7}.gantt .arrow{fill:none;stroke:var(--g-arrow-color);stroke-width:1.5}.gantt .bar-wrapper .bar{fill:var(--g-bar-color);stroke:var(--g-bar-border);stroke-width:0;transition:stroke-width .3s ease}.gantt .bar-progress{fill:var(--g-progress-color);border-radius:4px}.gantt .bar-expected-progress{fill:var(--g-expected-progress)}.gantt .bar-invalid{fill:transparent;stroke:var(--g-bar-border);stroke-width:1;stroke-dasharray:5}:is(.gantt .bar-invalid)~.bar-label{fill:var(--g-text-light)}.gantt .bar-label{fill:var(--g-text-dark);dominant-baseline:central;font-family:Helvetica;font-size:13px;font-weight:400}.gantt .bar-label.big{fill:var(--g-text-dark);text-anchor:start}.gantt .handle{fill:var(--g-handle-color);opacity:0;transition:opacity .3s ease}.gantt .handle.active,.gantt .handle.visible{cursor:ew-resize;opacity:1}.gantt .handle.progress{fill:var(--g-text-muted)}.gantt .bar-wrapper{cursor:pointer}.gantt .bar-wrapper .bar{outline:1px solid var(--g-row-border-color);border-radius:3px}.gantt .bar-wrapper:hover .bar{transition:transform .3s ease}.gantt .bar-wrapper:hover .date-range-highlight{display:block}.gantt .grid-column{fill:transparent;pointer-events:all}.gantt .grid-column:hover{fill:var(--g-weekend-highlight-color);transition:fill .1s ease}.planning-gantt-container{width:100%;height:600px;min-height:600px;overflow:hidden;position:relative;background:var(--color-body-background);display:block}.planning-gantt-container .gantt-container,.planning-gantt-container.gantt-container,.gantt-container{--gv-grid-height: 600px;height:600px!important;width:100%!important;display:block!important;position:relative!important;background:var(--color-body-background);--g-row-color: var(--color-body-background);--g-row-border-color: var(--color-divider);--g-header-background: var(--color-sidebar-secondary-background);--g-border-color: var(--color-divider);--g-tick-color: rgba(128, 128, 128, .3);--g-tick-color-thick: rgba(128, 128, 128, .5);--g-text-dark: var(--color-body-text);--g-text-muted: rgba(179, 179, 179, .6);--g-text-light: #fff;--g-actions-background: var(--color-hover-light);--g-popup-actions: var(--color-hover-light);--g-arrow-color: var(--color-body-text);--g-progress-color: rgba(var(--color-accent-rgb), .4);--g-handle-color: var(--color-accent);--g-today-highlight: var(--planning-current-day);--g-weekend-highlight-color: rgba(128, 128, 128, .1);--g-weekend-label-color: var(--color-divider);--g-expected-progress: rgba(var(--color-priority-medium-bg));--g-bar-color: var(--color-accent);--g-bar-border: var(--color-divider)}.planning-gantt-container .side-header,.gantt-container .side-header{display:none!important}.planning-gantt-container .gantt-container{scrollbar-width:thin;scrollbar-color:var(--color-scroll-thumb) var(--color-scroll-track);font-family:var(--font-family-base)}.planning-gantt-container .gantt-container::-webkit-scrollbar{width:8px;height:8px}.planning-gantt-container .gantt-container::-webkit-scrollbar-track{background:var(--color-scroll-track)}.planning-gantt-container .gantt-container::-webkit-scrollbar-thumb{background-color:var(--color-scroll-thumb);border-radius:var(--radius-small)}.gantt-container .extras{background:var(--color-body-background)}.gantt-container .extras .bar-label.big{fill:var(--g-text-dark)!important;font-family:var(--font-family-base)!important;font-weight:500!important;font-size:13px!important;text-anchor:start!important}.gantt .bar-label.big{fill:var(--g-text-dark)!important;font-family:var(--font-family-base)!important;font-weight:500!important;font-size:13px!important}.gantt .grid-row{stroke-width:0}.gantt .arrow{stroke:var(--g-arrow-color)!important;stroke-width:1.5px!important;opacity:.8}.gantt .bar-wrapper .bar.gantt-lot,.gantt .bar-wrapper .bar.gantt-lot-summary{stroke-width:2px!important;stroke:var(--color-accent)!important;opacity:1!important;filter:drop-shadow(0 2px 4px rgba(var(--color-accent-rgb),.3))}.gantt .bar-wrapper .bar.gantt-task{stroke-width:1.5px!important;stroke:var(--color-divider)!important;opacity:1!important;filter:drop-shadow(0 1px 2px rgba(0,0,0,.2))}.gantt .bar-wrapper .bar.gantt-task-level-0{fill:var(--color-accent)!important}.gantt .bar-wrapper .bar.gantt-task-level-1{fill:var(--color-priority-low)!important}.gantt .bar-wrapper .bar.gantt-task-level-2{fill:var(--color-priority-medium)!important}.gantt .bar-wrapper .bar.gantt-task-level-3{fill:var(--color-priority-high)!important}.gantt .bar-label.gantt-lot{font-weight:600!important;font-size:13px!important;fill:var(--g-text-light)!important;filter:drop-shadow(0 1px 2px rgba(0,0,0,.8));text-shadow:0 1px 2px rgba(0,0,0,.8)}.gantt .bar-label.gantt-task{font-weight:500!important;font-size:12px!important;fill:var(--g-text-light)!important;filter:drop-shadow(0 1px 2px rgba(0,0,0,.8));text-shadow:0 1px 2px rgba(0,0,0,.8)}.gantt .bar-label.big{fill:var(--g-text-light)!important;font-weight:500!important}.gantt .bar-label.gantt-task-level-1:before{content:"  "}.gantt .bar-label.gantt-task-level-2:before{content:"    "}.gantt .bar-label.gantt-task-level-3:before{content:"      "}.planning-toolbar{display:flex;align-items:flex-start;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--color-divider);background:var(--color-sidebar-secondary-background);gap:16px;flex-shrink:0}.planning-toolbar-title{min-width:0}.planning-toolbar-title h2{margin:0;font-size:16px;font-weight:600;color:var(--color-body-text);font-family:var(--font-family-base)}.planning-toolbar-title p{margin:4px 0 0;font-size:12px;opacity:.75;color:var(--color-body-text);font-family:var(--font-family-base)}.planning-banner{margin:0;padding:8px 16px;font-size:12px;line-height:1.4;background:var(--color-stat-item-background);border-bottom:1px solid var(--color-divider);color:var(--color-body-text);flex-shrink:0}.planning-banner--error{color:var(--color-priority-high, #c75a45)}.planning-toolbar-controls{display:flex;align-items:center;gap:8px}.planning-view-mode-selector{display:flex;gap:0;border:1px solid var(--color-divider);border-radius:var(--radius-small);overflow:hidden;background:var(--color-body-background)}.planning-view-mode-button{padding:6px 12px;background:var(--color-body-background);border:none;border-right:1px solid var(--color-divider);color:var(--color-body-text);font-size:12px;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap;font-family:var(--font-family-base)}.planning-view-mode-button:last-child{border-right:none}.planning-view-mode-button:hover{background:var(--color-hover-light)}.planning-view-mode-button.active{background:var(--color-accent);color:#fff;font-weight:600}.planning-toolbar-separator{width:1px;height:24px;background:var(--color-divider);margin:0 8px;flex-shrink:0}.planning-toolbar-button-today{display:flex;align-items:center;gap:6px;padding:6px 12px;background:var(--color-body-background);border:1px solid var(--color-divider);border-radius:var(--radius-small);color:var(--color-body-text);font-size:12px;cursor:pointer;transition:all .2s;white-space:nowrap;font-family:var(--font-family-base)}.planning-toolbar-button-today:hover{background:var(--color-hover-light);border-color:var(--color-accent);color:var(--color-accent)}.planning-toolbar-button-today span{font-size:12px;font-weight:500}.planning-lots-panel{width:250px;flex-shrink:0;border-right:1px solid var(--color-divider);background:var(--color-sidebar-secondary-background);display:flex;flex-direction:column;overflow:hidden;min-height:0;padding:0}.planning-lots-header{height:var(--planning-header-height, 85px);min-height:var(--planning-header-height, 85px);max-height:var(--planning-header-height, 85px);box-sizing:border-box;display:flex;align-items:flex-end;padding:0 12px 10px;border-bottom:1px solid var(--color-divider);background:var(--color-sidebar-secondary-background);flex-shrink:0}.planning-gantt-container .grid-header{box-sizing:border-box}.planning-lots-panel h3,.planning-lots-header h3{font-size:13px;font-weight:600;margin:0;padding:0;color:var(--color-body-text);border:none;font-family:var(--font-family-base);line-height:1.2}.planning-lots-body{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden}.planning-lot-item{display:flex;align-items:center;gap:8px;height:var(--planning-row-height, 42px);min-height:var(--planning-row-height, 42px);max-height:var(--planning-row-height, 42px);box-sizing:border-box;padding:0 8px;margin:0;border-radius:0;border-bottom:1px solid var(--color-divider);cursor:default;transition:background .2s}.planning-lot-item.is-group{cursor:pointer}.planning-lot-item:hover,.planning-lot-item.expanded{background:var(--color-hover-light)}.planning-lot-item.is-task .planning-lot-name{font-weight:400;font-size:11px}.planning-lot-toggle{width:16px;height:16px;display:flex;align-items:center;justify-content:center;border:1px solid var(--color-divider);border-radius:var(--radius-small);background:var(--color-body-background);cursor:pointer;font-size:10px;flex-shrink:0;transition:all .2s;color:var(--color-body-text)}.planning-lot-toggle-spacer{width:16px;height:16px;flex-shrink:0}.planning-lot-toggle:hover{border-color:var(--color-accent);background:var(--color-accent);color:#fff}.planning-lot-toggle:before{content:"▶";display:block;transition:transform .2s}.planning-lot-toggle.expanded:before{transform:rotate(90deg)}.planning-lot-name{flex:1;font-size:12px;color:var(--color-body-text);font-weight:500;font-family:var(--font-family-base)}.planning-lot-progress{font-size:11px;color:var(--color-body-text);min-width:40px;text-align:right;font-family:var(--font-family-number);opacity:.7}.planning-layout{display:flex;flex:1 1 auto;min-height:0;height:auto;width:100%;--planning-header-height: 85px;--planning-row-height: 42px}.planning-gantt-wrapper{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0;min-height:0}.planning-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;height:100%;min-height:240px;padding:24px;color:var(--color-body-text);font-size:14px;opacity:.85;font-family:var(--font-family-base);text-align:center}.planning-empty p{margin:0;max-width:420px;opacity:.8}.gantt-container .upper-text{fill:var(--g-text-dark)!important;font-weight:500!important;font-size:13px!important}.gantt-container .lower-text{fill:var(--g-text-muted)!important;font-size:11px!important}.gantt-container .lower-text{opacity:.8}.gantt-container .grid-header{font-family:var(--font-family-base)!important}.gantt-container .current-highlight,.gantt-container .current-ball-highlight,.gantt-container .current-date-highlight{background:var(--planning-current-day);fill:var(--planning-current-day);stroke:var(--planning-current-day)}.gantt .row-line{stroke:var(--g-border-color)!important;opacity:.6}.gantt .tick{stroke:var(--g-tick-color)!important;opacity:.4}.gantt .tick.thick{stroke:var(--g-tick-color-thick)!important;opacity:.6}.gantt .grid-background{fill:none!important}.gantt .grid-row{fill:var(--g-row-color)!important}.gantt .grid-row:nth-child(2n){fill:var(--color-stat-item-background)!important}.gantt-container .grid-header{background-color:var(--g-header-background)!important;border-bottom:1px solid var(--g-row-border-color)!important}.gantt-container .current-upper{background:var(--g-header-background)!important;color:var(--g-text-dark)!important}.gantt-container .side-header{background:var(--g-header-background)!important}.gantt-container .side-header button,.gantt-container .side-header select{background-color:var(--g-actions-background)!important;border:1px solid var(--color-divider)!important;color:var(--g-text-dark)!important;font-family:var(--font-family-base)!important}.gantt-container .side-header button:hover,.gantt-container .side-header select:hover{background-color:var(--color-hover-light)!important;border-color:var(--color-accent)!important}.gantt-container .side-header select{background-color:var(--color-body-background)!important}.gantt .bar-wrapper .bar{outline:1px solid var(--g-row-border-color)!important;outline-offset:-1px}.gantt-container .upper-text{fill:var(--g-text-dark)!important;color:var(--g-text-dark)!important}.gantt-container .lower-text{fill:var(--g-text-muted)!important;color:var(--g-text-muted)!important}.gantt-container .popup-wrapper{background:var(--color-sidebar-secondary-background)!important;border:1px solid var(--color-divider)!important;color:var(--color-body-text)!important;box-shadow:0 4px 12px #0006!important}.gantt-container .popup-wrapper .title{color:var(--g-text-dark)!important}.gantt-container .popup-wrapper .subtitle{color:var(--g-text-dark)!important;opacity:.9}.gantt-container .popup-wrapper .details{color:var(--g-text-muted)!important}.gantt-container .popup-wrapper .action-btn{background-color:var(--g-popup-actions)!important;border-right:1px solid var(--color-divider)!important;color:var(--g-text-dark)!important}.gantt-container .popup-wrapper .action-btn:hover{background-color:var(--color-hover-light)!important;opacity:1}.gantt-container .date-range-highlight{background-color:var(--g-progress-color)!important}.gantt-container .holiday-label{background:var(--g-weekend-label-color)!important}.planning-legend{flex-shrink:0}.gantt .bar-wrapper.gantt-realization-prevision .bar,.gantt .bar-wrapper .bar.gantt-realization-prevision{fill:var(--planning-realization-prevision)!important}.gantt .bar-wrapper.gantt-realization-reality .bar,.gantt .bar-wrapper .bar.gantt-realization-reality{fill:var(--planning-realization-reality)!important}.gantt .bar-wrapper.gantt-validation-prevision .bar,.gantt .bar-wrapper .bar.gantt-validation-prevision{fill:var(--planning-validation-prevision)!important}.gantt .bar-wrapper.gantt-validation-reality .bar,.gantt .bar-wrapper .bar.gantt-validation-reality{fill:var(--planning-validation-reality)!important}.gantt .bar-wrapper.gantt-instruction-prevision .bar,.gantt .bar-wrapper .bar.gantt-instruction-prevision{fill:var(--planning-instruction-prevision)!important}.gantt .bar-wrapper.gantt-instruction-reality .bar,.gantt .bar-wrapper .bar.gantt-instruction-reality{fill:var(--planning-instruction-reality)!important}.gantt .bar-wrapper.gantt-prevision .bar,.gantt .bar-wrapper .bar.gantt-prevision{fill:var(--planning-construction-prevision)!important}.gantt .bar-wrapper.gantt-reality .bar,.gantt .bar-wrapper .bar.gantt-reality{fill:var(--planning-construction-reality)!important}.gantt .bar-wrapper.gantt-works-level-0 .bar,.gantt .bar-wrapper .bar.gantt-works-level-0{fill:#4a86e8!important}.gantt .bar-wrapper.gantt-works-level-1 .bar,.gantt .bar-wrapper .bar.gantt-works-level-1{fill:#6aa84f!important}.gantt .bar-wrapper.gantt-works-level-2 .bar,.gantt .bar-wrapper .bar.gantt-works-level-2{fill:#e69138!important}.bde-panel{display:flex;flex-direction:column;gap:16px;padding:8px 4px 24px;color:var(--color-body-text)}.bde-panel-header h2{margin:4px 0 8px;font-size:26px;font-weight:600}.bde-panel-header p{margin:0;max-width:72ch;line-height:1.5;opacity:.82}.bde-kicker{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;opacity:.62}.bde-fixture-flag{margin-top:10px!important;color:var(--color-warning, #d4a017);font-size:13px}.bde-legal-banner{display:flex;flex-direction:column;gap:4px;padding:12px 14px;border:1px solid rgba(var(--color-warning-rgb, 212, 160, 23),.45);border-radius:var(--radius-medium, 10px);background:#d4a0171f}.bde-legal-banner strong{font-size:12px;letter-spacing:.05em;text-transform:uppercase}.bde-legal-banner p{margin:0;font-size:13px;line-height:1.45}.bde-grid,.bde-later{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px}.bde-card{display:flex;flex-direction:column;gap:12px;padding:16px;border:1px solid var(--color-divider);border-radius:var(--radius-medium, 10px);background:var(--color-stat-item-background, var(--color-sidebar-main-background))}.bde-card.is-disabled{opacity:.62}.bde-card-header{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px}.bde-card h3,.bde-card-header h3{margin:0;font-size:16px}.bde-subtitle{margin:4px 0 0;font-size:13px;font-weight:600}.bde-muted{margin:0;font-size:13px;opacity:.72}.bde-notice{margin:0;font-size:13px;line-height:1.45}.bde-dropzone{display:flex;flex-direction:column;align-items:center;gap:8px;padding:22px 12px;border:1px dashed var(--color-divider);border-radius:var(--radius-medium, 10px);text-align:center}.bde-dropzone svg{width:28px;height:28px;opacity:.7}.bde-dropzone.is-busy{opacity:.6}.bde-file-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px;font-size:13px}.bde-file-list .bde-kicker{margin-right:8px;min-width:72px}.bde-actions{display:flex;flex-wrap:wrap;gap:8px}.bde-button{border:1px solid var(--color-divider);border-radius:8px;background:var(--color-hover-light, rgba(255, 255, 255, .04));color:var(--color-body-text);padding:8px 12px;font-size:13px;cursor:pointer}.bde-button:disabled{opacity:.5;cursor:not-allowed}.bde-button-primary{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-on-accent, #fff)}.bde-progress{height:8px;border-radius:99px;background:#ffffff14;overflow:hidden}.bde-progress span{display:block;height:100%;background:var(--color-accent)}.bde-status-chip{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:3px 8px;border-radius:99px;background:#ffffff14}.bde-status-chip--succeeded{background:rgba(var(--color-success-rgb, 47, 158, 68),.2);color:var(--color-success)}.bde-status-chip--failed,.bde-status-chip--cancelled{background:rgba(var(--color-danger-rgb, 196, 64, 64),.18);color:var(--color-danger)}.bde-status-chip--running,.bde-status-chip--pending{background:rgba(var(--color-accent-rgb, 64, 96, 138),.22)}.bde-job-meta p{margin:0 0 4px;font-size:13px}.bde-job-meta .bde-kicker{margin-right:8px}.bde-alert{margin:0;padding:10px 12px;border-radius:8px;font-size:13px}.bde-alert--error{background:rgba(var(--color-danger-rgb, 196, 64, 64),.14);border:1px solid rgba(var(--color-danger-rgb, 196, 64, 64),.35)}.bde-alert--info{background:rgba(var(--color-info-rgb, 64, 96, 138),.14);border:1px solid rgba(var(--color-accent-rgb, 64, 96, 138),.3)}.bde-alert-inline{color:var(--color-danger);font-style:normal}.bde-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin:0}.bde-facts div{padding:8px 10px;border-radius:8px;background:var(--color-body-background)}.bde-facts dt{font-size:11px;text-transform:uppercase;letter-spacing:.04em;opacity:.6}.bde-facts dd{margin:4px 0 0;font-size:15px;font-weight:600}.bde-table-wrap{overflow:auto}.bde-table{width:100%;border-collapse:collapse;font-size:13px}.bde-table th,.bde-table td{text-align:left;padding:8px 6px;border-bottom:1px solid var(--color-divider);vertical-align:top}.bde-table th{font-size:11px;text-transform:uppercase;letter-spacing:.04em;opacity:.65}.bde-mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.bde-pill{display:inline-block;margin-left:6px;padding:1px 6px;border-radius:99px;font-size:10px;letter-spacing:.04em;text-transform:uppercase;background:#ffffff14}.bde-inline-list{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}.bde-inline-list li{display:flex;flex-direction:column;gap:2px;padding:8px 10px;border-radius:8px;background:var(--color-body-background);font-size:13px}.bde-scales{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}.bde-scale-caption{margin:0 0 8px;font-size:12px;font-weight:600}.bde-scale ol{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:3px}.bde-scale li{display:flex;align-items:center;justify-content:space-between;min-height:22px;padding:2px 8px;border-radius:3px;font-size:12px;font-weight:700;opacity:.42}.bde-scale li.is-active{opacity:1;outline:2px solid var(--color-body-text);outline-offset:1px}@media(max-width:720px){.bde-panel-header h2{font-size:22px}.bde-table{min-width:640px}}.settings-read-section{display:flex;flex-direction:column;gap:14px}.settings-read-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.settings-read-heading h2{margin:0 0 6px}.settings-pencil-button{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;flex-shrink:0;border:1px solid var(--color-divider);border-radius:var(--radius-small);background:transparent;color:var(--color-body-text);cursor:pointer;padding:0;font:inherit}.settings-pencil-button:hover,.settings-pencil-button:focus-visible{border-color:var(--color-accent);color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-shadow);outline:none}.settings-read-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px 16px}.settings-read-field{display:flex;flex-direction:column;gap:4px;min-width:0}.settings-read-label{color:var(--color-body-text);font-size:12px;opacity:.62}.settings-read-value{color:var(--color-body-text);font-size:14px;line-height:1.4;word-break:break-word}.settings-read-table{width:100%;border-collapse:collapse;font-size:13px}.settings-read-table th,.settings-read-table td{padding:8px 10px;border-bottom:1px solid var(--color-divider);text-align:left;vertical-align:top}.settings-read-table th{opacity:.7;font-weight:600}.settings-read-badge{display:inline-flex;align-items:center;padding:2px 7px;border:1px solid var(--color-divider);border-radius:999px;font-size:11px;opacity:.85}.settings-read-badge.is-required{border-color:var(--color-accent);color:var(--color-accent);opacity:1}.settings-edit-modal-body{display:flex;flex-direction:column;gap:16px;min-width:min(720px,100%)}.settings-branding-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);gap:18px;align-items:start}.settings-branding-accordions{display:flex;flex-direction:column;gap:10px;min-width:0}.settings-branding-accordion{border:1px solid var(--color-divider);border-radius:var(--radius-large);background:var(--color-sidebar-main-background);overflow:hidden}.settings-branding-accordion-trigger{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:14px 16px;border:0;background:transparent;color:var(--color-body-text);cursor:pointer;text-align:left;font:inherit}.settings-branding-accordion-trigger h2{margin:0;font-size:16px}.settings-branding-accordion-trigger p{margin:4px 0 0;font-size:13px;opacity:.68}.settings-branding-accordion.is-open .settings-branding-accordion-trigger{border-bottom:1px solid var(--color-divider)}.settings-branding-accordion-body{padding:14px 16px 16px;display:flex;flex-direction:column;gap:12px}.settings-branding-preview-pane{position:sticky;top:16px;border:1px solid var(--color-divider);border-radius:var(--radius-large);background:var(--color-sidebar-main-background);padding:16px;min-height:280px}.settings-branding-preview-pane h3{margin:0 0 12px;font-size:14px}.settings-logo-preview-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.settings-logo-preview-card{border:1px solid var(--color-divider);border-radius:var(--radius-medium);padding:8px;display:flex;flex-direction:column;gap:6px;min-height:96px}.settings-logo-preview-card.is-dark{background:#1a1918;color:#d8d8d8}.settings-logo-preview-card.is-light{background:#f4f3f0;color:#2a2928}.settings-logo-preview-card span{font-size:11px;opacity:.7}.settings-logo-preview-card img{width:100%;height:56px;object-fit:contain}.settings-theme-swatches{display:flex;flex-direction:column;gap:8px}.settings-theme-swatch{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--color-divider);border-radius:var(--radius-medium)}.settings-theme-swatch.is-selected{border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-shadow)}.settings-theme-swatch-dot{width:22px;height:22px;border-radius:50%;flex-shrink:0}.settings-theme-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.settings-theme-choice{display:flex;flex-direction:column;gap:8px;padding:12px;border:1px solid var(--color-divider);border-radius:var(--radius-medium);background:transparent;color:var(--color-body-text);cursor:pointer;text-align:left;font:inherit}.settings-theme-choice.is-selected{border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-shadow)}.settings-theme-dual-preview{display:grid;grid-template-columns:1fr 1fr;gap:8px}.settings-theme-chrome{border-radius:var(--radius-medium);overflow:hidden;min-height:88px;border:1px solid var(--color-divider)}.settings-theme-chrome-bar{height:22px;display:flex;align-items:center;padding:0 8px;font-size:11px}.settings-theme-chrome-body{padding:10px;font-size:12px}.settings-doc-preview{background:#f7f4ee;color:#2a2724;border-radius:var(--radius-medium);padding:18px 16px;min-height:260px;box-shadow:inset 0 0 0 1px #0000000f}.settings-doc-preview-title{margin:0 0 10px}.settings-doc-preview-quote{margin:12px 0;padding-left:10px;border-left:3px solid currentColor;font-style:italic}.settings-doc-preview-caption{margin:8px 0 0;opacity:.75}.settings-doc-preview-highlight{padding:1px 4px;border-radius:3px}.settings-folder-family-read{display:flex;flex-direction:column;gap:8px}.settings-folder-family-read h3{margin:0;font-size:14px;display:flex;align-items:center;gap:8px}.settings-folder-family-read ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:4px}.settings-folder-family-read li{display:flex;align-items:center;gap:8px;font-size:13px}.settings-folder-code{font-family:var(--font-family-number);opacity:.7;min-width:2.4em}.settings-rules-copy{display:flex;flex-direction:column;gap:8px}.settings-rules-copy p{margin:0}@media(max-width:900px){.settings-branding-layout,.settings-theme-choice-grid,.settings-theme-dual-preview{grid-template-columns:1fr}.settings-branding-preview-pane{position:static}}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--color-sidebar-main-background, #242526);padding:1.5rem}.login-card{width:100%;max-width:400px;display:flex;flex-direction:column;align-items:center;gap:.75rem}.login-logo{max-width:200px;width:70%;height:auto;object-fit:contain}.login-subtitle{margin:.25rem 0 1rem;font-size:.9rem;color:var(--color-text-secondary, #b0b3b8);text-align:center}.login-form{width:100%;display:flex;flex-direction:column;gap:1rem}.login-field{display:flex;flex-direction:column;gap:.35rem;font-size:.85rem;color:var(--color-text-secondary, #b0b3b8)}.login-field input{padding:.65rem .75rem;border-radius:6px;border:1px solid var(--color-border, #3a3b3c);background:var(--color-bg-secondary, #18191a);color:var(--color-text-primary, #f5f5f5);font-size:1rem}.login-field input:focus{outline:2px solid var(--color-accent, #2d88ff);outline-offset:1px}.login-error{margin:0;font-size:.85rem;color:#f87171}.login-submit{margin-top:.5rem;padding:.75rem 1rem;border:none;border-radius:6px;background:var(--color-accent, #2d88ff);color:#fff;font-size:1rem;font-weight:600;cursor:pointer}.login-submit:disabled{opacity:.6;cursor:not-allowed}.auth-loading{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--color-sidebar-main-background, #242526);color:var(--color-text-secondary, #b0b3b8)}.demo-profile-gate{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--color-sidebar-main-background, #242526);padding:1.5rem}.demo-profile-card{width:100%;max-width:520px;display:flex;flex-direction:column;align-items:center;gap:.75rem}.demo-profile-logo{max-width:200px;width:70%;height:auto;object-fit:contain}.demo-profile-title{margin:.5rem 0 0;font-size:1.35rem;font-weight:600;color:var(--color-text-primary, #f5f5f5);text-align:center}.demo-profile-subtitle{margin:0 0 1rem;font-size:.9rem;line-height:1.45;color:var(--color-text-secondary, #b0b3b8);text-align:center}.demo-profile-roles{width:100%;display:flex;flex-direction:column;gap:.65rem}.demo-profile-role{display:flex;align-items:flex-start;gap:.85rem;width:100%;padding:.85rem 1rem;border:1px solid var(--color-border, #3a3b3c);border-radius:8px;background:var(--color-bg-secondary, #18191a);color:var(--color-text-primary, #f5f5f5);text-align:left;cursor:pointer;transition:border-color .15s,background .15s}.demo-profile-role:hover{border-color:var(--color-accent, #2d88ff);background:#2d88ff14}.demo-profile-role:focus-visible{outline:2px solid var(--color-accent, #2d88ff);outline-offset:2px}.demo-profile-role-icon{font-size:1.5rem;line-height:1;flex-shrink:0}.demo-profile-role-text{display:flex;flex-direction:column;gap:.2rem}.demo-profile-role-label{font-size:1rem;font-weight:600}.demo-profile-role-desc{font-size:.8rem;line-height:1.35;color:var(--color-text-secondary, #b0b3b8)}.demo-profile-footnote{margin:.75rem 0 0;font-size:.75rem;color:var(--color-text-secondary, #888);text-align:center}.demo-header-badges{display:flex;align-items:center;gap:.5rem;flex-shrink:0;margin-right:.75rem}.demo-mode-badge{display:inline-flex;align-items:center;padding:.2rem .55rem;border-radius:4px;font-size:.65rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#1a1918;background:linear-gradient(135deg,#f5c542,#e8a317);box-shadow:0 0 0 1px #00000026}.demo-profile-badge{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .55rem;border-radius:4px;font-size:.75rem;font-weight:500;color:var(--color-text-primary, #f5f5f5);background:#ffffff14;border:1px solid var(--color-border, #3a3b3c)}.user-menu-change-role{width:100%;margin-bottom:.5rem;padding:.55rem .75rem;border:1px solid var(--color-border, #3a3b3c);border-radius:6px;background:transparent;color:var(--color-text-primary, #f5f5f5);font-size:.85rem;cursor:pointer;text-align:left;display:inline-flex;align-items:center;gap:.4rem}.user-menu-change-role:hover{background:#ffffff0f}.demo-toast-container{position:fixed;bottom:1.25rem;right:1.25rem;z-index:10050;display:flex;flex-direction:column;gap:.5rem;max-width:min(360px,calc(100vw - 2rem));pointer-events:none}.demo-toast{padding:.75rem 1rem;border-radius:8px;font-size:.85rem;line-height:1.4;color:#f5f5f5;background:#2a2b2c;border:1px solid #3a3b3c;box-shadow:0 8px 24px #00000059;opacity:0;transform:translateY(8px);transition:opacity .25s,transform .25s}.demo-toast.is-visible{opacity:1;transform:translateY(0)}.demo-toast--success{border-color:#34a853;background:#1e2e22}.demo-toast--blocked{border-color:#e8a317;background:#2e2818}.demo-tour-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10040;pointer-events:none}.demo-tour-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0000008c;pointer-events:auto}.demo-tour-spotlight{position:fixed;border-radius:10px;box-shadow:0 0 0 9999px #0000008c;border:2px solid #f5c542;pointer-events:none;z-index:1}.demo-tour-card{position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%);width:min(440px,calc(100vw - 2rem));padding:1.1rem 1.25rem;border-radius:12px;background:var(--color-bg-secondary, #18191a);border:1px solid var(--color-border, #3a3b3c);box-shadow:0 12px 40px #00000073;pointer-events:auto;z-index:2}.demo-tour-kicker{margin:0 0 .35rem;font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;color:#f5c542}.demo-tour-title{margin:0 0 .5rem;font-size:1.1rem;color:var(--color-text-primary, #f5f5f5)}.demo-tour-body{margin:0 0 1rem;font-size:.88rem;line-height:1.45;color:var(--color-text-secondary, #b0b3b8)}.demo-tour-actions{display:flex;justify-content:flex-end;gap:.5rem}.demo-tour-btn{padding:.5rem .9rem;border-radius:6px;font-size:.85rem;cursor:pointer;border:1px solid transparent}.demo-tour-btn--ghost{background:transparent;border-color:var(--color-border, #3a3b3c);color:var(--color-text-secondary, #b0b3b8)}.demo-tour-btn--primary{background:var(--color-accent, #2d88ff);color:#fff;font-weight:600}.demo-scenario-panel{margin:0 0 1.25rem;padding:1rem 1.1rem;border-radius:10px;border:1px solid var(--color-border, #3a3b3c);background:#2d88ff0f}.demo-scenario-header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.75rem;margin-bottom:.85rem}.demo-scenario-title{margin:0;font-size:1rem;font-weight:600}.demo-scenario-subtitle{margin:.25rem 0 0;font-size:.8rem;color:var(--color-text-secondary, #b0b3b8)}.demo-scenario-cta{padding:.55rem .9rem;border:none;border-radius:6px;background:var(--color-accent, #2d88ff);color:#fff;font-size:.85rem;font-weight:600;cursor:pointer;white-space:nowrap}.demo-scenario-complete{font-size:.85rem;color:#34a853;font-weight:600}.demo-scenario-steps{display:flex;flex-wrap:wrap;gap:.4rem;list-style:none;margin:0;padding:0}.demo-scenario-step{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .55rem;border-radius:999px;font-size:.75rem;background:#ffffff0d;border:1px solid var(--color-border, #3a3b3c);color:var(--color-text-secondary, #b0b3b8)}.demo-scenario-step.is-done{border-color:#34a853;color:#9fdfb0}.demo-scenario-step.is-current{border-color:#f5c542;color:#f5f5f5}.demo-scenario-step-num{font-weight:700}.demo-scenario-timeline{margin-top:.85rem;padding-top:.75rem;border-top:1px solid var(--color-border, #3a3b3c)}.demo-scenario-timeline-title{margin:0 0 .5rem;font-size:.8rem;font-weight:600;color:var(--color-text-secondary, #b0b3b8)}.demo-scenario-timeline ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem}.demo-scenario-milestone{display:grid;grid-template-columns:3.5rem 1fr auto;gap:.5rem;font-size:.78rem;padding:.35rem .5rem;border-radius:6px;background:#00000026}.demo-scenario-milestone.is-done{opacity:.75}.demo-scenario-milestone.is-current{outline:1px solid #f5c542}.demo-scenario-milestone-phase{font-weight:700;color:#f5c542}.demo-scenario-milestone-date{color:var(--color-text-secondary, #888);font-size:.72rem}:root{--mobile-dock-size: 48px;--mobile-dock-gap: 8px;--mobile-dock-offset: calc( 16px + var(--mobile-dock-size) + env(safe-area-inset-bottom, 0px) )}html[data-bottom-nav=true]{--header-height: 56px;--shell-bottom-safe: var(--mobile-dock-offset);--project-card-thumb: 84px}html[data-bottom-nav=true][data-orientation=landscape]{--header-height: 48px;--mobile-dock-size: 44px;--project-card-thumb: 72px}html[data-bottom-nav=true] .layout{display:grid;grid-template-columns:1fr!important;grid-template-rows:1fr;height:100dvh;max-height:100dvh;padding:0;overflow:hidden;box-sizing:border-box}html[data-bottom-nav=true] .layout>.main{grid-column:1!important;grid-row:1;width:100%;min-width:0;height:100%;max-height:100%;overflow:hidden;grid-template-rows:auto 1fr}html[data-bottom-nav=true] .layout>.sidebar-main,html[data-bottom-nav=true] .layout>.sidebar-secondary{display:none!important}html[data-bottom-nav=true] .main-header{padding:8px 10px;gap:0}html[data-bottom-nav=true] .header-top{height:auto;min-height:40px;gap:8px;width:100%}html[data-bottom-nav=true] .header-top .header-search{flex:1 1 auto;width:100%;min-width:0}html[data-bottom-nav=true] .main-header .header-user-info{display:none!important}html[data-bottom-nav=true] .header-actions{display:none}html[data-bottom-nav=true] .search-input{font-size:16px}html[data-bottom-nav=true] .header-top .user-name,html[data-bottom-nav=true] .header-panel-toggle,html[data-bottom-nav=true] .demo-header-badges{display:none!important}html[data-bottom-nav=true] .main-content{padding-bottom:calc(var(--mobile-dock-offset) + 48px);scroll-padding-bottom:calc(var(--mobile-dock-offset) + 48px)}html[data-bottom-nav=true] .preview,html[data-bottom-nav=true] .preview.preview--page{position:fixed;top:0;right:0;bottom:0;left:0;width:100%!important;max-width:none;z-index:2400;box-shadow:none;padding:calc(56px + env(safe-area-inset-top,0px)) 16px 16px;background:var(--color-preview-background)}html[data-bottom-nav=true] .preview+.drag-handle,html[data-bottom-nav=true] .drag-handle{display:none}html[data-bottom-nav=true] .preview-back-button{position:absolute;top:calc(8px + env(safe-area-inset-top,0px));left:8px;z-index:20;display:inline-flex;align-items:center;gap:4px;min-height:44px;padding:0 14px 0 8px;border:1px solid var(--color-divider);border-radius:999px;background:var(--color-body-background);color:var(--color-body-text);font-family:var(--font-family-base);font-size:15px;cursor:pointer;touch-action:manipulation}html[data-bottom-nav=true] .preview-back-button svg{font-size:20px}html[data-bottom-nav=true] .layout.is-mobile-preview .main-chrome,html[data-bottom-nav=true] .layout.is-mobile-preview .mobile-dock,html[data-bottom-nav=true] .layout.is-mobile-preview .mobile-dock-fade{visibility:hidden;pointer-events:none}html[data-bottom-nav=true] .document-naming-fields,html[data-bottom-nav=true] .compta-import-layout{grid-template-columns:1fr}html[data-bottom-nav=true] .contacts-row-head{display:none}html[data-bottom-nav=true] .contacts-row{grid-template-columns:1fr;gap:4px}html[data-bottom-nav=true] .home-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%}html[data-bottom-nav=true] .home-actions .action-button{width:100%;min-width:0}html[data-bottom-nav=true] .home-shortcuts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%}html[data-bottom-nav=true] .home-shortcut{min-width:0;padding:12px 10px 10px}html[data-bottom-nav=true] .home-shortcut-hint{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}html[data-bottom-nav=true] .home-section-head{flex-wrap:wrap}html[data-bottom-nav=true] .dashboard{padding:12px}html[data-bottom-nav=true] .dashboard-header{margin-bottom:12px}html[data-bottom-nav=true] .dashboard-header-content{align-items:center;gap:8px}html[data-bottom-nav=true] .dashboard-header h1{font-size:20px;margin:0}html[data-bottom-nav=true] .dashboard-header p,html[data-bottom-nav=true] .view-toggle-layout{display:none}html[data-bottom-nav=true] .projects-grid,html[data-bottom-nav=true] .projects-list{display:flex;flex-direction:column;gap:8px}html[data-bottom-nav=true] .project-widget,html[data-bottom-nav=true] .project-widget-list,html[data-bottom-nav=true] .project-widget-grid{height:var(--project-card-thumb)}html[data-bottom-nav=true] .project-widget:hover{transform:none;box-shadow:none}html[data-bottom-nav=true] .project-widget-content,html[data-bottom-nav=true] .project-widget-list .project-widget-content{display:grid;grid-template-columns:var(--project-card-thumb) minmax(0,1fr);grid-template-rows:auto 1fr;align-items:stretch;gap:0;padding:0;height:100%}html[data-bottom-nav=true] .project-widget-header,html[data-bottom-nav=true] .project-widget-list .project-widget-header{display:contents}html[data-bottom-nav=true] .project-widget-image-small,html[data-bottom-nav=true] .project-widget-list .project-widget-image-small,html[data-bottom-nav=true] .project-widget-image-card{grid-column:1;grid-row:1 / span 2;width:var(--project-card-thumb);height:var(--project-card-thumb);border-radius:0}html[data-bottom-nav=true] .project-widget-image-placeholder img{padding:8px}html[data-bottom-nav=true] .project-widget-header-text{grid-column:2;grid-row:1;min-width:0;padding:8px 10px 0}html[data-bottom-nav=true] .project-widget .project-name,html[data-bottom-nav=true] .project-widget-list .project-name{display:block;margin:0;font-size:14px;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}html[data-bottom-nav=true] .project-number-prefix{font-size:14px}html[data-bottom-nav=true] .project-widget-progress,html[data-bottom-nav=true] .project-widget-progress--empty{margin-top:6px;flex-wrap:nowrap}html[data-bottom-nav=true] .project-widget-progress-bar-wrapper,html[data-bottom-nav=true] .project-widget-progress-bar-wrapper.current{min-width:0;max-width:none}html[data-bottom-nav=true] .project-widget-progress-bar-wrapper:after{display:none}html[data-bottom-nav=true] .project-widget-progress-empty-label{font-size:11px}html[data-bottom-nav=true] .project-widget-stats,html[data-bottom-nav=true] .project-widget-list .project-widget-stats{grid-column:2;grid-row:2;flex:none;align-items:center;gap:12px;padding:0 10px 8px}html[data-bottom-nav=true] .project-widget-stats .stat-item,html[data-bottom-nav=true] .project-widget-list .stat-item{flex:0 0 auto;flex-direction:row;align-items:center;gap:0;padding:0;min-width:0;background:transparent}html[data-bottom-nav=true] .project-widget-stats .stat-top{gap:3px}html[data-bottom-nav=true] .project-widget-stats .stat-icon{font-size:16px}html[data-bottom-nav=true] .project-widget-stats .stat-label{display:none}html[data-bottom-nav=true] .project-widget-stats .stat-value,html[data-bottom-nav=true] .project-widget-stats .stat-deadline .stat-top .stat-value.deadline-date{display:inline;font-size:12px;font-weight:600;font-variant-numeric:tabular-nums;line-height:1}html[data-bottom-nav=true] .project-widget-stats .stat-item.is-empty{opacity:.32}html[data-bottom-nav=true] .project-widget-stats .stat-item:not(.is-empty) .stat-icon{opacity:1}html[data-bottom-nav=true] .project-widget-stats .stat-emails:not(.is-empty) .stat-icon,html[data-bottom-nav=true] .project-widget-stats .stat-actions:not(.is-empty) .stat-icon{color:var(--color-accent)}html[data-bottom-nav=true] .project-widget-stats .stat-deadline.deadline-overdue .stat-icon{color:var(--color-deadline-overdue)}html[data-bottom-nav=true] .project-widget-stats .stat-deadline.deadline-urgent .stat-icon{color:var(--color-deadline-urgent)}html[data-bottom-nav=true] .project-widget-stats .stat-deadline.deadline-warning .stat-icon{color:var(--color-deadline-warning)}html[data-bottom-nav=true] .project-widget-stats .stat-deadline.deadline-overdue,html[data-bottom-nav=true] .project-widget-stats .stat-deadline.deadline-urgent,html[data-bottom-nav=true] .project-widget-stats .stat-deadline.deadline-warning{background:transparent}html[data-bottom-nav=true] .project-detail-page{gap:16px;padding:0 4px 8px}html[data-bottom-nav=true] .project-detail-page-empty{flex-direction:column;gap:16px;padding:24px 16px;text-align:center}html[data-bottom-nav=true] .project-detail-header{flex-direction:column;align-items:stretch}html[data-bottom-nav=true] .project-detail-header-aside{flex-direction:column;align-items:stretch;width:100%}html[data-bottom-nav=true] .project-detail-header-buttons{flex-direction:column;width:100%}html[data-bottom-nav=true] .project-detail-button{width:100%;min-width:0;justify-content:center}html[data-bottom-nav=true] .project-detail-header-image{width:100%;height:auto;max-width:none;max-height:220px;aspect-ratio:16 / 9}html[data-bottom-nav=true] .project-detail-header h1{font-size:22px}html[data-bottom-nav=true] .project-header-meta{grid-template-columns:1fr}html[data-bottom-nav=true] .project-header-meta .project-status-banner-chip{align-self:flex-start;height:auto;min-height:0}html[data-bottom-nav=true] .project-detail-summary{grid-template-columns:1fr}html[data-bottom-nav=true] .project-progress-phases{flex-direction:column}html[data-bottom-nav=true] .project-progress-phase{max-width:none;min-width:0}html[data-shell=compact]:not([data-bottom-nav=true]){--header-height: 52px;--header-top-height: 36px;--header-actions-height: 50px}html[data-shell=compact]:not([data-bottom-nav=true]) .layout{grid-template-columns:var(--sidebar-main-width) 1fr}html[data-shell=compact]:not([data-bottom-nav=true]) .layout>.main{grid-column:2}html[data-shell=compact]:not([data-bottom-nav=true]) .sidebar-secondary{position:fixed;top:0;left:var(--sidebar-main-width);bottom:0;width:min(320px,calc(100vw - var(--sidebar-main-width) - 16px));z-index:900;transform:translate(calc(-100% - 8px));transition:transform .25s ease;box-shadow:var(--shadow-panel);pointer-events:none}html[data-shell=compact]:not([data-bottom-nav=true]) .sidebar-secondary:not(.is-closed){transform:translate(0);pointer-events:auto}html[data-shell=compact]:not([data-bottom-nav=true]) .header-panel-toggle{display:flex}.shell-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-overlay-strong);z-index:850;opacity:0;pointer-events:none;transition:opacity .2s ease;border:none;padding:0;cursor:default}.shell-backdrop.is-visible{opacity:1;pointer-events:auto}.header-panel-toggle{display:none;align-items:center;justify-content:center;flex-shrink:0;width:40px;height:40px;border:1px solid var(--color-divider);border-radius:var(--radius-small);background:var(--color-body-background);color:var(--color-body-text);cursor:pointer}.header-panel-toggle.is-active{border-color:var(--color-accent);background:var(--color-accent);color:var(--color-on-accent)}html[data-shell=full] .sidebar-main{z-index:5}html[data-shell=full] .sidebar-secondary{z-index:2;isolation:isolate}html[data-constrained-height=true]:not([data-bottom-nav=true]) .sidebar-main,html[data-constrained-height=true]:not([data-bottom-nav=true]) .sidebar-secondary{padding-top:calc(var(--header-height) + 4px)}.context-nav-bar{display:flex;align-items:center;gap:6px;flex-wrap:nowrap;overflow-x:auto;padding:6px 10px;background:var(--color-sidebar-secondary-background);border-bottom:1px solid var(--color-divider);scrollbar-width:thin;flex-shrink:0}.context-nav-bar-title{font-size:13px;font-weight:600;white-space:nowrap;color:var(--color-body-text);opacity:.85;margin-right:4px}.context-nav-bar-search{flex:1 1 140px;min-width:120px;max-width:220px;background:var(--color-body-background);border:1px solid var(--color-divider);border-radius:var(--radius-small);color:var(--color-body-text);font-family:var(--font-family-base);font-size:13px;padding:6px 10px}.context-nav-bar-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid var(--color-divider);border-radius:var(--radius-small);background:var(--color-body-background);color:var(--color-body-text);cursor:pointer;flex-shrink:0}.context-nav-bar-icon-btn:hover{background:var(--color-hover-light)}.context-nav-bar-item{display:inline-flex;align-items:center;height:34px;padding:0 10px;border:1px solid var(--color-divider);border-radius:var(--radius-small);background:var(--color-body-background);color:var(--color-body-text);font-family:var(--font-family-base);font-size:13px;cursor:pointer;white-space:nowrap}.context-nav-bar-item.is-active{border-color:var(--color-accent);background:rgba(var(--color-accent-rgb),.08)}.context-nav-dropdown{position:relative;flex-shrink:0}.context-nav-dropdown-trigger{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 10px;border:1px solid var(--color-divider);border-radius:var(--radius-small);background:var(--color-body-background);color:var(--color-body-text);font-family:var(--font-family-base);font-size:13px;cursor:pointer;white-space:nowrap;max-width:min(220px,42vw)}.context-nav-dropdown-trigger.is-active{border-color:var(--color-accent);background:rgba(var(--color-accent-rgb),.08)}.context-nav-dropdown-label{overflow:hidden;text-overflow:ellipsis}.context-nav-dropdown-chevron{flex-shrink:0;transition:transform .2s ease}.context-nav-dropdown.is-open .context-nav-dropdown-chevron{transform:rotate(180deg)}.context-nav-dropdown-menu{position:absolute;top:calc(100% + 4px);left:0;min-width:min(280px,80vw);max-width:min(360px,92vw);max-height:min(60vh,420px);overflow:auto;background:var(--color-sidebar-main-background);border:1px solid var(--color-divider);border-radius:var(--radius-medium);box-shadow:var(--shadow-panel);z-index:1200;padding:4px}.context-nav-dropdown-menu.is-portaled{min-width:0;max-width:none}.context-nav-dropdown--right .context-nav-dropdown-menu{left:auto;right:0}.context-nav-dropdown-item{display:block;width:100%;text-align:left;border:none;background:transparent;color:var(--color-body-text);font-family:var(--font-family-base);font-size:13px;padding:8px 10px;border-radius:var(--radius-small);cursor:pointer}.context-nav-dropdown-item:hover{background:var(--color-hover-light)}.context-nav-dropdown-item.is-active{background:rgba(var(--color-accent-rgb),.12);color:var(--color-on-accent, var(--color-body-text))}.sidebar-accordion{display:flex;flex-direction:column;gap:4px;border-bottom:1px solid var(--color-divider);padding-bottom:8px;margin-bottom:4px}.sidebar-accordion:last-child{border-bottom:none;margin-bottom:0}.sidebar-accordion-trigger{display:flex;align-items:center;justify-content:space-between;width:100%;padding:8px 4px;border:none;background:transparent;color:var(--color-body-text);font-family:var(--font-family-base);font-size:15px;font-weight:600;cursor:pointer;text-align:left}.sidebar-accordion-trigger:hover{color:var(--color-accent)}.sidebar-accordion-chevron{flex-shrink:0;transition:transform .2s ease;opacity:.7}.sidebar-accordion.is-open .sidebar-accordion-chevron{transform:rotate(180deg)}.sidebar-accordion-panel{display:flex;flex-direction:column;gap:6px}.sidebar-accordion-panel[hidden]{display:none}.settings-sidebar-groups .sidebar-accordion ul{list-style:none;margin:0;padding:0}.mobile-more-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;bottom:var(--mobile-dock-offset, 72px);border:none;padding:0;background:var(--color-overlay-strong);z-index:2100;cursor:default}.mobile-more-sheet{position:fixed;left:8px;right:8px;bottom:var(--mobile-dock-offset, 72px);z-index:2110;background:var(--color-sidebar-main-background);border:1px solid var(--color-divider);border-radius:16px;padding:8px 12px 12px;max-height:min(72vh,520px);overflow:auto;box-shadow:0 -12px 32px #00000052;animation:mobile-more-up .2s ease}.mobile-dock-sheet-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:4px}.mobile-more-title{margin:0 4px;font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;opacity:.65}.mobile-dock-sheet-close{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;border-radius:999px;background:transparent;color:var(--color-body-text);cursor:pointer}.mobile-dock-secondary{min-height:120px}.mobile-dock-secondary input,.mobile-dock-secondary select{font-size:16px}.mobile-dock-fade{position:fixed;left:0;right:0;bottom:0;height:calc(var(--mobile-dock-offset, 72px) + 40px);z-index:2050;pointer-events:none;background:linear-gradient(to top,var(--color-body-background) 0%,var(--color-body-background) 36%,color-mix(in srgb,var(--color-body-background) 72%,transparent) 58%,color-mix(in srgb,var(--color-body-background) 28%,transparent) 80%,transparent 100%)}.mobile-dock{position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:2200;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:var(--mobile-dock-gap, 8px);pointer-events:none}.mobile-dock-pills{display:flex;flex-direction:row;align-items:center;gap:var(--mobile-dock-gap, 8px);pointer-events:none}.mobile-dock .header-user-info{flex:0 0 auto;pointer-events:auto;position:relative}.mobile-dock .user-avatar{width:var(--mobile-dock-size, 48px);height:var(--mobile-dock-size, 48px);box-shadow:0 8px 24px #00000059;background:var(--color-sidebar-main-background)}.mobile-dock .user-avatar-initials{font-size:16px}.mobile-dock .user-menu{top:auto;bottom:calc(100% + 12px);right:auto;left:0;width:min(360px,calc(100vw - 24px));max-height:min(70vh,560px);z-index:2300}.mobile-dock-pill{pointer-events:auto;width:var(--mobile-dock-size, 48px);height:var(--mobile-dock-size, 48px);border:1px solid var(--color-divider);border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:var(--color-sidebar-main-background);color:var(--color-body-text);box-shadow:0 8px 24px #00000059;font-size:22px;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.mobile-dock-pill--route{color:var(--color-accent);border-color:color-mix(in srgb,var(--color-accent) 50%,var(--color-divider))}.mobile-dock-pill.is-open{border-color:var(--color-accent);background:var(--color-accent);color:var(--color-on-accent);box-shadow:0 8px 24px var(--color-accent-shadow)}.mobile-dock-pill.is-disabled{opacity:.38}.mobile-more-handle{width:36px;height:4px;border-radius:99px;background:var(--color-divider);margin:4px auto 10px;opacity:.8}.mobile-more-list{display:flex;flex-direction:column;gap:4px}.mobile-more-item{display:flex;align-items:center;gap:12px;width:100%;min-height:48px;padding:8px 10px;border:none;border-radius:var(--radius-medium);background:transparent;color:var(--color-body-text);font-family:var(--font-family-base);font-size:15px;text-align:left;cursor:pointer;touch-action:manipulation}.mobile-more-item:hover,.mobile-more-item:focus-visible{background:#ffffff0f}.mobile-more-item.is-active{background:rgba(var(--color-accent-rgb),.14);color:var(--color-accent)}.mobile-more-item-icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;font-size:20px;border-radius:10px;background:#ffffff0f}@keyframes mobile-more-up{0%{transform:translateY(16px);opacity:0}to{transform:translateY(0);opacity:1}}@media(prefers-reduced-motion:reduce){.mobile-more-sheet{animation:none}}
