@import url("../portal-chat-composer.css?v=20261003-dialogue-inline");
@import url("../portal-workflow.css?v=20261002-preparation");
@import url("../portal-session-dates.css?v=20260925-organisme-visual");
@import url("../portal-common.css?v=20261008-attendance-progression");
@import url("./tables.css?v=20261008-session-logo-centering");
.organisme-welcome{max-width:760px;margin:60px auto}.organisme-choice{display:grid;gap:12px;max-width:540px}.organisme-choice .btn{white-space:normal;text-align:left;justify-content:flex-start}.organisme-status{color:var(--muted)}
.organisme-pagination{display:flex;align-items:center;justify-content:flex-end;gap:14px;margin-top:20px}.organisme-sessions small{display:block}.organisme-sessions td:first-child{width:85px;min-width:85px}.organisme-sessions td{overflow-wrap:anywhere}.organisme-sessions{min-width:620px}

.organisme-session-title{display:flex;align-items:center;gap:12px}.session-number-badge{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;min-width:56px;height:38px;padding:3px;border:1px solid #d6e2ee;border-radius:7px;background:#edf3fa;color:#315e87;white-space:nowrap}.session-number-badge small{font-size:8px;letter-spacing:.06em;text-transform:uppercase}.session-number-badge strong{font-size:16px;font-weight:800;font-variant-numeric:tabular-nums;line-height:1.1}.organisme-customer{display:flex;align-items:center;gap:10px}.organisme-customer-logo{display:grid;place-items:center;width:38px;height:38px;flex:0 0 38px;border:1px solid var(--line);border-radius:9px;background:#fff;color:#947b58}.organisme-customer-logo img{width:32px;height:32px;object-fit:contain;grid-area:1/1}.organisme-customer-logo>.icon{grid-area:1/1}.organisme-customer-logo.has-logo>.icon{visibility:hidden}.organisme-sessions .intervention-dates{max-width:190px}.organisme-sessions .intervention-date{cursor:default}[data-theme=dark] .session-number-badge{background:#28394a;border-color:#455c73;color:#c5dcf2}

.organisme-formation{min-width:220px}.organisme-formation>small{color:var(--muted);margin-bottom:5px}.organisme-sessions td:nth-child(3),.organisme-sessions th:nth-child(3){display:table-cell}

.organisme-periods{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.organisme-period-separator th{background:var(--brand-soft);color:var(--brand);padding:13px 18px;text-align:left;font-size:13px;text-transform:none;letter-spacing:0}.organisme-period-separator .subtle{margin-left:10px;font-weight:400}.organisme-sessions tr.organisme-period-separator th{display:table-cell;width:auto}

.organisme-search{display:flex;gap:10px;align-items:center}.organisme-search .search{flex:1;min-width:180px}.organisme-search input{width:100%}.organisme-search .search-control{display:flex;align-items:center;gap:0;overflow:hidden;border:1px solid var(--line);border-radius:10px;background:var(--surface,#fff)}.organisme-search .search-control:focus-within{outline:3px solid color-mix(in srgb,var(--brand) 30%,transparent);outline-offset:2px}.organisme-search .search-control>input{flex:1;min-width:0;min-height:44px;padding:10px 13px;border:0;border-radius:0;background:transparent;color:var(--ink);outline:0}.organisme-search .search-control>input::-webkit-search-cancel-button{margin-right:6px}.organisme-search .search-control>button{display:grid;place-items:center;align-self:stretch;width:44px;min-width:44px;padding:0;border:0;border-left:1px solid var(--line);border-radius:0;background:transparent;color:var(--muted);cursor:pointer}.organisme-search .search-control>button:hover{background:var(--surface-muted,#f4f6f2);color:var(--brand)}.organisme-search .search-control>button .icon{position:static;inset:auto;width:18px;height:18px;color:inherit}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}@media(max-width:700px){.organisme-search{flex-wrap:wrap}.organisme-search .search{flex-basis:100%}}
.organisme-list-form{display:block}.organisme-list-form>.organisme-list-header{margin-bottom:18px}.organisme-list-header{justify-content:space-between}.organisme-list-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;margin-left:auto;min-width:0}.organisme-list-header-actions>.btn{flex:0 0 auto}.organisme-list-header-actions .search-control{width:min(320px,32vw);min-width:210px}.organisme-list-header-actions .organisme-header-search{display:flex;align-items:center;gap:8px;margin:0;min-width:0}.organisme-list-header-actions .organisme-header-search .search-control{width:min(320px,32vw)}
@media(max-width:850px){.organisme-list-header{flex-wrap:wrap;align-items:flex-start}.organisme-list-header-actions{width:100%}.organisme-list-header-actions .search-control{width:min(360px,100%)}}
@media(max-width:700px){.organisme-list-header{align-items:stretch}.organisme-list-header-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.organisme-list-header-actions .search-control{width:auto;min-width:0}.organisme-list-header-actions>.btn{min-height:44px;padding-inline:12px}.organisme-list-header-actions .organisme-header-search{display:grid;grid-template-columns:minmax(0,1fr) auto}.organisme-list-header-actions .organisme-header-search .search-control{width:auto;min-width:0}}

.organisme-sessions [data-session-row]{cursor:pointer}.organisme-sessions [data-session-row]:hover>td,.organisme-sessions [data-session-row]:focus-within>td{background:#e8f5ed}.organisme-session-link{color:inherit;text-decoration:none}.organisme-session-link:focus-visible{outline:2px solid var(--brand);outline-offset:4px}.organisme-session-detail{margin-top:24px}

[data-theme=dark] .organisme-sessions [data-session-row]:hover>td,[data-theme=dark] .organisme-sessions [data-session-row]:focus-within>td{background:#203d30}

/* Definition uses the shared wizard, progress, marker, person and summary components. */
.organisme-session-detail{margin:24px 0 18px}.organisme-session-detail h1{font-size:29px;max-width:760px;overflow-wrap:anywhere}
.definition-wizard{max-width:1000px;margin:24px auto}.definition-step-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:24px}.definition-step-heading .eyebrow{margin:0}.definition-step-heading .badge{gap:5px}.definition-step-heading .badge .icon{width:13px;height:13px}
.definition-panel-heading{justify-content:flex-start;align-items:flex-start}.definition-panel-heading>div{min-width:0}.definition-panel-heading h2{font-size:20px;margin:2px 0 8px}.definition-panel-heading p{margin:0;line-height:1.6}
.definition-fields{border:0;padding:0;margin:24px 0;min-width:0}.definition-fields>label{margin-bottom:20px}.definition-warning{align-items:flex-start}.definition-wizard fieldset:disabled{opacity:.8}
.definition-wizard .definition-switch{align-items:center;gap:14px;margin-bottom:24px}.definition-switch input[type=checkbox]{flex:0 0 18px;width:18px;height:18px;accent-color:#9e8258}.definition-switch small{display:block;color:var(--muted);font-weight:400;margin-top:4px}
.definition-program{margin:0 0 20px}.definition-program>div{min-width:0}.definition-program strong{color:var(--ink)}.definition-program p{white-space:pre-line;margin:6px 0 0}.definition-program details{margin-top:12px}.definition-program summary{cursor:pointer}
.definition-inline{display:flex;gap:10px;align-items:center}.definition-inline select{flex:1;min-width:0}.definition-inline .btn{flex:none}.definition-roster{display:grid;gap:10px;margin:18px 0}.definition-roster .person{justify-content:space-between}.definition-roster strong{flex:1}.definition-roster .avatar .icon{width:16px;height:16px}
.definition-quick,.definition-unlock{padding:20px;margin:20px 0;background:var(--canvas);border:1px solid var(--line);border-radius:var(--radius)}.definition-unlock label{margin-bottom:14px}.definition-validation{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.definition-wizard .actions{border-top:1px solid var(--line);padding-top:20px}
.definition-upload{padding:18px;border:1px dashed var(--line);border-radius:12px}.definition-upload small{color:var(--muted);font-weight:400}.definition-logo{display:flex;gap:16px;align-items:center;margin:14px 0}.definition-logo img{max-width:130px;max-height:90px}
.definition-summary dt{font-size:12px;color:var(--muted);margin-bottom:8px}.definition-summary dd{margin:0;font-weight:600}.definition-summary .btn{margin-top:14px}.definition-summary p{font-size:12px;margin:8px 0}.definition-wizard [readonly]{opacity:.8}#definition-error{color:var(--brand)}#definition-message{color:var(--green)}#definition-error:empty,#definition-message:empty{display:none}
[data-theme=dark] .definition-switch:has(input:checked){background:var(--warm);border-color:#514a3e}
@media(max-width:700px){.definition-wizard{padding:20px;margin-top:20px}.definition-panel-heading{gap:12px}.definition-panel-heading .overview-marker{width:38px;height:38px;border-radius:12px}.definition-panel-heading h2{font-size:18px}.definition-step-heading{align-items:flex-start;flex-wrap:wrap}.definition-inline{flex-wrap:wrap}.definition-inline select{flex-basis:100%}.definition-roster .person{flex-wrap:wrap}.definition-validation .btn{white-space:normal}.definition-quick,.definition-unlock{padding:16px}}

.preparation-wizard textarea{line-height:1.6}.preparation-wizard .definition-fields>label{margin-bottom:20px}.preparation-tools{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:18px 0}.preparation-table{min-width:560px}.preparation-table .btn{min-height:36px;padding:7px 10px;margin:3px;font-size:11px}.preparation-add{margin:20px 0}.preparation-add summary{cursor:pointer;font-size:12px;color:var(--muted);padding:8px 0}.preparation-wizard .preparation-import{display:inline-flex;flex-direction:row;position:relative;overflow:hidden;font-size:12px;cursor:pointer}.preparation-import input{position:absolute;inset:0;opacity:0;cursor:pointer}.preparation-import:focus-within{outline:2px solid #b7a07c;outline-offset:3px}.preparation-document{align-items:flex-start}.preparation-document .btn{margin-top:12px;max-width:100%;white-space:normal;text-align:left;overflow-wrap:anywhere}#preparation-error{color:var(--brand)}#preparation-message{color:var(--green)}#preparation-error:empty,#preparation-message:empty{display:none}

.execution-wizard .portal-step-navigation{grid-template-columns:repeat(5,minmax(0,1fr))}
.execution-slot{display:grid;gap:8px;margin:16px 0;max-width:100%}.execution-page{display:flex;justify-content:space-between;gap:16px;align-items:center}.execution-wizard td small{display:block;overflow-wrap:anywhere}.execution-wizard select,.execution-wizard input{max-width:100%}.execution-choice{min-width:150px}
@media(max-width:640px){.execution-page{align-items:flex-start;flex-direction:column}.execution-wizard .portal-step-navigation{grid-template-columns:1fr}.execution-wizard .preparation-table{min-width:560px}}

.execution-wizard .preparation-import{display:inline-flex;flex-direction:row;position:relative;overflow:hidden;font-size:12px;cursor:pointer}#execution-error{color:var(--brand)}#execution-message{color:var(--green)}#execution-error:empty,#execution-message:empty{display:none}

.execution-wizard .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

@media(max-width:640px){.execution-wizard .preparation-table{min-width:0}.execution-wizard .preparation-table thead{display:none}.execution-wizard .preparation-table tr{display:grid;padding:10px 0;border-bottom:1px solid var(--line)}.execution-wizard .preparation-table td{display:block;border:0;padding:8px 12px}.execution-wizard .preparation-table td::before{content:attr(data-label);display:block;font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:6px}.execution-wizard .execution-choice{min-width:0}.execution-wizard .preparation-table select,.execution-wizard .preparation-table input{width:100%}}

.finalization-slots{display:grid;gap:18px}.finalization-slot{padding:20px}.finalization-slot h3{margin-top:0}.finalization-slot .preparation-tools .btn{max-width:100%;white-space:normal;overflow-wrap:anywhere}.finalization-checks{display:grid;gap:12px}.finalization-checks .callout{display:flex;align-items:center;gap:14px}#finalization-error{color:var(--brand)}#finalization-message{color:var(--green)}#finalization-error:empty,#finalization-message:empty{display:none}
.finalization-participant-table{min-width:720px}.finalization-pdf-icon{width:38px;height:38px;min-width:38px;padding:8px;justify-content:center}.finalization-pdf-icon svg{width:18px;height:18px}.finalization-history{margin-top:12px}.finalization-slot-checks{display:grid;gap:14px}.finalization-slot-check{padding:18px}.finalization-slot-check h3{margin-top:0}.finalization-slot-check .finalization-checks{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))}

.catalogue-filters select{max-width:260px}.catalogue-table td:first-child small,.catalogue-table td:first-child strong{display:block}.catalogue-table td:first-child{min-width:200px}.catalogue-table .actions{flex-wrap:wrap;gap:8px}.catalogue-themes summary,.catalogue-section summary{cursor:pointer;font-weight:700;padding:12px 0}.catalogue-section{border-top:1px solid var(--line);margin-top:20px;padding:8px 0}.catalogue-document{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:12px 0}.catalogue-document>span{flex:1;overflow-wrap:anywhere;min-width:150px}.catalogue-theme-list>div{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px 0;border-bottom:1px solid var(--line)}.catalogue-theme-list>div>span{flex:1;min-width:180px}.catalogue-editor-actions{display:flex;flex-wrap:wrap;gap:10px;border-top:1px solid var(--line);padding-top:20px;margin-top:20px}.catalogue-section [data-code-labels]{display:flex;flex-wrap:wrap;gap:6px}.catalogue-section [data-code-labels] .btn{font-size:12px;white-space:normal;text-align:left}.catalogue-section [data-reference-results]{display:grid;gap:6px;margin-top:10px}.catalogue-section [data-reference-results] .btn{text-align:left;white-space:normal}.catalogue-section textarea{resize:vertical}.catalogue-filters>label:not(.search){display:grid;gap:5px;font-size:13px}#catalogue-delete-form{padding:24px;max-width:480px}#catalogue-delete-form .actions{display:flex;gap:10px;margin-top:16px}[data-catalogue-error],[data-delete-error]{color:#bb2222}[data-catalogue-message]{color:#27866a}
@media(max-width:700px){.catalogue-filters{align-items:stretch}.catalogue-filters>label{width:100%}.catalogue-filters select{max-width:100%}.catalogue-table thead{display:none}.catalogue-table,.catalogue-table tbody,.catalogue-table tr,.catalogue-table td{display:block}.catalogue-table tr{padding:14px;border-bottom:1px solid var(--line)}.catalogue-table td{border:0;padding:8px 0}.catalogue-table td:before{content:attr(data-label);display:block;font-size:11px;color:var(--muted);margin-bottom:4px;text-transform:uppercase}.catalogue-table td:first-child{min-width:0}.catalogue-editor-actions>.btn{width:100%}.catalogue-theme-list>div>span{flex-basis:100%}}
.catalogue-document .preparation-import{position:relative;overflow:hidden;display:inline-flex;flex-direction:row;cursor:pointer}
.catalogue-header-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}#organisme-view>.header h1:focus{outline:none}
.catalogue-table [data-catalogue-row]{cursor:pointer}.catalogue-table [data-catalogue-row]:hover td,.catalogue-table [data-catalogue-row]:focus-within td{background:color-mix(in srgb,var(--green) 8%,transparent)}
[data-catalogue-error],[data-delete-error]{color:var(--brand)}[data-catalogue-message]{color:var(--green)}

.entreprises-table td small,.entreprises-table td strong{display:block}.entreprises-table [data-company-row]{cursor:pointer}.entreprises-table [data-company-row]:hover td,.entreprises-table [data-company-row]:focus-within td{background:color-mix(in srgb,var(--green) 8%,transparent)}.entreprise-public-search{display:flex;gap:12px;align-items:end}.entreprise-public-search label{flex:1}.entreprise-public-search .btn{margin-bottom:1px}.entreprise-logo{display:flex;gap:20px;align-items:center;flex-wrap:wrap}.entreprise-logo>img{width:100px;height:100px;object-fit:contain;border:1px solid var(--line);border-radius:12px}.entreprise-logo>div{flex:1;min-width:200px}.entreprise-logo .preparation-import{position:relative;overflow:hidden;display:inline-flex;flex-direction:row;cursor:pointer}.entreprise-logo .actions{flex-wrap:wrap;justify-content:start}.entreprise-logo [data-logo-label]{color:var(--muted)}[data-company-error]{color:var(--brand)}[data-company-message]{color:var(--green)}.entreprise-public-search+[data-public-results]{display:grid;gap:10px;margin-top:16px}.attesta-logo-editor{background:var(--surface);color:var(--ink);border-color:var(--line)}.attesta-logo-editor .logo-editor-hint{color:var(--muted)}.attesta-logo-editor .logo-editor-actions .btn{flex:1}.entreprises-table [data-company-logo]{object-fit:contain}
@media(max-width:700px){.entreprise-public-search{flex-direction:column;align-items:stretch}.entreprise-logo{align-items:flex-start}.entreprises-table tr.organisme-period-separator{padding:8px 14px}.entreprises-table tr.organisme-period-separator th{display:block;border:0}.entreprise-logo .actions{flex-direction:row}}

.trainer-document{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:16px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.trainer-document p{margin:5px 0}.trainer-files{margin-top:20px}.trainer-document dl{font-size:.85rem}.trainer-document .actions{flex-wrap:wrap;flex-shrink:0;max-width:55%}@media(max-width:700px){.trainer-document{flex-direction:column}.trainer-document .actions{max-width:100%;width:100%}}
.trainer-document .preparation-import,.trainer-files .preparation-import,.next-wizard>.actions>.preparation-import{position:relative;overflow:hidden;display:inline-flex;flex-direction:row;cursor:pointer}.entreprises-table [data-trainer-row]{cursor:pointer}.entreprises-table [data-trainer-row]:hover td,.entreprises-table [data-trainer-row]:focus-within td{background:color-mix(in srgb,var(--green) 8%,transparent)}[data-trainer-error]{color:var(--brand)}[data-trainer-message]{color:var(--green)}[data-trainer-error]:empty,[data-trainer-message]:empty{display:none}

/* Management uses existing panels, markers, badges, fields and wizard navigation. */
.agent-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.agent-card{min-width:0}.agent-title{display:flex;align-items:center;gap:12px;min-width:0}.agent-title h2{font-size:18px;margin:0;overflow-wrap:anywhere}.agent-card p{line-height:1.6}.agent-summary{display:grid;gap:14px;margin:20px 0}.agent-summary small{display:block;color:var(--muted);margin-bottom:6px}.agent-summary strong,.agent-summary span{font-size:13px}.agent-card fieldset{border:0;padding:0;min-width:0}.agent-permission,.agent-days label{display:flex;align-items:center;gap:8px}.agent-permission input,.agent-days input{width:18px;height:18px;flex:none;accent-color:var(--brand)}.agent-card details{margin:16px 0}.agent-card summary,.bpf-category summary{cursor:pointer;font-weight:600;padding:12px 0}.agent-days{display:flex;gap:12px;flex-wrap:wrap;margin:16px 0}.agent-days legend{margin-bottom:10px}.agent-card [role=alert],#bpf-error{color:var(--brand)}.agent-card [role=status]{color:var(--green)}.bpf-category{border-bottom:1px solid var(--line);padding-bottom:12px}.bpf-category .next-form-grid{margin:12px 0}.agent-card [hidden]{display:none!important}.agent-card .actions{flex-wrap:wrap}.agent-card>.panel-head{flex-wrap:wrap;gap:12px}.agent-card .next-form-grid>*{min-width:0}
@media(max-width:1000px){.agent-grid{grid-template-columns:minmax(0,1fr)}}
.bpf-wizard .actions{flex-wrap:wrap}.bpf-wizard .actions .btn{max-width:100%;white-space:normal;text-align:center}.bpf-wizard .next-summary{display:block}.bpf-wizard .next-summary dl{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;margin:0}.bpf-wizard .next-summary dd{margin:0;font-weight:600}.agent-card .agent-permission{flex-direction:row}.agent-card .agent-days label{flex-direction:row;font-size:12px}.agent-card .agent-days input{min-height:18px}.agent-card .next-form-grid [data-interval]{grid-column:1/-1}.bpf-wizard .definition-step-heading .eyebrow{overflow-wrap:anywhere}

/* Email controls reuse the organisme forms and typography. */
.agent-email-summary,.agent-email-controls{border-top:1px solid var(--line);margin-top:16px;padding-top:12px;min-width:0}
.agent-email-summary p,.agent-email-history{overflow-wrap:anywhere}
.agent-email-history{padding-left:20px;font-size:13px}.agent-email-history li{margin:10px 0}
.agent-email-controls textarea{width:100%;box-sizing:border-box;resize:vertical;min-height:70px}

/* Keep catalogue/company icon actions together despite older catalogue wrapping rules. */
.organisme-table.catalogue-table .actions{flex-wrap:nowrap}
.organisme-table.catalogue-table th:last-child{width:112px}

.chat-panel{margin-bottom:24px;min-width:0}.chat-panel>.panel-head{gap:12px;flex-wrap:wrap}.chat-panel .agent-title{min-width:0}.chat-panel h2{font-size:18px}.chat-messages{max-height:460px;overflow:auto;display:grid;gap:12px;margin:18px 0;padding:2px}.chat-message{padding:14px 16px;border:1px solid var(--line);border-radius:12px;min-width:0;background:var(--canvas)}.chat-message.chat-user{margin-left:10%;background:var(--surface)}.chat-message.chat-assistant{margin-right:5%}.chat-message p{white-space:pre-wrap;overflow-wrap:anywhere;margin:8px 0;line-height:1.6}.chat-message strong{font-size:12px}.chat-panel textarea{width:100%;box-sizing:border-box;resize:vertical;margin:8px 0;min-height:90px}.chat-panel .actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.chat-panel .btn{max-width:100%;white-space:normal}.chat-proposal{border:1px solid var(--line);padding:16px;border-radius:12px;margin:16px 0}.chat-proposal dl>div{display:grid;grid-template-columns:minmax(100px,1fr) 2fr;gap:12px;padding:8px 0}.chat-proposal dt{color:var(--muted)}.chat-proposal dd{margin:0;overflow-wrap:anywhere}.chat-panel [role=alert]{color:var(--brand)}
@media(max-width:700px){.chat-proposal dl>div{grid-template-columns:1fr;gap:5px}.chat-panel>.panel-head>.btn{width:100%}.chat-message.chat-user,.chat-message.chat-assistant{margin-left:0;margin-right:0}}
.chat-working{display:flex;align-items:center;gap:12px}.chat-spinner{display:grid;grid-template-columns:repeat(3,4px);gap:3px;width:18px;height:18px;flex:none;animation:chat-spin 2.4s steps(8) infinite}.chat-spinner i{width:4px;height:4px;background:currentColor;border-radius:1px;animation:chat-dot 1.2s infinite;animation-delay:calc(var(--dot)*.1s)}@keyframes chat-spin{to{transform:rotate(360deg)}}@keyframes chat-dot{50%{opacity:.2}}@media(prefers-reduced-motion:reduce){.chat-spinner,.chat-spinner i{animation:none}}
.chat-drop{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:16px;border:1px dashed var(--line,#64748b);border-radius:12px;margin:12px 0}.chat-drop input[type=file]{max-width:100%;font:inherit}.chat-sources{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.chat-source{display:flex;align-items:center;gap:8px;max-width:100%;overflow-wrap:anywhere;padding:6px 10px;border:1px solid var(--line,#64748b);border-radius:8px}.chat-mailbox{margin:16px 0}.chat-mail-list{max-height:350px;overflow:auto}.chat-email{padding:10px;border-bottom:1px solid var(--line,#64748b);overflow-wrap:anywhere}.chat-email p{white-space:pre-wrap}.chat-email[hidden]{display:none}.chat-tokens{font-variant-numeric:tabular-nums}

.chat-settings,.chat-conversations,.chat-public{margin:14px 0;padding:12px;border:1px solid var(--line,#64748b);border-radius:12px}.chat-conversation-list{display:flex;flex-direction:column;gap:8px;max-height:280px;overflow:auto}.chat-conversation-list .btn{display:flex;flex-direction:column;align-items:flex-start;white-space:normal;text-align:left;overflow-wrap:anywhere}.chat-public article{padding:12px 0;border-bottom:1px solid var(--line,#64748b);overflow-wrap:anywhere}.chat-proposal dd{white-space:pre-wrap}

.chat-message.chat-user{background:#ecfdf5;border-color:#a7d8bd}.chat-message.chat-assistant{background:#eff6ff;border-color:#b6d2ee}[data-theme="dark"] .chat-message.chat-user{background:#102d24;border-color:#32654c}[data-theme="dark"] .chat-message.chat-assistant{background:#142a40;border-color:#385d83}

.chat-report{margin-top:16px;border-top:1px solid var(--line);padding-top:16px}.chat-report h3,.chat-report h4{margin:10px 0}.chat-report-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:16px 0}.chat-report-metrics .panel{padding:14px;display:flex;flex-direction:column;gap:8px}.chat-report-metrics strong{font-size:24px}.chat-report-table{overflow:auto;max-width:100%}.chat-report-table table{width:100%;min-width:440px}.chat-report-table caption{text-align:left;font-weight:600;padding:8px}.chat-report-table td{overflow-wrap:anywhere;max-width:400px}.chat-report-chart{margin:18px 0}.chat-report-chart>div{display:grid;grid-template-columns:minmax(80px,1fr) minmax(60px,2fr) auto;align-items:center;gap:12px;margin:8px 0}.chat-report-chart meter{width:100%;height:18px}.chat-report-chart span{overflow-wrap:anywhere}.chat-message:has(.chat-report){max-width:100%;min-width:0}
@media print{body:has(.chat-print-report) header,body:has(.chat-print-report) nav,body:has(.chat-print-report) .agent-card,body:has(.chat-print-report) .content>.header{display:none!important}.chat-print-report .chat-panel>*:not(.chat-messages),.chat-print-report .chat-messages>*:not(:has(.chat-print-selected)),.chat-print-report .chat-message:not(:has(.chat-print-selected)),.chat-print-report .chat-message>*:not(.chat-print-selected):not(p):not(strong),.chat-print-report .chat-report:not(.chat-print-selected),.chat-print-selected .actions{display:none!important}.chat-print-report .chat-messages,.chat-print-report .chat-message{max-height:none!important;overflow:visible!important}.chat-print-selected{color:#000;background:#fff}.chat-print-selected .chat-report-table{overflow:visible}.chat-print-selected table{min-width:0}}

/* Keep mobile authentication and the composer at a readable native input size. */
@media(max-width:700px){html[data-portal=organisme] .auth-shell{grid-template-columns:minmax(0,1fr)}html[data-portal=organisme] .auth-story,html[data-portal=organisme] .auth-panel{min-width:0;max-width:100%}html[data-portal=organisme] .auth-panel{width:100%}html[data-portal=organisme] .auth-panel input:not(.auth-code),html[data-portal=organisme] .chat-panel textarea.portal-chat-input{font-size:16px}}

/* Prevent small editable text on touch screens, including landscape phones. */
@media(max-width:1000px),(pointer:coarse){html[data-portal=organisme] :is(textarea,select,input:not([type=checkbox]):not([type=radio]):not([type=file]):not(.auth-code)){font-size:max(16px,1em)}}

/* Long action labels must wrap inside narrow organisme panels. */
@media(max-width:700px){html[data-portal=organisme] .content .btn{max-width:100%;white-space:normal;overflow-wrap:anywhere}html[data-portal=organisme] .next-form-grid{grid-template-columns:minmax(0,1fr)}html[data-portal=organisme] .next-form-grid>*{min-width:0}}

.preparation-document-group{margin:24px 0;padding-top:20px;border-top:1px solid var(--line)}.preparation-document-group:first-child{margin-top:0;padding-top:0;border-top:0}.preparation-document-group h3{font-size:18px}.preparation-questionnaire-qr{margin:14px 0;padding:14px}.preparation-questionnaire-qr img{max-width:100%;height:auto}.preparation-document>div{min-width:0;overflow-wrap:anywhere}

.preparation-attendance-list,.preparation-attendance-bundles{width:100%;min-width:0}.preparation-attendance-file{display:grid;gap:8px;margin:12px 0;padding:14px;border:1px solid var(--line);border-radius:10px;min-width:0}.preparation-attendance-file .btn{justify-self:start}.preparation-attendance-bundles summary,.preparation-attendance-archive summary,.preparation-individual-qr summary{cursor:pointer;font-weight:600;padding:10px 0}.preparation-attendance-file small{overflow-wrap:anywhere}

/* Compact version of the shared session journey, using only the recorded phase. */
.session-life .portal-workflow{grid-template-columns:repeat(4,minmax(0,1fr));margin:10px 0 0;gap:0}
.session-life .portal-workflow li{display:block;padding:0;border:0;background:none;border-radius:0;min-width:0;text-align:center}
.session-life .portal-workflow li:before{content:"";position:absolute;top:12px;left:-50%;width:100%;height:2px;background:var(--line)}
.session-life .portal-workflow li:first-child:before{display:none}
.session-life .portal-workflow-link{position:relative;z-index:1;display:flex;flex-direction:column;gap:4px;padding:0 1px;min-height:44px;color:var(--muted)}
.session-life .portal-workflow-number{width:25px;height:25px;flex:0 0 25px;background:var(--surface,#fff);font-size:11px}
.session-life .portal-workflow strong{font-size:9px;font-weight:500;line-height:1.35;overflow-wrap:anywhere}
.session-life .portal-workflow small{display:none}
.session-life .portal-workflow .current .portal-workflow-link{color:var(--ink)}
.session-life .portal-workflow .current strong{font-weight:750}
.session-life .portal-workflow .current .portal-workflow-number{background:var(--green);color:#fff}
@media(max-width:700px){.session-life .portal-workflow strong{font-size:10px}.session-life .portal-workflow-link{min-height:48px}}

.accueil-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:22px}
.accueil-metric{display:grid;grid-template-columns:38px 1fr auto;gap:12px;text-align:left;font:inherit;color:var(--ink);cursor:pointer;margin:0;min-width:0}
.accueil-metric>strong{font-size:30px;line-height:38px}.accueil-metric>span:nth-of-type(2){grid-column:1/-1;font-weight:650}.accueil-metric small{display:block;font-size:11px;font-weight:400;color:var(--muted);margin-top:4px}.accueil-metric:disabled{cursor:default;opacity:.7}.accueil-metric:focus-visible{outline:2px solid var(--brand);outline-offset:3px}
.accueil-shortcuts{margin-bottom:28px}.accueil-shortcuts nav{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.accueil-section{margin:28px 0}.accueil-section>.panel-head{align-items:center;gap:14px;flex-wrap:wrap}.accueil-section h2{margin:0}.accueil-section .organisme-table.session-table tr.organisme-period-separator{display:none}
@media(max-width:1000px){.accueil-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:450px){.accueil-metrics{gap:9px}.accueil-metric{padding:12px;gap:8px;grid-template-columns:32px 1fr auto}.accueil-metric>strong{font-size:25px}.accueil-metric>.record-marker{width:32px;height:32px;flex-basis:32px}.accueil-metric>span:nth-of-type(2){font-size:12px}.accueil-metric>.icon{width:14px}.accueil-shortcuts .btn{white-space:normal}.accueil-section>.panel-head .btn{max-width:100%;white-space:normal}}

/* The home journey occupies its own cell rather than extending the formation title. */
.accueil-session-table .session-life{max-width:180px;margin:auto}
.accueil-session-table .session-life .portal-workflow{margin:0}
.accueil-session-table .session-life .portal-workflow-number{width:22px;height:22px;flex-basis:22px;font-size:10px}
.accueil-session-table .session-life .portal-workflow li:before{top:11px}
.accueil-session-table .session-life .portal-workflow strong{font-size:9px;white-space:nowrap}
@media(min-width:701px){
 .organisme-table.accueil-session-table th:first-child{width:7%}
 .organisme-table.accueil-session-table th:nth-child(2){width:25%}
 .organisme-table.accueil-session-table th:nth-child(3){width:20%}
 .organisme-table.accueil-session-table th:nth-child(4){width:17%}
 .organisme-table.accueil-session-table th:nth-child(5){width:22%}
 .organisme-table.accueil-session-table th:last-child{width:9%}
 .organisme-table.accueil-session-table th,.organisme-table.accueil-session-table td{padding:8px}
}
@media(max-width:700px){
 .organisme-table.accueil-session-table td.session-life-cell{grid-column:1/-1;grid-row:5;border-top:1px solid var(--line);padding-top:8px}
 .organisme-table.accueil-session-table .session-life-cell:before{display:none}
 .accueil-session-table .session-life{max-width:220px;margin-left:0}
}

.accueil-session-table .session-life-cell>.session-life{display:inline-block;width:calc(100% - 29px);vertical-align:middle}
.accueil-slot-toggle.icon-btn{display:inline-flex;width:26px;min-height:44px;padding:4px;vertical-align:middle;margin-left:3px}
.accueil-slot-toggle .icon{width:15px;height:15px;transform:rotate(90deg)}.accueil-slot-toggle[aria-expanded=true] .icon{transform:rotate(-90deg)}
.accueil-slot-row[hidden]{display:none}
.accueil-slot-content{padding:10px;background:var(--canvas);border-radius:10px}
.accueil-slot{padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--surface,#fff);margin-bottom:10px}.accueil-slot h3{font-size:12px;margin-bottom:10px}
.accueil-slot-line{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;list-style:none;padding:0;margin:0}
.accueil-slot-line a{display:flex;align-items:center;gap:8px;min-height:44px;border-radius:8px}.accueil-slot-line strong,.accueil-slot-line small{display:block;overflow-wrap:anywhere}.accueil-slot-line strong{font-size:11px}.accueil-slot-line small{font-size:10px;color:var(--muted)}
.accueil-slot-dot{display:grid;place-items:center;width:24px;height:24px;flex:0 0 24px;border-radius:50%;border:1px solid var(--line);color:var(--muted)}.accueil-slot-dot .icon{width:14px;height:14px}.accueil-slot-line .is-complete .accueil-slot-dot{background:#378c55;color:white;border-color:#378c55}.accueil-slot-line .is-partial .accueil-slot-dot{background:#f1c84b;color:#382d08;border-color:#d9ad22}.accueil-slot-line .is-empty .accueil-slot-dot{background:#e89435;color:#3c2107;border-color:#ce7621}
@media(max-width:700px){.accueil-slot-row:not([hidden]),.organisme-table.accueil-session-table .accueil-slot-row>td{display:block;width:100%;border:0;padding:0}.accueil-slot-row{margin:-6px 0 14px}.accueil-slot-line{grid-template-columns:1fr;gap:6px}.accueil-slot-content{padding:8px}.accueil-slot-row>td:before{display:none}}

@media(min-width:701px){.organisme-table.accueil-session-table td.session-identity{display:table-cell}}

/* The weekly planner stays a readable agenda on narrow screens. */
.planning-header{align-items:center;gap:18px}.planning-header>.btn{flex:0 0 auto}.planning-overview{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:20px 0}.planning-overview>div{font-size:14px}.planning-week-nav{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.planning-week-nav .btn{min-height:44px}.planning-unplanned{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:16px 0}.planning-unplanned>a{white-space:nowrap}.planning-day{margin:24px 0}.planning-day>h2{display:flex;align-items:baseline;gap:10px;margin:0 0 10px;text-transform:capitalize}.planning-day>h2 time{color:var(--muted);font-size:14px;font-weight:500}.planning-day>h2 small{margin-left:auto;color:var(--muted);font-size:12px;font-weight:500}.planning-day-events{display:grid;gap:9px}.planning-event{display:grid;grid-template-columns:minmax(120px,160px) minmax(0,1fr) auto;align-items:center;gap:14px;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:var(--surface,#fff)}.planning-event-time strong,.planning-event-time small{display:block}.planning-event-time strong{font-size:13px;font-variant-numeric:tabular-nums}.planning-event-time small{margin-top:3px;color:var(--muted);font-size:11px}.planning-event-main{min-width:0}.planning-event-title{font-weight:700;overflow-wrap:anywhere}.planning-event-main p{margin:4px 0 0;color:var(--muted);font-size:12px;overflow-wrap:anywhere}.planning-event-action{min-height:44px;white-space:nowrap}.planning-empty{display:grid;justify-items:center;text-align:center;padding:34px 20px}.planning-empty h2{margin:14px 0 4px}.planning-empty p{color:var(--muted)}
@media(max-width:700px){.planning-header{align-items:stretch}.planning-header>.btn{width:100%}.planning-overview{align-items:stretch;flex-direction:column;padding:16px}.planning-week-nav{display:grid;grid-template-columns:1fr 1fr;gap:8px}.planning-week-nav .btn{justify-content:center;padding-inline:10px}.planning-week-nav .btn[aria-label="Semaine précédente"]{grid-column:1;grid-row:1}.planning-week-nav .btn[aria-label="Semaine suivante"]{grid-column:2;grid-row:1}.planning-week-nav .planning-today{grid-column:1/-1;grid-row:2}.planning-unplanned{align-items:flex-start;flex-direction:column}.planning-unplanned>a{white-space:normal;min-height:44px;display:inline-flex;align-items:center}.planning-day{margin:20px 0}.planning-day>h2{font-size:17px}.planning-event{grid-template-columns:minmax(0,1fr);gap:7px;padding:14px}.planning-event-time{display:flex;align-items:baseline;gap:8px;color:var(--brand)}.planning-event-time small{margin:0}.planning-event-action{width:100%;justify-content:center;margin-top:5px}}

/* Shared cards and evidence bars: numeric labels remain usable without colour. */
.bpf-key-figures,.bpf-draft-figures,.qualiopi-metrics{margin:18px 0;grid-template-columns:repeat(4,minmax(0,1fr))}
.bpf-key-metric,.qualiopi-metric{display:flex;flex-direction:column;gap:8px;text-align:left;min-width:0;padding:20px;color:var(--ink);font:inherit}
.bpf-key-metric{cursor:pointer}.bpf-key-metric:hover{border-color:var(--brand)}
.bpf-key-metric strong,.qualiopi-metric strong{font-size:30px;line-height:1.2;overflow-wrap:anywhere}
.bpf-key-metric small,.qualiopi-metric small{color:var(--muted);line-height:1.5}
.bpf-key-metric span,.qualiopi-metric span{font-size:13px;font-weight:700}
.bpf-wizard .portal-step-navigation{grid-template-columns:repeat(7,minmax(0,1fr))}
.bpf-wizard .portal-step-navigation strong{overflow-wrap:anywhere}
.bpf-completion{display:grid;gap:10px;margin:24px 0}.bpf-completion progress{width:100%;accent-color:#23845d}
.qualiopi-filter{display:flex;gap:18px;align-items:end;flex-wrap:wrap;margin-bottom:18px}.qualiopi-filter label{flex:1;min-width:0}.qualiopi-filter select{width:100%;min-width:0}.qualiopi-filter p{width:100%;margin:0;color:var(--muted);font-size:12px}
.qualiopi-legend{display:flex;flex-wrap:wrap;gap:18px;margin:18px 0;font-size:12px}.qualiopi-legend span{display:flex;align-items:center;gap:6px}.qualiopi-legend i{width:10px;height:10px;border-radius:3px}
.qualiopi-bar{display:flex;background:var(--line);border-radius:7px;height:14px;overflow:hidden;min-width:0;width:100%}.qualiopi-bar>span{height:100%}
.qualiopi-covered{background:#23845d}.qualiopi-missing{background:#da9425}.qualiopi-to_confirm{background:#8796b0}.qualiopi-not_applicable{background:#d1d6de}
.qualiopi-criteria{display:grid;gap:8px}.qualiopi-criterion{display:grid;grid-template-columns:minmax(190px,1fr) minmax(120px,1fr) 95px;align-items:center;gap:18px;background:transparent;color:var(--ink);border:1px solid transparent;border-radius:10px;padding:14px;text-align:left;font:inherit;cursor:pointer}.qualiopi-criterion:hover,.qualiopi-criterion.selected{border-color:#8796b0;background:var(--surface,#fafafa)}.qualiopi-criterion>strong{font-size:14px}.qualiopi-criterion>span:last-child{text-align:right;font-weight:700}.qualiopi-criterion small{display:block;font-size:11px;color:var(--muted);font-weight:400}
.qualiopi-indicators{margin-top:18px}.qualiopi-indicator{border-top:1px solid var(--line);padding:16px 0}.qualiopi-indicator summary{display:grid;grid-template-columns:1fr auto;align-items:center;gap:10px;cursor:pointer}.qualiopi-indicator summary strong{font-size:14px;overflow-wrap:anywhere}.qualiopi-indicator summary .qualiopi-bar{grid-column:1/-1}.qualiopi-indicator summary>span:last-child{grid-column:1/-1;font-size:12px;color:var(--muted)}
.qualiopi-sources{padding-left:22px}.qualiopi-sources li{padding:8px 0}.qualiopi-sources span{display:block;color:var(--muted);font-size:12px;overflow-wrap:anywhere}.qualiopi-method{margin-top:18px}.qualiopi-method summary{cursor:pointer;font-weight:700}.qualiopi-method p{font-size:13px;line-height:1.6}
@media(max-width:1100px){.bpf-wizard .portal-step-navigation{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:700px){.bpf-key-figures,.bpf-draft-figures,.qualiopi-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.bpf-key-metric,.qualiopi-metric{padding:14px}.bpf-key-metric strong,.qualiopi-metric strong{font-size:25px}.bpf-wizard .portal-step-navigation{grid-template-columns:repeat(2,minmax(0,1fr))}.qualiopi-criterion{grid-template-columns:1fr 80px;gap:10px;padding:12px 6px}.qualiopi-criterion>strong{grid-column:1/-1}.qualiopi-indicator summary{grid-template-columns:1fr}.qualiopi-indicator .badge{justify-self:start}}
.organisme-periods [data-session-new]{margin-left:auto}.session-new-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0}.session-new-choices .next-choice{display:flex;flex-direction:column;gap:8px;text-align:left;padding:18px;border:1px solid var(--line);border-radius:12px;background:var(--surface,#fff);color:var(--ink);font:inherit;overflow-wrap:anywhere}.session-new-choices .next-choice small{color:var(--muted)}
@media(max-width:640px){.organisme-periods [data-session-new]{margin-left:0}.session-new-choices{grid-template-columns:1fr}}
.bpf-finance-figures{grid-template-columns:repeat(2,minmax(0,1fr));margin:18px 0}@media(max-width:480px){.bpf-finance-figures{grid-template-columns:1fr}}
.definition-public{margin:18px 0;padding:18px;border:1px solid var(--line);border-radius:12px}.definition-public-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:10px}.definition-public-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.definition-public-results .next-choice{display:flex;flex-direction:column;gap:8px;padding:16px;text-align:left;white-space:normal;overflow-wrap:anywhere}.definition-public-results .next-choice .subtle{display:flex;align-items:center;gap:8px}.definition-public-results small{color:var(--muted)}@media(max-width:640px){.definition-public{padding:12px}.definition-public-results{grid-template-columns:1fr}}
.portal-autocomplete{position:relative;margin-bottom:18px;min-width:0}.portal-autocomplete>label{display:block;margin-bottom:8px}.portal-autocomplete>input{width:100%;min-width:0}.portal-autocomplete>small{display:block;margin-top:6px}.portal-autocomplete-options{max-height:300px;overflow-y:auto;margin:8px 0;border:1px solid var(--line);border-radius:12px;background:var(--surface,#fff);padding:5px}.portal-autocomplete-options[hidden]{display:none}.portal-autocomplete-options>button{display:flex;flex-direction:column;gap:5px;width:100%;padding:13px;text-align:left;white-space:normal;overflow-wrap:anywhere;background:transparent;color:var(--ink);border:0;border-radius:8px;font:inherit}.portal-autocomplete-options>button:hover,.portal-autocomplete-options>button[aria-selected=true]{background:var(--brand-soft)}.portal-autocomplete-options small{color:var(--muted);font-size:12px}.definition-company-details{margin:18px 0}.definition-company-details>summary{cursor:pointer;font-weight:600;margin-bottom:16px}.definition-company-details .definition-upload{margin-top:18px}

.company-logo-suggestions{margin-bottom:1rem}.company-logo-choice{display:flex;gap:1rem;align-items:center;flex-wrap:wrap;padding:1rem 0;border-bottom:1px solid var(--border)}.company-logo-choice img{width:120px;height:72px;object-fit:contain;background:#fff;border-radius:6px;padding:6px}.company-logo-choice>div{min-width:0;flex:1 1 180px}.company-logo-choice a{overflow-wrap:anywhere}

/* Mobile navigation stays fully reachable and closes from navigation or the backdrop. */
.sidebar-backdrop{display:none}
.sidebar{overflow-y:auto}.sidebar-regulatory,.sidebar-settings,.sidebar-entities{margin:4px 0 10px;flex:0 0 auto}.sidebar-regulatory>summary,.sidebar-settings>summary,.sidebar-entities>summary{cursor:pointer;list-style:none}.sidebar-regulatory>summary::-webkit-details-marker,.sidebar-settings>summary::-webkit-details-marker,.sidebar-entities>summary::-webkit-details-marker{display:none}.sidebar-regulatory>summary:after,.sidebar-settings>summary:after,.sidebar-entities>summary:after{content:'＋';float:right}.sidebar-regulatory[open]>summary:after,.sidebar-settings[open]>summary:after,.sidebar-entities[open]>summary:after{content:'−'}.sidebar-regulatory .nav,.sidebar-settings .nav,.sidebar-entities .nav{padding-bottom:8px}
@media(max-width:700px){.sidebar{height:100vh;height:100dvh;max-height:100dvh;overflow-y:auto;overscroll-behavior:contain;padding-top:max(20px,env(safe-area-inset-top));padding-bottom:max(18px,env(safe-area-inset-bottom));-webkit-overflow-scrolling:touch}.sidebar .nav{flex:0 0 auto}.sidebar-foot{margin-top:24px;padding-top:18px}.sidebar-backdrop{display:none;position:fixed;inset:0;z-index:19;width:100%;height:100%;padding:0;border:0;border-radius:0;background:rgb(18 22 26 / 48%);touch-action:manipulation}.sidebar.open+.sidebar-backdrop{display:block}.sidebar.open{z-index:20}.organisme-menu-open{overflow:hidden}}

/* Show the week as a horizontal row of day cards; events stack inside each day. */
.planning-week-days{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(210px,calc((100% - 56px)/5));gap:14px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;padding:2px 2px 12px;width:100%;min-width:0;max-width:100%;box-sizing:border-box}
.planning-week-days:focus-visible{outline:2px solid var(--brand);outline-offset:3px}
#main.content:has(.planning-week-days),#organisme-view:has(.planning-week-days){min-width:0;max-width:100%;overflow-x:clip}
body:has(.planning-week-days){overflow-x:hidden}
html:has(.planning-week-days){overflow-x:hidden}
.planning-day{min-width:0;margin:0;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface,#fff);scroll-snap-align:start}
.planning-day-header{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:12px}
.planning-day-header h2{display:flex;flex-direction:column;gap:2px;margin:0;text-transform:capitalize;font-size:16px}
.planning-day-header h2 time{color:var(--muted);font-size:13px;font-weight:500}
.planning-day-header>small{flex:none;color:var(--muted);font-size:11px}
.planning-day-events{display:grid;align-content:start;gap:9px}
.planning-day-empty{margin:0;padding:14px 8px;color:var(--muted);font-size:13px;text-align:center}
.planning-event{grid-template-columns:minmax(0,1fr) 38px;grid-template-areas:"time action" "main main";gap:8px;padding:11px;border-radius:11px}
.planning-event-time{grid-area:time;color:var(--brand)}
.planning-event-time strong{font-size:12px}
.planning-event-main{grid-area:main}
.planning-event-details{align-items:flex-start;flex-direction:column;gap:5px}
.planning-event-action{grid-area:action;width:38px;height:38px;min-height:38px;padding:0;gap:0}
.planning-event-action-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:700px){.planning-week-days{grid-auto-columns:minmax(min(82vw,320px),1fr);gap:12px;padding-inline:1px}.planning-day{padding:13px}.planning-event{grid-template-columns:minmax(0,1fr) 40px;gap:7px;padding:10px}.planning-event-time{display:block}.planning-event-time small{display:block;margin-top:3px}}
.planning-search{display:flex;align-items:center;gap:0;max-width:300px;min-width:0;margin:0;border:1px solid var(--line);border-radius:10px;background:var(--surface,#fff);overflow:hidden}
.planning-search>input{width:100%;min-width:0;min-height:44px;padding:9px 12px;border:0;background:transparent;color:var(--ink);outline:none}
.planning-search>button{display:grid;place-items:center;align-self:stretch;width:44px;min-width:44px;border:0;border-left:1px solid var(--line);background:transparent;color:var(--muted);cursor:pointer}
.planning-search>button:hover{background:var(--surface-muted,#f4f6f2);color:var(--brand)}.planning-search>button svg{width:18px;height:18px}
.planning-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;min-width:0}.planning-header-actions>.btn{flex:0 0 auto}.planning-search-status{min-height:1.4em;margin:4px 0;color:var(--muted);font-size:12px}.planning-no-results{margin:12px 0;padding:16px;color:var(--muted)}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@media(max-width:850px){.planning-header-actions{flex-wrap:wrap}.planning-search{max-width:260px}}
@media(max-width:700px){.planning-header-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.planning-search{max-width:none}.planning-search>input{font-size:16px}.planning-header-actions>.btn{min-height:44px;padding-inline:12px}}

.performance-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:20px 0}.performance-metric{display:grid;gap:8px;min-width:0;padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--surface,#fff)}.performance-metric>span{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:13px}.performance-metric>span svg{width:17px;height:17px}.performance-metric>strong{font-size:25px;font-variant-numeric:tabular-nums}.performance-metric>small,.performance-results td small,.performance-date{display:block;color:var(--muted);font-size:12px}.performance-results{overflow:hidden}.performance-results>.panel-head{padding:18px 18px 0}.performance-empty{padding:26px 18px}.performance-empty p{color:var(--muted)}.performance-results .table-wrap{margin:12px 0 0}.performance-results td{vertical-align:top}.performance-results td strong{display:block}.performance-date{margin-top:4px;overflow-wrap:anywhere}.performance-table-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px 0}.performance-periods{display:flex;flex-wrap:wrap;gap:8px;padding:0;margin:0}.performance-period[aria-pressed=true]{border-color:var(--brand);background:var(--brand-soft);color:var(--brand)}.performance-company{display:flex;align-items:center;gap:9px;min-width:170px}.performance-company>.organisme-customer-logo{flex:0 0 38px}.performance-company>span:last-child{overflow-wrap:anywhere}.performance-sort{display:flex;align-items:center;justify-content:space-between;gap:7px;width:100%;padding:4px 2px;border:0;background:transparent;color:inherit;text-align:left;font:inherit;font-size:12px;font-weight:650;cursor:pointer}.performance-sort-indicator{color:var(--brand)}.performance-mobile-sort{display:none}.performance-grouping{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:12px}.performance-grouping select{min-height:38px;padding:6px 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface,#fff);color:var(--ink)}.performance-search-status{margin:7px 18px 0}.performance-score-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;max-width:240px}.performance-score-cards.is-pair{grid-template-columns:repeat(2,minmax(0,1fr));max-width:155px}.performance-score-cards.is-single{grid-template-columns:minmax(0,1fr);max-width:170px}.performance-results td[data-label="Évaluation formateur"]{min-width:205px}.performance-score-card{display:grid;grid-template-rows:13px auto auto 8px;box-sizing:border-box;justify-items:center;align-content:center;gap:2px;min-width:0;min-height:62px;padding:5px 3px;border:1px solid hsl(var(--performance-score-hue,150) 78% calc(var(--performance-score-light,96%) - 10%));border-radius:6px;background:var(--surface-muted,#f4f6f2);color:var(--muted);text-align:center}.performance-score-icon{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.performance-score-card>strong{font-size:11px;font-variant-numeric:tabular-nums;line-height:1.2;white-space:nowrap}.performance-score-card>span{font-size:8px;line-height:1.2;white-space:normal;overflow-wrap:anywhere;text-align:center}.performance-score-card>small{font-size:6px;line-height:1;white-space:nowrap}.performance-score-card>.rep{font-size:6px}
@media(max-width:850px){.performance-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.performance-metrics{grid-template-columns:1fr 1fr;gap:8px}.performance-metric{padding:12px}.performance-metric>strong{font-size:21px}.performance-table-tools{align-items:stretch;flex-direction:column;gap:10px;padding-inline:12px}.performance-periods{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.performance-periods .btn{min-width:0;padding:8px;justify-content:space-between;font-size:11px}.performance-grouping{display:grid;grid-template-columns:auto minmax(0,1fr)}.performance-grouping select{min-height:40px}.performance-mobile-sort{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;color:var(--muted);font-size:12px}.performance-mobile-sort select{min-width:0;min-height:40px;padding:7px 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface,#fff);color:var(--ink)}.performance-results>.table-wrap{border:0}.performance-results table,.performance-results tbody,.performance-results tr,.performance-results td{display:block;width:100%}.performance-results thead{position:absolute;clip:rect(0,0,0,0)}.performance-results tbody{display:grid;gap:10px;padding:10px}.performance-results tr{padding:10px 12px;border:1px solid var(--line);border-radius:10px}.performance-results td{display:grid;grid-template-columns:minmax(110px,35%) minmax(0,1fr);gap:10px;padding:7px 0;border:0;text-align:left}.performance-results td:before{content:attr(data-label);color:var(--muted);font-size:12px;font-weight:650}.performance-results td[data-label="Évaluation formateur"]{grid-template-columns:1fr;min-width:0}}


.performance-score-card[data-score-tone="0"]{border-color:hsl(52 90% 59%);background:linear-gradient(135deg,hsl(52 90% 68%),hsl(52 90% 75%));color:#17321b}
.performance-score-card[data-score-tone="1"]{border-color:hsl(56 88% 58%);background:linear-gradient(135deg,hsl(56 88% 67%),hsl(56 88% 74%));color:#17321b}
.performance-score-card[data-score-tone="2"]{border-color:hsl(59 86% 58%);background:linear-gradient(135deg,hsl(59 86% 67%),hsl(59 86% 74%));color:#17321b}
.performance-score-card[data-score-tone="3"]{border-color:hsl(63 85% 57%);background:linear-gradient(135deg,hsl(63 85% 66%),hsl(63 85% 73%));color:#17321b}
.performance-score-card[data-score-tone="4"]{border-color:hsl(67 83% 57%);background:linear-gradient(135deg,hsl(67 83% 66%),hsl(67 83% 73%));color:#17321b}
.performance-score-card[data-score-tone="5"]{border-color:hsl(70 81% 56%);background:linear-gradient(135deg,hsl(70 81% 65%),hsl(70 81% 72%));color:#17321b}
.performance-score-card[data-score-tone="6"]{border-color:hsl(74 80% 56%);background:linear-gradient(135deg,hsl(74 80% 65%),hsl(74 80% 72%));color:#17321b}
.performance-score-card[data-score-tone="7"]{border-color:hsl(78 78% 55%);background:linear-gradient(135deg,hsl(78 78% 64%),hsl(78 78% 71%));color:#17321b}
.performance-score-card[data-score-tone="8"]{border-color:hsl(81 76% 55%);background:linear-gradient(135deg,hsl(81 76% 64%),hsl(81 76% 71%));color:#17321b}
.performance-score-card[data-score-tone="9"]{border-color:hsl(85 74% 54%);background:linear-gradient(135deg,hsl(85 74% 63%),hsl(85 74% 70%));color:#17321b}
.performance-score-card[data-score-tone="10"]{border-color:hsl(88 72% 53%);background:linear-gradient(135deg,hsl(88 72% 62%),hsl(88 72% 69%));color:#17321b}
.performance-score-card[data-score-tone="11"]{border-color:hsl(92 71% 53%);background:linear-gradient(135deg,hsl(92 71% 62%),hsl(92 71% 69%));color:#17321b}
.performance-score-card[data-score-tone="12"]{border-color:hsl(96 69% 52%);background:linear-gradient(135deg,hsl(96 69% 61%),hsl(96 69% 68%));color:#17321b}
.performance-score-card[data-score-tone="13"]{border-color:hsl(99 67% 52%);background:linear-gradient(135deg,hsl(99 67% 61%),hsl(99 67% 68%));color:#17321b}
.performance-score-card[data-score-tone="14"]{border-color:hsl(103 66% 51%);background:linear-gradient(135deg,hsl(103 66% 60%),hsl(103 66% 67%));color:#17321b}
.performance-score-card[data-score-tone="15"]{border-color:hsl(107 64% 51%);background:linear-gradient(135deg,hsl(107 64% 60%),hsl(107 64% 67%));color:#17321b}
.performance-score-card[data-score-tone="16"]{border-color:hsl(110 62% 50%);background:linear-gradient(135deg,hsl(110 62% 59%),hsl(110 62% 66%));color:#17321b}
.performance-score-card[data-score-tone="17"]{border-color:hsl(114 60% 50%);background:linear-gradient(135deg,hsl(114 60% 59%),hsl(114 60% 66%));color:#17321b}
.performance-score-card[data-score-tone="18"]{border-color:hsl(118 58% 49%);background:linear-gradient(135deg,hsl(118 58% 58%),hsl(118 58% 65%));color:#17321b}
.performance-score-card[data-score-tone="19"]{border-color:hsl(121 57% 49%);background:linear-gradient(135deg,hsl(121 57% 58%),hsl(121 57% 65%));color:#17321b}
.performance-score-card[data-score-tone="20"]{border-color:hsl(125 55% 48%);background:linear-gradient(135deg,hsl(125 55% 57%),hsl(125 55% 64%));color:#17321b}

.documents-session-select{display:grid;gap:6px;width:min(100%,620px);max-width:100%;margin:12px 0}.documents-session-select select{box-sizing:border-box;width:100%;min-width:0;max-width:100%}.documents-session-group+.documents-session-group{margin-top:28px;padding-top:8px;border-top:1px solid var(--line)}

.document-reminder-filters{display:flex;flex-wrap:wrap;gap:12px;margin:16px 0}.document-reminder-filters label{display:grid;gap:5px;min-width:min(220px,100%);font-weight:600}.document-reminder-filters select{max-width:100%;min-width:0}.document-reminder-filters+[role=alert]{margin-top:10px}
.document-reminder-phase-filter{display:flex;align-items:center;flex-wrap:wrap;gap:8px 14px;min-width:min(280px,100%);margin:0;padding:8px 12px;border:1px solid var(--line,#d6dce5);border-radius:12px}.document-reminder-phase-filter legend{padding:0 5px;font-weight:700}.document-reminder-phase-filter label{display:flex;align-items:center;gap:6px;min-width:0;font-weight:500}.document-reminder-phase-filter input{width:16px;height:16px;margin:0;accent-color:var(--accent,#2764ae)}
.document-summary{margin:14px 0}.document-summary h2{display:flex;align-items:center;gap:8px;margin:0;font-size:16px}.documents-summary-metrics{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));margin:12px 0 0}.documents-summary-metrics>div{min-width:0}.documents-summary-metrics strong{font-variant-numeric:tabular-nums}.documents-summary-metrics span{font-size:11px}
.preparation-wizard .portal-step-navigation{grid-template-columns:repeat(7,minmax(0,1fr))}.questionnaire-supports-results{margin-block:18px}.questionnaire-supports-results .panel-head{align-items:flex-start}
@media(max-width:1100px){.preparation-wizard .portal-step-navigation{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:700px){.preparation-wizard .portal-step-navigation{grid-template-columns:repeat(2,minmax(0,1fr))}}
