/* V49 — documents de formation, isolated from existing portal components. */
.v49-documents{--doc-ink:#183b48;--doc-muted:#57717b;--doc-line:#c8d9dd;--doc-green:#21755f;background:#f5f9fa;border:1px solid var(--doc-line);border-radius:20px;overflow:visible;color:var(--doc-ink);box-shadow:0 8px 28px #163f4c0a;min-width:0}.v49-doc-heading{border-radius:19px 19px 0 0;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:28px 30px;background:linear-gradient(115deg,#153e4d,#28605e);color:#fff}.v49-doc-heading h2{font-size:28px;line-height:1.2;margin:7px 0 8px}.v49-doc-heading p{margin:0;color:#d4e7e7;line-height:1.5}.v49-doc-eyebrow{font-size:10px;letter-spacing:2px;color:#abd9cb;font-weight:800}.v49-documents .v49-doc-button{min-height:38px;border-radius:9px;padding:9px 14px;font-size:12px;line-height:1.35;box-shadow:none;font-weight:700;white-space:normal}.v49-doc-heading .v49-doc-button{background:#ffffff16;border-color:#ffffff40;color:white}.v49-doc-sections{display:flex;gap:8px;padding:15px 28px;background:#e6eff0;border-bottom:1px solid var(--doc-line)}.v49-doc-sections .v49-doc-button{background:transparent;border-color:transparent;color:#4c6671}.v49-doc-sections .is-active{background:white;color:#125844;border-color:#b9d4ca;box-shadow:0 3px 8px #163f4c0a}.v49-doc-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:15px;padding:22px 28px}.v49-doc-actions{display:flex;gap:8px;flex-wrap:wrap}.v49-doc-search{display:flex;gap:7px;flex:0 1 340px;margin:0}.v49-doc-search input{min-width:100px;min-height:40px;padding:10px 12px;border:1px solid #b8cbd0;border-radius:9px;background:white;width:100%;font-size:13px}.v49-doc-layout{display:grid;grid-template-columns:230px minmax(0,1fr);border-top:1px solid var(--doc-line)}.v49-doc-sidebar{background:#edf3f4;padding:22px 16px;border-right:1px solid var(--doc-line);min-width:0}.v49-doc-sidebar h3{font-size:12px;text-transform:uppercase;letter-spacing:1px;margin:0 8px 14px}.v49-doc-sidebar p{font-size:12px;line-height:1.7;color:var(--doc-muted);padding:16px 8px 0;border-top:1px solid var(--doc-line);margin-top:20px}.v49-doc-tree{display:flex;gap:9px;align-items:center;background:transparent;border:1px solid transparent;border-radius:8px;padding:10px 9px;width:100%;text-align:left;color:#3c626c;font:inherit;font-size:12px;cursor:pointer;margin-bottom:3px}.v49-doc-tree svg{width:20px;height:20px;stroke:currentColor;stroke-width:1.5;flex:none}.v49-doc-tree span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.v49-doc-tree.is-current{background:white;color:#17614f;border-color:#bfd6ce;font-weight:800;box-shadow:0 3px 8px #163f4c08}.v49-doc-main{min-width:0;padding:20px 25px 28px;background:#fff}.v49-doc-crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin-bottom:20px;font-size:12px;color:#85999e}.v49-doc-crumbs .v49-doc-button{min-height:28px;padding:4px 7px;background:transparent;border:0;border-radius:5px;color:#42636d;font-size:11px;font-weight:600}.v49-doc-crumbs .v49-doc-button:last-child{font-weight:800;color:#195d4e}.v49-doc-list-head{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap;margin-bottom:15px}.v49-doc-list-head h3{font-size:20px;margin:0;overflow-wrap:anywhere}.v49-doc-list-head>span{font-size:11px;color:var(--doc-muted)}.v49-doc-zip{margin-left:auto;color:#176b58;font-size:11px;font-weight:700;text-decoration:none}.v49-doc-row{display:flex;align-items:center;gap:14px;padding:17px 0;border-top:1px solid #e1eaec;min-width:0}.v49-doc-file-icon{width:42px;height:42px;display:grid;place-items:center;flex:none;background:#fff3d9;color:#aa7a28;border:1px solid #e8d6b1;border-radius:11px}.v49-doc-file-icon svg{width:25px;height:25px;stroke:currentColor;stroke-width:1.4}.v49-doc-file-icon.is-file{background:#ebf3fa;color:#34739a;border-color:#c4d7e5}.v49-doc-name{min-width:0;flex:1}.v49-doc-name>a,.v49-doc-name>button{display:block;color:#214c59;font:inherit;font-size:14px;font-weight:750;line-height:1.4;text-decoration:none;background:none;padding:0;border:0;text-align:left;cursor:pointer;overflow-wrap:anywhere;max-width:100%}.v49-doc-name>a:hover,.v49-doc-name>button:hover{text-decoration:underline;color:#17755c}.v49-doc-name small{display:block;font-size:10px;color:var(--doc-muted);margin-top:5px;line-height:1.5;overflow-wrap:anywhere}.v49-doc-row-actions{display:flex;align-items:center;gap:8px;flex:none}.v49-doc-menu{position:relative}.v49-doc-menu>summary{list-style:none;cursor:pointer;background:#edf3f4;border:1px solid #ccdcdf;border-radius:8px;font-size:13px;letter-spacing:1px;padding:10px;line-height:1}.v49-doc-menu>summary::-webkit-details-marker{display:none}.v49-doc-menu>div{position:absolute;z-index:3;right:0;top:calc(100% + 5px);padding:6px;border:1px solid #c0d4d9;background:white;border-radius:11px;min-width:190px;box-shadow:0 10px 25px #153b4c23;display:grid;gap:3px}.v49-doc-menu .v49-doc-button{background:transparent;border:0;color:#315763;text-align:left;justify-content:flex-start;min-height:35px}.v49-doc-menu .v49-doc-button:hover{background:#edf4f3}.v49-doc-menu .v49-doc-danger{color:#a13649}.v49-doc-empty{padding:48px 20px 54px;text-align:center;max-width:530px;margin:auto}.v49-doc-empty>span{display:grid;place-items:center;margin:0 auto 18px;width:74px;height:64px;color:#a98748;background:#f6edda;border-radius:18px}.v49-doc-empty>span svg{width:40px;height:40px;stroke:currentColor;stroke-width:1.3}.v49-doc-empty h3{font-size:19px;margin:0 0 12px}.v49-doc-empty p{font-size:13px;line-height:1.8;color:var(--doc-muted);margin:0 0 20px}.v49-doc-readonly{font-size:13px;margin:0;color:var(--doc-muted)}.v49-doc-progress{margin:0 28px 20px;padding:15px 18px;border-radius:11px;border:1px solid #b3d5c9;background:#eaf7f0;display:flex;align-items:center;gap:16px;flex-wrap:wrap}.v49-doc-progress>div{flex:1;min-width:160px}.v49-doc-progress strong{font-size:13px;display:block;color:#1f6650}.v49-doc-progress span{display:block;font-size:11px;color:#416d60;margin-top:5px;overflow-wrap:anywhere}.v49-doc-progress progress{height:8px;accent-color:#27856a;width:150px}.v49-doc-error{padding:24px;background:#fff0f0;color:#8c3348;font-size:14px}.v49-doc-attendance{padding:28px}.v49-doc-attendance-intro{display:flex;align-items:flex-start;gap:15px;margin-bottom:26px}.v49-doc-attendance-intro h3{font-size:20px;margin:0 0 8px}.v49-doc-attendance-intro p{color:var(--doc-muted);font-size:13px;line-height:1.7;max-width:720px;margin:0}.v49-doc-session{display:flex;align-items:center;justify-content:space-between;gap:20px;background:#fff;border:1px solid var(--doc-line);border-radius:13px;padding:22px;margin-bottom:12px}.v49-doc-session h4{font-size:16px;margin:0 0 8px}.v49-doc-session p{font-size:12px;color:var(--doc-muted);margin:0 0 10px}.v49-doc-participants{display:inline-block;background:#e8f2f2;color:#2d6770;padding:5px 9px;border-radius:20px;font-size:11px;font-weight:700}.v49-doc-session small{display:block;font-size:11px;color:#7d6540;margin-top:8px}.v49-doc-modal-note,.v49-doc-inherited{font-size:13px;line-height:1.7;color:#56737b}.v49-doc-inherited{padding:12px 15px;background:#fff5df;color:#7d683d;border-radius:9px}.v49-doc-access{margin:20px 0;border:1px solid #c7d8dd;border-radius:12px;padding:14px 18px;max-height:280px;overflow:auto}.v49-doc-access legend{font-weight:750;color:#204c59;padding:0 6px;font-size:14px}.v49-doc-access>p{font-size:12px;color:#5b7580;line-height:1.7}.v49-doc-access>label{display:flex;gap:10px;align-items:flex-start;padding:10px 0;font-size:13px;color:#214953;border-bottom:1px solid #e2ebed;cursor:pointer}.v49-doc-access input{margin:3px 0 0;width:17px;height:17px;accent-color:#23715d;flex:none}.v49-doc-access small{display:block;font-size:11px;color:#637c85;margin-top:4px}.v49-doc-form-actions{margin-top:25px}.v49-doc-upload-errors{max-height:50vh;overflow:auto;font-size:13px;line-height:1.7}.v49-doc-upload-errors li{margin-bottom:10px;overflow-wrap:anywhere}.v49-documents button:focus-visible,.v49-documents a:focus-visible,.v49-documents summary:focus-visible{outline:3px solid #2b9fbe;outline-offset:3px}.v49-documents button:disabled{opacity:.55;cursor:wait}.v49-doc-sections .button{flex:0 1 auto}.v49-documents [hidden]{display:none!important}
@media(max-width:1050px){.v49-doc-layout{grid-template-columns:185px minmax(0,1fr)}.v49-doc-main{padding:18px}.v49-doc-row{gap:10px}.v49-doc-row .v49-doc-button{font-size:11px;padding:8px 10px}.v49-doc-name>a,.v49-doc-name>button{font-size:13px}.v49-doc-sidebar{padding:18px 10px}}
@media(max-width:760px){.v49-doc-heading{padding:22px 18px;gap:12px;align-items:flex-start}.v49-doc-heading h2{font-size:23px}.v49-doc-heading p{font-size:12px}.v49-doc-heading .v49-doc-button{font-size:10px;padding:8px;min-height:33px}.v49-doc-sections{padding:12px 15px;gap:5px}.v49-doc-toolbar{padding:18px 15px}.v49-doc-search{flex:1 1 100%}.v49-doc-actions{width:100%;gap:6px}.v49-doc-actions .v49-doc-button{flex:1 1 auto;font-size:11px;padding:9px 10px}.v49-doc-layout{display:block}.v49-doc-sidebar{display:none}.v49-doc-main{padding:17px 15px 22px}.v49-doc-list-head h3{font-size:18px}.v49-doc-zip{width:100%;margin:0}.v49-doc-row{display:grid;grid-template-columns:35px minmax(0,1fr);gap:9px 10px;align-items:start;padding:15px 0}.v49-doc-file-icon{width:35px;height:35px;border-radius:9px}.v49-doc-file-icon svg{width:22px;height:22px}.v49-doc-row-actions{grid-column:2;justify-content:flex-start}.v49-doc-menu>div{left:0;right:auto}.v49-doc-progress{margin:0 15px 18px;padding:13px}.v49-doc-progress progress{width:100%}.v49-doc-empty{padding:35px 10px}.v49-doc-empty h3{font-size:17px}.v49-doc-attendance{padding:20px 15px}.v49-doc-attendance-intro h3{font-size:18px}.v49-doc-session{padding:18px;display:block}.v49-doc-session .v49-doc-button{margin-top:15px;display:inline-flex}.v49-doc-crumbs{gap:1px}.v49-doc-crumbs .v49-doc-button{font-size:10px;overflow-wrap:anywhere}}

.v49-doc-maintenance-notice{margin:18px 28px 0;padding:12px 15px;border:1px solid #dfd0ab;background:#fff6df;border-radius:9px;color:#79623d;font-size:12px;line-height:1.6}.v49-doc-zip:disabled{border:0;background:transparent;text-align:left;cursor:not-allowed}.v49-doc-name>button:disabled{cursor:not-allowed}
/* Keep the search action intact when the toolbar wraps onto its own row. */
.v49-doc-search{min-width:min(100%,320px)}
.v49-doc-search input{flex:1 1 auto;width:0;min-width:100px}
.v49-doc-search>.v49-doc-button{flex:0 0 auto;white-space:nowrap}
/* V51 — the private document picker shares the same files/folder choice. */
body[data-portal] #v49-documents .v50-action-documents{--v50-action:#267443!important;--v28-tone:#267443!important}
.v51-private-document-upload{min-width:0}.v51-private-document-upload>.field{display:grid;gap:9px;font-size:14px;font-weight:650;color:#355766;margin-bottom:16px}
.v51-private-document-upload input[type=file]{width:100%;min-width:0;box-sizing:border-box;min-height:44px;padding:11px 12px;border:1px solid #b6cbd3;border-radius:10px;background:white;color:#244653;font:inherit;font-size:13px}
@media(max-width:600px){.v51-private-document-upload input[type=file]{font-size:16px}}
