:root{--ink:#172033;--muted:#667085;--line:#dce2eb;--brand:#0b6bcb;--brand-dark:#114068;--bg:#f4f7fb;--panel:#fff;--danger:#a3261c;--sidebar:264px;--sidebar-collapsed:78px;--topbar:82px;--erp-card-bg:#fff;--erp-card-border:var(--line);--erp-card-radius:12px;--erp-card-padding:18px;--erp-card-gap:16px;--erp-card-shadow:0 4px 14px rgba(20,35,60,.05);--erp-card-hover-border:var(--line);--erp-card-hover-shadow:var(--erp-card-shadow);--erp-panel-bg:var(--erp-card-bg);--erp-panel-border:var(--erp-card-border);--erp-panel-radius:var(--erp-card-radius);--erp-panel-padding:var(--erp-card-padding);--erp-panel-gap:var(--erp-card-gap);--erp-panel-shadow:var(--erp-card-shadow);--erp-table-bg:#fff;--erp-table-border:var(--line);--erp-table-radius:var(--erp-card-radius);--erp-table-cell-padding:9px;--erp-table-header-bg:#f8fafc;--erp-form-gap:12px;--erp-form-label-color:#344054;--erp-form-control-border:var(--line);--erp-form-control-radius:7px;--erp-form-control-padding:9px;--erp-button-height:40px;--erp-button-radius:8px;--erp-button-padding:10px 13px;--erp-button-gap:8px;--erp-button-font-weight:650;--erp-badge-radius:999px;--erp-badge-padding:3px 8px;--erp-badge-font-size:12px;--erp-tabs-gap:7px;--erp-tab-radius:8px;--erp-tab-padding:10px 13px;--erp-filters-gap:12px;--erp-filters-padding:12px}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--ink);font:15px/1.45 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,select,textarea{font:inherit}.topbar{min-height:var(--topbar);display:grid;grid-template-columns:auto minmax(180px,auto) minmax(260px,1fr) minmax(330px,auto) auto;gap:16px;align-items:center;padding:12px 20px;background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:40}.brand h1{margin:0;font-size:22px}.brand p{margin:2px 0 0;color:var(--muted);font-size:11px}.icon-button{width:42px;height:42px;padding:0;font-size:20px}.global-search,.quick-menu{position:relative}.global-search label,.project-context>label{display:block;color:var(--muted);font-size:11px;font-weight:700;margin-bottom:4px}.global-search input{width:100%;min-width:240px}.project-context>div{display:flex;gap:7px;align-items:center}.project-context select{min-width:190px}.app-layout{display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr);min-height:calc(100vh - var(--topbar));transition:grid-template-columns .2s ease}.sidebar{width:var(--sidebar);background:#172033;color:#fff;border-right:1px solid #25334a;position:sticky;top:var(--topbar);height:calc(100vh - var(--topbar));overflow:auto;transition:width .2s ease}.sidebar nav{display:grid;gap:4px;padding:16px 12px}.sidebar nav button{width:100%;display:flex;align-items:center;gap:10px;border:0;border-radius:9px;padding:10px;background:transparent;color:#e9eef5;text-align:left;cursor:pointer}.sidebar nav button:hover,.sidebar nav button.active{background:#0b6bcb;color:#fff}.sidebar nav button:disabled{cursor:not-allowed;opacity:.48;background:transparent}.nav-icon{width:36px;min-width:36px;text-align:center;font-size:11px;font-weight:800;letter-spacing:-.02em}.nav-label{min-width:0}.nav-label small{display:inline-block;margin-left:5px;padding:2px 6px;border-radius:999px;background:#334155;color:#dbe4ee;font-size:10px}.nav-group{margin:13px 10px 4px;color:#91a0b5;text-transform:uppercase;letter-spacing:.09em;font-size:10px;font-weight:800}.nav-group:first-child{margin-top:0}.workspace{width:100%;min-width:0}.workspace main{width:100%;max-width:none;margin:0;padding:24px 26px}.sidebar-collapsed .app-layout{grid-template-columns:var(--sidebar-collapsed) minmax(0,1fr)}.sidebar-collapsed .sidebar{width:var(--sidebar-collapsed)}.sidebar-collapsed .nav-label,.sidebar-collapsed .nav-group{display:none}.sidebar-collapsed .sidebar nav{padding-inline:9px}.sidebar-collapsed .sidebar nav button{justify-content:center}.sidebar-collapsed .nav-icon{width:40px;min-width:40px}.erp-card{background:var(--erp-card-bg);border:1px solid var(--erp-card-border);border-radius:var(--erp-card-radius);padding:var(--erp-card-padding);margin-bottom:var(--erp-card-gap);box-shadow:var(--erp-card-shadow)}.erp-card__header,.erp-card__body,.erp-card__footer{min-width:0}.erp-card__header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.erp-card__body{display:block}.erp-card__footer{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:12px}.erp-panel{background:var(--erp-panel-bg);border:1px solid var(--erp-panel-border);border-radius:var(--erp-panel-radius);padding:var(--erp-panel-padding);margin-bottom:var(--erp-panel-gap);box-shadow:var(--erp-panel-shadow)}.erp-panel__header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.erp-panel__title{margin:0}.erp-panel__subtitle{margin:3px 0 0;color:var(--muted)}.erp-panel__actions{display:flex;gap:8px;flex-wrap:wrap}.erp-panel__content{min-width:0}.erp-panel__footer{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:12px}.erp-table{width:100%;border-collapse:collapse;background:var(--erp-table-bg)}.erp-table th,.erp-table td{padding:var(--erp-table-cell-padding);border-bottom:1px solid var(--erp-table-border);text-align:left;white-space:nowrap}.erp-table th{background:var(--erp-table-header-bg);color:#475467}.erp-table__responsive{width:100%;overflow:auto;border-radius:var(--erp-table-radius)}.erp-table__empty{padding:14px;color:var(--muted)}.erp-table__pagination{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}.erp-form{display:grid;gap:var(--erp-form-gap)}.erp-form__section{display:grid;gap:var(--erp-form-gap)}.erp-form__group{display:grid;gap:4px}.erp-form__label{color:var(--erp-form-label-color);font-weight:600}.erp-form__actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.erp-form__validation{min-height:20px;color:var(--muted)}.operational-panel,.budget-analysis-panel,.runtime-diagnostic-panel,.planning-header,.planning-filters,.cgfi-header,.cgfi-alerts,.contract-module-intro{--erp-panel-compatible:1}.table-wrap,table{--erp-table-compatible:1}form,.form-grid{--erp-form-compatible:1}.erp-button{min-height:var(--erp-button-height);border:0;border-radius:var(--erp-button-radius);padding:var(--erp-button-padding);display:inline-flex;align-items:center;justify-content:center;gap:var(--erp-button-gap);font-weight:var(--erp-button-font-weight);cursor:pointer;line-height:1.2}.erp-button--primary{background:var(--brand);color:#fff}.erp-button--secondary{background:#edf4fb;color:#174b7d}.erp-button--outline{background:#fff;color:var(--brand);border:1px solid var(--brand)}.erp-button--ghost{background:transparent;color:var(--brand)}.erp-button--icon{width:var(--erp-button-height);padding:0}.erp-button--sm{min-height:32px;padding:7px 10px;font-size:12px}.erp-button--md{min-height:var(--erp-button-height)}.erp-button--lg{min-height:48px;padding:12px 16px}.erp-badge{display:inline-flex;align-items:center;gap:6px;border-radius:var(--erp-badge-radius);padding:var(--erp-badge-padding);font-size:var(--erp-badge-font-size);font-weight:700}.erp-badge--neutral{background:#eef2f7;color:#344054}.erp-badge--info{background:#edf4fb;color:#174b7d}.erp-badge--success{background:#ecfdf3;color:#067647}.erp-badge--warning{background:#fff9ed;color:#b54708}.erp-badge--danger{background:#fff0ef;color:#b42318}.erp-tabs{display:flex;gap:var(--erp-tabs-gap);flex-wrap:wrap;align-items:center}.erp-tab{border:0;border-radius:var(--erp-tab-radius);padding:var(--erp-tab-padding);background:#edf4fb;color:#174b7d;font-weight:650;cursor:pointer}.erp-tab--active{background:var(--brand);color:#fff}.erp-tab--disabled{opacity:.5;cursor:not-allowed}.erp-filters{display:grid;gap:var(--erp-filters-gap);padding:var(--erp-filters-padding);border:1px solid var(--line);border-radius:var(--erp-card-radius);background:#f8fafc}.erp-filters__row{display:flex;gap:var(--erp-filters-gap);align-items:end;flex-wrap:wrap}.erp-filters__group{display:grid;gap:4px;min-width:180px}.erp-filters__actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.btn,.btn-primary,.btn-secondary,.btn-outline,.action-button,.icon-action,.quick-action-grid button{--erp-button-compatible:1}.badge,.status-badge,.risk-badge,.lifecycle-badge,.cfc-badge{--erp-badge-compatible:1}.planning-scope-tabs,.planning-view-tabs,.cgfi-tabs,.contract-tabs,.cgsi-tabs{--erp-tabs-compatible:1}.filter-bar,.filter-row,.filter-group,.planning-filters,.cgfi-filters{--erp-filters-compatible:1}h2{margin:0 0 12px;font-size:19px}h3{margin:18px 0 10px}button,.file-button{border:0;border-radius:8px;padding:10px 13px;background:var(--brand);color:#fff;font-weight:650;cursor:pointer}.secondary{background:#edf4fb;color:#174b7d}.danger{background:#fff0ef;color:var(--danger)}.compact{padding:8px 10px;font-size:12px}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-bottom:14px}.form-grid label{display:grid;gap:4px}.form-grid .checkbox{display:flex;align-items:center}.form-grid .checkbox input{width:auto}input,select,textarea{padding:9px;border:1px solid var(--line);border-radius:7px;background:#fff;color:var(--ink)}.table-wrap{width:100%;overflow:auto}table{width:100%;border-collapse:collapse}th,td{padding:9px;border-bottom:1px solid var(--line);text-align:left;white-space:nowrap}th{background:#f8fafc;color:#475467}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.kpis div{background:#f5f8fc;padding:16px;border-radius:10px}.kpis strong{display:block;font-size:25px}.kpis span{color:var(--muted)}.dashboard-heading{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.active-project-card{border-left:4px solid var(--brand)}.quick-action-grid{display:flex;flex-wrap:wrap;gap:9px}.quick-action-grid button{background:#edf4fb;color:#174b7d}.quick-action-grid button.primary{background:var(--brand);color:#fff}.popover{position:absolute;top:calc(100% + 8px);right:0;z-index:80;width:min(430px,90vw);background:#fff;border:1px solid var(--line);border-radius:11px;box-shadow:0 16px 40px rgba(15,23,42,.18);padding:10px}.search-results{left:0;right:auto;max-height:440px;overflow:auto}.search-results button{width:100%;display:block;background:#fff;color:var(--ink);text-align:left;padding:10px;border-radius:7px}.search-results button:hover{background:#edf4fb}.search-results strong,.search-results small{display:block}.search-results small{color:var(--muted);font-weight:400}.search-empty{padding:12px;color:var(--muted)}.quick-actions{display:grid;gap:6px;min-width:260px}.quick-actions button{text-align:left;background:#edf4fb;color:#174b7d}.actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:12px}.file-button input{display:none}dl{display:grid;grid-template-columns:minmax(190px,1fr) auto;max-width:520px}dt,dd{padding:6px;border-bottom:1px solid var(--line);margin:0}.amount{width:105px}.storage-warning{padding:10px;border-radius:8px;background:#fff2d8;color:#8a4b00;font-weight:700}.check-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:6px}#company-cfc-select{width:100%;max-width:none}.company-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:4px 18px}.relation-grid{display:grid;grid-template-columns:repeat(3,minmax(180px,1fr));gap:12px;margin:14px 0}.relation-grid label{display:grid;gap:4px}.relation-grid select{width:100%}.permit-alert{font-weight:700}.permit-alert.critique{color:#b42318}.permit-alert.élevé{color:#b54708}.permit-alert.moyen{color:#9a6700}.permit-alert.information{color:#175cd3}.search-target{outline:3px solid #84c5ff;outline-offset:2px;background:#eef7ff!important}@media(max-width:1100px){.topbar{grid-template-columns:auto minmax(160px,auto) minmax(240px,1fr);}.project-context{grid-column:2/4}.quick-menu{grid-column:1}.workspace main{padding:20px}.relation-grid{grid-template-columns:1fr}}@media(max-width:760px){:root{--topbar:154px}.topbar{grid-template-columns:auto 1fr auto;gap:10px;padding:10px 12px}.brand{grid-column:2}.global-search{grid-column:1/4;grid-row:2}.project-context{grid-column:1/4;grid-row:3}.project-context>div{align-items:stretch}.project-context select{min-width:0;flex:1}.quick-menu{grid-column:3;grid-row:1}.app-layout{grid-template-columns:1fr}.sidebar{position:fixed;left:0;top:var(--topbar);z-index:35;box-shadow:12px 0 30px rgba(15,23,42,.25);transform:translateX(0)}.sidebar-collapsed .app-layout{grid-template-columns:1fr}.sidebar-collapsed .sidebar{width:var(--sidebar);transform:translateX(-105%)}.sidebar-collapsed .nav-label,.sidebar-collapsed .nav-group{display:block}.workspace main{padding:14px 12px}.dashboard-heading{display:block}.quick-actions{right:-8px}.global-search input{min-width:0}.kpis{grid-template-columns:1fr}.relation-grid{grid-template-columns:1fr}}@media(max-width:470px){.project-context .compact{font-size:0}.project-context .compact:after{content:"360°";font-size:12px}}/* PROGRAM_B_UX_PROFESSIONALIZATION_BATCH_01 */
#dashboard-view,#project360-view,#planning-view,#cgfi-view,#contracts-view{display:grid;gap:var(--erp-panel-gap)}#dashboard-view .dashboard-heading,#project360-view .project360-header,#planning-view .planning-header,#cgfi-view .cgfi-header,#contracts-view .contract-module-intro,#contracts-view .contract-list-heading,#contracts-view .contract-360-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}#dashboard-view h2,#project360-view h2,#planning-view h2,#cgfi-view h2,#contracts-view h2{letter-spacing:-.01em;line-height:1.25}#dashboard-view p,#project360-view p,#planning-view p,#cgfi-view p,#contracts-view p{color:var(--muted)}#dashboard-view .quick-action-grid{gap:var(--erp-button-gap)}#planning-view .planning-scope-tabs,#planning-view .planning-view-tabs,#cgfi-view .cgfi-tabs,#contracts-view .contract-tabs{display:flex;gap:var(--erp-tabs-gap);flex-wrap:wrap;align-items:center}#planning-view .planning-scope-tabs button,#planning-view .planning-view-tabs button,#cgfi-view .cgfi-tabs button,#contracts-view .contract-tabs button{border-radius:var(--erp-tab-radius);padding:var(--erp-tab-padding)}#planning-view .planning-scope-tabs button.active,#planning-view .planning-view-tabs button.active,#cgfi-view .cgfi-tabs button.active,#contracts-view .contract-tabs button.active{background:var(--brand);color:#fff}#project360-view form,#planning-view form,#cgfi-view form,#contracts-view form{display:grid;gap:var(--erp-form-gap)}#project360-view .form-grid,#planning-view .form-grid,#cgfi-view .form-grid,#contracts-view .form-grid{gap:var(--erp-form-gap);align-items:end}#project360-view .form-grid label,#planning-view .form-grid label,#cgfi-view .form-grid label,#contracts-view .form-grid label{color:var(--erp-form-label-color);font-weight:600}#project360-view input,#project360-view select,#project360-view textarea,#planning-view input,#planning-view select,#planning-view textarea,#cgfi-view input,#cgfi-view select,#cgfi-view textarea,#contracts-view input,#contracts-view select,#contracts-view textarea{border-radius:var(--erp-form-control-radius);border-color:var(--erp-form-control-border);padding:var(--erp-form-control-padding)}#dashboard-view .table-wrap,#project360-view .table-wrap,#planning-view .table-wrap,#cgfi-view .table-wrap,#contracts-view .table-wrap{border-radius:var(--erp-table-radius);overflow:auto}#dashboard-view table,#project360-view table,#planning-view table,#cgfi-view table,#contracts-view table{background:var(--erp-table-bg)}#dashboard-view th,#project360-view th,#planning-view th,#cgfi-view th,#contracts-view th{background:var(--erp-table-header-bg);color:#475467;font-size:12px;letter-spacing:.01em}#cgfi-view .cgfi-alerts button,#planning-view .planning-alert{border-radius:var(--erp-panel-radius);align-items:flex-start}#contracts-view .contract-pane{border-top-color:var(--erp-panel-border)}
@media(max-width:760px){#dashboard-view .dashboard-heading,#project360-view .project360-header,#planning-view .planning-header,#cgfi-view .cgfi-header,#contracts-view .contract-module-intro,#contracts-view .contract-list-heading,#contracts-view .contract-360-heading{display:block}#planning-view .planning-scope-tabs,#planning-view .planning-view-tabs,#cgfi-view .cgfi-tabs,#contracts-view .contract-tabs{display:grid;grid-template-columns:1fr 1fr}}/* PROGRAM_B_UX_PROFESSIONALIZATION_BATCH_02 */
#companies-view,#cgci-view,#receptions-view,#reserves-view,#alerts-view,#portfolio-view{display:grid;gap:var(--erp-panel-gap)}#alerts-view .intelligence-page,#portfolio-view .intelligence-page{border:1px solid var(--erp-panel-border);border-radius:var(--erp-panel-radius);box-shadow:var(--erp-panel-shadow);background:var(--erp-panel-bg)}#alerts-view .intelligence-page,#portfolio-view .intelligence-page{padding:var(--erp-panel-padding)}#companies-view h2,#cgci-view h2,#receptions-view h2,#reserves-view h2,#alerts-view h2,#portfolio-view h2{letter-spacing:-.01em;line-height:1.25}#companies-view p,#cgci-view p,#receptions-view p,#reserves-view p,#alerts-view p,#portfolio-view p{color:var(--muted)}#companies-view .company-tabs,#cgci-view .client360-tabs,#alerts-view .category-tabs,#portfolio-view .category-tabs{display:flex;gap:var(--erp-tabs-gap);flex-wrap:wrap;align-items:center}#companies-view .company-tabs button,#cgci-view .client360-tabs button,#alerts-view .category-tabs button,#portfolio-view .category-tabs button{border-radius:var(--erp-tab-radius);padding:var(--erp-tab-padding)}#companies-view .company-tabs button.active,#cgci-view .client360-tabs button.active,#alerts-view .category-tabs button.active,#portfolio-view .category-tabs button.active{background:var(--brand);color:#fff}#companies-view form,#cgci-view form,#receptions-view form,#reserves-view form{display:grid;gap:var(--erp-form-gap)}#companies-view .form-grid,#cgci-view .form-grid,#receptions-view .form-grid,#reserves-view .form-grid,#alerts-view .intelligence-toolbar,#portfolio-view .intelligence-toolbar{gap:var(--erp-form-gap);align-items:end}#companies-view .form-grid label,#cgci-view .form-grid label,#receptions-view .form-grid label,#reserves-view .form-grid label,#alerts-view .intelligence-toolbar label,#portfolio-view .intelligence-toolbar label{color:var(--erp-form-label-color);font-weight:600}#companies-view input,#companies-view select,#companies-view textarea,#cgci-view input,#cgci-view select,#cgci-view textarea,#receptions-view input,#receptions-view select,#receptions-view textarea,#reserves-view input,#reserves-view select,#reserves-view textarea,#alerts-view select,#portfolio-view select{border-radius:var(--erp-form-control-radius);border-color:var(--erp-form-control-border);padding:var(--erp-form-control-padding)}#companies-view .table-wrap,#cgci-view .table-wrap,#receptions-view .table-wrap,#reserves-view .table-wrap,#alerts-view .table-wrap{border-radius:var(--erp-table-radius);overflow:auto}#companies-view table,#cgci-view table,#receptions-view table,#reserves-view table,#alerts-view table,#portfolio-view table{background:var(--erp-table-bg)}#companies-view th,#cgci-view th,#receptions-view th,#reserves-view th,#alerts-view th,#portfolio-view th{background:var(--erp-table-header-bg);color:#475467;font-size:12px;letter-spacing:.01em}#receptions-view .operations-header,#reserves-view .operations-header,#alerts-view .intelligence-head,#portfolio-view .intelligence-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}#alerts-view .alert-row,#portfolio-view .portfolio-actions{border-radius:var(--erp-panel-radius)}#alerts-view .intelligence-toolbar,#portfolio-view .intelligence-toolbar{display:flex;gap:var(--erp-filters-gap);flex-wrap:wrap;align-items:end;padding:var(--erp-filters-padding);border:1px solid var(--line);border-radius:var(--erp-card-radius);background:#f8fafc}#portfolio-view .portfolio-table{min-width:1080px}#companies-view .company-summary,#cgci-view .relation-grid{gap:var(--erp-form-gap)}
@media(max-width:760px){#receptions-view .operations-header,#reserves-view .operations-header,#alerts-view .intelligence-head,#portfolio-view .intelligence-head{display:block}#companies-view .company-tabs,#cgci-view .client360-tabs,#alerts-view .category-tabs,#portfolio-view .category-tabs{display:grid;grid-template-columns:1fr 1fr}#alerts-view .intelligence-toolbar,#portfolio-view .intelligence-toolbar{display:grid;grid-template-columns:1fr}}/* PROGRAM_B_UX_PROFESSIONALIZATION_BATCH_03 */
#budget-view,#budget-center-view,#cgqi-view,#client360-view{display:grid;gap:var(--erp-panel-gap)}#budget-center-view .intelligence-page{border:1px solid var(--erp-panel-border);border-radius:var(--erp-panel-radius);box-shadow:var(--erp-panel-shadow);background:var(--erp-panel-bg)}#budget-center-view .intelligence-page{padding:var(--erp-panel-padding)}#budget-view .budget-save-head,#budget-center-view .budget-center-head,#cgqi-view .cgqi-header,#client360-view .client360-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}#budget-view h2,#budget-center-view h2,#cgqi-view h2,#client360-view h2{letter-spacing:-.01em;line-height:1.25}#budget-view p,#budget-center-view p,#cgqi-view p,#client360-view p{color:var(--muted)}#budget-view .table-wrap,#cgqi-view .table-wrap,#client360-view .table-wrap{border-radius:var(--erp-table-radius);overflow:auto;border:1px solid var(--erp-table-border);background:var(--erp-table-bg)}#budget-view table,#budget-center-view table,#cgqi-view table,#client360-view table{background:var(--erp-table-bg);border-collapse:separate;border-spacing:0;width:100%}#budget-view th,#budget-center-view th,#cgqi-view th,#client360-view th{background:var(--erp-table-header-bg);color:#475467;font-size:12px;letter-spacing:.01em;white-space:nowrap}#budget-view td,#budget-center-view td,#cgqi-view td,#client360-view td{vertical-align:middle}#budget-view .form-grid,#cgqi-view .form-grid,#client360-view .form-grid{gap:var(--erp-form-gap);align-items:end}#budget-view .form-grid label,#cgqi-view .form-grid label,#client360-view .form-grid label{color:var(--erp-form-label-color);font-weight:600}#budget-view input,#budget-view select,#budget-view textarea,#cgqi-view input,#cgqi-view select,#cgqi-view textarea,#client360-view input,#client360-view select,#client360-view textarea{border-radius:var(--erp-form-radius);border:1px solid var(--erp-form-border)}#budget-center-view .budget-shortcuts,#cgqi-view .cgqi-filters,#client360-view .client360-tabs{display:flex;gap:var(--erp-filters-gap);flex-wrap:wrap;align-items:end;padding:var(--erp-filters-padding);border:1px solid var(--line);border-radius:var(--erp-card-radius);background:#f8fafc}#client360-view .choices-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--erp-panel-gap)}#client360-view .choices-columns>form{min-width:0}#client360-view .quality-status,#cgqi-view .quality-status,#client360-view select[data-choice-status],#client360-view select[data-order-status]{border-radius:var(--erp-badge-radius)}#budget-center-view .budget-analysis-panel{display:grid;gap:14px}#budget-center-view .budget-breadcrumb{display:flex;gap:8px;align-items:center;flex-wrap:wrap}#cgqi-view .quality-alerts{display:grid;gap:10px}#cgqi-view .quality-alerts button{justify-content:flex-start;text-align:left}
@media(max-width:760px){#budget-view .budget-save-head,#budget-center-view .budget-center-head,#cgqi-view .cgqi-header,#client360-view .client360-header{display:block}#budget-center-view .budget-shortcuts,#cgqi-view .cgqi-filters,#client360-view .client360-tabs{display:grid;grid-template-columns:1fr}#client360-view .choices-columns{grid-template-columns:1fr}}/* UX-001_FOUNDATION_MIGRATION — Layout,containers,grid,rhythm,responsive */
:root{--erp-layout-gutter:clamp(14px,2vw,28px);--erp-layout-section-gap:var(--erp-panel-gap,16px);--erp-layout-container-max:none;--erp-layout-grid-min:min(220px,100%);--erp-layout-grid-gap:var(--erp-panel-gap,16px);--erp-layout-stack-gap:var(--erp-panel-gap,16px);--erp-form-radius:var(--erp-form-control-radius);--erp-form-border:var(--erp-form-control-border)}html,body{max-width:100%;overflow-x:hidden}.app-layout,.workspace,.workspace main,#main-content,[data-view]{max-width:100%;min-width:0}.workspace main{padding:var(--erp-layout-gutter)}.workspace main>[data-view]:not([hidden]){width:100%;max-width:var(--erp-layout-container-max);min-width:0;margin-inline:auto}.workspace main>[data-view]:not([hidden]),.intelligence-page{display:grid;gap:var(--erp-layout-section-gap)}.erp-card,.erp-panel,.table-wrap,.erp-table__responsive,.form-grid,.kpis,.actions,.quick-action-grid,.budget-shortcuts,.intelligence-toolbar{min-width:0;max-width:100%}.kpis,.check-grid,.company-summary,.relation-grid,.planning-calendar,.planning-summary,.dossier-grid,.criteria-grid,.cgsi-certified-grid{gap:var(--erp-layout-grid-gap)}.kpis{grid-template-columns:repeat(auto-fit,minmax(var(--erp-layout-grid-min),1fr))}.table-wrap,.erp-table__responsive{width:100%;overflow-x:auto}table{max-width:100%}img,svg,canvas,video,iframe{max-width:100%}input,select,textarea,button{max-width:100%}.topbar{grid-template-columns:auto minmax(180px,auto) minmax(0,1fr) minmax(240px,auto) auto}.global-search input,.project-context select{min-width:0}.project-context>div{min-width:0}.budget-center-redesign,.budget-center-redesign .intelligence-page,#budget-center-view{min-width:0;max-width:100%;overflow:hidden}.budget-center-redesign .budget-shortcuts{grid-template-columns:repeat(auto-fit,minmax(min(180px,100%),1fr))}.budget-center-redesign .budget-total-kpis{grid-template-columns:repeat(auto-fit,minmax(min(190px,100%),1fr))}.budget-center-redesign .budget-table-shell{max-width:100%;overflow-x:auto}.budget-center-redesign .budget-table,.portfolio-table{width:max-content;min-width:100%}
@media(max-width:1100px){.topbar{grid-template-columns:auto minmax(160px,auto) minmax(0,1fr)}.workspace main{padding:var(--erp-layout-gutter)}}
@media(max-width:760px){:root{--erp-layout-gutter:14px;--erp-layout-section-gap:14px;--erp-layout-grid-min:min(180px,100%)}.workspace main{padding:var(--erp-layout-gutter)}.topbar{grid-template-columns:auto minmax(0,1fr) auto}.project-context>div{display:grid;grid-template-columns:minmax(0,1fr) auto}.budget-center-redesign .budget-shortcuts,.budget-center-redesign .budget-total-kpis{grid-template-columns:1fr}}
@media(max-width:470px){:root{--erp-layout-gutter:12px;--erp-layout-grid-min:100%}.project-context>div{grid-template-columns:1fr}.kpis{grid-template-columns:1fr}}/* UX-002_CARDS_PANELS_MIGRATION — ERPCard / ERPPanel convergence */
:root{--erp-card-transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease;--erp-card-focus:0 0 0 3px rgba(11,107,203,.18);--erp-card-header-gap:12px;--erp-card-content-gap:var(--erp-layout-stack-gap,16px);--erp-panel-header-gap:12px;--erp-panel-action-gap:8px}.erp-card,.risk-card,.operational-card,.active-project-card,.project-widget,.v208i-lifecycle-card,.contract-kpis article,.mini-kpis span,.dossier-grid article,.planning-calendar>section,.planning-summary p,.company-planning-panel,.quality-score{background:var(--erp-card-bg);border:1px solid var(--erp-card-border);border-radius:var(--erp-card-radius);box-shadow:var(--erp-card-shadow);padding:var(--erp-card-padding);min-width:0;max-width:100%;transition:var(--erp-card-transition)}.erp-card:hover,.risk-card:hover,.operational-card:hover,.project-widget:hover,.v208i-lifecycle-card:hover{border-color:var(--erp-card-hover-border);box-shadow:var(--erp-card-hover-shadow)}.erp-card:focus-within,.risk-card:focus-within,.operational-card:focus-within,.v208i-lifecycle-card:focus-within{outline:0;box-shadow:var(--erp-card-shadow),var(--erp-card-focus)}.erp-card>h2:first-child,.erp-card>h3:first-child,.risk-card>h3:first-child,.v208i-lifecycle-card>h3:first-child{margin-top:0}.erp-card__header,.dashboard-heading,.project360-header,.budget-save-head,.budget-center-head,.cgqi-header,.client360-header,.contract-list-heading,.contract-360-heading,.planning-header,.cgfi-header,.operations-header,.intelligence-head,.risk-head,.v208i-lifecycle-head{gap:var(--erp-card-header-gap);min-width:0}.erp-panel,.operational-panel,.budget-analysis-panel,.runtime-diagnostic-panel,.planning-filters,.cgfi-alerts,.contract-module-intro,.v208i-lifecycle-panel,.final-lifecycle-panel,.certification-panel,.cgfi-summary,.quality-summary,.budget-source-summary,.client-cgfi-panel,.company-cgfi-panel,.company-operations-panel,.lot-operations-panel,.lot-client360-panel,.client-contract-impact,.contract-source-panel{background:var(--erp-panel-bg);border:1px solid var(--erp-panel-border);border-radius:var(--erp-panel-radius);box-shadow:var(--erp-panel-shadow);padding:var(--erp-panel-padding);min-width:0;max-width:100%}.erp-panel,.operational-panel,.budget-analysis-panel,.runtime-diagnostic-panel,.planning-filters,.cgfi-alerts,.contract-module-intro,.v208i-lifecycle-panel,.final-lifecycle-panel,.certification-panel,.cgfi-summary,.quality-summary,.budget-source-summary,.client-cgfi-panel,.company-cgfi-panel,.company-operations-panel,.lot-operations-panel,.lot-client360-panel,.client-contract-impact,.contract-source-panel{display:grid;gap:var(--erp-panel-gap)}.erp-panel__header,.contract-module-intro,.planning-header,.cgfi-header,.operations-header,.intelligence-head,.budget-center-head,.client360-header,.cgqi-header{align-items:flex-start}.erp-panel__actions,.actions,.quick-action-grid,.portfolio-actions,.alert-actions{gap:var(--erp-panel-action-gap)}.operational-panel,.budget-analysis-panel,.runtime-diagnostic-panel,.planning-header,.planning-filters,.cgfi-header,.cgfi-alerts,.contract-module-intro,.v208i-lifecycle-panel,.final-lifecycle-panel,.certification-panel,.cgfi-summary,.quality-summary,.budget-source-summary{--erp-panel-compatible:1}.risk-card,.operational-card,.active-project-card,.project-widget,.v208i-lifecycle-card,.contract-kpis article,.mini-kpis span,.dossier-grid article,.planning-calendar>section,.quality-score{--erp-card-compatible:1}
@media(max-width:760px){.erp-card__header,.dashboard-heading,.project360-header,.budget-save-head,.budget-center-head,.cgqi-header,.client360-header,.contract-list-heading,.contract-360-heading,.planning-header,.cgfi-header,.operations-header,.intelligence-head,.risk-head,.v208i-lifecycle-head{display:block}.erp-card,.risk-card,.operational-card,.v208i-lifecycle-card,.erp-panel,.operational-panel,.budget-analysis-panel,.runtime-diagnostic-panel,.planning-filters,.cgfi-alerts,.contract-module-intro,.v208i-lifecycle-panel,.final-lifecycle-panel{padding:var(--erp-card-padding)}}/* UX-003_HEADERS_KPI_MIGRATION — ERPHeader / ERPKPI convergence */
:root{--erp-header-gap:var(--erp-layout-stack-gap,16px);--erp-header-title-size:clamp(19px,1.6vw,26px);--erp-header-subtitle-size:14px;--erp-header-meta-size:12px;--erp-header-action-gap:var(--erp-button-gap,8px);--erp-kpi-min-height:112px;--erp-kpi-padding:var(--erp-card-padding);--erp-kpi-gap:6px;--erp-kpi-value-size:clamp(1.45rem,2.1vw,2rem);--erp-kpi-label-size:.88rem;--erp-kpi-detail-size:.78rem;--erp-kpi-state-border:4px solid transparent}.erp-header,.erp-page-header,.erp-module-header,.erp-panel-header,.topbar,.project-context,.intelligence-head,.dashboard-heading,.project360-header,.budget-center-head,.budget-save-head,.cgsi-head,.cgfi-header,.planning-header,.contract-module-intro,.contract-list-heading,.contract-360-heading,.client360-header,.cgqi-header,.operations-header,.risk-head,.v208i-lifecycle-head,.operational-heading{gap:var(--erp-header-gap);min-width:0}.erp-page-header,.erp-module-header,.erp-panel-header,.intelligence-head,.dashboard-heading,.project360-header,.budget-center-head,.budget-save-head,.cgsi-head,.cgfi-header,.planning-header,.contract-module-intro,.contract-list-heading,.contract-360-heading,.client360-header,.cgqi-header,.operations-header,.risk-head,.v208i-lifecycle-head,.operational-heading{display:flex;align-items:flex-start;justify-content:space-between}.erp-header h1,.erp-header h2,.erp-page-header h1,.erp-page-header h2,.erp-module-header h2,.erp-panel-header h2,.intelligence-head h2,.dashboard-heading h2,.project360-header h2,.budget-center-head h2,.budget-save-head h2,.cgsi-head h2,.cgfi-header h2,.planning-header h2,.contract-module-intro h2,.contract-list-heading h2,.contract-360-heading h2,.client360-header h2,.cgqi-header h2,.operations-header h2,.risk-head h3,.v208i-lifecycle-head h2,.operational-heading h2{margin:0;font-size:var(--erp-header-title-size);line-height:1.2;letter-spacing:-.02em;color:var(--ink)}.erp-header p,.erp-page-header p,.erp-module-header p,.erp-panel-header p,.intelligence-head p,.dashboard-heading p,.project360-header p,.budget-center-head p,.budget-save-head p,.cgsi-head p,.cgfi-header p,.planning-header p,.contract-module-intro p,.contract-list-heading p,.contract-360-heading p,.client360-header p,.cgqi-header p,.operations-header p,.v208i-lifecycle-head p,.operational-heading span{margin:.25rem 0 0;color:var(--muted);font-size:var(--erp-header-subtitle-size);line-height:1.35}.eyebrow,.freshness,.dashboard-filter-context,.read-only-note,.runtime-diagnostic summary{font-size:var(--erp-header-meta-size)}.erp-header__actions,.erp-page-header__actions,.erp-module-header__actions,.erp-panel-header__actions,.intelligence-toolbar,.project-context>div,.contract-list-heading>div,.quick-menu,.alert-actions,.portfolio-actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--erp-header-action-gap);flex-wrap:wrap;min-width:0}.project-context label,.cgsi-head label,.budget-center-head label,.intelligence-head label{min-width:0}.project-context select,.cgsi-head select,.budget-center-head select,.intelligence-head select{min-width:0;max-width:100%}.erp-kpi,.erp-metric,.erp-stat-block,.erp-unified-kpi,.cgsi-overview-kpi,.operational-metric,.contract-kpis article,.contract-kpi-button,.mini-kpis span,.quality-score,.budget-kpi,.budget-analysis-kpi,.kpis>div{display:grid;align-content:start;gap:var(--erp-kpi-gap);min-height:var(--erp-kpi-min-height);padding:var(--erp-kpi-padding);border-left:var(--erp-kpi-state-border);text-align:left}.erp-kpi strong,.erp-metric strong,.erp-stat-block strong,.erp-unified-kpi strong,.cgsi-overview-kpi strong,.operational-metric strong,.contract-kpis article strong,.contract-kpi-button strong,.mini-kpis strong,.quality-score strong,.budget-kpi strong,.budget-analysis-kpi strong,.kpis strong{display:block;order:1;margin:0;color:var(--ink);font-size:var(--erp-kpi-value-size);font-weight:800;letter-spacing:-.03em;line-height:1.05}.erp-kpi span,.erp-metric span,.erp-stat-block span,.erp-unified-kpi span,.cgsi-overview-kpi span,.operational-metric span,.contract-kpis article span,.contract-kpi-button span,.mini-kpis span span,.quality-score span,.budget-kpi span,.budget-analysis-kpi span,.kpis span{display:block;order:2;color:var(--muted);font-size:var(--erp-kpi-label-size);font-weight:650;line-height:1.25}.erp-kpi small,.erp-metric small,.erp-stat-block small,.erp-unified-kpi small,.cgsi-overview-kpi small,.operational-metric small,.contract-kpi-button small,.budget-kpi small,.budget-analysis-kpi small{display:block;order:3;color:var(--muted);font-size:var(--erp-kpi-detail-size);line-height:1.3}button.erp-kpi,button.erp-metric,button.erp-stat-block,button.erp-unified-kpi,button.cgsi-overview-kpi,button.operational-metric,button.budget-kpi,button.budget-analysis-kpi,[data-dashboard-operational-route],[data-budget-source-route],[data-operation-kpi],[data-planning-kpi],[data-cgqi-kpi],[data-client-kpi],[data-contract-kpi]{cursor:pointer}.erp-kpi:hover,.erp-metric:hover,.erp-stat-block:hover,.erp-unified-kpi:hover,.cgsi-overview-kpi:hover,.operational-metric:hover,.contract-kpi-button:hover,.budget-kpi:hover,.budget-analysis-kpi:hover{border-color:var(--erp-card-hover-border);box-shadow:var(--erp-card-hover-shadow)}.erp-kpi:focus-visible,.erp-metric:focus-visible,.erp-stat-block:focus-visible,.erp-unified-kpi:focus-visible,.cgsi-overview-kpi:focus-visible,.operational-metric:focus-visible,.contract-kpi-button:focus-visible,.budget-kpi:focus-visible,.budget-analysis-kpi:focus-visible{border-color:var(--erp-card-hover-border);box-shadow:var(--erp-card-shadow),var(--erp-card-focus);outline:0}.erp-unified-kpi.is-filter-active,.budget-kpi.is-filter-active,.budget-analysis-kpi.is-filter-active{border-color:var(--brand);box-shadow:var(--erp-card-shadow),var(--erp-card-focus);background:#fff;color:var(--ink)}.erp-unified-kpi--success,.budget-kpi--success,.budget-analysis-kpi--success,.final-kpi-success{border-left-color:#15803d}.erp-unified-kpi--attention,.budget-kpi--warning,.final-kpi-warning{border-left-color:#b45309}.erp-unified-kpi--critical,.budget-kpi--danger,.budget-analysis-kpi--danger,.final-kpi-danger{border-left-color:#b91c1c}.erp-unified-kpi--neutral,.budget-kpi--base,.budget-kpi--flow{border-left-color:#94a3b8}
@media(max-width:760px){.erp-page-header,.erp-module-header,.erp-panel-header,.intelligence-head,.dashboard-heading,.project360-header,.budget-center-head,.budget-save-head,.cgsi-head,.cgfi-header,.planning-header,.contract-module-intro,.contract-list-heading,.contract-360-heading,.client360-header,.cgqi-header,.operations-header,.risk-head,.v208i-lifecycle-head,.operational-heading{display:grid;grid-template-columns:1fr}.erp-header__actions,.erp-page-header__actions,.erp-module-header__actions,.erp-panel-header__actions,.intelligence-toolbar,.project-context>div,.contract-list-heading>div,.alert-actions,.portfolio-actions{justify-content:stretch}.erp-header__actions>*,.erp-page-header__actions>*,.erp-module-header__actions>*,.erp-panel-header__actions>*,.intelligence-toolbar>*,.project-context>div>*,.contract-list-heading>div>*,.alert-actions>*,.portfolio-actions>*{min-width:0}.erp-kpi,.erp-metric,.erp-stat-block,.erp-unified-kpi,.cgsi-overview-kpi,.operational-metric,.contract-kpis article,.contract-kpi-button,.mini-kpis span,.quality-score,.budget-kpi,.budget-analysis-kpi,.kpis>div{min-height:96px}}/* UX_VISUAL_PROFESSIONALIZATION — Premium SaaS visual layer */
:root{
  --erp-premium-bg:#f6f8fb;
  --erp-premium-surface:#ffffff;
  --erp-premium-surface-soft:#f8fafc;
  --erp-premium-line:#e4e9f1;
  --erp-premium-line-strong:#d7deea;
  --erp-premium-text:#111827;
  --erp-premium-muted:#667085;
  --erp-premium-subtle:#98a2b3;
  --erp-premium-brand:#0b6bcb;
  --erp-premium-brand-soft:#eef5ff;
  --erp-premium-success:#16845b;
  --erp-premium-warning:#b76b00;
  --erp-premium-danger:#b42318;
  --erp-premium-radius:14px;
  --erp-premium-radius-sm:10px;
  --erp-premium-shadow:0 1px 2px rgba(16,24,40,.04),0 8px 24px rgba(16,24,40,.045);
  --erp-premium-shadow-hover:0 1px 2px rgba(16,24,40,.05),0 12px 30px rgba(16,24,40,.07);
  --erp-premium-focus:0 0 0 3px rgba(11,107,203,.16);
  --erp-premium-section-gap:18px;
}html,body{
  background:var(--erp-premium-bg);
  color:var(--erp-premium-text);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}.topbar{
  background:rgba(255,255,255,.96);
  border-bottom:1px solid var(--erp-premium-line);
  box-shadow:0 1px 0 rgba(16,24,40,.02);
  backdrop-filter:saturate(160%) blur(12px);
}.brand h1{
  color:var(--erp-premium-text);
  letter-spacing:-.035em;
  font-weight:850;
}.brand p,.global-search label,.project-context>label{
  color:var(--erp-premium-muted);
}.sidebar{
  background:#0b1220;
  border-right:1px solid rgba(255,255,255,.08);
}.sidebar nav{
  gap:5px;
  padding:18px 12px;
}.sidebar nav button{
  min-height:42px;
  border-radius:11px;
  color:#d6deea;
  font-weight:680;
  letter-spacing:-.01em;
  transition:background-color .16s ease,color .16s ease,box-shadow .16s ease;
}.sidebar nav button:hover{
  background:rgba(255,255,255,.075);
  color:#fff;
}.sidebar nav button.active{
  background:#123b63;
  color:#fff;
  box-shadow:inset 3px 0 0 #8fc7ff;
}.nav-group{
  color:#8592a6;
  letter-spacing:.12em;
}.nav-icon{
  opacity:.88;
}.nav-label small{
  background:rgba(255,255,255,.12);
  color:#cbd5e1;
}.workspace main{
  background:var(--erp-premium-bg);
}.workspace main>[data-view]:not([hidden]),.intelligence-page,#dashboard-view,#project360-view,#budget-center-view,#cgfi-view,#planning-view,#contracts-view{
  gap:var(--erp-premium-section-gap);
}.erp-card,.erp-panel,.risk-card,.operational-card,.active-project-card,.project-widget,.v208i-lifecycle-card,.contract-kpis article,.mini-kpis span,.dossier-grid article,.planning-calendar>section,.planning-summary p,.company-planning-panel,.quality-score,.operational-panel,.budget-analysis-panel,.runtime-diagnostic-panel,.planning-filters,.cgfi-alerts,.contract-module-intro,.v208i-lifecycle-panel,.final-lifecycle-panel,.certification-panel,.cgfi-summary,.quality-summary,.budget-source-summary,.client-cgfi-panel,.company-cgfi-panel,.company-operations-panel,.lot-operations-panel,.lot-client360-panel,.client-contract-impact,.contract-source-panel{
  background:var(--erp-premium-surface);
  border-color:var(--erp-premium-line);
  border-radius:var(--erp-premium-radius);
  box-shadow:var(--erp-premium-shadow);
}.erp-card:hover,.risk-card:hover,.operational-card:hover,.project-widget:hover,.v208i-lifecycle-card:hover{
  border-color:var(--erp-premium-line-strong);
  box-shadow:var(--erp-premium-shadow-hover);
}.erp-page-header,.erp-module-header,.erp-panel-header,.intelligence-head,.dashboard-heading,.project360-header,.budget-center-head,.budget-save-head,.cgsi-head,.cgfi-header,.planning-header,.contract-module-intro,.contract-list-heading,.contract-360-heading,.client360-header,.cgqi-header,.operations-header,.risk-head,.v208i-lifecycle-head,.operational-heading{
  gap:18px;
}.erp-header h1,.erp-header h2,.erp-page-header h1,.erp-page-header h2,.erp-module-header h2,.erp-panel-header h2,.intelligence-head h2,.dashboard-heading h2,.project360-header h2,.budget-center-head h2,.budget-save-head h2,.cgsi-head h2,.cgfi-header h2,.planning-header h2,.contract-module-intro h2,.contract-list-heading h2,.contract-360-heading h2,.client360-header h2,.cgqi-header h2,.operations-header h2,.risk-head h3,.v208i-lifecycle-head h2,.operational-heading h2{
  color:var(--erp-premium-text);
  font-weight:850;
  letter-spacing:-.035em;
}.erp-header p,.erp-page-header p,.erp-module-header p,.erp-panel-header p,.intelligence-head p,.dashboard-heading p,.project360-header p,.budget-center-head p,.budget-save-head p,.cgsi-head p,.cgfi-header p,.planning-header p,.contract-module-intro p,.contract-list-heading p,.contract-360-heading p,.client360-header p,.cgqi-header p,.operations-header p,.v208i-lifecycle-head p,.operational-heading span{
  color:var(--erp-premium-muted);
}.eyebrow,.freshness,.dashboard-filter-context,.read-only-note{
  color:var(--erp-premium-subtle);
  font-weight:760;
  letter-spacing:.08em;
}.erp-kpi,.erp-metric,.erp-stat-block,.erp-unified-kpi,.cgsi-overview-kpi,.operational-metric,.contract-kpis article,.contract-kpi-button,.mini-kpis span,.quality-score,.budget-kpi,.budget-analysis-kpi,.kpis>div{
  background:var(--erp-premium-surface);
  border-color:var(--erp-premium-line);
  border-radius:var(--erp-premium-radius);
  box-shadow:var(--erp-premium-shadow);
}.erp-kpi strong,.erp-metric strong,.erp-stat-block strong,.erp-unified-kpi strong,.cgsi-overview-kpi strong,.operational-metric strong,.contract-kpis article strong,.contract-kpi-button strong,.mini-kpis strong,.quality-score strong,.budget-kpi strong,.budget-analysis-kpi strong,.kpis strong{
  color:var(--erp-premium-text);
  font-weight:860;
}.erp-kpi span,.erp-metric span,.erp-stat-block span,.erp-unified-kpi span,.cgsi-overview-kpi span,.operational-metric span,.contract-kpis article span,.contract-kpi-button span,.mini-kpis span span,.quality-score span,.budget-kpi span,.budget-analysis-kpi span,.kpis span,.erp-kpi small,.erp-metric small,.erp-stat-block small,.erp-unified-kpi small,.cgsi-overview-kpi small,.operational-metric small,.contract-kpi-button small,.budget-kpi small,.budget-analysis-kpi small{
  color:var(--erp-premium-muted);
}.erp-kpi:hover,.erp-metric:hover,.erp-stat-block:hover,.erp-unified-kpi:hover,.cgsi-overview-kpi:hover,.operational-metric:hover,.contract-kpi-button:hover,.budget-kpi:hover,.budget-analysis-kpi:hover{
  transform:none;
  border-color:var(--erp-premium-line-strong);
  box-shadow:var(--erp-premium-shadow-hover);
}button,.file-button,.erp-button,.secondary,.compact,.quick-action-grid button,.intelligence-toolbar button,.planning-scope-tabs button,.planning-view-tabs button,.cgfi-tabs button,.contract-tabs button,.cgsi-tabs button,.category-tabs button,.company-tabs button,.client360-tabs button{
  border-radius:var(--erp-premium-radius-sm);
  transition:background-color .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease;
}button:not(.danger):not(.active):not(.primary):not(.btn-primary):not(.erp-button--primary):not(.icon-button),.secondary,.quick-action-grid button:not(.primary){
  background:var(--erp-premium-brand-soft);
  color:#16456f;
}button:hover,.file-button:hover,.erp-button:hover,.secondary:hover,.quick-action-grid button:hover{
  box-shadow:var(--erp-premium-focus);
}button.active,.planning-scope-tabs button.active,.planning-view-tabs button.active,.cgfi-tabs button.active,.contract-tabs button.active,.cgsi-tabs button.active,.category-tabs button.active,.company-tabs button.active,.client360-tabs button.active,.quick-action-grid button.primary{
  background:var(--erp-premium-brand);
  color:#fff;
}input,select,textarea{
  border-color:var(--erp-premium-line-strong);
  border-radius:var(--erp-premium-radius-sm);
  background:#fff;
  color:var(--erp-premium-text);
  transition:border-color .16s ease,box-shadow .16s ease;
}input:focus,select:focus,textarea:focus{
  border-color:var(--erp-premium-brand);
  box-shadow:var(--erp-premium-focus);
  outline:0;
}.table-wrap,.erp-table__responsive{
  border:1px solid var(--erp-premium-line);
  border-radius:var(--erp-premium-radius);
  background:#fff;
}table{
  color:var(--erp-premium-text);
}th{
  background:var(--erp-premium-surface-soft);
  color:#475467;
  font-size:12px;
  font-weight:780;
  letter-spacing:.015em;
}td{
  color:#344054;
}tbody tr:hover td{
  background:#fbfdff;
}.budget-center-redesign .budget-shortcuts,#budget-center-view .budget-shortcuts,#cgqi-view .cgqi-filters,#client360-view .client360-tabs,.planning-filters,.erp-filters{
  background:var(--erp-premium-surface-soft);
  border-color:var(--erp-premium-line);
}.budget-center-redesign .budget-shortcuts button,#budget-center-view .budget-shortcuts button{
  background:#fff;
  border:1px solid var(--erp-premium-line);
  color:#16456f;
  box-shadow:none;
}.budget-center-redesign .budget-shortcuts button:hover,#budget-center-view .budget-shortcuts button:hover{
  border-color:var(--erp-premium-line-strong);
  box-shadow:var(--erp-premium-shadow);
}.badge,.status-badge,.risk-badge,.lifecycle-badge,.cfc-badge,.quality-status,.planning-status{
  border-radius:999px;
  font-weight:760;
  letter-spacing:-.005em;
}.danger,.quality-status.danger,.planning-status.late{
  color:var(--erp-premium-danger);
}

