/* Clarté : langage visuel commun à tous les espaces de travail. Les couleurs
   de statut métier (erreur, vigilance, validation) restent celles des composants. */
body.clarte-layout{--cl-background:#f7f8fa;--cl-ink:#24352f;--cl-muted:#5e6b67;--cl-line:#e0e6e3;--cl-accent:#27664d;--cl-tint:#eaf3ec;--cl-brand:#27664d;--cl-soft:#eaf3ec}
body.clarte-layout[data-cl-domain=search], [data-cl-domain=search]{--cl-accent:#246387;--cl-tint:#e9f3fb}
body.clarte-layout[data-cl-domain=study], [data-cl-domain=study]{--cl-accent:#69519b;--cl-tint:#f0ecf9}
body.clarte-layout[data-cl-domain=purchase], [data-cl-domain=purchase]{--cl-accent:#8a611f;--cl-tint:#fbf2df}
body.clarte-layout[data-cl-domain=works], [data-cl-domain=works]{--cl-accent:#94602d;--cl-tint:#fbefe4}
body.clarte-layout[data-cl-domain=sale], [data-cl-domain=sale]{--cl-accent:#a04c70;--cl-tint:#faedf3}
body.clarte-layout[data-cl-domain=finance], [data-cl-domain=finance]{--cl-accent:#226d70;--cl-tint:#e8f5f3}
body.clarte-layout[data-cl-domain=contacts], [data-cl-domain=contacts]{--cl-accent:#5265a1;--cl-tint:#edf0fa}
body.clarte-layout[data-cl-domain=settings], [data-cl-domain=settings]{--cl-accent:#646b7a;--cl-tint:#eef0f4}
.clarte-layout .cl-content{max-width:1440px}
.clarte-layout .cl-master-header{padding:24px 32px;border-bottom:0;background:linear-gradient(110deg,var(--cl-tint),#fff 75%)}
.clarte-layout .cl-master-header h1{font-size:clamp(23px,2.2vw,32px);line-height:1.25;letter-spacing:-.7px;overflow-wrap:anywhere}
.clarte-layout .cl-master-header :is(.uppercase,.tracking-widest){text-transform:none;letter-spacing:0}
.clarte-layout .cl-master-header :is(a,button,summary){font-size:14px;font-weight:600;min-height:42px}
.clarte-layout .cl-master-header [class*="overflow-x-auto"]{flex-wrap:wrap;overflow:visible}
.cl-wayfinding{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px 32px;border-bottom:1px solid var(--cl-line);background:#fff;font-size:13px;color:var(--cl-muted)}
.cl-location{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.cl-location>span:nth-child(2){color:var(--cl-accent);font-weight:600}.cl-domain-dot{width:9px;height:9px;border-radius:50%;background:var(--cl-accent);flex-shrink:0}.cl-location-agency{padding-left:12px;border-left:1px solid var(--cl-line)}
.cl-page-help{position:relative;flex-shrink:0}.cl-page-help>summary{cursor:pointer;min-height:40px;display:flex;align-items:center;gap:8px;color:var(--cl-accent)}.cl-page-help>summary:before{content:'?';display:grid;place-items:center;width:22px;height:22px;border:1px solid currentColor;border-radius:50%;font-weight:600}.cl-page-help>div{position:absolute;right:0;top:44px;width:min(340px,85vw);padding:22px;background:white;border:1px solid var(--cl-line);border-radius:14px;box-shadow:0 14px 40px #263b3020;z-index:1060;line-height:1.65}.cl-page-help p{margin:10px 0}.cl-page-help a{color:var(--cl-brand);text-decoration:underline;text-underline-offset:3px}
.cl-nav-filter{display:grid;gap:6px;margin:0 8px 18px;font-size:12px;color:var(--cl-muted)}.cl-nav-filter input{width:100%;min-height:42px;padding:9px 12px;border:1px solid var(--cl-line);border-radius:9px;background:#f7f9f8;font:inherit;font-size:14px}.cl-nav-filter[hidden],.cl-nav-no-results[hidden]{display:none}.cl-nav-no-results{font-size:13px;color:var(--cl-muted);padding:12px}.cl-nav-tools{margin-top:20px}.cl-sidebar details[data-cl-domain]>summary{display:flex;align-items:center;gap:10px;list-style:none;border-radius:9px}.cl-sidebar details[data-cl-domain]>summary::-webkit-details-marker{display:none}.cl-sidebar details[data-cl-domain]>summary:before{content:'';width:8px;height:8px;background:var(--cl-accent);border-radius:50%;flex-shrink:0}.cl-sidebar details[data-cl-domain]>summary:after{content:'›';margin-left:auto;font-size:20px;line-height:1}.cl-sidebar details[data-cl-domain][open]>summary:after{transform:rotate(90deg)}.cl-sidebar details[data-cl-domain][open]>summary{background:var(--cl-tint);color:var(--cl-accent)}.cl-sidebar details[data-cl-domain] a[aria-current=page]{background:var(--cl-tint);color:var(--cl-accent);font-weight:600}.cl-sidebar details nav{margin-top:4px}.cl-sidebar .cl-nav-bottom{margin-top:18px}.cl-nav-match{color:var(--cl-muted);font-size:12px;margin:0 12px 10px}
/* Typographie et contrôles : mêmes repères dans les vues historiques. */
.clarte-layout .cl-ui{font-size:15px;line-height:1.6;min-width:0}
.clarte-layout .cl-ui :is(h1,h2,h3,h4,label,button,summary,thead,.uppercase){text-transform:none;letter-spacing:normal}
.clarte-layout .cl-ui :is(.font-black,.font-extrabold){font-weight:600}
.clarte-layout .cl-ui :is(h2,h3){line-height:1.4;scroll-margin-top:100px}
.clarte-layout .cl-ui h2{font-size:21px}.clarte-layout .cl-ui h3{font-size:17px}
.clarte-layout .cl-ui :is(label,th){font-size:13px;line-height:1.5}
.clarte-layout .cl-ui :is(input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=file]),select,textarea){font-size:16px;line-height:1.5;min-height:44px;border-radius:9px}
.clarte-layout .cl-ui :is(input[type=checkbox],input[type=radio]){accent-color:var(--cl-brand);width:18px;height:18px;flex-shrink:0}
.clarte-layout .cl-ui :is(button,a[class*="rounded"],summary){touch-action:manipulation}
.clarte-layout .cl-ui :is(button[class*="px-"],a[class*="px-"][class*="rounded"],summary){min-height:42px;font-size:13px}
.clarte-layout :is(.cl-ui,.cl-master-header,.cl-wayfinding) :is(a,button,summary,input,select,textarea):focus-visible{outline:3px solid #28618c;outline-offset:3px}
.clarte-layout .cl-ui :is(.shadow-xl,.shadow-2xl):not([class*="fixed"]):not([role=dialog]){box-shadow:0 6px 22px #24352f0a}
.clarte-layout .cl-ui :is(.rounded-3xl,.rounded-2xl){border-radius:14px}
.clarte-layout .cl-ui :is(.border-2){border-width:1px}
.clarte-layout .cl-ui table{font-size:14px;font-variant-numeric:tabular-nums}.clarte-layout .cl-ui th{text-align:left;font-weight:600;background:#f4f7f6}.clarte-layout .cl-ui :is(td,th){padding-top:14px;padding-bottom:14px}.clarte-layout .cl-ui tbody tr:hover{background-color:#f5f8f780}
.cl-table-scroll{overflow-x:auto;max-width:100%;border-radius:12px}.cl-table-scroll:focus-visible{outline:3px solid #28618c;outline-offset:2px}
.clarte-layout .cl-ui .cl-page h2{font-size:20px}.clarte-layout .cl-ui .cl-page h3{font-size:16px}
.clarte-layout .cl-priority{background:linear-gradient(110deg,var(--cl-tint),#fff 70%)}.clarte-layout .cl-priority-icon{background:var(--cl-tint);color:var(--cl-accent)}.clarte-layout .cl-property-icon{background:var(--cl-tint);color:var(--cl-accent)}.clarte-layout .cl-shortcut>i{padding:12px;border-radius:12px;background:var(--cl-tint);color:var(--cl-accent)}
.cl-page-outline{position:sticky;top:8px;z-index:45;margin-bottom:24px;border:1px solid var(--cl-line);border-radius:12px;background:#fffffff5;box-shadow:0 3px 12px #24352f08;backdrop-filter:blur(8px)}.cl-page-outline>summary{cursor:pointer;padding:12px 16px;color:var(--cl-accent);font-size:14px;font-weight:600;min-height:44px}.cl-page-outline nav{display:flex;flex-wrap:wrap;gap:6px;padding:0 12px 12px;max-height:40vh;overflow:auto}.cl-page-outline a{display:block;padding:8px 12px;background:var(--cl-tint);color:var(--cl-accent);border-radius:8px;font-size:13px;min-height:40px}.cl-page-outline a:hover{text-decoration:underline}
.cl-fold{border:1px solid var(--cl-line);border-radius:14px;background:#fff;margin-block:18px;padding:0 20px}.cl-fold>summary{padding:16px 0;cursor:pointer;font-size:15px;font-weight:600;color:var(--cl-accent)}.cl-fold[open]{padding-bottom:20px}.cl-fold>summary small{font-weight:400;color:var(--cl-muted);margin-left:8px}.cl-fold .cl-fold{margin:12px 0}
.clarte-layout .cl-auth{min-height:100vh;background:radial-gradient(ellipse at top left,#e9f3ec,transparent 60%),#f6f7fa;color:var(--cl-ink)}.clarte-layout.cl-auth>.card-shadow{box-shadow:0 10px 40px #203b3010;border:1px solid var(--cl-line);border-radius:20px}.clarte-layout.cl-auth :is(.uppercase,.tracking-widest){text-transform:none;letter-spacing:0}.clarte-layout.cl-auth .font-black{font-weight:600}.clarte-layout.cl-auth :is(input:not([type=checkbox]),button){min-height:46px;font-size:16px}.clarte-layout.cl-auth label{font-size:14px}.clarte-layout.cl-auth :is(a,input,button):focus-visible{outline:3px solid #28618c;outline-offset:3px}
@media(max-width:800px){.cl-wayfinding{padding:10px 18px}.cl-location-agency{display:none}.clarte-layout .cl-master-header{padding:22px 18px}.cl-nav-filter{margin-top:4px}.cl-page-outline{top:4px}.cl-page-outline nav{display:grid;grid-template-columns:1fr}.clarte-layout .cl-ui h2{font-size:20px}.clarte-layout .cl-ui :is(td,th){min-width:110px}.clarte-layout .cl-ui .cl-sale-row>div{min-width:0}.cl-fold{padding-inline:16px}.clarte-layout .cl-ui [class*="min-w-["]{max-width:100%}}
@media(prefers-reduced-motion:reduce){.clarte-layout *, .clarte-layout *:before,.clarte-layout *:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
@media print{.cl-sidebar,.cl-wayfinding,.cl-page-outline{display:none!important}.clarte-layout .main-content{margin-left:0!important}.clarte-layout .cl-ui{padding:0!important}}
.clarte-layout .cl-sidebar [hidden]{display:none!important}
.clarte-layout.cl-auth{background:radial-gradient(ellipse at top left,#e9f3ec,transparent 60%),#f6f7fa}
.clarte-layout .cl-ui :is(.phase-header,.cl-intro){background:var(--cl-tint);border:1px solid var(--cl-line);box-shadow:none;color:var(--cl-ink)}
.clarte-layout .cl-ui :is(.phase-header,.cl-intro) :is(h1,h2,p){color:var(--cl-ink)}
.clarte-layout .cl-ui :is(.phase-header,.cl-intro) p{font-size:14px;font-weight:400;line-height:1.6}
.clarte-layout .cl-ui .phase-header>span{background:#fff;color:var(--cl-accent);box-shadow:none;border:1px solid var(--cl-line)}
.clarte-layout .cl-ui .cl-intro h2{font-size:24px}
.clarte-layout .cl-ui .cl-intro :is(a,button){background:#fff;color:var(--cl-accent);border:1px solid var(--cl-line)}
.clarte-layout .cl-fold>div{border:0;box-shadow:none;border-radius:0}
.clarte-layout .cl-ui>.cl-wayfinding{margin-bottom:24px;border:1px solid var(--cl-line);border-radius:12px}
.clarte-layout .cl-ui .font-bold{font-weight:500}
.clarte-layout .cl-ui :is(button,a)[class~="bg-[#143421]"]{color:#fff}
.clarte-layout.cl-portal .main-content{margin-left:0}
.clarte-layout.cl-portal .cl-ui{padding-top:28px;padding-bottom:48px}
.clarte-layout.cl-portal .cl-ui>header{background:var(--cl-tint);color:var(--cl-ink);border:1px solid var(--cl-line);border-left:4px solid var(--cl-accent)}
.clarte-layout.cl-portal .cl-ui>header :is(h1,p){color:var(--cl-ink)}
.clarte-layout .cl-master-header .cl-breadcrumb{white-space:normal;overflow:visible}
.clarte-layout .cl-master-header .cl-breadcrumb ol{flex-wrap:wrap;row-gap:6px}
.clarte-layout .cl-master-header .cl-breadcrumb a{min-height:0;font-size:13px}
.clarte-layout .cl-ui [data-cl-major]{scroll-margin-top:90px}
/* Catalogue intégré : les cartes ouvrent directement les outils métier. */
.cl-tool-catalog{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.cl-tool-card{display:flex;flex-direction:column;gap:16px;padding:25px!important}.cl-tool-card h2{font-size:19px!important}.cl-tool-card p{font-size:14px;color:#637358;line-height:1.7;flex:1}.cl-tool-icon{width:44px;height:44px;display:grid;place-items:center;background:var(--tool-soft);color:var(--tool-color);border-radius:12px}.cl-tool-icon svg{width:26px;height:26px}.cl-tool-open{background:var(--tool-soft);color:var(--tool-color);padding:14px;border-radius:9px;font-size:13px}.cl-sidebar .m-nav-icon{width:20px;height:20px;flex-shrink:0}.cl-demo-notice{background:#e8efd9;color:#355132;border:1px solid #c7d7af;border-radius:12px;padding:12px 18px;margin-bottom:20px;font-size:13px}.cl-appearance-options{display:flex;flex-wrap:wrap;gap:15px;margin:20px 0}.cl-appearance-options label{padding:15px;background:#edf3e4;border-radius:10px;cursor:pointer}.cl-appearance-options input{accent-color:#30593d}
@media(max-width:1100px){.cl-tool-catalog{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.cl-tool-catalog{grid-template-columns:1fr}}

#cl-tool-links[data-cl-local-catalog]:not(.cl-searching)>details{display:none}#cl-tool-links[data-cl-local-catalog].cl-searching>.cl-primary-nav{display:none}

.cl-portfolio-visual{display:grid;grid-template-columns:1.6fr 1fr;gap:20px;margin:25px 0}.cl-portfolio-visual .cl-panel{padding:25px}.cl-portfolio-bars{display:grid;gap:20px;margin-top:24px}.cl-portfolio-bars strong,.cl-portfolio-bars span{display:block;font-size:12px;line-height:1.8}.cl-portfolio-bars span{color:#65775b}.cl-portfolio-track{height:10px;border-radius:8px;background:#edf1e5;margin-top:8px;overflow:hidden}.cl-portfolio-track i{display:block;height:100%;background:#76a483;border-radius:8px}.cl-portfolio-links{display:grid;gap:9px;margin-top:20px}.cl-portfolio-links a{display:flex;align-items:center;gap:12px;padding:13px;background:#eef3e5;border-radius:10px;font-size:13px}.cl-portfolio-links svg{width:21px;height:21px}.cl-portfolio-links span{margin-left:auto}@media(max-width:950px){.cl-portfolio-visual{grid-template-columns:1fr}}

.cl-sidebar details[data-cl-domain="settings"]>summary:before{display:none}

.cl-nav-search-toggle{display:grid;place-items:center;width:44px;height:44px;margin:0 8px 12px;border:1px solid var(--cl-line);border-radius:12px;background:transparent;color:var(--cl-ink);cursor:pointer}.cl-nav-search-toggle[hidden]{display:none}.cl-nav-search-toggle:hover,.cl-nav-search-toggle[aria-expanded=true]{background:var(--cl-soft)}.cl-nav-search-toggle:focus-visible{outline:3px solid var(--cl-brand);outline-offset:3px}

.cl-top-breadcrumb{flex:1;min-width:0;color:var(--cl-ink);line-height:1.5}.cl-top-breadcrumb nav{min-width:0;flex-wrap:wrap}.cl-top-breadcrumb a{color:var(--cl-accent);text-decoration:none}.cl-top-breadcrumb a:hover{text-decoration:underline;text-underline-offset:3px}.cl-top-breadcrumb [aria-current=page]{overflow-wrap:anywhere;color:inherit}.cl-wayfinding>.cl-appearance-tools{flex-shrink:0}@media(max-width:650px){.cl-wayfinding{align-items:flex-start}.cl-top-breadcrumb{font-size:12px}}

.cl-header-source{display:inline-flex;align-items:center;min-height:32px;padding:4px 10px;border:1px solid #dfe6db;border-radius:8px;color:#255530;font-size:12px;font-weight:650;text-decoration:none}.cl-header-source:hover{background:#edf3eb}

.demo-name-badge{display:inline-flex;align-items:center;vertical-align:middle;flex-shrink:0;margin-left:6px;padding:3px 7px;border-radius:6px;background:#e8eee4;color:#496242;font-size:10px;font-weight:600;line-height:1.3;letter-spacing:0}

/* Prestations: the native input carries semantics; the pill carries the visible state. */
.sale-feature-pill{position:relative;display:inline-flex!important;cursor:pointer;max-width:100%}
.sale-feature-pill input[type=checkbox]{position:absolute!important;width:1px!important;height:1px!important;min-width:0!important;min-height:0!important;padding:0!important;margin:-1px!important;clip-path:inset(50%)!important;overflow:hidden!important;white-space:nowrap!important;border:0!important}
.sale-feature-pill>div{display:flex;align-items:center;min-height:38px;padding:8px 13px!important;border:1px solid #aebcab!important;border-radius:99px!important;background:#fff!important;color:#36533d!important;white-space:normal}
.sale-feature-pill input:checked+div{background:#285834!important;color:#fff!important;border-color:#285834!important}
.sale-feature-pill input:focus-visible+div{outline:3px solid #245d8c;outline-offset:3px}
.sale-feature-pill:hover>div{box-shadow:0 0 0 1px #66836a}
.sale-feature-pill[hidden]{display:none!important}
/* Desktop navigation preference never applies to the mobile menu. */
.cl-desktop-toggle{display:none}
@media(min-width:801px){
.cl-desktop-toggle{position:fixed;top:8px;left:218px;z-index:1100;display:grid;place-items:center;width:36px;height:36px;min-height:36px;padding:0;border:1px solid #b1c1ab;border-radius:10px;background:#fff;color:#285834;box-shadow:0 2px 6px #17352218;cursor:pointer}
.cl-desktop-toggle:focus-visible{outline:3px solid #245d8c;outline-offset:3px}
html.cl-sidebar-collapsed .clarte-layout .cl-sidebar{display:none!important}
html.cl-sidebar-collapsed .clarte-layout :is(.main-content,.sidebar-offset){margin-left:0!important}
html.cl-sidebar-collapsed .cl-desktop-toggle{left:8px}
html.cl-sidebar-collapsed .cl-desktop-toggle span{transform:rotate(180deg)}
html.cl-sidebar-collapsed .clarte-layout :is(.cl-content,.cl-page){max-width:none}
html.cl-sidebar-collapsed .clarte-layout .global-search-bar{padding-left:54px}
}
