*{box-sizing:border-box}:root{--ink:#000000;--muted:#676767;--brand-yellow:#f0b01d;--line:#dedbd1;--bg:#f0ede1}body{margin:0;color:var(--ink);background:var(--bg);font:14px/1.55 "Segoe UI",Arial,sans-serif}button,input,select,textarea{font:inherit}button,a,select{cursor:pointer}button{border:1px solid var(--line);border-radius:8px;padding:9px 15px;background:white;color:var(--ink);font-weight:600}button:hover{background:#f7f4ea}button:disabled{opacity:.5;cursor:not-allowed}button.primary{background:var(--brand-yellow);border-color:var(--ink);color:var(--ink)}button.link{background:none;border:0;padding:5px 8px;color:var(--ink)}:focus-visible{outline:3px solid #5e809f;outline-offset:3px}input,select,textarea{border:1px solid #c9c6bc;border-radius:7px;padding:9px 11px;background:white;color:var(--ink);max-width:100%}input[type=checkbox]{accent-color:var(--ink);width:17px;height:17px}textarea{width:100%;resize:vertical}label{font-weight:600}h1{font-size:29px;line-height:1.2;letter-spacing:-.8px;margin:0 0 9px}h2{font-size:18px;line-height:1.3;margin:0 0 14px}h3{font-size:15px;margin:0 0 8px}p{margin:0 0 15px}.muted,small{color:var(--muted)}.demo-bar{min-height:43px;background:#e8e4d8;color:#676767;padding:7px 25px;display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:12px}.demo-bar div{display:flex;gap:8px;align-items:center}.demo-bar select{padding:3px 8px;font-size:12px}.shell{display:grid;grid-template-columns:225px 1fr;min-height:calc(100vh - 43px)}aside{background:white;border-right:1px solid var(--line);padding:29px 20px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:11px;margin:0 0 38px;font-size:17px;font-weight:700;line-height:1.3}.brand small{display:block;font-size:11px;letter-spacing:1.7px;text-transform:uppercase}.mark{background:var(--brand-yellow);width:38px;height:38px;border-radius:12px;color:white;display:grid;place-items:center;font-size:25px}.nav-label{font-size:10px;letter-spacing:1.8px;color:#676767;margin:0 12px 10px;text-transform:uppercase}nav button{display:block;text-align:left;width:100%;border:0;background:none;padding:12px;margin-bottom:4px;color:#676767;font-weight:500}nav button.active{background:#fff1c8;color:var(--ink);font-weight:650}.aside-bottom{margin-top:auto;padding-top:50px}.identity{display:flex;align-items:center;gap:10px}.identity small{display:block}.avatar{width:32px;height:32px;border-radius:50%;background:#f0ede1;display:grid;place-items:center;font-weight:700}main{max-width:1400px;width:100%;padding:40px 44px 65px}.page-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:30px;gap:20px}.actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.eyebrow{font-size:11px;letter-spacing:1.6px;text-transform:uppercase;color:var(--ink);margin-bottom:10px;font-weight:650}.card{background:white;border:1px solid var(--line);border-radius:12px;padding:24px;margin-bottom:20px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:28px}.stat{padding:22px;border:1px solid var(--line);background:white;border-radius:11px}.stat strong{display:block;font-size:31px;line-height:1.4;margin-top:5px;font-weight:600}.toolbar{display:flex;justify-content:space-between;gap:15px;margin-bottom:17px;align-items:center}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;text-align:left;font-size:13px}th{font-size:11px;letter-spacing:.6px;text-transform:uppercase;background:#f7f5ed;color:#676767;padding:12px 13px;font-weight:600;white-space:nowrap}td{padding:15px 13px;border-bottom:1px solid #eeece5;vertical-align:middle}tr:last-child td{border:0}.badge{display:inline-block;font-size:11px;padding:4px 9px;border-radius:5px;font-weight:600;white-space:nowrap}.submitted{background:#e4eef6;color:#36556f}.progress{background:#fff1c8;color:#725100}.completed{background:#edf4de;color:#49621d}.draft{background:#f0ede1;color:#676767}.correction{background:#fff0e9;color:#a72e13}.frozen{background:#eae7de;color:#676767}.two-col{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(230px,1fr);gap:20px}.steps{display:flex;gap:20px;margin-bottom:26px;flex-wrap:wrap}.step{color:#676767;font-size:12px}.step.active{color:var(--ink);font-weight:650}.course{display:flex;padding:18px 0;border-bottom:1px solid var(--line);gap:13px;align-items:flex-start}.course:last-child{border:0}.course input{margin-top:4px}.course strong,.course small{display:block}.course .badge{margin-left:auto}.notice{padding:13px 16px;border-radius:7px;background:#e4eef6;color:#36556f;margin-bottom:18px;font-size:13px}.notice.error{background:#fff0e9;color:#a72e13}.notice.success{background:#edf4de;color:#49621d}.grid-form{display:grid;grid-template-columns:1fr 1fr;gap:15px}.field{display:flex;flex-direction:column;gap:6px}.field.full{grid-column:1/-1}.field label{font-size:12px}.dropzone{border:1px dashed #5e809f;border-radius:9px;padding:28px;text-align:center;background:#f7fafc;margin-bottom:18px}.tabs{display:flex;gap:8px;margin-bottom:20px}.tabs button.active{color:var(--ink);background:#fff1c8}.review input{width:100%;min-width:100px;padding:6px 8px;font-size:12px}.review td{padding:9px}.review .invalid input{border-color:#ee4623;background:#fff8f4}.review .excluded{opacity:.5}.row-error{color:#a72e13;font-size:11px}.review td:first-child{min-width:220px}.footer-actions{display:flex;justify-content:space-between;margin-top:22px;padding-top:20px;border-top:1px solid var(--line);gap:12px}.details{display:grid;grid-template-columns:1fr 1fr;gap:20px}.details dt{font-size:11px;color:var(--muted)}.details dd{margin:0;font-weight:600}.timeline{border-left:2px solid #dedbd1;padding-left:19px}.event{margin-bottom:21px}.event small{display:block}.feedback{white-space:pre-wrap;font:13px/1.8 "Segoe UI",Arial,sans-serif;background:#f7f5ed;border:1px solid var(--line);padding:20px;border-radius:8px}.processing td{padding:10px}.processing input{padding:5px;max-width:145px}.empty{text-align:center;padding:35px;color:var(--muted)}.auth-wrap{min-height:calc(100vh - 43px);display:grid;place-items:center;padding:35px}.auth{max-width:410px;width:100%}.auth input{width:100%}.auth .primary{width:100%;margin-top:16px}.auth .field{margin:18px 0}#toast{position:fixed;bottom:22px;right:22px;background:#000000;color:white;border-radius:9px;padding:12px 20px;display:none;max-width:400px;z-index:10}dialog{border:1px solid var(--line);border-radius:13px;padding:28px;max-width:560px;width:90%;color:var(--ink)}dialog::backdrop{background:#00000055}@media(max-width:1050px){main{padding:30px 25px}.shell{grid-template-columns:190px 1fr}.two-col{grid-template-columns:1fr}}@media(max-width:700px){.demo-bar{padding:8px 12px;flex-wrap:wrap}.shell{display:block}aside{padding:17px;border-right:0;border-bottom:1px solid var(--line)}.brand{margin-bottom:15px}nav{display:flex;flex-wrap:wrap}nav button{width:auto;padding:8px 12px}.nav-label,.aside-bottom{display:none}main{padding:25px 16px}.page-head{flex-direction:column}.stat{padding:14px}.stat strong{font-size:24px}.grid-form,.details{grid-template-columns:1fr}.card{padding:18px}.toolbar{flex-wrap:wrap}}

@media(max-width:700px){.table-wrap table{min-width:740px}.table-wrap td .link{white-space:nowrap}.stats{gap:8px}.stat{min-width:0}.stat .muted{font-size:12px}}


/* Mediamed palette from docs/loghi e colori/palette-mediamed.png. */
:root{--brand-orange:#f4831f;--brand-red:#ee4623;--brand-lime:#d9c200;--brand-green:#85ad3f;--brand-teal:#5d9fb0;--brand-slate:#5e809f;--brand-sky:#a7cbeb}
.brand{display:block;margin-bottom:32px}.brand-logo{display:block;width:100%;max-width:180px;height:auto;object-fit:contain}.brand-product{margin-top:20px;padding-top:17px;border-top:1px solid var(--line);font-size:18px}.brand-product small{margin-top:3px;letter-spacing:2px;color:var(--muted)}.mark{display:none}
.demo-bar{border-top:4px solid var(--brand-yellow)}button.primary:hover{background:#dda018;border-color:#dda018}button.link:hover{text-decoration:underline;background:transparent}nav button.active{background:var(--brand-yellow);color:#000}.eyebrow{color:var(--muted)}.stat:first-child{border-top:3px solid var(--brand-yellow)}.stat:nth-child(2){border-top:3px solid var(--brand-sky)}.stat:nth-child(3){border-top:3px solid var(--brand-green)}.step.active{box-shadow:0 2px 0 var(--brand-yellow);padding-bottom:4px}input[type=checkbox]{accent-color:#000}.table-wrap td .link{text-decoration:underline;text-decoration-color:var(--brand-yellow);text-underline-offset:4px}.auth .brand-logo{max-width:240px}.auth .brand-product{font-size:21px}#toast{border-left:5px solid var(--brand-yellow)}
@media(max-width:700px){.brand{display:flex;align-items:center;gap:20px;margin-bottom:17px}.brand-logo{width:165px;flex-shrink:0}.brand-product{margin:0;padding:0 0 0 17px;border-top:0;border-left:1px solid var(--line);font-size:16px}.auth .brand{display:block}.auth .brand-logo{width:100%}.auth .brand-product{margin-top:18px;padding:15px 0 0;border-left:0;border-top:1px solid var(--line)}}

/* Interface review: compact brand, course picker and request updates. */
.brand,.auth .brand{display:flex;align-items:center;gap:11px;margin-bottom:32px}.brand-icon,.auth .brand-icon{display:block;width:42px;height:42px;flex:0 0 42px;border-radius:10px}.brand-product,.auth .brand-product{margin:0;padding:0;border:0;font-size:18px}.brand-product small{margin-top:2px}.course-reference{margin-bottom:8px;min-width:170px;max-width:280px}.course-reference:last-child{margin-bottom:0}.course-reference strong{display:block;font-size:12px;line-height:1.4}.course-reference small{display:block;font-weight:400;margin-top:3px}.updated-cell{white-space:nowrap;font-size:12px}.unread-indicator{display:block;margin:4px 8px 0;color:#36556f;font-size:11px;font-weight:600;white-space:nowrap}.unread-indicator span{color:#5e809f;margin-right:4px}.status-cell{white-space:nowrap}.frozen-icon{display:inline-flex;vertical-align:middle;color:#676767;margin-left:7px}.frozen-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.course-selection-tools{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:13px 0;border-bottom:1px solid var(--line);margin-bottom:5px}.course-selection-tools label{font-size:12px}.course-selection-tools select{margin-left:7px}.wide-dialog{width:min(860px,94vw);max-width:860px;max-height:90vh;overflow:auto}.assigned-course-list{max-height:44vh;overflow:auto;overscroll-behavior:contain;border:1px solid var(--line);border-radius:8px;padding:0 16px}.company-group h3{position:sticky;top:0;background:#f7f5ed;padding:10px 8px;margin:0 -16px;border-bottom:1px solid var(--line);z-index:1}.assigned-course-list .course{padding:14px 0;font-weight:400}.assigned-course-list [hidden],[hidden]{display:none!important}.wide-dialog .footer-actions{position:sticky;bottom:-28px;background:white;padding-bottom:10px}.table-wrap table{min-width:800px}@media(max-width:700px){.brand{margin-bottom:17px}.brand-icon{width:40px;height:40px;flex-basis:40px}.wide-dialog{padding:20px}.wide-dialog .footer-actions{bottom:-20px}.assigned-course-list{max-height:42vh}.course-selection-tools{align-items:flex-start}.course-reference{min-width:160px}.table-wrap table{min-width:920px}}

/* Import source -> mapping -> cleaned preview. */
.badge.frozen{display:inline-flex;align-items:center;background:#eae7de;color:#676767;gap:5px}.badge.frozen .frozen-icon{margin:0;color:inherit}.badge.frozen svg{width:14px;height:14px}.course-code{margin-bottom:3px}.import-progress{list-style:none;margin:0 0 24px;padding:0;display:flex;gap:22px;flex-wrap:wrap;color:var(--muted);font-size:12px}.import-progress li{display:flex;align-items:center;gap:7px}.import-progress li>span{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#f0ede1;font-weight:600}.import-progress li.active{color:#000;font-weight:600}.import-progress li.active>span{background:var(--brand-yellow)}.import-progress li.done>span{background:#edf4de;color:#49621d}.mapping-options{display:flex;gap:22px;align-items:center;flex-wrap:wrap;margin:20px 0}.mapping-options label{font-size:12px;display:flex;align-items:center;gap:8px}.mapping-table td{vertical-align:top}.mapping-table small{display:block;margin-top:4px}.mapping-table select{width:100%;min-width:200px}.mapping-example{overflow-wrap:anywhere;margin-bottom:5px;max-width:330px}.mapping-table{min-width:620px!important}.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:700px){.import-progress{gap:12px}.mapping-options{gap:12px}}

@media(max-width:700px){.mapping-table{min-width:0!important}.mapping-table thead{display:none}.mapping-table,.mapping-table tbody,.mapping-table tr,.mapping-table td{display:block;width:100%}.mapping-table tr{border-bottom:1px solid var(--line);padding:10px 0}.mapping-table td{border:0;padding:8px 0}.mapping-table td:before{content:attr(data-label);display:block;font-size:10px;text-transform:uppercase;letter-spacing:.6px;color:var(--muted);margin-bottom:6px}.mapping-table select{min-width:0;width:100%}.mapping-example{max-width:none}}

.import-guide{border:1px solid var(--line);border-radius:8px;padding:13px 16px;margin:0 0 20px;background:#f7f5ed}.import-guide summary{cursor:pointer;font-weight:600}.import-guide p:first-of-type{margin-top:15px}.import-guide pre{white-space:pre-wrap;overflow-wrap:anywhere;font:12px/1.7 Consolas,monospace;padding:12px;background:white;border-radius:6px}.full-name-format select{width:100%}

.user-table-wrap{border:1px solid var(--line);border-radius:8px}.user-table-wrap table{min-width:650px;table-layout:fixed}.user-scroll{max-height:min(60vh,520px);overflow:auto;overscroll-behavior:contain}.user-scroll th{position:sticky;top:0;z-index:2;box-shadow:0 1px 0 var(--line)}.confirmed-users{margin-top:25px;padding-top:22px;border-top:1px solid var(--line)}.confirmed-users h3{margin-bottom:0}.confirmed-users-table td{overflow-wrap:anywhere;vertical-align:top}.confirmed-users-table th:first-child{width:34%}.user-table-wrap .review td:first-child{width:34%;min-width:0}.user-table-wrap .review th:last-child{width:85px}.user-table-wrap .review input:not([type=checkbox]){min-width:0;width:100%}.request-layout{display:block}.request-layout>.card{margin-top:20px}@media(max-width:700px){.user-table-wrap table{min-width:650px!important}.user-scroll{max-height:55vh}}
.user-table-wrap .review th:first-child{width:34%}
.review input[type=checkbox]{width:17px;min-width:17px;padding:0}

.overview-top{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,.8fr);gap:35px}.overview-top .details{align-content:start}.overview-activity h3{margin-top:0}.overview-activity .event{margin-bottom:14px}.overview-activity .event:last-child{margin-bottom:0}.completion-downloads{padding-bottom:22px;border-bottom:1px solid var(--line);margin-bottom:22px}#trainer-feedback{width:100%;line-height:1.7;resize:vertical}@media(max-width:700px){.overview-top{grid-template-columns:1fr;gap:22px}.overview-activity{padding-top:18px;border-top:1px solid var(--line)}}

.updated-cell .unread-indicator{display:inline-block;margin:0 0 0 6px;color:#c62828;font-size:19px;font-weight:700;line-height:1;vertical-align:middle}.trainer-notes h3{margin-top:0}.trainer-notes p{white-space:pre-wrap;overflow-wrap:anywhere}.overview-courses{margin-top:25px;padding-top:22px;border-top:1px solid var(--line)}.overview-courses h3{margin-bottom:0}.overview-course-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}.overview-course-list .course-reference{max-width:none;margin:0;padding:14px;border:1px solid var(--line);border-radius:8px;min-width:0}

/* Course selection and worksheet import */
.course-filters{display:flex;gap:16px;flex-wrap:wrap;margin:20px 0 12px}.course-filters label{display:flex;flex-direction:column;gap:6px;flex:1;min-width:160px}.course-filters input,.course-filters select{width:100%}
.course-selection-table table{min-width:580px}.course-scroll{max-height:430px;overflow:auto}.course-scroll thead th{position:sticky;top:0;z-index:1;background:#f7f5ee}.course-choice{display:flex;align-items:center;gap:12px;cursor:pointer}.course-choice input{flex-shrink:0}.course-selection-table tr[hidden]{display:none}.worksheet-choice{display:flex;flex-direction:column;gap:8px;max-width:640px}.worksheet-choice select{width:100%}.course-reference .badge{align-self:flex-start;margin-top:4px}