@media(max-width:760px){.sidebar nav button{min-height:44px}.workspace main>[data-view]:not([hidden]),.intelligence-page,#dashboard-view,#project360-view,#budget-center-view,#cgfi-view,#planning-view,#contracts-view{gap:14px}
}/* EXP-001_PROJECT360_REDESIGN — Cockpit reference experience */
#project360-view{
  --project360-accent:#123b63;
  --project360-soft:#f8fafc;
  --project360-line:var(--erp-premium-line,#e4e9f1);
  --project360-muted:var(--erp-premium-muted,#667085);
}#project360-view .project360-cockpit-shell{
  display:grid;
  gap:18px;
}#project360-view .project360-cockpit{
  display:grid;
  grid-template-columns:minmax(0,1.4fr) minmax(320px,.8fr);
  gap:24px;
  padding:28px;
  overflow:hidden;
  position:relative;
}#project360-view .project360-cockpit:before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:5px;
  background:linear-gradient(180deg,#0b6bcb,#123b63);
}#project360-view .project360-hero{
  display:grid;
  align-content:center;
  gap:8px;
  min-width:0;
}#project360-view .project360-hero h2{
  font-size:clamp(28px,3vw,44px);
  line-height:1;
  max-width:920px;
}#project360-view .project360-hero p:not(.eyebrow){
  color:var(--project360-muted);
  font-size:15px;
  margin:0;
}#project360-view .project360-hero-meta{
  display:grid;
  align-content:start;
  gap:14px;
  padding:18px;
  border:1px solid var(--project360-line);
  border-radius:16px;
  background:var(--project360-soft);
}#project360-view .project360-hero-meta dl{
  display:grid;
  grid-template-columns:1fr auto;
  gap:10px 18px;
  max-width:none;
  margin:0;
}#project360-view .project360-hero-meta dt,#project360-view .project360-hero-meta dd{
  border:0;
  padding:0;
}#project360-view .project360-hero-meta dt{
  color:var(--project360-muted);
  font-size:12px;
  font-weight:750;
}#project360-view .project360-hero-meta dd{
  color:var(--erp-premium-text,#111827);
  font-weight:780;
  text-align:right;
}#project360-view .project360-status{
  display:inline-flex;
  width:max-content;
  align-items:center;
  border-radius:999px;
  padding:5px 10px;
  background:#ecfdf3;
  color:#067647;
  font-size:12px;
  font-weight:800;
}#project360-view .project360-quick-actions{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
  gap:10px;
  padding:12px;
  border:1px solid var(--project360-line);
  border-radius:16px;
  background:#fff;
  box-shadow:var(--erp-premium-shadow);
}#project360-view .project360-quick-actions button{
  min-height:46px;
  justify-content:center;
}#project360-view .project360-timeline{
  display:grid;
  gap:16px;
}#project360-view .project360-timeline-track{
  display:grid;
  grid-template-columns:repeat(8,minmax(118px,1fr));
  gap:10px;
  overflow:auto;
  padding-bottom:2px;
}#project360-view .project360-timeline-step{
  display:grid;
  align-content:center;
  gap:6px;
  min-height:88px;
  padding:14px;
  border:1px solid var(--project360-line);
  border-radius:14px;
  background:#fff;
  color:#344054;
  box-shadow:none;
}#project360-view .project360-timeline-step span{
  color:#98a2b3;
  font-size:11px;
  font-weight:850;
  letter-spacing:.08em;
}#project360-view .project360-timeline-step strong{
  color:#172033;
  font-size:13px;
}#project360-view .project360-timeline-step.is-done{
  border-color:#cfe7da;
  background:#f7fdf9;
}#project360-view .project360-decision-kpis{
  grid-template-columns:repeat(6,minmax(150px,1fr));
}#project360-view .project360-tabs{
  padding:8px;
  border:1px solid var(--project360-line);
  border-radius:16px;
  background:#fff;
  box-shadow:var(--erp-premium-shadow);
}#project360-view .project360-tabs button{
  background:transparent;
  color:#344054;
  border:1px solid transparent;
}#project360-view .project360-tabs button:hover{
  background:#f8fafc;
  box-shadow:none;
}#project360-view .project360-tabs button.active{
  background:#123b63;
  color:#fff;
  box-shadow:none;
}#project360-view .project360-tab-content{
  display:grid;
  gap:18px;
}#project360-view .project360-panel,#project360-view .project360-editor{
  display:grid;
  gap:18px;
  margin:0;
}#project360-view .project360-section-head,#project360-view .project360-form-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
}#project360-view .project360-section-head h2,#project360-view .project360-form-head h2{
  margin:0;
}#project360-view .project360-section-head p,#project360-view .project360-form-head p{
  color:var(--project360-muted);
  margin:.25rem 0 0;
}#project360-view .project360-form-section{
  display:grid;
  gap:12px;
  padding:16px;
  border:1px solid var(--project360-line);
  border-radius:14px;
  background:#fbfdff;
}#project360-view .project360-form-section h3{
  margin:0;
  font-size:14px;
  letter-spacing:-.01em;
}#project360-view .project360-wide-field{
  display:grid;
  gap:6px;
  color:var(--erp-form-label-color);
  font-weight:650;
}#project360-view .project360-wide-field textarea{
  min-height:96px;
}#project360-view .project360-inline-form{
  display:grid;
  gap:12px;
  padding:16px;
  border:1px solid var(--project360-line);
  border-radius:14px;
  background:#fbfdff;
}#project360-view .project360-table-shell{
  overflow:auto;
}#project360-view .project360-empty{
  display:grid;
  justify-items:center;
  gap:9px;
  padding:28px;
  color:var(--project360-muted);
  text-align:center;
}#project360-view .project360-empty strong{
  color:#172033;
  font-size:16px;
}#project360-view .project360-empty p{
  max-width:420px;
  margin:0;
}#project360-view .project360-empty-mark{
  width:46px;
  height:46px;
  border-radius:16px;
  background:linear-gradient(135deg,#eef5ff,#f8fafc);
  border:1px solid var(--project360-line);
}#project360-view .project360-ratio-grid{
  grid-template-columns:repeat(2,minmax(180px,1fr));
}#project360-view .project360-empty-page{
  display:grid;
  justify-items:start;
  gap:10px;
  padding:32px;
}

