:root{--canvas:#f7f6f3;--surface:#fff;--ink:#252b26;--muted:#757970;--line:#eaeaea;--green:#3d6049;--green-bg:#edf3ec;--amber:#8c6422;--amber-bg:#fbf3db;--red:#9f3c37;--red-bg:#fdebec;--blue:#3e657e;--blue-bg:#edf3f7;--radius:10px;font-family:"Segoe UI",-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;font-size:14px;color:var(--ink);background:var(--canvas);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.46}button,input,select{border-radius:5px}a{color:inherit;text-decoration:none}p{line-height:1.65}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:600;letter-spacing:-.035em}button{border:0}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #809e86;outline-offset:4px}input,select{min-width:0}input:not([type=radio]),select{width:100%;border:1px solid #d9ddd5;background:#fff;padding:12px 13px;color:var(--ink);line-height:1.4}input:focus,select:focus{border-color:#7d9382;outline:2px solid #dce6dc;outline-offset:1px}input::placeholder{color:#90958b}input[type=date]{min-height:44px}input[type=radio]{accent-color:var(--green)}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link{position:fixed;top:10px;left:10px;background:var(--ink);color:#fff;z-index:100;padding:12px;transform:translateY(-180%)}.skip-link:focus{transform:none}.muted{color:var(--muted)}.small{font-size:12px}.fine-print{font-size:12px;color:var(--muted);line-height:1.7;margin-top:18px}.eyebrow{font-size:10px;font-weight:650;letter-spacing:.14em;color:var(--muted);line-height:1.6;margin-bottom:12px}.green-text{color:var(--green)!important}.amber-text{color:var(--amber)!important}.red-text{color:var(--red)!important}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:42px;padding:11px 17px;border:1px solid transparent;border-radius:5px;font-size:12px;font-weight:600;line-height:1.4;white-space:nowrap;transition:background .15s,border-color .15s,transform .15s}.button:active:not(:disabled){transform:translateY(1px)}.button.primary{background:var(--ink);color:#fff}.button.primary:hover:not(:disabled){background:#424a43}.button.secondary{background:#fff;border-color:#dcdfd7;color:var(--ink)}.button.secondary:hover:not(:disabled){background:#f6f7f3;border-color:#bcc6b9}.full-width{width:100%}.text-button{display:inline-flex;align-items:center;gap:10px;font-size:12px;font-weight:600;color:var(--ink);background:transparent;padding:7px 0;white-space:nowrap}.text-button:hover{color:var(--green)}.back-link{display:inline-flex;align-items:center;color:var(--muted);font-size:12px;gap:8px;margin-bottom:25px}.back-link:hover{color:var(--ink)}.badge{display:inline-flex;align-items:center;gap:6px;border-radius:100px;padding:5px 9px;font-size:10px;line-height:1.45;letter-spacing:.015em;white-space:nowrap;font-weight:600}.badge-neutral{background:#f1f2ee;color:#666e61}.badge-green{background:var(--green-bg);color:var(--green)}.badge-red{background:var(--red-bg);color:var(--red)}.badge-amber{background:var(--amber-bg);color:var(--amber)}.badge-blue{background:var(--blue-bg);color:var(--blue)}.status-dot{width:5px;height:5px;border-radius:50%;background:currentColor;flex-shrink:0}.avatar{width:36px;height:36px;border-radius:50%;background:#e9ede5;color:#4d6150;display:grid;place-items:center;font-size:11px;font-weight:650;letter-spacing:.02em;flex-shrink:0}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);min-width:0}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:25px 26px 21px}.panel-heading h2{font-size:17px;font-weight:600;letter-spacing:-.025em}.panel-heading .eyebrow{font-size:9px;margin-bottom:5px}.progress-track{height:5px;border-radius:5px;background:#e9ece5;overflow:hidden}.progress-track>span{display:block;height:100%;background:#809b7d;border-radius:5px}.note-box{display:flex;gap:11px;align-items:flex-start;padding:15px 18px;background:#f0f1eb;border-radius:7px;margin-top:18px;color:#737b6d;font-size:12px}.note-box p{line-height:1.65}.note-box strong{color:#53614f;font-weight:600}.note-symbol{width:16px;height:16px;border:1px solid #a7afa0;border-radius:50%;display:grid;place-items:center;font-family:Georgia,serif;font-style:italic;font-size:10px;flex-shrink:0;margin-top:2px}.brand{display:flex;align-items:center;gap:11px;font-size:15px;line-height:1.1;font-weight:400;letter-spacing:-.035em}.brand strong{font-weight:650}.brand-mark{height:40px;width:40px;display:grid;place-items:center;border-radius:7px;background:var(--ink);color:var(--canvas);font-family:Georgia,serif;font-size:27px;letter-spacing:-.08em;padding-right:3px;font-weight:400;flex-shrink:0}.local-label{display:flex;align-items:center;gap:7px;font-size:10px;color:#697862;font-weight:600;letter-spacing:.03em}.local-label .status-dot{width:6px;height:6px;background:#83977b}.initial-loading{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;color:var(--muted)}.initial-loading .brand-mark{width:50px;height:50px;font-size:34px}.loading-panel{min-height:60vh;display:flex;align-items:center;justify-content:center;gap:12px;color:var(--muted)}.loading-dot{display:inline-block;width:7px;height:7px;flex-shrink:0;border-radius:50%;background:#7d9776;animation:pulse 1s ease-in-out infinite}@keyframes pulse{50%{opacity:.3}}
/* Sign in */
.login-layout{min-height:100dvh;display:grid;grid-template-columns:1fr 1fr}.login-story{background:#e8eade;padding:44px 58px;display:flex;flex-direction:column;position:relative;overflow:hidden}.login-story>.brand{position:relative;z-index:1}.login-story-copy{margin:auto 0;padding:65px 0 35px;max-width:470px;position:relative;z-index:1}.login-story-copy .eyebrow{font-size:10px;letter-spacing:.18em;color:#6a755f;margin-bottom:23px}.login-story-copy h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(54px,6.2vw,92px);font-weight:400;line-height:1.04;letter-spacing:-.06em;color:#333f2c}.login-story-copy>p:not(.eyebrow){color:#6b735f;font-size:15px;margin-top:25px;line-height:1.8}.login-story-foot{display:flex;justify-content:space-between;gap:20px;font-size:8px;font-weight:600;letter-spacing:.13em;color:#7a826e;position:relative;z-index:1;line-height:1.5}.route-illustration{height:210px;position:relative;margin-top:40px;max-width:430px}.route-line{position:absolute;inset:28px 45px 35px 15px;border:1px dashed #a1ae96;border-radius:0 90px 90px 70px;border-left:0;transform:rotate(-6deg)}.route-stop{position:absolute;display:grid;place-items:center;width:25px;height:25px;border:1px solid #aab49e;background:#e8eade;border-radius:50%;font-size:8px;letter-spacing:.02em;color:#6b795d}.stop-one{top:28px;left:10px}.stop-two{top:13px;right:135px}.stop-three{bottom:25px;right:85px;background:#697c5e;border-color:#697c5e;color:#fff}.route-note{position:absolute;top:70px;left:42px;padding:18px 22px;background:#f4f4ed;border:1px solid #d4dacb;border-radius:6px;max-width:275px;transform:rotate(-3deg)}.route-note small{font-size:7px;letter-spacing:.13em;color:#849077}.route-note strong{display:block;font-size:14px;font-weight:600;color:#45543c;margin:5px 0}.route-note span{display:block;font-size:10px;color:#88917f}.login-form-side{background:#fcfcfa;padding:35px 45px;display:flex;flex-direction:column;min-width:0}.login-top{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:10px}.login-form-wrap{width:100%;max-width:352px;margin:auto;padding:70px 0}.login-form-wrap>.eyebrow{font-size:9px;letter-spacing:.13em}.login-form-wrap h2{font-size:28px;font-weight:500;letter-spacing:-.045em;margin-bottom:13px;line-height:1.2}.login-form-wrap>.muted{font-size:12px}.login-roles,.segmented{display:flex;background:#f0f1ed;border:1px solid #e5e8df;border-radius:6px;padding:3px}.login-roles{margin-top:30px;margin-bottom:24px}.login-roles button,.segmented button{flex:1;background:transparent;border:1px solid transparent;border-radius:4px;padding:9px 14px;font-size:12px;color:#858a7f;line-height:1.3}.login-roles button.selected,.segmented button.selected{background:#fff;border-color:#e0e3dc;color:var(--ink);font-weight:600}.form-field{margin-bottom:18px}.form-field label{display:block;font-size:11px;font-weight:600;letter-spacing:.005em;margin-bottom:8px}.form-field input{font-size:12px}.form-field small{display:block;font-size:10px;color:var(--muted);margin-top:6px;line-height:1.5}.password-field{position:relative}.password-field input{padding-right:62px!important}.password-field button{position:absolute;right:9px;top:7px;bottom:7px;background:transparent;font-size:10px;padding:5px 7px;color:var(--muted)}.login-submit{margin-top:5px;justify-content:space-between;padding-left:16px;padding-right:16px;min-height:44px}.form-error{font-size:12px;background:var(--red-bg);color:var(--red);padding:11px 13px;line-height:1.6;margin:12px 0;border-radius:5px}.demo-access{border-top:1px solid #e4e6dd;margin-top:27px;padding-top:22px}.mini-heading{font-size:8px;font-weight:650;letter-spacing:.14em;color:#8b9184}.demo-access p{font-size:11px;color:#92978d;margin:8px 0 14px;line-height:1.7}.demo-access p strong{font-weight:600;color:#727b69}.demo-access dl{margin:0}.demo-access dl>div{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:6px 0;font-size:10px;color:#8b9284}.demo-access dd{margin:0;font-size:9px}.demo-access code{font-family:"Cascadia Code",Consolas,monospace;color:#718066;font-size:9px}.login-bottom{text-align:center;font-size:9px;color:#9ba192;line-height:1.7}
/* App frame */
.app-shell{display:grid;grid-template-columns:218px minmax(0,1fr);min-height:100dvh}.sidebar{position:sticky;top:0;height:100dvh;display:flex;flex-direction:column;padding:32px 22px 0;background:#f0f1eb;border-right:1px solid #e4e7de}.sidebar .brand{margin:0 8px 51px}.workspace-label{font-size:8px;font-weight:600;letter-spacing:.13em;color:#919888;margin:0 11px 14px}.sidebar nav{display:flex;flex-direction:column;gap:6px}.nav-item{display:flex;align-items:center;gap:12px;font-size:12px;font-weight:500;color:#7c8474;min-height:41px;padding:10px;border:1px solid transparent;border-radius:6px;line-height:1.3}.nav-item:hover{background:#e8ece2;color:var(--ink)}.nav-item.active{background:#e4e9db;color:#3e5032;border-color:#d9e0cf;font-weight:650}.nav-number{font-size:9px;font-family:Consolas,monospace;color:#939c89;min-width:14px;text-align:center}.nav-item.active .nav-number{color:#697c5a}.nav-count{margin-left:auto;color:#7b8970;background:#dbe3cf;border-radius:4px;padding:2px 5px;font-size:9px}.handbook-nav{margin-top:20px;border-top:1px solid #e0e5d8;border-radius:0;padding-top:23px}.external-label{font-size:8px;letter-spacing:.06em;margin-left:auto;color:#9ba48e}.sidebar-bottom{margin-top:auto;padding:26px 2px 0}.sidebar-note{font-size:10px;line-height:1.65;color:#969e8d;margin-top:10px;margin-bottom:26px}.profile{display:flex;align-items:center;gap:10px;border-top:1px solid #e0e5d8;padding:21px 0}.profile>div{min-width:0;flex:1}.profile strong{display:block;font-size:10px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile small{display:block;color:#969c8d;font-size:9px;margin-top:4px}.signout{background:transparent;font-size:20px;color:#89957f;padding:5px}.signout:hover{color:var(--ink)}.workspace{display:flex;flex-direction:column;min-width:0}.topbar{height:65px;padding:0 42px;border-bottom:1px solid #e7e8e1;display:flex;align-items:center;justify-content:space-between;gap:18px;font-size:11px;color:#92998a;background:#fafaf7;flex-shrink:0}.topbar>div{display:flex;align-items:center;gap:20px}.topbar-edition{font-size:9px;color:#a2a897}.topbar-role{font-size:9px;border-left:1px solid #e2e5da;padding-left:20px;color:#7d8971}.main-content{padding:40px 42px 45px;width:100%;max-width:1480px;margin:0 auto;flex:1;min-width:0}.workspace-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;color:#a5ac9c;padding:0 42px 25px;font-size:8px;letter-spacing:.04em}.workspace-footer>span:first-child{font-size:7px;letter-spacing:.16em;font-weight:600}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:30px}.page-heading .eyebrow{font-size:9px;margin-bottom:9px;letter-spacing:.15em}.page-heading h1{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:35px;letter-spacing:-.055em;line-height:1.2;color:#303b2b}.page-description{font-size:12px;color:#909788;margin-top:12px;line-height:1.7}.heading-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}.heading-actions .button{font-size:10px;min-height:38px;padding:10px 13px}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin-bottom:28px}.stat{padding:21px 23px;background:#fff;border:1px solid var(--line);border-radius:8px}.stat-label{font-size:10px;color:#88927f;font-weight:500}.stat>div{display:flex;flex-direction:column;gap:7px;margin-top:11px}.stat strong{font-size:33px;font-weight:500;letter-spacing:-.055em;line-height:1.1}.stat-description{font-size:9px;color:#a0a791;line-height:1.6}.attention-stat{background:#f9f7ef;border-color:#e9e5d6}.attention-stat strong{color:#8b6d3a}.attention-stat .stat-label{color:#a29374}.attention-stat .stat-description{color:#ac9d7c}.count-label{display:inline-block;border:1px solid #e6eadf;background:#f8f9f4;color:#8d9b7f;padding:3px 6px;font-family:"Segoe UI",sans-serif;font-size:9px;border-radius:4px;vertical-align:middle;margin-left:7px;letter-spacing:0}.sample-label{font-size:9px;color:#a2a996}.table-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:0 26px 20px}.search-field{position:relative;width:260px}.search-field>span{position:absolute;left:11px;top:7px;font-size:20px;color:#a2ab97;line-height:1.3}.search-field input{font-size:10px;padding:10px 12px 10px 34px!important;background:#fafbf7!important;border-color:#e6eadd!important;min-height:35px}.filter-field{display:flex;align-items:center;gap:9px}.filter-field label{font-size:9px;color:#9aa48d}.filter-field select{width:auto;min-width:124px;font-size:9px;border-color:#e6eadd;background:#fafbf7;padding:9px 28px 9px 10px;min-height:35px}.table-scroll{overflow-x:auto;overscroll-behavior-x:contain}.data-table{width:100%;border-collapse:collapse;font-size:10px;text-align:left;white-space:nowrap}.data-table th{font-size:8px;letter-spacing:.055em;font-weight:500;text-transform:uppercase;color:#9da58f;background:#f8f9f5;padding:12px 16px;border-top:1px solid #edf0e6;border-bottom:1px solid #edf0e6}.data-table th:first-child,.data-table td:first-child{padding-left:26px}.data-table th:last-child,.data-table td:last-child{padding-right:26px}.data-table td{padding:16px;border-bottom:1px solid #f0f1eb;color:#88947c}.data-table tbody tr:last-child td{border-bottom:0}.data-table tbody tr:hover{background:#fcfcfa}.data-table td strong{display:block;color:#556349;font-weight:550;font-size:10px;line-height:1.5}.data-table td small{display:block;margin-top:3px;font-size:8px;color:#a3ad97;line-height:1.5}.data-table .badge{font-size:8px;padding:4px 8px}.data-table .badge .status-dot{width:4px;height:4px}.driver-name{display:flex;align-items:center;gap:10px;background:transparent;text-align:left;padding:0;min-width:145px}.driver-name:hover strong{color:#263f23}.small-avatar{width:30px;height:30px;font-size:8px;color:#7a8c69;background:#f0f3e9}.data-table .score-cell{font-size:12px;font-weight:600;letter-spacing:-.02em;color:#68785a}.data-table .text-button{font-size:9px;color:#8a997a;gap:6px}.data-table .text-button:hover{color:var(--ink)}.cell-action{text-align:right}.table-footer{display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:8px;color:#a2ad94;border-top:1px solid #edf0e6;padding:14px 26px}.manager-bottom-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(260px,1fr);gap:24px;margin-top:25px}.activity-panel .panel-heading{padding-bottom:10px}.activity-list{padding:0 26px 12px}.activity-row{display:flex;align-items:center;gap:13px;padding:15px 0;border-bottom:1px solid #f0f2e9}.activity-row:last-child{border-bottom:0}.activity-symbol{display:grid;place-items:center;height:27px;width:27px;background:#f0f3e9;color:#879a72;font-size:14px;border-radius:50%;flex-shrink:0}.activity-success{background:#eef4e8;color:#7b9c60}.activity-review{background:#fbf4e4;color:#af9250}.activity-row>div{flex:1;min-width:0}.activity-row strong{font-size:10px;font-weight:550;color:#657557}.activity-row p{font-size:9px;color:#a1ae92;margin-top:3px;line-height:1.4}.activity-date{font-size:8px;color:#acb69e;white-space:nowrap}.activity-row .text-button{font-size:14px;color:#9aab89;padding-left:7px}.cycle-panel{padding:26px}.cycle-panel>.eyebrow{font-size:8px;margin-bottom:16px}.cycle-title{display:flex;align-items:center;gap:13px}.course-tile{display:grid;place-items:center;width:39px;height:46px;border:1px solid #d7decd;background:#f2f4ec;color:#a0ae8d;font-family:Georgia,serif;font-size:18px;border-radius:3px}.cycle-title h2{font-size:16px;line-height:1.25;color:#67785b;font-weight:550}.training-facts{margin:21px 0}.training-facts>div{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin-bottom:10px;font-size:8px;line-height:1.5}.training-facts dt{color:#a4af96}.training-facts dd{margin:0;color:#7b8c6a;text-align:right}.completion-label{display:flex;justify-content:space-between;gap:20px;font-size:8px;color:#9da990;margin-bottom:8px}.completion-label strong{font-weight:600;color:#8da275}.cycle-panel .progress-track{height:4px}.cycle-panel .fine-print{font-size:8px;color:#a9b29c;margin-top:15px;line-height:1.7}.empty-inline{padding:38px 26px;text-align:center}.empty-inline h3{font-size:16px;letter-spacing:-.025em;color:#7f8a74;font-weight:500;margin-bottom:8px}.empty-inline p{color:#a2ac96;font-size:11px;line-height:1.7}.empty-glyph{display:block;margin:0 auto 12px;font-size:25px;color:#acb69e}.empty-inline.compact{padding:22px}.empty-state{padding:100px 20px;text-align:center}.empty-state h1{font-family:Georgia,serif;font-size:34px;font-weight:400;margin:15px 0}.empty-state p{color:var(--muted);margin-bottom:25px}.error-panel .eyebrow{color:var(--red)}
/* Driver workspace */
.driver-overview{display:flex;align-items:center;gap:24px;margin:-9px 0 29px;color:#9aa58d;font-size:10px}.driver-overview .badge{font-size:9px;letter-spacing:.035em}.driver-overview strong{color:#7d8e6b;margin-left:4px;font-weight:500}.driver-grid{display:grid;grid-template-columns:minmax(0,1.85fr) minmax(250px,.9fr);gap:25px}.training-card{padding:27px}.training-card-top{display:flex;align-items:center;justify-content:space-between;gap:20px}.course-index{font-size:8px;color:#a1ac94;letter-spacing:.14em;font-weight:600}.training-card-body{display:flex;align-items:flex-start;gap:22px;margin:35px 0 32px}.book-icon{width:66px;height:89px;padding:12px 9px;border:1px solid #cfd7c2;background:#e9eddc;display:flex;flex-direction:column;justify-content:space-between;box-shadow:inset 4px 0 0 #dce3cd;color:#8b9c74;border-radius:2px;flex-shrink:0}.book-icon>span{font-size:8px;line-height:1.3;letter-spacing:.03em;font-weight:600}.book-icon>small{font-family:Georgia,serif;font-size:16px}.training-card-body h2{font-family:Georgia,serif;font-weight:400;font-size:27px;letter-spacing:-.045em;color:#5d6c4d;margin-bottom:12px}.training-card-body p{font-size:11px;color:#a0aa92;line-height:1.8;max-width:330px}.course-meta{display:flex;flex-wrap:wrap;gap:15px;margin-top:18px;font-size:8px;color:#8c9b7a}.course-meta>span+span:before{content:'·';margin-right:15px;color:#c0c9b4}.training-card-footer{border-top:1px solid #eef0e7;padding-top:22px;display:flex;align-items:center;justify-content:space-between;gap:20px}.training-card-footer>div{display:flex;flex-direction:column;gap:5px}.training-card-footer .muted{font-size:8px;color:#a4af95}.training-card-footer strong{font-size:11px;font-weight:500;color:#7c8d69}.training-card-footer .button{font-size:10px;min-height:40px}.assignment-progress{margin:0 0 23px}.assignment-progress small{display:block;font-size:9px;color:#9aa98a;margin-top:9px}.handbook-card{padding:25px;align-self:start}.handbook-card .eyebrow{font-size:8px;color:#a3ae95;margin-bottom:20px}.handbook-preview{background:#f4f5ef;display:flex;justify-content:center;padding:20px 14px;margin-bottom:21px;border-radius:5px}.handbook-cover{height:186px;width:132px;background:#e6e9d9;border:1px solid #d4dbc6;border-radius:2px;box-shadow:inset 5px 0 #d4dcc3;padding:17px 14px 13px 18px;display:flex;flex-direction:column;transform:rotate(-3deg);color:#87976d}.handbook-cover small{font-size:5px;letter-spacing:.1em;line-height:1.5}.handbook-cover strong{font-family:Georgia,serif;font-weight:400;font-size:24px;line-height:.98;letter-spacing:-.045em;margin-top:17px}.cover-line{height:1px;background:#aebc98;margin:13px 0 8px;width:27px}.handbook-cover>span{font-size:5px;line-height:1.9;letter-spacing:.025em}.handbook-cover small:last-child{margin-top:auto;font-size:4px}.handbook-card h3{font-size:14px;font-weight:550;color:#768563;margin-bottom:10px}.handbook-card>p{font-size:10px;color:#a6b196;line-height:1.8;margin-bottom:19px}.handbook-card .button{font-size:9px;min-height:36px}.handbook-file{display:block;text-align:center;font-size:7px;color:#b0baa1;line-height:1.8;margin-top:11px}.driver-grid .note-box{font-size:10px;background:#f0f2e8;color:#a2ae92;padding:15px 18px;line-height:1.9}.driver-grid .note-box strong{color:#8e9f7b}.driver-grid .note-symbol{border-color:#bec9af;color:#a8b695;font-size:10px;width:14px;height:14px}.history-section{margin-top:27px}.history-table{min-width:580px}.history-table th{font-size:8px}.history-table td{font-size:10px}.history-table td strong{font-size:10px}.history-table td small{font-size:8px}.history-section .panel-heading{padding-top:25px;padding-bottom:20px}
/* Driver record */
.detail-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid #e1e5d9;border-bottom:1px solid #e1e5d9;padding:24px 0;gap:24px;margin-bottom:28px}.detail-stats>div{display:flex;flex-direction:column;align-items:flex-start;gap:12px}.detail-stats>div>span:first-child{font-size:10px;color:#949e88}.detail-stats strong{font-size:25px;font-weight:500;line-height:1.2;color:#6f805e;letter-spacing:-.04em}.detail-stats .date-value{font-size:16px;margin-top:6px}.detail-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,1fr);gap:25px}.assignment-list{padding:0 26px 10px}.assignment-list article{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 0;border-top:1px solid #eef0e7}.assignment-list article strong{font-size:12px;color:#788967;font-weight:550}.assignment-list article p{font-size:10px;color:#a4af95;margin-top:7px}.assignment-list article small{font-size:8px;color:#b0b9a3;display:block;margin-top:6px}.assign-panel{padding:26px}.assign-panel h2{font-family:Georgia,serif;font-weight:400;font-size:24px;color:#728461;margin-bottom:14px}.assign-panel>p{font-size:11px;color:#a3ad97;line-height:1.8;margin-bottom:22px}.assign-panel .form-field label{font-size:10px;color:#8b9b78}.assign-panel input{font-size:11px!important;color:#84976e}.assign-panel .button{font-size:10px}.assign-panel .note-box{font-size:10px}.modal{width:440px;max-width:calc(100vw - 30px);max-height:calc(100dvh - 40px);border:1px solid #dfe5d5;border-radius:10px;padding:29px;background:#fff;color:var(--ink);overflow-y:auto}.modal::backdrop{background:rgba(30,38,26,.35);backdrop-filter:blur(2px)}.modal-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.modal-heading .eyebrow{font-size:8px;margin-bottom:8px}.modal-heading h2{font-family:Georgia,serif;font-size:29px;font-weight:400;color:#596a48}.close-button{background:transparent;color:#a3af95;font-size:23px;line-height:1;padding:0 3px}.modal>p{font-size:11px;color:#97a488;margin:15px 0 25px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:26px}.modal .form-field label{color:#7c8f68;font-size:10px}.modal .form-field input{font-size:11px}.modal .form-field small{font-size:9px;color:#a5b296}.modal .button{font-size:10px}
/* Test */
.test-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}.test-top>span{font-size:9px;color:#a1ad93}.test-top .text-button{font-size:10px;color:#82966d}.test-layout{display:grid;grid-template-columns:minmax(0,1fr) 245px;gap:24px;align-items:start}.question-card{padding:30px;min-height:485px;display:flex;flex-direction:column}.question-meta{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:26px}.question-meta .eyebrow{margin:0;font-size:8px;color:#a5b296}.question-meta .badge{font-size:8px;color:#8d9e7a;background:#f2f5ec}.question-card h2{font-size:24px;font-weight:500;letter-spacing:-.035em;line-height:1.45;color:#4d6240;max-width:600px;outline:none}.question-instruction{font-size:10px;color:#a7b396;margin-top:14px;margin-bottom:22px}.answer-options{border:0;padding:0;margin:0 0 30px;display:flex;flex-direction:column;gap:11px}.answer-option{display:flex;align-items:center;gap:12px;position:relative;padding:15px 16px;border:1px solid #e8eddf;border-radius:6px;font-size:11px;color:#8c9d79;line-height:1.75;cursor:pointer;background:#fdfefa;transition:background .15s,border-color .15s}.answer-option:hover{border-color:#bfcdad;background:#f8fbf2}.answer-option.selected{border-color:#8ca971;background:#f1f6e8;color:#657f4b}.answer-option:focus-within{outline:3px solid #bdcfa9;outline-offset:2px}.answer-option input{position:absolute;opacity:0;width:1px;height:1px;margin:0}.option-letter{display:grid;place-items:center;border:1px solid #e0e7d5;border-radius:4px;width:26px;height:26px;font-size:9px;color:#a4b38f;flex-shrink:0;background:#fff}.answer-option.selected .option-letter{border-color:#b1c497;background:#e8f0db;color:#789658}.option-text{flex:1}.option-check{visibility:hidden;color:#8aa96b;font-size:13px}.answer-option.selected .option-check{visibility:visible}.question-footer{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:15px;border-top:1px solid #edf1e4;padding-top:24px}.question-footer .button{font-size:10px;min-height:38px;padding:10px 12px}.question-footer-count{font-size:9px;color:#aebba0}.question-sidebar{padding:23px}.question-sidebar-heading>.eyebrow{font-size:8px;margin-bottom:12px;color:#a4b492}.question-sidebar-heading strong{display:flex;align-items:baseline;gap:7px;font-size:20px;font-weight:500;letter-spacing:-.035em;color:#819b67}.question-sidebar-heading small{font-size:9px;letter-spacing:0;color:#b0bd9e;font-weight:400}.question-sidebar>.progress-track{height:4px;margin-top:13px}.question-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin-top:23px}.question-number{height:31px;padding:0;font-size:9px;background:#fbfdf6;color:#b4c29f;border:1px solid #e7eedb;border-radius:4px}.question-number:hover{background:#f1f7e6;border-color:#b5c99b}.question-number.answered{background:#edf4e1;color:#89a768;border-color:#dce9c9}.question-number.current{background:#7c9860;border-color:#7c9860;color:#fff}.question-legend{display:flex;gap:13px;font-size:7px;color:#b2c29d;margin-top:14px;line-height:1.7}.question-legend>span{display:flex;align-items:center;gap:5px}.question-legend i{width:7px;height:7px;display:inline-block;border:1px solid #dbe6cb;background:#fbfdf6;border-radius:2px}.question-legend .legend-answer{background:#e5f0d2;border-color:#d9e7c2}.save-status-wrap{margin-top:23px;padding-top:19px;border-top:1px solid #edf2e3;min-height:35px}.save-indicator{display:flex;align-items:center;gap:6px;font-size:8px;color:#a3b98b;line-height:1.7}.save-indicator>span:first-child{font-size:11px}.save-indicator.saving{color:#acb899}.save-indicator .loading-dot{height:4px;width:4px;background:#a5b98a}.save-error{color:var(--red)}.save-error .text-button{font-size:8px;color:var(--red);padding:0;text-decoration:underline}.test-help{margin-top:24px}.test-help strong{font-size:10px;font-weight:550;color:#9fb484}.test-help p{font-size:9px;color:#b2c29f;margin-top:8px;line-height:1.9}.question-sidebar>.text-button{font-size:9px;color:#9bb67b;margin-top:17px}.question-intro{font-size:12px;color:#9cab88;line-height:1.9;margin-top:20px}.review-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:38px 0}.review-summary>div{display:flex;flex-direction:column;gap:10px}.review-summary strong{font-size:31px;font-weight:450;color:#849c6c;line-height:1.1;letter-spacing:-.04em}.review-summary span{font-size:10px;color:#abbc94}.question-card>.note-box{margin-bottom:30px;font-size:10px;color:#a9ba94;background:#f2f6e9}
/* Results */
.result-top-grid{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(255px,1fr);gap:24px;margin-bottom:27px}.result-summary{display:flex;align-items:center;gap:30px;padding:32px}.result-score{font-family:Georgia,serif;font-size:76px;font-weight:400;letter-spacing:-.07em;line-height:1;flex-shrink:0;color:#789c5a!important}.result-score.amber-text{color:#b99e5d!important}.result-score>span{font-family:"Segoe UI",sans-serif;font-size:24px;font-weight:400;letter-spacing:-.03em;margin-left:5px}.result-summary>div:last-child{min-width:0}.result-summary h2{font-size:20px;font-weight:500;color:#778c61;margin:14px 0 12px}.result-summary p{font-size:11px;color:#a2b28d;line-height:1.85}.result-summary .muted{font-size:10px;color:#b0bd9b;margin-top:10px}.result-record{padding:26px}.result-record>.eyebrow{font-size:8px;color:#aebd98;margin-bottom:20px}.result-record dl{margin:0}.result-record dl>div{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:12px;font-size:9px;line-height:1.6}.result-record dt{color:#b0bf9a;white-space:nowrap}.result-record dd{margin:0;color:#98ad7b;text-align:right}.result-record .text-button{font-size:9px;color:#9db880;margin-top:9px}.segmented{padding:2px;background:#f3f7eb;border-color:#e5edd9;flex-shrink:0}.segmented button{font-size:8px;padding:6px 10px;color:#acbd97}.segmented button.selected{background:#fff;color:#91a876;border-color:#e1e9d5}.answer-review .panel-heading{padding-bottom:23px}.answer-review .panel-heading h2{color:#81996b}.answer-review .eyebrow{color:#b0c19a}.review-item{border-top:1px solid #eef3e4}.review-item>summary{list-style:none;display:flex;align-items:center;gap:15px;cursor:pointer;padding:20px 26px;line-height:1.8}.review-item>summary::-webkit-details-marker{display:none}.review-number{font-size:8px;color:#c0cdaf;font-family:Consolas,monospace}.review-question{font-size:10px;color:#9eb487;flex:1}.review-outcome{font-size:8px;flex-shrink:0;color:#adc695!important}.review-outcome.red-text{color:#bf9a8c!important}.review-expand{font-size:17px;color:#b7caa2;width:12px;flex-shrink:0;line-height:1}.review-item[open] .review-expand{font-size:0}.review-item[open] .review-expand:after{content:'−';font-size:17px}.review-detail{padding:0 52px 24px;color:#b0c299;font-size:10px;line-height:1.9}.review-detail dl{margin:0 0 14px}.review-detail dl>div{margin-bottom:10px}.review-detail dt{font-size:8px;color:#c0cfae;margin-bottom:4px}.review-detail dd{margin:0;color:#9fba83}.review-detail .red-text{color:#b48c7c!important}.review-detail .green-text{color:#91b274!important}.reference-label{font-size:8px;color:#b5c8a0;display:block;margin-top:13px}.toast{position:fixed;bottom:25px;left:calc(50% + 90px);transform:translateX(-50%);max-width:min(550px,calc(100vw - 30px));padding:15px 22px;background:#35432f;color:#f0f3e9;border:1px solid #56694c;box-shadow:0 4px 20px rgba(0,0,0,.05);font-size:12px;line-height:1.65;border-radius:7px;z-index:100}.toast-error{background:#743c36;border-color:#8c534b;color:#fff8f6}
/* Responsive and accessibility */
@media(min-width:1600px){.main-content{padding-top:50px}.stats-grid{gap:22px}.stat{padding:25px 28px}.data-table td{padding-top:19px;padding-bottom:19px}}
@media(max-width:1200px){.sidebar{padding-right:17px;padding-left:17px}.app-shell{grid-template-columns:195px minmax(0,1fr)}.main-content{padding:32px 28px 40px}.topbar{padding:0 28px}.workspace-footer{padding-left:28px;padding-right:28px}.page-heading h1{font-size:31px}.stats-grid{gap:12px}.stat{padding:19px 17px}.stat-description{font-size:8px}.data-table th,.data-table td{padding-left:12px;padding-right:12px}.data-table th:first-child,.data-table td:first-child{padding-left:20px}.data-table th:last-child,.data-table td:last-child{padding-right:20px}.panel-heading{padding-left:20px;padding-right:20px}.table-toolbar{padding-left:20px;padding-right:20px}.table-footer{padding-left:20px;padding-right:20px}.manager-bottom-grid{gap:18px}.training-card{padding:24px}.training-card-body{gap:17px}.training-card-body h2{font-size:24px}.course-meta{gap:8px}.course-meta>span+span:before{margin-right:8px}.driver-grid{gap:20px;grid-template-columns:minmax(0,1.6fr) 245px}.book-icon{width:54px;height:76px}.training-card-body p{font-size:10px}.test-layout{grid-template-columns:minmax(0,1fr) 220px;gap:18px}.question-card{padding:24px}.question-card h2{font-size:22px}.question-sidebar{padding:19px}.question-meta{gap:10px;align-items:flex-start}.question-meta .badge{white-space:normal;text-align:center}.result-summary{padding:25px;gap:22px}.result-score{font-size:65px}.result-summary h2{font-size:18px}.login-story{padding:40px}.login-form-side{padding:32px}.login-story-foot{font-size:7px}.login-form-wrap{padding:65px 0}}
@media(max-width:1000px){.page-heading{align-items:flex-start}.heading-actions{flex-direction:column;align-items:stretch}.heading-actions .button{justify-content:center}.heading-actions .button{min-height:35px;font-size:9px}.manager-bottom-grid{grid-template-columns:1.3fr 1fr}.activity-list{padding-left:20px;padding-right:20px}.activity-date{display:none}.cycle-panel{padding:22px}.driver-table{min-width:650px}.sample-label{font-size:8px}.table-footer>span:last-child{display:none}.driver-grid{grid-template-columns:1fr}.handbook-card{display:grid;grid-template-columns:95px minmax(0,1fr);column-gap:22px;padding:23px;position:relative}.handbook-card .eyebrow{grid-column:2;grid-row:1;margin-bottom:8px}.handbook-preview{grid-row:1/6;margin:0;padding:0;background:transparent;align-self:center}.handbook-cover{height:123px;width:87px;padding:11px 9px 8px 12px}.handbook-cover strong{font-size:16px;margin-top:10px}.handbook-cover small{font-size:3px}.handbook-cover small:last-child{font-size:3px}.handbook-cover .cover-line{margin:9px 0 5px;width:18px}.handbook-cover>span{font-size:3px}.handbook-card h3{grid-column:2;grid-row:2;font-size:15px}.handbook-card>p{grid-column:2;grid-row:3;margin-bottom:12px}.handbook-card>.button{grid-column:2;grid-row:4;max-width:220px}.handbook-file{grid-column:2;grid-row:5;text-align:left;margin-top:7px;font-size:7px}.training-card-body p{max-width:none}.training-card-body{margin:30px 0}.course-meta{gap:15px}.course-meta>span+span:before{margin-right:15px}.detail-grid{grid-template-columns:1fr}.detail-stats{gap:15px}.detail-stats>div>span:first-child{font-size:9px}.detail-stats strong{font-size:22px}.detail-stats .date-value{font-size:13px}.assign-panel form{max-width:400px}.test-layout{grid-template-columns:1fr}.question-sidebar{display:grid;grid-template-columns:1fr minmax(230px,1.5fr);column-gap:30px;align-items:start;padding:23px}.question-sidebar-heading{grid-column:1;grid-row:1}.question-sidebar>.progress-track{grid-column:1;grid-row:2}.question-grid{grid-column:2;grid-row:1/5;margin-top:0;grid-template-columns:repeat(10,minmax(0,1fr));gap:6px}.question-number{height:27px;font-size:8px}.question-legend{grid-column:2;grid-row:5}.save-status-wrap{grid-column:1;grid-row:3;margin-top:12px;padding-top:12px}.test-help{display:none}.question-sidebar>.text-button{grid-column:1;grid-row:4;margin-top:10px}.question-card{min-height:450px}.question-card h2{font-size:23px}.result-top-grid{grid-template-columns:1fr}.result-record{padding:24px;display:grid;grid-template-columns:1fr 2fr;gap:20px}.result-record .eyebrow{grid-column:1;margin:0}.result-record dl{grid-column:2;grid-row:1/3}.result-record .text-button{grid-column:1;grid-row:2;align-self:end}.login-story{padding:34px}.login-top>.muted{display:none}.login-story-copy h1{font-size:67px}.login-story-foot{flex-direction:column;gap:6px}.route-note{left:15px;padding:16px 17px}.route-note>span{font-size:8px}.route-line{right:10px}.stop-two{right:70px}.stop-three{right:40px}}
@media(max-width:760px){.app-shell{display:block}.sidebar{position:relative;width:100%;height:auto;padding:18px 20px 0;border-right:0;border-bottom:1px solid #e0e6d7;display:grid;grid-template-columns:1fr auto;row-gap:16px}.sidebar .brand{margin:0;font-size:13px;gap:9px}.sidebar .brand-mark{height:33px;width:33px;font-size:24px;border-radius:5px}.workspace-label{display:none}.sidebar nav{grid-row:2;grid-column:1/3;flex-direction:row;gap:6px;overflow-x:auto;padding-bottom:11px}.nav-item{font-size:10px;padding:9px 11px;min-height:34px;white-space:nowrap;gap:8px}.nav-number{font-size:8px}.handbook-nav{margin:0;border:1px solid transparent;padding-top:9px;border-radius:6px}.external-label{font-size:7px}.sidebar-bottom{margin:0;padding:0;grid-row:1;grid-column:2;display:flex;align-items:center;gap:13px}.sidebar-note,.sidebar-bottom>.local-label{display:none}.profile{padding:0;border:0;gap:9px}.profile .avatar{height:31px;width:31px;font-size:9px}.profile strong{font-size:9px;max-width:100px}.profile small{font-size:8px;margin-top:3px}.signout{font-size:19px;margin-left:2px}.topbar{height:44px;padding:0 22px;font-size:9px}.topbar-edition{font-size:8px}.topbar-role{font-size:8px;padding-left:12px}.topbar>div{gap:12px}.main-content{padding:29px 22px 35px}.workspace-footer{padding:0 22px 23px;font-size:7px}.workspace-footer>span:first-child{font-size:6px}.page-heading{gap:15px;margin-bottom:25px}.page-heading h1{font-size:30px;max-width:380px}.page-heading .eyebrow{font-size:8px}.page-description{font-size:11px;max-width:320px;margin-top:10px}.heading-actions{gap:7px}.heading-actions .button{font-size:8px;min-height:33px;padding:9px 10px;gap:7px}.stats-grid{grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:22px}.stat{padding:16px 15px}.stat-label{font-size:9px}.stat strong{font-size:29px}.stat-description{font-size:7px}.manager-bottom-grid{gap:18px;margin-top:20px}.panel-heading h2{font-size:15px}.panel-heading .text-button{font-size:9px}.sample-label{max-width:110px;text-align:right;line-height:1.6}.table-toolbar{gap:14px}.search-field{width:220px;max-width:60%}.table-footer{font-size:7px}.cycle-panel{padding:21px}.cycle-title h2{font-size:14px}.training-facts>div{font-size:7px}.driver-overview{gap:17px;font-size:9px}.training-card-body h2{font-size:27px}.training-card-body p{font-size:11px;max-width:360px}.course-meta{font-size:8px}.training-card{padding:25px}.book-icon{width:63px;height:86px}.driver-grid .note-box{font-size:10px}.handbook-card h3{font-size:16px}.handbook-card>p{font-size:11px}.handbook-card>.button{font-size:10px}.detail-stats{grid-template-columns:repeat(4,1fr)}.detail-stats>div>span:first-child{font-size:8px}.detail-stats .badge{font-size:8px}.detail-stats .date-value{font-size:12px}.test-layout{gap:18px}.question-card{padding:26px;min-height:450px}.question-meta{align-items:center}.question-card h2{font-size:23px}.question-meta .eyebrow{font-size:8px}.answer-option{font-size:11px}.question-sidebar{grid-template-columns:1fr minmax(250px,1.5fr);gap:0 28px}.question-grid{grid-template-columns:repeat(10,1fr)}.question-sidebar-heading strong{font-size:21px}.result-summary{padding:27px;gap:27px}.result-score{font-size:75px}.result-summary h2{font-size:20px}.result-summary p{font-size:11px}.answer-review .panel-heading{gap:15px}.review-question{font-size:11px}.review-outcome{font-size:8px}.toast{left:50%;bottom:17px;font-size:11px}.login-layout{grid-template-columns:.9fr 1.1fr}.login-story{padding:28px}.login-form-side{padding:27px}.login-story-copy{padding-top:50px;padding-bottom:35px}.login-story-copy h1{font-size:55px}.login-story-copy .eyebrow{font-size:8px}.login-story-copy>p:not(.eyebrow){font-size:12px;line-height:1.9}.login-form-wrap h2{font-size:25px}.login-story-foot{font-size:6px}.route-illustration{margin-top:25px;height:180px}.route-note{max-width:200px;left:0;top:65px}.route-note strong{font-size:12px}.route-note>span{font-size:7px}.route-note small{font-size:6px}.route-line{left:0}.route-stop{width:20px;height:20px;font-size:7px}.stop-one{left:0}.stop-two{right:45px;top:19px}.stop-three{right:25px}.login-form-wrap{padding:50px 0}.demo-access dl>div{font-size:9px}.demo-access dd,.demo-access code{font-size:8px}}
@media(max-width:540px){.sidebar{padding:16px 16px 0}.sidebar nav{gap:3px}.nav-item{padding:8px 9px;font-size:9px;gap:6px}.nav-number{font-size:7px;min-width:10px}.handbook-nav{padding-right:0}.external-label{display:none}.profile .avatar{display:none}.profile strong{max-width:110px}.topbar{padding:0 17px;height:41px}.topbar>span{font-size:8px}.topbar-edition{font-size:7px}.topbar-role{display:none}.main-content{padding:26px 17px 30px}.workspace-footer{padding:0 17px 20px;gap:10px}.workspace-footer>span:first-child{display:none}.page-heading{flex-wrap:wrap;align-items:flex-start;margin-bottom:24px}.page-heading h1{font-size:31px;max-width:340px;line-height:1.2}.page-description{font-size:11px;max-width:320px;line-height:1.8}.heading-actions{flex-direction:row;align-items:center;gap:9px;width:100%;margin-top:1px}.heading-actions .button{font-size:10px;min-height:36px;padding:10px 13px}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin-bottom:23px}.stat{padding:18px 20px}.stat-label{font-size:10px}.stat strong{font-size:31px}.stat-description{font-size:8px}.stat>div{gap:7px;margin-top:12px}.panel-heading{padding:22px 18px 19px;gap:12px}.panel-heading h2{font-size:15px}.panel-heading .eyebrow{font-size:7px}.sample-label{font-size:7px;max-width:95px}.table-toolbar{padding:0 18px 18px;gap:12px}.search-field{max-width:none;width:auto;flex:1}.search-field input{font-size:9px;padding-left:29px!important}.search-field>span{left:9px}.filter-field{gap:0}.filter-field label{display:none}.filter-field select{min-width:107px;max-width:120px;font-size:8px;padding:10px 20px 10px 9px}.data-table th:first-child,.data-table td:first-child{padding-left:18px}.data-table th:last-child,.data-table td:last-child{padding-right:18px}.table-footer{padding:13px 18px}.manager-bottom-grid{grid-template-columns:1fr;gap:20px}.activity-list{padding:0 19px 12px}.activity-date{display:block;font-size:8px}.activity-row strong{font-size:11px}.activity-row p{font-size:9px}.activity-row{gap:12px;padding:17px 0}.activity-symbol{width:29px;height:29px}.cycle-panel{padding:23px}.cycle-title h2{font-size:18px}.course-tile{width:42px;height:51px;font-size:21px}.training-facts>div{font-size:9px;margin-bottom:11px}.completion-label{font-size:9px}.cycle-panel .fine-print{font-size:9px;line-height:1.8}.cycle-panel>.eyebrow{font-size:8px}.driver-overview{flex-wrap:wrap;column-gap:15px;row-gap:12px;margin-top:-8px;margin-bottom:24px;font-size:9px}.driver-overview>span:first-child{font-size:8px}.training-card{padding:22px}.training-card-body{margin:29px 0;gap:15px}.book-icon{width:52px;height:75px;padding:11px 8px}.book-icon>span{font-size:7px}.book-icon>small{font-size:14px}.training-card-body h2{font-size:25px;line-height:1.2;margin-bottom:11px}.training-card-body p{font-size:10px;line-height:1.9}.course-meta{font-size:7px;gap:9px;margin-top:15px;line-height:1.8}.course-meta>span+span:before{margin-right:9px}.training-card-top .badge{font-size:8px;padding:4px 8px}.course-index{font-size:7px}.training-card-footer{gap:12px;padding-top:21px}.training-card-footer .button{font-size:9px;padding:11px 13px;min-height:38px}.training-card-footer strong{font-size:10px}.training-card-footer .muted{font-size:8px}.driver-grid .note-box{font-size:9px;padding:15px;line-height:1.8}.handbook-card{padding:22px;column-gap:20px;grid-template-columns:80px minmax(0,1fr)}.handbook-card .eyebrow{font-size:7px}.handbook-card h3{font-size:14px;line-height:1.5;margin-bottom:7px}.handbook-card>p{font-size:9px;margin-bottom:13px}.handbook-card>.button{font-size:9px;min-height:34px;padding:9px 10px}.handbook-file{font-size:6px}.handbook-cover{height:116px;width:82px}.detail-stats{grid-template-columns:repeat(2,1fr);gap:26px 20px;padding:23px 0}.detail-stats>div>span:first-child{font-size:9px}.detail-stats .badge{font-size:9px}.detail-stats strong{font-size:25px}.detail-stats .date-value{font-size:16px}.assignment-list{padding:0 18px 8px}.assignment-list article{gap:15px}.assignment-list article strong{font-size:11px}.assignment-list article p{font-size:9px}.assignment-list article small{font-size:7px}.assignment-list .badge{font-size:8px;white-space:nowrap;flex-shrink:0;padding:4px 7px}.assign-panel{padding:23px}.assign-panel>p{font-size:11px}.test-top{margin-bottom:20px;gap:10px}.test-top>span{font-size:7px}.test-top .text-button{font-size:9px}.question-card{padding:23px 20px;min-height:480px}.question-meta{gap:10px;align-items:flex-start;margin-bottom:22px}.question-meta .eyebrow{font-size:7px;line-height:1.9}.question-meta .badge{font-size:7px;padding:4px 7px;max-width:135px;text-align:left}.question-card h2{font-size:23px;line-height:1.45}.question-instruction{font-size:9px;margin-top:15px;margin-bottom:21px}.answer-option{font-size:11px;gap:11px;padding:13px 12px;line-height:1.8}.option-letter{width:24px;height:25px;font-size:8px}.option-check{font-size:11px}.answer-options{gap:11px;margin-bottom:26px}.question-footer .button{font-size:9px;padding:10px 11px;gap:7px;min-height:36px}.question-footer-count{font-size:8px}.question-footer{gap:8px;padding-top:21px}.question-sidebar{display:block;padding:22px}.question-sidebar-heading strong{font-size:22px;gap:8px}.question-sidebar-heading small{font-size:9px}.question-sidebar>.progress-track{margin-top:13px}.question-grid{grid-template-columns:repeat(10,minmax(0,1fr));gap:7px;margin-top:22px}.question-number{height:30px;font-size:8px}.question-legend{font-size:8px;gap:15px;margin-top:14px}.save-status-wrap{margin-top:21px;padding-top:15px}.save-indicator{font-size:9px}.question-sidebar>.text-button{font-size:10px;margin-top:16px}.review-summary{gap:15px;margin:34px 0}.review-summary strong{font-size:30px}.review-summary span{font-size:9px}.question-intro{font-size:11px}.question-card>.note-box{font-size:10px;margin-bottom:27px}.result-summary{padding:25px;gap:22px;align-items:flex-start;flex-wrap:wrap}.result-score{font-size:72px;line-height:1.1}.result-score>span{font-size:22px}.result-summary>div:last-child{flex:1;min-width:180px}.result-summary h2{font-size:19px;line-height:1.4}.result-summary p{font-size:11px;line-height:1.85}.result-summary .muted{font-size:10px}.result-summary .badge{font-size:9px}.result-record{padding:22px;grid-template-columns:1fr 1.7fr;gap:15px}.result-record>.eyebrow{font-size:7px}.result-record dl>div{font-size:8px;gap:15px;margin-bottom:13px}.result-record .text-button{font-size:8px;gap:6px}.answer-review .panel-heading{align-items:flex-start;flex-wrap:wrap;gap:15px}.segmented button{font-size:8px}.review-item>summary{padding:18px;gap:10px;align-items:flex-start}.review-question{font-size:10px;line-height:1.9}.review-number{font-size:7px;margin-top:3px}.review-outcome{font-size:7px;margin-top:3px}.review-expand{font-size:15px;margin-top:4px;line-height:1}.review-detail{padding:0 35px 22px;font-size:10px}.review-detail dt{font-size:8px}.reference-label{font-size:8px;line-height:1.9}.login-layout{display:block;min-height:100dvh}.login-story{padding:24px 27px;background:#e8eade}.login-story>.brand{font-size:13px;gap:10px}.login-story .brand-mark{height:34px;width:34px;font-size:24px}.login-story-copy{margin:0;padding:34px 0 5px;max-width:none;display:grid;grid-template-columns:1fr auto;gap:0 15px;align-items:end}.login-story-copy .eyebrow{font-size:7px;letter-spacing:.15em;margin-bottom:12px;grid-column:1}.login-story-copy h1{font-size:43px;grid-column:1;line-height:1.05;letter-spacing:-.055em}.login-story-copy>p:not(.eyebrow){grid-column:2;grid-row:1/3;margin:0 0 3px;font-size:9px;line-height:1.9;color:#8a967b;max-width:135px}.route-illustration,.login-story-foot{display:none}.login-form-side{padding:23px 27px 25px;min-height:560px}.login-top{font-size:8px}.login-top .local-label{font-size:8px}.login-form-wrap{max-width:400px;padding:33px 0 27px;margin:0 auto}.login-form-wrap>.eyebrow{font-size:7px}.login-form-wrap h2{font-size:26px;margin-bottom:12px}.login-form-wrap>.muted{font-size:11px}.login-roles{margin-top:26px;margin-bottom:24px}.login-roles button{font-size:11px;padding:10px 14px}.form-field label{font-size:11px}.form-field input{font-size:12px}.demo-access{margin-top:25px;padding-top:21px}.demo-access p{font-size:10px}.demo-access dl>div{font-size:10px;margin:8px 0}.demo-access dd,.demo-access code{font-size:9px}.login-bottom{font-size:8px}.modal{padding:25px}.modal .form-field label{font-size:11px}.modal .form-field input{font-size:12px}.modal .form-field small{font-size:10px}.modal .button{font-size:11px}.modal>p{font-size:12px}.modal-heading h2{font-size:29px}}
@media(max-width:370px){.main-content{padding-left:14px;padding-right:14px}.profile strong{max-width:90px}.nav-item{font-size:8px;padding-left:7px;padding-right:7px}.question-grid{gap:5px}.question-number{height:26px;font-size:7px}.question-card{padding:21px 18px}.question-card h2{font-size:22px}.question-footer .button{font-size:8px;padding:9px}.question-footer-count{font-size:7px}.question-card .question-meta{gap:6px}.question-meta .badge{max-width:110px;font-size:6px}.course-meta{gap:5px;font-size:6px}.course-meta>span+span:before{margin-right:5px}.training-card-body{gap:12px}.training-card-body h2{font-size:23px}.book-icon{width:45px;height:67px;padding:9px 7px}.book-icon>span{font-size:6px}.training-card-footer .button{font-size:8px;padding:10px}.handbook-card{padding:20px;gap:0 15px;grid-template-columns:75px 1fr}.handbook-cover{height:110px;width:76px}.table-toolbar{padding-left:15px;padding-right:15px}.login-story,.login-form-side{padding-left:23px;padding-right:23px}.login-story-copy h1{font-size:39px}.login-story-copy>p:not(.eyebrow){font-size:8px;max-width:120px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;scroll-behavior:auto!important;transition:none!important}}
/* Keep operational text readable at ordinary laptop and phone sizes. */
.page-description,.driver-overview,.stat-description,.sample-label,.table-footer,.activity-date,.activity-row p,.training-facts dt,.completion-label,.cycle-panel .fine-print,.training-card-body p,.course-meta,.training-card-footer .muted,.handbook-card>p,.handbook-file,.assignment-list article p,.assignment-list article small,.assign-panel>p,.question-instruction,.question-intro,.question-sidebar-heading small,.question-legend,.test-help p,.result-summary p,.result-summary .muted,.result-record dt,.reference-label,.review-detail dt,.demo-access p,.demo-access dl>div,.login-bottom{color:#737d69}
.nav-item{color:#66745b}.nav-item.active{color:#3e5032}.workspace-label,.sidebar-note,.profile small,.external-label{color:#7a856e}.topbar,.topbar-edition,.topbar-role,.workspace-footer{color:#77836a}
.stat-label{color:#69785c;font-size:11px}.stat-description{font-size:10px}.attention-stat .stat-label,.attention-stat .stat-description{color:#8a774f}.data-table th{font-size:10px;color:#788667}.data-table td{font-size:12px;color:#667659}.data-table td strong{font-size:12px;color:#425437}.data-table td small{font-size:10px;color:#7b8b6a}.data-table .badge{font-size:10px}.data-table .text-button{font-size:11px;color:#6f845b}.small-avatar{font-size:10px}.table-footer{font-size:10px}.filter-field label{font-size:10px;color:#768565}.filter-field select,.search-field input{font-size:11px}.panel-heading .text-button{font-size:11px}.sample-label{font-size:10px}.activity-row strong{font-size:12px;color:#556e43}.activity-row p{font-size:11px}.activity-date{font-size:10px}.cycle-panel .fine-print{font-size:10px}.training-facts>div,.completion-label{font-size:10px}.training-facts dd{color:#526a3e}
.driver-overview{font-size:11px}.training-card-body p{font-size:12px}.course-meta{font-size:10px}.course-index{color:#778b63;font-size:9px}.training-card-footer strong{color:#586f43}.training-card-footer .muted{font-size:10px}.driver-grid .note-box{font-size:11px;color:#727e65}.driver-grid .note-box strong{color:#526c3e}.handbook-card h3{color:#546d40}.handbook-card>p{font-size:11px}.handbook-file{font-size:9px}.handbook-card .eyebrow{color:#7b8c69}.training-card-body h2{color:#495e38}
.assignment-list article strong{color:#526c40;font-size:13px}.assignment-list article p{font-size:11px}.assignment-list article small{font-size:10px}.assign-panel h2{color:#526e3e}.assign-panel>p{font-size:12px}.assign-panel .form-field label{font-size:11px;color:#647d4e}.assign-panel input{color:#4c6639}.detail-stats>div>span:first-child{color:#748765}.detail-stats strong{color:#4d6939}
.question-card h2{color:#3d542e}.answer-option{font-size:13px;color:#5a7048}.answer-option.selected{color:#3e5a2b}.option-letter{color:#738d5d}.question-meta .eyebrow{color:#7c906a;font-size:10px}.question-meta .badge{color:#607f49;font-size:10px}.question-instruction{font-size:11px}.question-sidebar-heading>.eyebrow{color:#789267;font-size:9px}.question-sidebar-heading strong{color:#5c7a45}.question-sidebar-heading small{font-size:11px}.question-number{font-size:11px;color:#688153}.question-number.answered{color:#567738}.question-number.current{color:#fff;background:#6e8955;border-color:#6e8955}.question-legend{font-size:9px}.save-indicator{font-size:10px;color:#6d8a54}.test-help strong{color:#6a8752;font-size:11px}.test-help p{font-size:11px}.question-sidebar>.text-button{font-size:11px;color:#5e7e45}.question-footer-count{color:#84976e;font-size:11px}.test-top>span{color:#7b8d67;font-size:10px}.test-top .text-button{color:#67824f;font-size:11px}.question-intro{font-size:13px}.review-summary strong{color:#607c46}.review-summary span{font-size:11px;color:#7b9466}.question-card>.note-box{color:#758b61;font-size:11px}.save-error{color:#9f3c37}
.result-score{color:#617f46!important}.result-summary h2{color:#536e3d}.result-summary p{font-size:12px}.result-summary .muted{font-size:11px}.result-record>.eyebrow{color:#7b9167;font-size:9px}.result-record dl>div{font-size:11px}.result-record dd{color:#5a7743}.result-record .text-button{color:#5d7c44;font-size:11px}.answer-review .panel-heading h2{color:#5d7b45}.answer-review .eyebrow{color:#80996c}.review-question{font-size:12px;color:#607d48}.review-outcome{font-size:10px}.review-outcome.green-text{color:#5f813f!important}.review-outcome.red-text{color:#a77560!important}.review-number{color:#8c9e79;font-size:10px}.review-detail{font-size:12px;color:#71895a}.review-detail dd{color:#5b7a41}.review-detail .green-text{color:#5b7d3e!important}.review-detail .red-text{color:#a36d56!important}.review-detail dt{font-size:10px}.reference-label{font-size:10px}.segmented button{font-size:10px;color:#82996a}.segmented button.selected{color:#5a7741}.review-expand{color:#8fa677}
.demo-access code{color:#647c51}.demo-access p{font-size:11px}.demo-access dl>div{font-size:11px}.demo-access dd,.demo-access code{font-size:10px}.login-form-wrap>.muted{color:#79846d}.login-bottom{font-size:10px}
@media(max-width:540px){.data-table th{font-size:9px}.data-table td{font-size:11px}.data-table td strong{font-size:11px}.data-table td small{font-size:9px}.data-table .badge{font-size:9px}.sample-label{font-size:8px}.search-field input,.filter-field select{font-size:10px}.table-footer{font-size:9px}.stat-label{font-size:10px}.stat-description{font-size:10px}.training-facts>div,.completion-label{font-size:11px}.question-grid{grid-template-columns:repeat(5,1fr);gap:8px}.question-number{height:37px;font-size:11px}.question-card h2{font-size:23px}.question-meta .eyebrow{font-size:9px}.question-meta .badge{font-size:9px}.answer-option{font-size:13px}.question-footer .button{font-size:11px;min-height:42px;padding:10px 12px}.question-footer-count{font-size:9px}.test-top>span{font-size:8px}.test-top .text-button{font-size:10px}.review-question{font-size:12px}.review-outcome{font-size:9px}.review-number{font-size:9px}.review-detail{font-size:12px}.review-detail dt,.reference-label{font-size:10px}.result-record dl>div{font-size:10px}.result-record .text-button{font-size:10px}.result-summary .muted{font-size:12px}.course-meta{font-size:9px}.training-card-body p{font-size:12px}.handbook-card>p{font-size:11px}.handbook-file{font-size:8px}.training-card-footer .button{font-size:10px;min-height:42px}.heading-actions .button{min-height:40px}.nav-item{font-size:10px;min-height:38px}.login-bottom{font-size:9px}.demo-access dd,.demo-access code{font-size:10px}}

/* Keep failed results visually distinct from passed results. */
.result-score.amber-text{color:#966018!important}

/* Keep absolute screen-reader labels inside the table's horizontal scroller. */
.table-scroll{position:relative}

/* Account and manager access controls use the existing workspace style. */
.account-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(250px,1fr);gap:24px;max-width:1000px}.account-panel,.account-identity{padding:30px}.account-panel h2,.account-identity h2,.access-panel h2{font-size:20px;line-height:1.4;color:#354a2a;margin-bottom:10px}.account-panel>p,.account-identity>p,.access-panel p,.account-login-help{font-size:13px;color:#65715c;line-height:1.8}.account-panel form{margin-top:25px;max-width:440px}.account-panel .form-field{margin-bottom:20px}.account-panel label{font-size:12px}.account-panel input{font-size:14px;min-height:44px}.account-panel .button{min-height:44px;font-size:12px}.account-identity .eyebrow{margin-bottom:15px}.account-identity dl{margin:22px 0}.account-identity dl>div{display:flex;gap:20px;justify-content:space-between;border-bottom:1px solid #eaeaea;padding:12px 0;font-size:12px}.account-identity dt{color:#747e6c}.account-identity dd{margin:0;color:#3f5632;overflow-wrap:anywhere}.account-login-help{margin:25px 0 0;padding-top:20px;border-top:1px solid #eaeaea}.login-form-wrap:not(:has(.login-roles)) #login-form{margin-top:28px}.access-panel{padding:25px 28px;display:flex;gap:25px;justify-content:space-between;align-items:center;margin-bottom:24px}.access-panel .eyebrow{display:block;margin-bottom:9px}.access-panel h2{font-size:17px;margin-bottom:6px}.access-panel p{max-width:590px;margin:0;font-size:12px}.access-actions{display:flex;gap:10px;flex-wrap:wrap;flex-shrink:0}.access-actions .button{font-size:11px;min-height:40px}.driver-name:has(+.account-disabled){opacity:.7}
@media(max-width:1000px){.access-panel{align-items:flex-start;flex-direction:column;gap:17px}.account-grid{grid-template-columns:minmax(0,1fr)}}
@media(max-width:540px){.account-panel,.account-identity{padding:23px}.account-panel input{font-size:16px}.account-panel .button{width:100%}.access-panel{padding:22px}.access-actions{width:100%}.access-actions .button{flex:1;font-size:11px;min-height:44px}.account-identity dl>div{font-size:12px}.account-login-help{font-size:12px}}
