/* V50 — separate training libraries and prepared session documents. */
.v50-training-library{min-width:0;color:#23414d}
.v50-training-intro{display:flex;justify-content:space-between;align-items:center;gap:24px;margin:8px 0 24px}
.v50-training-intro h2{margin:0 0 8px;font-size:26px;letter-spacing:-.025em;color:#193d4a}.v50-training-intro p{margin:0;max-width:690px;color:#58717c;line-height:1.65}
.v50-training-collections{display:grid;gap:24px}.v50-training-collection{--collection:#1b7168;--collection-light:#e3f3ef;border:1px solid #b9cecf;border-left:5px solid var(--collection);border-radius:20px;background:white;box-shadow:0 5px 20px #173d4a08;overflow:hidden;min-width:0;transition:box-shadow .18s,border-color .18s}
.v50-training-collection:hover{box-shadow:0 9px 26px #173d4a13;border-color:var(--collection)}
.v50-collection-blue{--collection:#2865a1;--collection-light:#e7effa}.v50-collection-violet{--collection:#775196;--collection-light:#f0eaf7}.v50-collection-amber{--collection:#95641c;--collection-light:#faf1df}.v50-collection-rose{--collection:#994d71;--collection-light:#f9eaf1}.v50-collection-slate{--collection:#4b697e;--collection-light:#eaf1f5}
.v50-training-collection>header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:25px 28px;background:linear-gradient(105deg,var(--collection-light),#fff);min-width:0}
.v50-training-collection-title{display:flex;align-items:center;gap:19px;min-width:0}.v50-training-collection-title>div{min-width:0}.v50-training-collection h3{margin:5px 0;color:#203e4c;font-size:23px;line-height:1.35;overflow-wrap:anywhere}.v50-training-collection-title p{margin:4px 0 0;color:#617884;font-size:13px}
.v50-training-eyebrow{font-size:10px;font-weight:750;letter-spacing:.16em;color:var(--collection)}.v50-training-collection-icon{height:55px;width:55px;display:grid;place-items:center;background:white;border:1px solid color-mix(in srgb,var(--collection),white 65%);border-radius:15px;color:var(--collection);flex:none}
.v50-training-library svg,.v50-training-modal svg{width:24px;height:24px;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round;fill:none;flex:none}
.v50-training-card-actions,.v50-training-row-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;flex:none}
.v50-training-library .button,.v50-training-modal .button{white-space:nowrap;word-break:normal;font-size:13px;min-height:38px;line-height:1.3}
body[data-portal] :is(#v50-training-library,.v50-training-modal,.v50-training-form-footer) .v50-training-button{--action-color:var(--v50-action,#275d8b);--button-color:var(--action-color);background-color:var(--action-color)!important;background-image:linear-gradient(#ffffff20,#ffffff03 48%,#00000017)!important;color:white!important;border:1px solid #ffffff54!important;border-radius:24px!important;box-shadow:inset 0 2px 1px #ffffff60,0 2px 6px #193e4d25!important;padding:9px 16px;text-shadow:0 1px 1px #00000015;font-weight:700;transition:filter .15s,transform .15s}
body[data-portal] :is(#v50-training-library,.v50-training-modal,.v50-training-form-footer) .v50-action-view{--v50-action:#4b6578}
body[data-portal] :is(#v50-training-library,.v50-training-modal,.v50-training-form-footer) .v50-action-download{--v50-action:#295e9d}
body[data-portal] :is(#v50-training-library,.v50-training-modal,.v50-training-form-footer) .v50-action-export{--v50-action:#86582e}
body[data-portal] :is(#v50-training-library,.v50-training-modal,.v50-training-form-footer) .v50-action-create{--v50-action:#514c9c}
body[data-portal] :is(#v50-training-library,.v50-training-modal,.v50-training-form-footer) .v50-action-folder{--v50-action:#157c80}
body[data-portal] :is(#v50-training-library,.v50-training-modal,.v50-training-form-footer) .v50-action-upload{--v50-action:#21734b}
body[data-portal] :is(#v50-training-library,.v50-training-modal,.v50-training-form-footer) .v50-action-import{--v50-action:#a45f20}
body[data-portal] :is(#v50-training-library,.v50-training-modal,.v50-training-form-footer) .v50-action-associate{--v50-action:#984b79}
body[data-portal] :is(#v50-training-library,.v50-training-modal,.v50-training-form-footer) .v50-action-edit{--v50-action:#916a16}
body[data-portal] :is(#v50-training-library,.v50-training-modal,.v50-training-form-footer) .v50-action-move{--v50-action:#74518a}
body[data-portal] :is(#v50-training-library,.v50-training-modal,.v50-training-form-footer) .v50-action-delete{--v50-action:#ad2947}
body[data-portal] :is(#v50-training-library,.v50-training-modal,.v50-training-form-footer) .v50-action-save{--v50-action:#247452}
body[data-portal] :is(#v50-training-library,.v50-training-modal,.v50-training-form-footer) .v50-action-cancel{--v50-action:#586c7a}
body[data-portal] :is(#v50-training-library,.v50-training-modal,.v50-training-form-footer) .v50-action-options{--v50-action:#4e6c7b;min-width:38px;padding:8px 12px;letter-spacing:.1em}
body[data-portal] :is(#v50-training-library,.v50-training-modal,.v50-training-form-footer) .v50-action-search{--v50-action:#166c80}
body[data-portal] :is(#v50-training-library,.v50-training-modal,.v50-training-form-footer) .v50-action-refresh{--v50-action:#52752b}
body[data-portal] :is(#v50-training-library,.v50-training-modal,.v50-training-form-footer) .v50-action-presence{--v50-action:#22806e}
body[data-portal] :is(#v50-training-library,.v50-training-modal,.v50-training-form-footer) .v50-action-breadcrumb{--v50-action:transparent;background:none!important;color:#315d68!important;border:0!important;box-shadow:none!important;text-shadow:none;padding:5px 0!important;font-size:12px;white-space:normal;text-align:left;min-height:30px;border-radius:0!important}
.v50-training-button:hover{filter:brightness(1.09);transform:translateY(-1px)}.v50-training-button:disabled{filter:none;transform:none;cursor:not-allowed}
.v50-training-browser{border-top:1px solid #c7dadd;background:#fff}.v50-training-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 24px;background:#f6fafb;border-bottom:1px solid #d4e2e6}.v50-training-toolbar>div{display:flex;gap:9px;flex-wrap:wrap}.v50-training-toolbar form{display:flex;align-items:center;gap:8px;margin:0;min-width:0}.v50-training-toolbar input{width:220px;max-width:100%;min-height:40px;border:1px solid #bfd1d7;border-radius:9px;background:white;font:inherit;font-size:13px;padding:10px 12px;color:#284955}
.v50-training-explorer{display:grid;grid-template-columns:220px minmax(0,1fr)}.v50-training-tree{padding:20px 15px;background:#f0f6f6;border-right:1px solid #d3e1e3;min-width:0}.v50-training-tree h4{margin:0 0 15px;font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:#54717c}.v50-training-tree>button{width:100%;display:flex;gap:10px;align-items:center;text-align:left;padding:10px 9px;border:1px solid transparent;border-radius:9px;background:transparent;color:#476775;font:inherit;font-size:12px;line-height:1.45;margin-bottom:5px}.v50-training-tree>button svg{width:18px;height:18px}.v50-training-tree>button span{overflow-wrap:anywhere}.v50-training-tree>button.is-current{background:white;border-color:#bdd3d2;color:#245e58;font-weight:750;box-shadow:0 2px 5px #274d5710}.v50-training-files{padding:18px 22px 24px;min-width:0}
.v50-training-crumbs{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px;color:#92a8b1}.v50-training-list-title{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:10px}.v50-training-list-title h4{margin:0;font-size:16px;color:#254955;overflow-wrap:anywhere}.v50-training-list-title>span{color:#78909a;font-size:11px}.v50-training-list-title>.button{margin-left:auto;font-size:12px}
.v50-training-file{display:flex;align-items:center;gap:12px;border-top:1px solid #e0e9ec;padding:15px 0;min-width:0}.v50-training-file-icon{width:40px;height:44px;border-radius:10px;display:grid;place-items:center;background:#eaf2f6;border:1px solid #c9dce3;color:#3e728b;flex:none}.v50-training-file-icon svg{width:20px;height:20px}.v50-training-file-name{min-width:0;flex:1}.v50-training-file-name strong,.v50-training-file-name>button{font:inherit;font-size:13px;font-weight:700;color:#284c5b;overflow-wrap:anywhere;text-align:left;line-height:1.5}.v50-training-file-name>button{background:none;border:0;padding:0;cursor:pointer}.v50-training-file-name small{display:block;font-size:11px;color:#82949d;margin-top:3px;overflow-wrap:anywhere}.v50-training-association{display:inline-block;font-size:10px;color:#8a6a36;margin-top:6px;background:#fbf4e7;border:1px solid #e6d7b8;padding:3px 7px;border-radius:6px}.v50-training-association.is-linked{color:#35645b;background:#e9f5ee;border-color:#c9dfd4}.v50-training-row-actions .button{font-size:11px;min-height:34px;padding:7px 11px!important}
.v50-training-empty{padding:36px 24px;text-align:center;border:1px dashed #c2d5da;border-radius:17px;background:#f8fbfc;color:#627e89}.v50-training-empty>span{display:inline-grid;place-items:center;width:58px;height:58px;border-radius:17px;background:#f7ecd8;color:#ab8348;margin-bottom:9px}.v50-training-empty h3,.v50-training-empty h4{margin:12px 0 8px;font-size:20px;color:#315562}.v50-training-empty p{max-width:580px;margin:0 auto 16px;font-size:13px;line-height:1.7}.v50-training-files .v50-training-empty{margin-top:20px;border:0;background:none;padding-block:30px}
.v50-training-error{padding:16px;border:1px solid #e6b7c3;background:#fff1f4;color:#98304f;border-radius:12px;margin:0 0 20px;display:flex;justify-content:space-between;align-items:center;gap:12px}.v50-training-notice{padding:13px 16px;border:1px solid #c9dce2;border-radius:11px;background:#edf5f7;color:#42636e;font-size:13px;line-height:1.65}
.v50-training-progress{border:1px solid #b6d8ce;border-radius:12px;background:#e8f5ef;padding:15px 18px;display:flex;align-items:center;gap:16px;margin:0 0 20px;color:#245a4c}.v50-training-progress>div{display:grid;gap:3px;flex:1;min-width:0}.v50-training-progress strong{font-size:13px}.v50-training-progress span{font-size:11px;overflow-wrap:anywhere}.v50-training-progress progress{width:140px;max-width:100%;accent-color:#287c62}.v50-training-progress .button{font-size:11px}.v50-training-upload-errors{max-height:55vh;overflow:auto;font-size:13px;line-height:1.7}.v50-training-upload-errors li{margin:12px 0;overflow-wrap:anywhere}
.v50-training-modal{color:#2a4a59;min-width:0}.v50-training-modal .field{display:grid;gap:9px;margin:0 0 20px;font-size:14px;font-weight:650;color:#355766}.v50-training-modal input:not([type=checkbox]):not([type=radio]),.v50-training-modal select{width:100%;min-height:44px;border:1px solid #b6cbd3;border-radius:10px;background:#fff;padding:11px 12px;font:inherit;color:#244653;box-sizing:border-box}.v50-training-modal input[type=file]{font-size:13px!important}.v50-training-modal .hint{font-size:12px;line-height:1.65;color:#6b838d}.v50-training-form-body{padding:0 0 12px}.v50-training-form-footer{display:flex;gap:12px;justify-content:flex-end;flex-wrap:wrap}.v50-training-options{display:grid;gap:13px;max-width:440px;margin:0 auto}.v50-training-options .button{min-height:44px;justify-content:center}
.v50-training-colors{border:0;padding:0;margin:22px 0 10px;display:flex;gap:10px;flex-wrap:wrap}.v50-training-colors legend{font-size:13px;font-weight:700;padding:0;margin-bottom:12px}.v50-training-colors label{position:relative;display:flex;align-items:center;gap:7px;padding:10px 12px;border:1px solid #c4d3d9;border-radius:10px;background:white;color:#47616c;font-size:12px;cursor:pointer}.v50-training-colors input{width:17px;height:17px;margin:0;accent-color:var(--swatch)}.v50-training-colors label::before{content:'';width:8px;height:8px;background:var(--swatch);border-radius:50%;margin-right:1px}.v50-color-teal{--swatch:#1b7168}.v50-color-blue{--swatch:#2865a1}.v50-color-violet{--swatch:#775196}.v50-color-amber{--swatch:#95641c}.v50-color-rose{--swatch:#994d71}.v50-color-slate{--swatch:#4b697e}.v50-training-colors label:has(input:checked){border-color:var(--swatch);box-shadow:inset 0 0 0 1px var(--swatch)}
.v50-training-association-details{border:1px solid #ccd8e2;border-radius:13px;padding:14px;background:#f4f5fa;margin:20px 0}.v50-training-association-details>summary{display:flex;justify-content:space-between;gap:12px;align-items:center;cursor:pointer;font-size:14px;font-weight:700;color:#5d5076}.v50-training-association-details>summary>span{font-size:11px;color:#85769b;font-weight:500}.v50-training-association-details[open]>summary{margin-bottom:17px}.v50-training-rule-list,.v50-training-session-rules{border:0;padding:0;margin:18px 0}.v50-training-rule-list legend,.v50-training-session-rules legend{padding:0;margin-bottom:12px;font-weight:700;font-size:13px;color:#3a5d6b}.v50-training-rule{border:1px solid #d0dde2;border-radius:11px;background:white;margin-bottom:9px;overflow:hidden}.v50-training-rule-heading{display:flex;gap:12px;align-items:center;padding:13px 15px;cursor:pointer;font-size:13px;line-height:1.5;color:#345767}.v50-training-rule input[type=checkbox],.v50-training-session-rules input[type=checkbox]{width:20px;height:20px;min-height:20px;margin:0;accent-color:#775196;flex:none}.v50-training-rule-options{padding:12px 15px 16px 47px;border-top:1px solid #e4e9ef;background:#f8f7fb;display:grid;gap:13px}.v50-training-rule-options[hidden]{display:none}.v50-training-rule-options>div{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.v50-training-rule-options>div>span{width:122px;font-size:12px;color:#706584}.v50-training-rule-options label{display:inline-flex;align-items:center;gap:7px;font-size:12px;color:#4e4762;cursor:pointer}.v50-training-rule-options input[type=checkbox]{width:17px;height:17px;min-height:17px}.v50-training-session-rules>label{display:flex;align-items:center;gap:11px;font-size:13px;line-height:1.5;padding:13px 15px;margin-bottom:8px;border:1px solid #c0d9cf;background:#eef7f2;border-radius:10px}
.v50-training-ready-summary{display:flex;align-items:center;gap:20px;padding:17px;border:1px solid #c2d9d2;border-radius:12px;background:#eaf4ef;margin-bottom:18px;color:#38675a;font-size:14px}.v50-training-ready-summary span{font-size:13px;color:#678479}.v50-training-ready-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.v50-training-ready-files{display:grid;margin-top:20px;border-top:1px solid #ccdae0}.v50-training-ready-file{display:flex;align-items:center;gap:13px;padding:17px 0;border-bottom:1px solid #d9e4e8;min-width:0}.v50-training-ready-file>span{display:grid;place-items:center;width:38px;height:42px;border-radius:9px;background:#eaf2f6;color:#49778e;flex:none}.v50-training-ready-file>div{flex:1;min-width:0}.v50-training-ready-file strong{display:block;font-size:13px;overflow-wrap:anywhere}.v50-training-ready-file small{display:block;color:#7a909a;font-size:11px;margin-top:4px;overflow-wrap:anywhere}.v50-training-links{margin-top:25px}.v50-training-links h3{font-size:16px;color:#355e6a}.v50-training-links a{display:flex;flex-direction:column;gap:4px;margin-bottom:10px;padding:13px 16px;background:#eef6f7;border:1px solid #c5dce0;border-radius:10px;color:#256e7b;overflow-wrap:anywhere}.v50-training-links a strong{font-size:13px}.v50-training-links a span{font-size:11px;color:#648992}
@media(max-width:1150px){.v50-training-collection>header{align-items:flex-start;flex-direction:column;gap:19px}.v50-training-toolbar{align-items:flex-start;flex-direction:column}.v50-training-explorer{grid-template-columns:180px minmax(0,1fr)}.v50-training-file{flex-wrap:wrap}.v50-training-row-actions{margin-left:52px}.v50-training-file-name{min-width:calc(100% - 60px)}}
@media(max-width:700px){.v50-training-intro{align-items:flex-start;flex-direction:column;gap:17px}.v50-training-intro h2{font-size:23px}.v50-training-collection>header{padding:20px}.v50-training-collection h3{font-size:21px}.v50-training-collection-icon{width:45px;height:45px}.v50-training-collection-title{gap:13px}.v50-training-card-actions{width:100%}.v50-training-card-actions .button:not(.v50-action-options){flex:1}.v50-training-toolbar{padding:17px}.v50-training-toolbar>div{width:100%}.v50-training-toolbar>div .button{flex:1}.v50-training-toolbar form{width:100%}.v50-training-toolbar input{width:auto;flex:1;min-width:0;font-size:16px}.v50-training-explorer{grid-template-columns:1fr}.v50-training-tree{padding:12px 16px;border-right:0;border-bottom:1px solid #d3e1e3;display:flex;gap:8px;flex-wrap:wrap;max-height:165px;overflow:auto}.v50-training-tree h4{width:100%;margin:0 0 3px}.v50-training-tree>button{width:auto;max-width:100%;margin:0}.v50-training-files{padding:17px}.v50-training-progress{flex-wrap:wrap}.v50-training-progress>div{min-width:100%}.v50-training-rule-options{padding:13px 15px}.v50-training-rule-options>div{gap:10px}.v50-training-rule-options>div>span{width:100%}.v50-training-ready-file{flex-wrap:wrap}.v50-training-ready-file>div{min-width:calc(100% - 55px)}.v50-training-ready-file>.button{margin-left:51px}.v50-training-form-footer .button{flex:1}.v50-training-modal input:not([type=checkbox]):not([type=radio]),.v50-training-modal select{font-size:16px}}
@media(prefers-reduced-motion:reduce){.v50-training-collection,.v50-training-button{transition:none}.v50-training-button:hover{transform:none}}
/* V51 — one document entry point and an unmistakable association control. */
.v51-document-source{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;border:0;padding:0;margin:4px 0 20px;min-width:0}
.v51-document-source legend{padding:0;margin-bottom:11px;font-size:13px;font-weight:700;color:#355766}
.v51-document-source>label{--source-color:#286d95;display:flex;align-items:center;gap:11px;padding:15px;border:1px solid #bbcfd8;border-radius:12px;background:linear-gradient(135deg,#f8fbfd,#eef4f7);cursor:pointer;min-width:0;transition:box-shadow .15s,border-color .15s}
.v51-document-source>label:last-child{--source-color:#906224;background:linear-gradient(135deg,#fffdf8,#f8f2e6);border-color:#d8cdb8}
.v51-document-source>label:has(input:checked){border-color:var(--source-color);box-shadow:inset 0 0 0 1px var(--source-color),0 3px 9px #193d4a0c}
.v51-document-source input[type=radio]{width:18px;height:18px;min-height:18px;margin:0;accent-color:var(--source-color);flex:none}
.v51-document-source>label>span{display:grid;grid-template-columns:24px minmax(0,1fr);gap:3px 10px;align-items:center;min-width:0;color:var(--source-color)}
.v51-document-source svg{width:23px;height:23px;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;fill:none;grid-row:1/3;flex:none}
.v51-document-source strong{font-size:13px;line-height:1.5}.v51-document-source small{font-size:11px;line-height:1.5;color:#617984}
.v51-document-source>label:focus-within{outline:3px solid #4193af66;outline-offset:3px}
.v50-training-association-details{padding:0;border:1px solid #b9a6c9;background:#f7f4fb;overflow:hidden;box-shadow:0 3px 10px #50406812}
.v50-training-association-details>summary{display:flex;list-style:none;margin:0;padding:16px 18px;gap:13px;min-height:72px;box-sizing:border-box;background:linear-gradient(110deg,#f0e7f7,#f9f6fc);border-radius:12px;color:#65417d;transition:background .15s,box-shadow .15s}
.v50-training-association-details>summary::-webkit-details-marker{display:none}
.v50-training-association-details>summary:hover{background:linear-gradient(110deg,#e8d9f2,#f4edf9);box-shadow:inset 0 0 0 1px #b293c9}
.v50-training-association-details>summary:focus-visible{outline:3px solid #6650a6;outline-offset:-4px}
.v50-training-association-details>summary>.v51-association-symbol{display:grid;place-items:center;flex:none;width:35px;height:35px;border:1px solid #b69ec7;border-radius:10px;background:#fff8;color:#744993;font-size:23px;font-weight:600}
.v50-training-association-details>summary>.v51-association-copy{display:grid;gap:4px;flex:1;min-width:0;color:#593a75;font-weight:700;font-size:14px;line-height:1.4}
.v51-association-copy small{font-size:11px;line-height:1.5;color:#79618d;font-weight:500}
.v50-training-association-details>summary>.v51-association-toggle{display:flex;align-items:center;justify-content:center;gap:8px;flex:none;min-height:35px;padding:6px 12px;background:#79549c;color:white;border:1px solid #ffffff7a;border-radius:20px;font-size:12px;font-weight:700;box-shadow:inset 0 2px 1px #fff3,0 2px 5px #61467e21}
.v51-association-toggle svg{width:17px;height:17px;stroke-width:2;transition:transform .15s}.v51-association-close{display:none}
.v50-training-association-details[open]>summary{margin:0;border-radius:12px 12px 0 0;border-bottom:1px solid #c9b8d7}
.v50-training-association-details[open] .v51-association-open{display:none}.v50-training-association-details[open] .v51-association-close{display:inline}.v50-training-association-details[open] .v51-association-toggle svg{transform:rotate(180deg)}
.v50-training-association-details>.v50-training-associations{padding:0 16px 4px}
.v51-training-kind{margin-left:auto;padding:3px 7px;border-radius:7px;background:#faf0d8;border:1px solid #e4cea4;color:#7d5a20;font-size:10px;line-height:1.5;font-weight:650;white-space:nowrap}
@media(max-width:560px){.v51-document-source{gap:9px}.v51-document-source>label{padding:12px 9px;gap:7px}.v51-document-source>label>span{grid-template-columns:1fr;gap:2px}.v51-document-source svg{display:none}.v50-training-association-details>summary{padding:14px 12px;gap:10px}.v50-training-association-details>summary>.v51-association-symbol{display:none}.v50-training-association-details>summary>.v51-association-copy{font-size:13px}.v50-training-association-details>summary>.v51-association-toggle{padding:6px 9px;gap:4px;font-size:11px}.v50-training-rule-heading{flex-wrap:wrap}.v50-training-rule-heading strong{flex:1;min-width:0}.v51-training-kind{margin-left:32px}.v50-training-association-details>.v50-training-associations{padding-inline:10px}}
@media(prefers-reduced-motion:reduce){.v51-document-source>label,.v50-training-association-details>summary,.v51-association-toggle svg{transition:none}}