@media(max-width:1180px){#project360-view .project360-cockpit{
    grid-template-columns:1fr;
  }#project360-view .project360-decision-kpis{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

@media(max-width:760px){#project360-view .project360-cockpit{
    padding:22px;
  }#project360-view .project360-hero h2{
    font-size:clamp(24px,8vw,34px);
  }#project360-view .project360-hero-meta dl{
    grid-template-columns:1fr;
  }#project360-view .project360-hero-meta dd{
    text-align:left;
  }#project360-view .project360-decision-kpis,#project360-view .project360-ratio-grid{
    grid-template-columns:1fr;
  }#project360-view .project360-section-head,#project360-view .project360-form-head{
    display:grid;
  }
}/* EXP-002 — Project Governance Cockpit */
.governance-page,.planning-governance-page{
  display:grid;
  gap:22px;
}.governance-hero{
  align-items:flex-start;
  background:linear-gradient(135deg,#ffffff 0%,#f8fafc 100%);
  border:1px solid #dbe4ee;
  border-radius:22px;
  box-shadow:0 18px 48px rgba(15,23,42,.07);
  padding:24px;
}.governance-hero h2{
  color:#0f172a;
  font-size:clamp(26px,3vw,40px);
  letter-spacing:-.04em;
  margin:4px 0 8px;
}.governance-hero p{
  color:#607089;
  font-size:15px;
  margin:0;
}.governance-hero-side,.governance-meta{
  align-items:flex-end;
  display:grid;
  gap:10px;
  justify-items:end;
}.governance-meta span,.governance-meta .freshness{
  background:#f1f5f9;
  border:1px solid #dbe4ee;
  border-radius:999px;
  color:#475569;
  font-size:12px;
  font-weight:800;
  padding:7px 11px;
}.governance-section,.governance-decision-panel,.governance-timeline{
  background:#fff;
  border:1px solid #dbe4ee;
  border-radius:20px;
  box-shadow:0 12px 34px rgba(15,23,42,.055);
  padding:18px;
}.governance-section-head{
  align-items:flex-start;
  display:flex;
  gap:16px;
  justify-content:space-between;
  margin-bottom:14px;
}.governance-section-head h3,.governance-decision-panel h3{
  color:#111827;
  font-size:18px;
  letter-spacing:-.02em;
  margin:0 0 4px;
}.governance-section-head p,.governance-decision-panel > p{
  color:#64748b;
  margin:0;
}.governance-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}.governance-actions button,.governance-section-head button{
  border-radius:12px;
  min-height:42px;
}.governance-actions .primary{
  background:#0b74d1;
  color:#fff;
}.governance-actions .secondary{
  background:#fff;
  border:1px solid #dbe4ee;
  color:#18456f;
}.governance-split{
  display:grid;
  gap:18px;
  grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);
}.governance-alert-list{
  display:grid;
  gap:12px;
}.governance-alert{
  border:1px solid #e2e8f0;
  border-left:4px solid #f59e0b;
  border-radius:16px;
  box-shadow:none;
  padding:14px 16px;
}.governance-alert[data-category="URGENT"]{
  border-left-color:#ef4444;
}.governance-alert .alert-copy{
  gap:8px;
}.alert-explain{
  display:grid;
  gap:7px;
  grid-template-columns:repeat(3,minmax(0,1fr));
  margin-top:8px;
}.alert-explain span{
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:12px;
  color:#475569;
  display:grid;
  font-style:normal;
  gap:2px;
  padding:9px 10px;
}.alert-explain b{
  color:#0f172a;
  font-size:11px;
  text-transform:uppercase;
}.governance-project-list{
  display:grid;
  gap:10px;
}.governance-project-list article{
  align-items:center;
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:16px;
  display:grid;
  gap:12px;
  grid-template-columns:minmax(0,1fr) auto auto;
  padding:13px;
}.governance-project-list strong{
  color:#111827;
}.governance-project-list span,.governance-project-list small{
  color:#64748b;
  display:block;
}.governance-timeline-track{
  display:grid;
  gap:10px;
  grid-template-columns:repeat(8,minmax(120px,1fr));
  overflow:auto;
}.governance-step{
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:14px;
  display:grid;
  gap:5px;
  padding:12px;
}.governance-step small{
  color:#94a3b8;
  font-size:11px;
  font-weight:900;
}.governance-step strong{
  color:#183b5b;
  font-size:13px;
}.governance-step.active{
  background:#eef6ff;
  border-color:#9dc9f5;
}.governance-filterbar,.governance-tabs{
  background:#fff;
  border:1px solid #dbe4ee;
  border-radius:18px;
  padding:12px;
}.governance-history ul{
  color:#64748b;
  margin:0;
  padding-left:18px;
}.planning-steering .governance-decision-panel{
  min-height:180px;
}.planning-decision-list{
  display:grid;
  gap:10px;
}.planning-decision-list button{
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:14px;
  color:#334155;
  display:grid;
  gap:4px;
  padding:12px;
  text-align:left;
}.planning-decision-list strong{
  color:#111827;
}.planning-decision-list span{
  color:#64748b;
}

@media(max-width:1100px){.governance-split{
    grid-template-columns:1fr;
  }.alert-explain{
    grid-template-columns:1fr;
  }
}

@media(max-width:760px){.governance-hero,.governance-section-head{
    display:grid;
  }.governance-hero-side,.governance-meta{
    justify-items:start;
  }.governance-project-list article{
    grid-template-columns:1fr;
  }
}/* VISUAL LANGUAGE CONVERGENCE — Pilotage Projet */
#dashboard-view,#alerts-view,#portfolio-view,#project-dashboard-view,#project360-view,#planning-view{
  --pilotage-ink:#0f172a;
  --pilotage-muted:#64748b;
  --pilotage-soft:#f8fafc;
  --pilotage-line:#dbe4ee;
  --pilotage-action:#0b74d1;
  --pilotage-success:#14804a;
  --pilotage-warning:#b76e00;
  --pilotage-danger:#c2410c;
  --pilotage-radius:22px;
  --pilotage-shadow:0 18px 48px rgba(15,23,42,.07);
}#dashboard-view .intelligence-page,#alerts-view .intelligence-page,#portfolio-view .intelligence-page,#project-dashboard-view .intelligence-page,#planning-view .planning-governance-page,#project360-view .project360-cockpit-shell{
  max-width:1680px;
  margin:0 auto;
  padding:6px;
}#dashboard-view .governance-hero,#alerts-view .governance-hero,#portfolio-view .governance-hero,#project-dashboard-view .governance-hero,#planning-view .governance-hero,#project360-view .project360-cockpit{
  border-radius:28px;
  background:
    radial-gradient(circle at 8% 0%,rgba(11,116,209,.08),transparent 28%),
    linear-gradient(135deg,#ffffff 0%,#f8fafc 100%);
  border-color:var(--pilotage-line);
  box-shadow:var(--pilotage-shadow);
}#dashboard-view .eyebrow,#alerts-view .eyebrow,#portfolio-view .eyebrow,#project-dashboard-view .eyebrow,#planning-view .eyebrow,#project360-view .eyebrow{
  color:var(--pilotage-action);
  font-size:11px;
  font-weight:900;
  letter-spacing:.14em;
}#dashboard-view h2,#alerts-view h2,#portfolio-view h2,#project-dashboard-view h2,#planning-view h2,#project360-view h2{
  color:var(--pilotage-ink);
  font-weight:820;
  letter-spacing:-.045em;
}#dashboard-view h3,#alerts-view h3,#portfolio-view h3,#project-dashboard-view h3,#planning-view h3,#project360-view h3{
  color:var(--pilotage-ink);
  letter-spacing:-.025em;
}#dashboard-view .governance-section,#dashboard-view .governance-decision-panel,#dashboard-view .governance-timeline,#alerts-view .governance-section,#alerts-view .governance-decision-panel,#portfolio-view .governance-section,#portfolio-view .governance-decision-panel,#portfolio-view .governance-timeline,#project-dashboard-view .governance-section,#project-dashboard-view .governance-decision-panel,#project-dashboard-view .governance-timeline,#planning-view .governance-decision-panel,#planning-view .governance-timeline,#planning-view .planning-scope-tabs,#planning-view .planning-view-tabs,#planning-view .planning-filters{
  border-radius:var(--pilotage-radius);
  border-color:var(--pilotage-line);
  box-shadow:0 14px 38px rgba(15,23,42,.055);
}#dashboard-view button,#alerts-view button,#portfolio-view button,#project-dashboard-view button,#planning-view button,#project360-view button{
  transition:transform .16s ease,box-shadow .16s ease,background .16s ease,border-color .16s ease;
}#dashboard-view button:hover,#alerts-view button:hover,#portfolio-view button:hover,#project-dashboard-view button:hover,#planning-view button:hover,#project360-view button:hover{
  transform:translateY(-1px);
}#dashboard-view .erp-unified-kpi,#alerts-view .erp-unified-kpi,#portfolio-view .erp-unified-kpi,#project-dashboard-view .erp-unified-kpi{
  border-color:var(--pilotage-line);
  border-radius:20px;
  background:#fff;
  box-shadow:0 10px 28px rgba(15,23,42,.05);
}#dashboard-view .erp-unified-kpi strong,#alerts-view .erp-unified-kpi strong,#portfolio-view .erp-unified-kpi strong,#project-dashboard-view .erp-unified-kpi strong{
  color:var(--pilotage-ink);
  letter-spacing:-.045em;
}#dashboard-view .erp-unified-kpi span,#alerts-view .erp-unified-kpi span,#portfolio-view .erp-unified-kpi span,#project-dashboard-view .erp-unified-kpi span{
  color:var(--pilotage-muted);
}#planning-view .table-wrap,#project360-view .project360-table-shell{
  border:1px solid var(--pilotage-line);
  border-radius:22px;
  background:#fff;
  box-shadow:0 12px 34px rgba(15,23,42,.045);
}#dashboard-view table thead,#portfolio-view table thead,#planning-view table thead,#project360-view table thead{
  background:#f8fafc;
  color:#475569;
}#project-dashboard-view .risk-causes{
  display:grid;
  gap:10px;
  margin:0;
  padding:0;
  list-style:none;
}#project-dashboard-view .risk-causes li{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:12px 14px;
  border:1px solid var(--pilotage-line);
  border-radius:16px;
  background:var(--pilotage-soft);
}#project-dashboard-view .risk-causes strong{
  color:var(--pilotage-ink);
}#project-dashboard-view .risk-causes span{
  color:var(--pilotage-muted);
  font-size:12px;
  font-weight:750;
}#project360-view .project360-cockpit:before{
  background:linear-gradient(180deg,var(--pilotage-action),#123b63);
}#project360-view .project360-tabs,#project360-view .project360-quick-actions,#planning-view .planning-scope-tabs,#planning-view .planning-view-tabs,#alerts-view .governance-tabs{
  padding:10px;
}#project360-view .project360-tabs button.active,#planning-view .planning-scope-tabs button.active,#planning-view .planning-view-tabs button.active,#alerts-view .governance-tabs button.active{
  background:#123b63;
  color:#fff;
}

@media(max-width:760px){#dashboard-view .intelligence-page,#alerts-view .intelligence-page,#portfolio-view .intelligence-page,#project-dashboard-view .intelligence-page,#planning-view .planning-governance-page,#project360-view .project360-cockpit-shell{
    padding:0;
  }#project-dashboard-view .risk-causes li{
    display:grid;
  }
}/* ERP iD EXPERIENCE LANGUAGE v1.0 — Global product convergence */
:root{
  --erp-experience-ink:#0f172a;
  --erp-experience-muted:#64748b;
  --erp-experience-soft:#f8fafc;
  --erp-experience-line:#dbe4ee;
  --erp-experience-action:#0b74d1;
  --erp-experience-success:#14804a;
  --erp-experience-warning:#b76e00;
  --erp-experience-danger:#c2410c;
  --erp-experience-radius:22px;
  --erp-experience-radius-sm:16px;
  --erp-experience-shadow:0 14px 38px rgba(15,23,42,.055);
  --erp-experience-shadow-soft:0 8px 22px rgba(15,23,42,.04);
  --erp-experience-section-gap:22px;
}.workspace main>[data-view]:not([hidden]){
  color:var(--erp-experience-ink);
  gap:var(--erp-experience-section-gap);
}.workspace main>[data-view]:not([hidden]) > *{
  min-width:0;
}[data-view] .erp-card,[data-view] .erp-panel,[data-view] .risk-card,[data-view] .table-wrap,[data-view] .erp-unified-kpi,[data-view] .cgsi-overview-kpi,[data-view] .quality-score,[data-view] .operational-panel,[data-view] .budget-analysis-panel,[data-view] .runtime-diagnostic-panel,[data-view] .contract-module-intro,[data-view] .final-lifecycle-panel{
  border-color:var(--erp-experience-line);
  border-radius:var(--erp-experience-radius);
  box-shadow:var(--erp-experience-shadow-soft);
}[data-view] .erp-card,[data-view] .erp-panel,[data-view] .risk-card,[data-view] .operational-panel,[data-view] .budget-analysis-panel,[data-view] .runtime-diagnostic-panel,[data-view] .contract-module-intro,[data-view] .final-lifecycle-panel{
  background:#fff;
}[data-view] .erp-card:hover,[data-view] .risk-card:hover,[data-view] .erp-unified-kpi:hover,[data-view] .cgsi-overview-kpi:hover{
  box-shadow:var(--erp-experience-shadow);
}[data-view] h1,[data-view] h2,[data-view] h3{
  color:var(--erp-experience-ink);
  letter-spacing:-.035em;
}[data-view] h2{
  font-weight:820;
}[data-view] h3{
  font-weight:780;
}[data-view] p,[data-view] small,[data-view] .muted,[data-view] .freshness,[data-view] .read-only-note{
  color:var(--erp-experience-muted);
}[data-view] .eyebrow{
  color:var(--erp-experience-action);
  font-size:11px;
  font-weight:900;
  letter-spacing:.14em;
}[data-view] button,[data-view] .file-button{
  border-radius:12px;
  transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,background .16s ease;
}[data-view] button:hover,[data-view] .file-button:hover{
  transform:translateY(-1px);
}[data-view] button:focus-visible,[data-view] input:focus,[data-view] select:focus,[data-view] textarea:focus{
  box-shadow:0 0 0 3px rgba(11,116,209,.16);
  outline:0;
}[data-view] input,[data-view] select,[data-view] textarea{
  border-color:var(--erp-experience-line);
  border-radius:12px;
  min-height:40px;
}[data-view] textarea{
  min-height:92px;
}[data-view] .form-grid,[data-view] form{
  gap:14px;
}[data-view] .form-grid label,[data-view] form label{
  color:#344054;
  font-weight:700;
}[data-view] .kpis{
  gap:14px;
}[data-view] .erp-unified-kpi,[data-view] .cgsi-overview-kpi,[data-view] .quality-score,[data-view] .kpis>div{
  background:#fff;
  border-color:var(--erp-experience-line);
  border-radius:20px;
  min-height:108px;
}[data-view] .erp-unified-kpi strong,[data-view] .cgsi-overview-kpi strong,[data-view] .quality-score strong,[data-view] .kpis strong{
  color:var(--erp-experience-ink);
  letter-spacing:-.045em;
}[data-view] .table-wrap{
  background:#fff;
  overflow:auto;
}[data-view] table{
  border-collapse:separate;
  border-spacing:0;
}[data-view] th{
  background:var(--erp-experience-soft);
  color:#475569;
  font-size:12px;
  font-weight:800;
  letter-spacing:.01em;
}[data-view] td{
  color:#334155;
  vertical-align:middle;
}[data-view] .empty-state,[data-view] [class*="empty"]{
  border-radius:var(--erp-experience-radius-sm);
}[data-view] .risk-badge,[data-view] .status-badge,[data-view] .badge,[data-view] .lifecycle-badge,[data-view] .cfc-badge{
  border-radius:999px;
  font-weight:850;
}[data-view] .secondary{
  background:#f1f5f9;
  color:#18456f;
}[data-view] .danger{
  background:#fff5f5;
  color:var(--erp-experience-danger);
}[data-view] .intelligence-toolbar,[data-view] .budget-shortcuts,[data-view] .category-tabs,[data-view] .planning-scope-tabs,[data-view] .planning-view-tabs,[data-view] .cgfi-tabs,[data-view] .client360-tabs,[data-view] .cgqi-filters{
  border-color:var(--erp-experience-line);
  border-radius:var(--erp-experience-radius-sm);
  background:#fff;
}

@media(max-width:760px){[data-view] .erp-card,[data-view] .erp-panel,[data-view] .risk-card,[data-view] .operational-panel,[data-view] .budget-analysis-panel,[data-view] .runtime-diagnostic-panel,[data-view] .contract-module-intro,[data-view] .final-lifecycle-panel{
    border-radius:18px;
  }[data-view] button,[data-view] .file-button{
    min-height:42px;
  }
}/* ERP iD PRODUCT EXPERIENCE EVOLUTION 2.0 — Premium shell and cognitive components */
:root{
  --erp-pe2-bg:#f6f8fb;
  --erp-pe2-sidebar:#08111f;
  --erp-pe2-sidebar-soft:#101b2d;
  --erp-pe2-sidebar-active:#123b63;
  --erp-pe2-text:#0b1220;
  --erp-pe2-muted:#667085;
  --erp-pe2-line:#e5eaf2;
  --erp-pe2-blue:#0b74d1;
  --erp-pe2-green:#16845b;
  --erp-pe2-orange:#b76e00;
  --erp-pe2-red:#b42318;
  --erp-pe2-radius:24px;
  --erp-pe2-shadow:0 20px 50px rgba(15,23,42,.07);
}body{
  background:
    radial-gradient(circle at 22% -8%,rgba(11,116,209,.08),transparent 30%),
    var(--erp-pe2-bg);
}.topbar{
  min-height:88px;
  padding:14px 22px;
  border-bottom:1px solid rgba(229,234,242,.92);
  box-shadow:0 10px 30px rgba(15,23,42,.035);
}.brand h1{
  font-size:24px;
  letter-spacing:-.055em;
}.brand p{
  color:#7a8699;
  font-size:12px;
}.global-search input{
  min-height:48px;
  border-radius:16px;
  background:#fff;
  box-shadow:0 10px 26px rgba(15,23,42,.035);
}.project-context select,.project-context button,.quick-menu button{
  min-height:44px;
  border-radius:14px;
}.sidebar{
  background:linear-gradient(180deg,var(--erp-pe2-sidebar) 0%,#0b1424 100%);
  border-right:1px solid rgba(255,255,255,.06);
}.sidebar nav{
  gap:6px;
  padding:20px 14px;
}.nav-group{
  color:#8390a5;
  font-size:11px;
  letter-spacing:.14em;
  margin:18px 12px 8px;
}.sidebar nav button{
  min-height:46px;
  border-radius:14px;
  color:#d8e1ee;
  padding:11px 12px;
  transition:background .18s ease,transform .18s ease,color .18s ease;
}.sidebar nav button:hover{
  background:rgba(255,255,255,.07);
  transform:translateX(2px);
}.sidebar nav button.active{
  background:linear-gradient(135deg,#123b63,#0b74d1);
  box-shadow:0 14px 30px rgba(11,116,209,.22);
}.nav-icon{
  align-items:center;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.08);
  border-radius:10px;
  display:inline-flex;
  height:28px;
  justify-content:center;
  width:34px;
}.sidebar nav button.active .nav-icon{
  background:rgba(255,255,255,.18);
  border-color:rgba(255,255,255,.22);
}.workspace main{
  padding:clamp(18px,2.2vw,34px);
}[data-view] .erp-card,[data-view] .erp-panel,[data-view] .governance-section,[data-view] .governance-decision-panel,[data-view] .table-wrap{
  border:1px solid var(--erp-pe2-line);
  box-shadow:0 16px 44px rgba(15,23,42,.055);
}[data-view] .erp-unified-kpi,[data-view] .cgsi-overview-kpi,[data-view] .quality-score,[data-view] .kpis>div{
  padding:20px;
  position:relative;
  overflow:hidden;
}[data-view] .erp-unified-kpi:before,[data-view] .cgsi-overview-kpi:before,[data-view] .quality-score:before,[data-view] .kpis>div:before{
  background:linear-gradient(180deg,rgba(11,116,209,.42),rgba(11,116,209,0));
  content:"";
  inset:0 auto 0 0;
  opacity:.55;
  position:absolute;
  width:3px;
}[data-view] .erp-unified-kpi--success:before,[data-view] .budget-kpi--success:before,[data-view] .budget-analysis-kpi--success:before{
  background:linear-gradient(180deg,var(--erp-pe2-green),rgba(22,132,91,0));
}[data-view] .erp-unified-kpi--attention:before,[data-view] .budget-kpi--warning:before{
  background:linear-gradient(180deg,var(--erp-pe2-orange),rgba(183,110,0,0));
}[data-view] .erp-unified-kpi--critical:before,[data-view] .budget-kpi--danger:before,[data-view] .budget-analysis-kpi--danger:before,[data-view] .erp-unified-kpi--danger:before{
  background:linear-gradient(180deg,var(--erp-pe2-red),rgba(180,35,24,0));
}[data-view] .erp-unified-kpi strong,[data-view] .cgsi-overview-kpi strong,[data-view] .quality-score strong,[data-view] .kpis strong{
  font-size:clamp(1.55rem,2.4vw,2.25rem);
  font-weight:850;
}[data-view] .erp-unified-kpi small,[data-view] .cgsi-overview-kpi small{
  max-width:28ch;
}[data-view] .empty-state,[data-view] [class*="empty"]{
  background:linear-gradient(135deg,#fff,#f8fafc);
  border:1px dashed #d8e1ec;
  color:#64748b;
  padding:22px;
}[data-view] table tbody tr{
  transition:background .15s ease;
}[data-view] table tbody tr:hover{
  background:#f8fafc;
}

@media(max-width:900px){.topbar{
    grid-template-columns:auto minmax(0,1fr);
  }.global-search,.project-context,.quick-menu{
    grid-column:1 / -1;
  }
}/* ERP iD Dashboard V2 — Cockpit de Décision */
.dashboard-v2{
  display:grid;
  gap:var(--erp-space-xl,24px);
  margin:0 auto;
  max-width:1540px;
  padding:var(--erp-space-lg,20px);
}.dashboard-hero-v2,.dashboard-v2-section{
  background:linear-gradient(135deg,#fff,#f8fafc);
  border:1px solid rgba(148,163,184,.22);
  border-radius:28px;
  box-shadow:0 24px 70px rgba(15,23,42,.08);
}.dashboard-hero-v2{
  align-items:stretch;
  display:grid;
  gap:24px;
  grid-template-columns:minmax(0,1.45fr) minmax(220px,.45fr) minmax(260px,.65fr);
  min-height:250px;
  overflow:hidden;
  padding:34px;
  position:relative;
}.dashboard-hero-v2:before{
  background:radial-gradient(circle at 18% 8%,rgba(11,116,209,.16),transparent 34%),linear-gradient(120deg,rgba(11,116,209,.08),transparent 48%);
  content:"";
  inset:0;
  pointer-events:none;
  position:absolute;
}.dashboard-hero-v2>*{
  position:relative;
  z-index:1;
}.dashboard-hero-v2 h2{
  color:#0f172a;
  font-size:clamp(2.35rem,5vw,5rem);
  letter-spacing:-.07em;
  line-height:.92;
  margin:10px 0 14px;
  max-width:10ch;
}.dashboard-hero-v2 p{
  color:#64748b;
  font-size:1.05rem;
  font-weight:700;
  margin:0;
  max-width:54ch;
}.hero-health{
  align-self:stretch;
  background:#0f172a;
  border-radius:24px;
  color:#fff;
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-height:180px;
  padding:26px;
}.hero-health span,.hero-health small{
  color:rgba(255,255,255,.72);
  font-size:.78rem;
  font-weight:850;
  letter-spacing:.12em;
  text-transform:uppercase;
}.hero-health strong{
  font-size:clamp(3rem,6vw,5.6rem);
  letter-spacing:-.08em;
  line-height:.9;
  margin:14px 0;
}.dashboard-hero-v2 dl{
  align-content:center;
  display:grid;
  gap:12px 18px;
  grid-template-columns:auto minmax(0,1fr);
  margin:0;
}.dashboard-hero-v2 dt{
  color:#94a3b8;
  font-size:.75rem;
  font-weight:850;
  letter-spacing:.08em;
  text-transform:uppercase;
}.dashboard-hero-v2 dd{
  color:#172033;
  font-weight:850;
  margin:0;
  min-width:0;
}.dashboard-role-control{
  align-self:end;
  grid-column:3;
}.dashboard-role-control label{
  color:#64748b;
  display:grid;
  font-size:.78rem;
  font-weight:850;
  gap:7px;
  letter-spacing:.08em;
  text-transform:uppercase;
}.dashboard-v2-section{
  display:grid;
  gap:20px;
  padding:24px;
}.dashboard-v2-head{
  align-items:end;
  display:flex;
  gap:18px;
  justify-content:space-between;
}.dashboard-v2-head h3{
  color:#111827;
  font-size:clamp(1.35rem,2.2vw,2.15rem);
  letter-spacing:-.045em;
  line-height:1.05;
  margin:4px 0 0;
}.dashboard-v2-head span{
  color:#64748b;
  font-weight:750;
  max-width:34ch;
  text-align:right;
}.decision-list{
  display:grid;
  gap:10px;
}.decision-item{
  align-items:center;
  background:#fff;
  border:1px solid rgba(148,163,184,.22);
  border-radius:18px;
  display:grid;
  gap:14px;
  grid-template-columns:110px minmax(170px,.9fr) minmax(260px,1.4fr) minmax(170px,.7fr) auto;
  padding:14px 16px;
}.decision-gravity,.dashboard-risk-matrix article>span{
  background:#eef6ff;
  border-radius:999px;
  color:#0b5394;
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.08em;
  padding:7px 10px;
  text-transform:uppercase;
  width:max-content;
}.decision-critique .decision-gravity,.dashboard-risk-matrix article>span:first-child{
  background:#fff1f0;
  color:#b42318;
}.decision-item strong,.dashboard-risk-matrix strong{
  color:#111827;
  font-weight:900;
}.decision-item span:not(.decision-gravity),.decision-item em{
  color:#64748b;
  font-style:normal;
  font-weight:700;
}.decision-item button,.dashboard-activity-timeline button,.dashboard-risk-matrix button,.dashboard-quick-grid button{
  background:#0b74d1;
  border:0;
  border-radius:12px;
  color:#fff;
  cursor:pointer;
  font-weight:900;
  min-height:38px;
  padding:9px 14px;
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease;
}.decision-item button:hover,.dashboard-activity-timeline button:hover,.dashboard-risk-matrix button:hover,.dashboard-quick-grid button:hover{
  background:#075ea8;
  box-shadow:0 12px 26px rgba(11,116,209,.22);
  transform:translateY(-1px);
}.decision-empty{
  background:#fff;
  border:1px dashed #d8e1ec;
  border-radius:18px;
  color:#64748b;
  font-weight:800;
  padding:20px;
}.dashboard-health-grid{
  display:grid;
  gap:16px;
  grid-template-columns:repeat(3,minmax(0,1fr));
}.dashboard-health-card{
  background:#fff;
  border:1px solid rgba(148,163,184,.22);
  border-radius:24px;
  box-shadow:0 16px 36px rgba(15,23,42,.06);
  color:#111827;
  cursor:pointer;
  display:grid;
  gap:9px;
  min-height:180px;
  padding:22px;
  text-align:left;
}.dashboard-health-card span{
  color:#64748b;
  font-size:.82rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}.dashboard-health-card strong{
  font-size:clamp(2.25rem,4vw,3.7rem);
  letter-spacing:-.08em;
  line-height:.88;
}.dashboard-health-card small{
  color:#172033;
  font-weight:900;
}.dashboard-health-card p{
  color:#64748b;
  font-weight:750;
  margin:0;
}.dashboard-health-card.success{
  border-color:rgba(22,132,91,.22);
}.dashboard-health-card.warning{
  border-color:rgba(183,110,0,.28);
}.dashboard-health-card.danger{
  border-color:rgba(180,35,24,.25);
}.dashboard-activity-timeline{
  display:grid;
  gap:0;
  position:relative;
}.dashboard-activity-timeline:before{
  background:#dbe5f0;
  content:"";
  inset:20px auto 20px 14px;
  position:absolute;
  width:2px;
}.dashboard-activity-timeline article{
  align-items:center;
  display:grid;
  gap:10px 16px;
  grid-template-columns:28px minmax(140px,.45fr) minmax(240px,1fr) minmax(120px,.4fr) auto;
  padding:13px 0;
  position:relative;
}.timeline-dot{
  background:#0b74d1;
  border:5px solid #e9f4ff;
  border-radius:999px;
  height:16px;
  position:relative;
  width:16px;
  z-index:1;
}.dashboard-activity-timeline small,.dashboard-activity-timeline em{
  color:#64748b;
  font-style:normal;
  font-weight:800;
}.dashboard-activity-timeline strong{
  color:#111827;
  font-weight:900;
}.dashboard-risk-matrix{
  display:grid;
  gap:16px;
  grid-template-columns:repeat(5,minmax(180px,1fr));
}.dashboard-risk-matrix article{
  background:#fff;
  border:1px solid rgba(148,163,184,.22);
  border-radius:22px;
  display:grid;
  gap:12px;
  min-height:240px;
  padding:18px;
}.dashboard-risk-matrix p{
  color:#64748b;
  display:grid;
  font-weight:700;
  gap:3px;
  margin:0;
}.dashboard-risk-matrix b{
  color:#172033;
  font-size:.72rem;
  letter-spacing:.08em;
  text-transform:uppercase;
}.dashboard-risk-matrix button{
  align-self:end;
  justify-self:start;
}.dashboard-quick-grid{
  display:grid;
  gap:14px;
  grid-template-columns:repeat(4,minmax(0,1fr));
}.dashboard-quick-grid button{
  align-content:start;
  background:#fff;
  border:1px solid rgba(148,163,184,.22);
  border-radius:22px;
  color:#111827;
  display:grid;
  gap:10px;
  min-height:150px;
  padding:20px;
  text-align:left;
}.dashboard-quick-grid button:hover{
  background:#fff;
  color:#111827;
}.dashboard-quick-grid span{
  color:#0b74d1;
  font-size:.78rem;
  font-weight:900;
  letter-spacing:.12em;
}.dashboard-quick-grid strong{
  font-size:1.05rem;
  font-weight:950;
}.dashboard-quick-grid small{
  color:#64748b;
  font-weight:750;
  line-height:1.35;
}.dashboard-v2-detail details{
  background:#fff;
  border:1px solid rgba(148,163,184,.2);
  border-radius:18px;
  padding:16px;
}.dashboard-v2-detail summary{
  color:#111827;
  cursor:pointer;
  font-weight:950;
}.dashboard-v2-detail details[open] summary{
  margin-bottom:16px;
}

@media(max-width:1200px){.dashboard-hero-v2,.dashboard-health-grid,.dashboard-risk-matrix,.dashboard-quick-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }.dashboard-role-control{
    grid-column:auto;
  }.decision-item,.dashboard-activity-timeline article{
    grid-template-columns:1fr;
  }
}

@media(max-width:760px){.dashboard-v2{
    padding:12px;
  }.dashboard-hero-v2,.dashboard-health-grid,.dashboard-risk-matrix,.dashboard-quick-grid{
    grid-template-columns:1fr;
  }.dashboard-v2-head{
    align-items:start;
    flex-direction:column;
  }.dashboard-v2-head span{
    text-align:left;
  }
}
