:root{--red:#d7000f;--ink:#292929;--line:#dedede;--muted:#626262;--paper:#fff;--bg:#f7f7f7}.training-shell *{box-sizing:border-box}.training-shell{margin:0;background:var(--bg);color:var(--ink);font:16px/1.55 Arial,Helvetica,sans-serif}.training-shell a{color:#b8000d;text-underline-offset:3px}.training-shell a:hover{color:#85000b}.training-shell button,.training-shell input,.training-shell select,.training-shell textarea{font:inherit}.training-shell button,.training-shell .button{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--red);color:white;border:1px solid var(--red);padding:11px 20px;text-decoration:none;cursor:pointer;font-weight:700;border-radius:2px}.training-shell button:hover,.training-shell .button:hover{background:#ae000c;color:white}.training-shell .secondary{background:white;color:var(--ink);border-color:#aaa}.training-shell .quiet{background:transparent;color:var(--ink);border-color:transparent;padding:6px;font-weight:400}.training-shell .test-banner{padding:9px 20px;text-align:center;background:#fff1d4;color:#573e00;font-size:13px;font-weight:700;border-bottom:1px solid #e9d9b6}.training-shell .site-header{background:#fff;border-bottom:1px solid var(--line)}.training-shell .header-inner,.training-shell .main-nav,.training-shell .admin-nav,.training-shell .wrap{max-width:1180px;margin:auto;padding-left:28px;padding-right:28px}.training-shell .header-inner{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-top:30px;padding-bottom:28px}.training-shell .logo img{display:block;max-width:100%;height:auto;width:380px}.training-shell .header-meta{font-size:12px;letter-spacing:.08em;color:var(--muted)}.training-shell .main-nav{display:flex;gap:30px;flex-wrap:wrap;padding-bottom:18px}.training-shell .main-nav a{font-size:14px;text-decoration:none;font-weight:700;color:var(--ink)}.training-shell .admin-nav{display:flex;align-items:center;gap:22px;flex-wrap:wrap;padding-top:12px;padding-bottom:12px;background:#eee;border-bottom:1px solid #ddd;font-size:14px}.training-shell .admin-nav span{margin-left:auto}.training-shell .admin-nav form{margin:0}.training-shell main.wrap{min-height:55vh;padding-top:44px;padding-bottom:65px}.training-shell h1{font-size:32px;line-height:1.22;margin:8px 0 22px}.training-shell h2{font-size:24px;line-height:1.3;margin:28px 0 18px}.training-shell h3{font-size:20px;line-height:1.35;margin:8px 0 10px}.training-shell .eyebrow{color:var(--red);font-size:12px;letter-spacing:.1em;font-weight:700;margin:0}.training-shell .intro{font-size:21px;margin-top:0}.training-shell .muted{color:var(--muted);font-size:14px}.training-shell .notice,.training-shell .success,.training-shell .error{padding:15px 18px;border-left:4px solid #b68a24;background:#fff7e5;margin:24px 0}.training-shell .success{border-color:#278348;background:#edf7ef}.training-shell .error{border-color:var(--red);background:#fff0f0}.training-shell .event-card{display:grid;grid-template-columns:85px minmax(0,1fr) 180px;gap:25px;padding:26px;background:#fff;border:1px solid var(--line);margin:0 0 18px;align-items:start}.training-shell .date-tile{text-align:center;border-top:4px solid var(--red);background:#f2f2f2;padding:12px 6px;font-size:14px}.training-shell .date-tile strong{font-size:34px;display:block;line-height:1.15}.training-shell .badge{font-size:12px;letter-spacing:.02em;font-weight:bold;color:var(--muted)}.training-shell .event-card p{margin:7px 0;font-size:15px}.training-shell .event-action{display:grid;gap:15px;align-self:center;font-size:14px}.training-shell .unavailable{background:#eee;padding:12px;color:#666;text-align:center}.training-shell .panel{background:#fff;padding:30px;border:1px solid var(--line);margin:24px 0}.training-shell .narrow{max-width:560px;margin:20px auto}.training-shell .panel h2:first-child{margin-top:0}.training-shell fieldset{border:0;border-bottom:1px solid var(--line);padding:0 0 25px;margin:0 0 25px;min-width:0}.training-shell legend{font-size:21px;font-weight:700;margin-bottom:18px}.training-shell label{display:block;font-size:14px;font-weight:700;margin-bottom:18px}.training-shell input,.training-shell textarea,.training-shell select{display:block;width:100%;border:1px solid #bcbcbc;background:#fff;color:var(--ink);border-radius:2px;padding:11px 12px;margin-top:6px;font-weight:400;min-height:46px}.training-shell input:focus-visible,.training-shell select:focus-visible,.training-shell textarea:focus-visible,.training-shell button:focus-visible,.training-shell a:focus-visible{outline:3px solid #3679b5;outline-offset:3px}.training-shell textarea{resize:vertical}.training-shell .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}.training-shell .person{display:grid;grid-template-columns:30px 1fr 1fr auto;gap:15px;align-items:center}.training-shell .person-number{align-self:center;background:#fbe8e9;color:#af000b;text-align:center;font-weight:700;border-radius:50%;height:30px}.training-shell .person .quiet{font-size:13px}.training-shell .check{display:flex;align-items:flex-start;gap:10px;flex-wrap:wrap;font-weight:400}.training-shell .check input{width:18px;height:18px;min-height:18px;margin:3px 0 0;flex:none}.training-shell .actions,.training-shell .heading-row{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.training-shell .actions{justify-content:flex-start;margin-top:24px}.training-shell .facts{display:grid;grid-template-columns:180px 1fr;margin:25px 0}.training-shell .facts dt,.training-shell .facts dd{margin:0;padding:12px 14px;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.training-shell .facts dt{background:#f5f5f5;font-weight:700}.training-shell .facts ol{margin:0;padding-left:20px}.training-shell .table-scroll{max-width:100%;overflow:auto;border:1px solid var(--line);background:#fff;margin:22px 0}.training-shell table{width:100%;border-collapse:collapse;font-size:14px;min-width:640px}.training-shell th,.training-shell td{text-align:left;vertical-align:top;padding:14px;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.training-shell thead th{background:#ececec;border-top:3px solid var(--red)}.training-shell tbody tr:nth-child(even){background:#fafafa}.training-shell caption{font-size:20px;font-weight:700;text-align:left;padding:18px}.training-shell td form{min-width:180px}.training-shell .secret{font-family:monospace;overflow-wrap:anywhere;background:#f5f5f5;padding:20px;letter-spacing:.08em}.training-shell .honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.training-shell footer{background:#292929;color:#fff}.training-shell footer .wrap{display:flex;gap:25px;justify-content:space-between;flex-wrap:wrap;padding-top:30px;padding-bottom:30px;font-size:14px}.training-shell footer a{color:#fff}.training-shell .print{font-size:13px;padding:6px 12px}.training-shell code{overflow-wrap:anywhere}@media(max-width:767px){.training-shell .header-inner,.training-shell .main-nav,.training-shell .admin-nav,.training-shell .wrap{padding-left:18px;padding-right:18px}.training-shell .header-inner{padding-top:24px;padding-bottom:22px}.training-shell .logo img{width:300px}.training-shell .header-meta{display:none}.training-shell .main-nav{gap:15px 22px}.training-shell .main-nav a{font-size:13px}.training-shell .admin-nav{gap:12px}.training-shell .admin-nav span{margin-left:0}.training-shell main.wrap{padding-top:30px}.training-shell h1{font-size:27px}.training-shell h2{font-size:21px}.training-shell .intro{font-size:18px}.training-shell .event-card{grid-template-columns:64px minmax(0,1fr);gap:16px;padding:18px}.training-shell .event-action{grid-column:2}.training-shell .event-card h3{font-size:18px}.training-shell .panel{padding:20px}.training-shell .form-grid{grid-template-columns:1fr}.training-shell .person{grid-template-columns:26px 1fr;gap:0 12px;border-bottom:1px solid var(--line);margin-bottom:18px;padding-bottom:12px}.training-shell .person-number{grid-row:1/3}.training-shell .person label,.training-shell .person .quiet{grid-column:2}.training-shell .person .quiet{justify-self:start}.training-shell .facts{grid-template-columns:1fr}.training-shell .facts dt{padding-bottom:5px}.training-shell .facts dd{padding-top:8px}.training-shell .actions .button,.training-shell .actions button{width:100%}.training-shell .test-banner{font-size:11px}.training-shell .heading-row{align-items:flex-start}}@media print{.training-shell .test-banner,.training-shell .site-header,.training-shell .admin-nav,.training-shell footer,.training-shell .button,.training-shell button,.training-shell form{display:none!important}.training-shell main.wrap{padding:0;max-width:none}.training-shell .table-scroll{overflow:visible}.training-shell table{font-size:10px;min-width:0}.training-shell th,.training-shell td{padding:5px}.training-shell #bookings{break-before:page}}.training-shell .mail-preview{white-space:pre-wrap;overflow-wrap:anywhere;font:14px/1.6 monospace}.training-shell details summary{cursor:pointer;font-weight:700}.training-shell .privacy-check{flex-wrap:nowrap}.training-shell .privacy-check span{min-width:0}

body.training-site{background:#fff}.training-shell{font:16px/1.55 Arial,Helvetica,sans-serif;color:#292929;background:#fff}.training-shell main.wrap{max-width:1100px;width:90%;padding:35px 0 65px}.training-shell .global__item--centered{width:100%;padding:0}.training-shell h1{font-size:28px;font-weight:400}.training-shell .button,.training-shell button{background:#d7000f;border-color:#d7000f}.training-shell button.secondary,.training-shell .button.secondary{background:white;color:#292929;border-color:#aaa}.training-shell .quiet{background:transparent;border-color:transparent;color:#292929}.training-shell .content__grid{margin-top:35px}.training-shell .training-events{min-width:0}.training-shell .training-events th{border-top:0;background:#f5f5f5}.training-shell .training-events tbody tr:nth-child(odd){background:#e9e9e9}.training-shell .training-events .button{padding:8px 12px;margin-top:8px;white-space:nowrap;font-size:13px}.test-banner{background:#fff1d4;color:#573e00;text-align:center;font:13px/1.5 Arial;padding:9px 15px}.test-banner a{color:#573e00;text-decoration:underline}
@media(max-width:767px){.training-shell main.wrap{width:auto;margin:0 18px}.training-shell .training-events thead{display:none}.training-shell .training-events tr{display:block;padding:16px}.training-shell .training-events td{display:block;padding:3px 0;border:0}.training-shell .training-events .button{display:inline-flex}.training-shell .content__grid [class*=col-]{width:100%;float:none;padding:0}.training-shell .content__grid img{max-width:100%;height:auto}}

@media(max-width:1023px){body.training-site #header .menu__bar .trigger--menu-open{display:block;width:100%;background:white;border:0;color:#292929;font:14px Arial;padding:16px;text-align:center;height:auto}body.training-site #header .menu__bar .trigger--menu-open::before,body.training-site #header .menu__bar .trigger--menu-open::after{content:none}body.training-site #header .menu__bar .trigger--menu-open span{display:inline!important}body.training-site #header .trigger--menu-close{background:white;border:0;padding:14px;font:14px Arial}}

.training-shell input[type=hidden]{display:none}
@media print{body.training-site #header,body.training-site #footer,body.training-site>.test-banner,body.training-site #outerWrapper>.test-banner{display:none!important}.training-shell table{width:100%}.training-shell tr{break-inside:avoid}.training-shell thead{display:table-header-group}}

.training-shell .totp-qr{width:320px;max-width:100%;margin:20px auto;background:#fff}.training-shell .totp-qr svg{display:block;width:100%;height:auto}.training-shell .totp-secret{font-family:monospace;overflow-wrap:anywhere;word-break:break-all}

/* Dealer overview: separate identifiers, availability, status and review. */
.training-shell .dealer-table{min-width:1250px;table-layout:fixed}
.training-shell .dealer-table th:nth-child(1){width:5%}
.training-shell .dealer-table th:nth-child(2){width:18%}
.training-shell .dealer-table th:nth-child(3){width:18%}
.training-shell .dealer-table th:nth-child(4){width:9%}
.training-shell .dealer-table th:nth-child(5){width:10%}
.training-shell .dealer-table th:nth-child(6){width:11%}
.training-shell .dealer-table th:nth-child(7){width:11%}
.training-shell .dealer-table th,.training-shell .dealer-table td{padding:14px 10px}
.training-shell .dealer-table tbody tr.dealer-inactive{background:#fff4f3}
.training-shell .dealer-table tbody tr.dealer-inactive td:first-child{box-shadow:inset 4px 0 #b3261e}
.training-shell .dealer-id small,.training-shell .dealer-history{display:block;margin-top:5px;font-size:11px;line-height:1.4;color:#626262}
.training-shell .dealer-name{font-weight:700}
.training-shell .dealer-status,.training-shell .dealer-stock{display:inline-block;border-radius:4px;padding:3px 8px;font-size:12px;font-weight:700;white-space:nowrap;background:#eee;color:#444}
.training-shell .dealer-status.is-inactive{background:#f9d9d6;color:#8a1c16}
.training-shell .dealer-status.is-active,.training-shell .dealer-stock.is-stocked{background:#e4f1e8;color:#225e36}
.training-shell .dealer-review p{margin:0 0 6px;font-size:12px;line-height:1.5}
.training-shell .dealer-review .muted{font-size:12px}
.training-shell .dealer-actions{display:flex;align-items:center;gap:6px;flex-wrap:nowrap}
.training-shell .dealer-actions form{min-width:0;margin:0;padding:0}
.training-shell .dealer-actions .button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 9px;margin:0;border:1px solid #b8000d;border-radius:4px;background:#d7000f;color:#fff;font-size:12px;font-weight:700;line-height:1.3;white-space:nowrap;text-decoration:none;transition:background-color .15s,border-color .15s,box-shadow .15s}
.training-shell .dealer-actions .dealer-edit:hover{background:#a9000c;border-color:#a9000c;box-shadow:0 2px 5px #0002}
.training-shell .dealer-actions .dealer-toggle{background:#fff;color:#444;border-color:#aaa}
.training-shell .dealer-actions .dealer-toggle:hover{background:#eee;border-color:#666;box-shadow:0 2px 5px #0002}
.training-shell .dealer-actions .is-activate{border-color:#2f7546;color:#225e36}
.training-shell .dealer-actions .is-activate:hover{background:#e4f1e8;border-color:#225e36}
.training-shell .dealer-actions .button:focus-visible,.training-shell .dealer-table-scroll:focus-visible{outline:3px solid #174b7a;outline-offset:3px}
@media(prefers-reduced-motion:reduce){.training-shell .dealer-actions .button{transition:none}}

.training-shell .dealer-table th:nth-child(8){width:18%}.training-shell .dealer-date{font-size:12px;font-variant-numeric:tabular-nums}.training-shell .dealer-timestamps{display:flex;flex-wrap:wrap;gap:20px 50px;background:#f5f5f5;padding:16px;margin:20px 0 8px}.training-shell .dealer-timestamps dt{font-size:12px;font-weight:700;color:#626262}.training-shell .dealer-timestamps dd{margin:4px 0 0}

.dealer-opening{border:1px solid #ccc;border-radius:4px;padding:1rem;margin:1.25rem 0}.dealer-opening legend{font-weight:700;padding:0 .5rem}.dealer-opening [hidden]{display:none!important}#dealer-editor input:user-invalid,#dealer-editor select:user-invalid,#dealer-editor textarea:user-invalid{border-color:#b00020;outline:1px solid #b00020}

.training-shell .dealer-table .dealer-sort{display:flex;width:100%;justify-content:space-between;text-align:left;padding:4px 0;background:transparent;border:0;color:inherit;font:inherit;font-weight:700;border-radius:2px}.training-shell .dealer-table .dealer-sort:hover{color:#b8000d;background:#dedede}.training-shell .dealer-sort:focus-visible{outline:3px solid #174b7a;outline-offset:3px}.dealer-sort [aria-hidden]{flex-shrink:0}@media print{.training-shell .dealer-table .dealer-sort{display:flex!important}}

.training-shell .dealer-actions{flex-wrap:wrap}.training-shell .dealer-actions .dealer-delete{background:#fff;color:#a9000c;border-color:#a9000c}.training-shell .dealer-actions .dealer-delete:hover{background:#fff0f0}

.training-shell .training-sort{display:flex;justify-content:space-between;gap:8px;color:inherit;text-decoration:none}.training-shell .training-sort:hover{color:#b8000d;text-decoration:underline}.training-shell .training-sort:focus-visible{outline:3px solid #174b7a;outline-offset:3px}

/* Grouped training administration */
.training-shell .dashboard-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 24px}
.training-shell .dashboard-filter-actions{grid-column:1/-1;display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.training-shell .dashboard-actions,.training-shell .dashboard-event-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.training-shell .dashboard-table{min-width:920px;table-layout:fixed}
.training-shell .dashboard-table>thead>tr>th:nth-child(1){width:23%}.training-shell .dashboard-table>thead>tr>th:nth-child(2){width:22%}.training-shell .dashboard-table>thead>tr>th:nth-child(3){width:17%}.training-shell .dashboard-table>thead>tr>th:nth-child(4){width:15%}.training-shell .dashboard-table>thead>tr>th:nth-child(5){width:23%}
.training-shell .dashboard-event>th,.training-shell .dashboard-event>td{background:#f2f2f2;border-top:3px solid #d7000f;padding:16px 12px;vertical-align:top;text-align:left;overflow-wrap:anywhere}
.training-shell .dashboard-event>th{font-size:17px}.training-shell .dashboard-table small{display:block;color:#626262;font-size:12px;font-weight:400;margin-top:5px}
.training-shell .dashboard-event-actions .button{font-size:13px;padding:7px 10px;min-height:36px}.training-shell .dashboard-event-actions>a:not(.button){font-size:13px}
.training-shell .dashboard-bookings>td{padding:16px 18px 30px;background:#fff}
.training-shell .dashboard-booking-heading h2{font-size:17px;margin:0 0 12px;color:#292929}.training-shell .dashboard-booking-heading h2 span{font-weight:400;color:#626262}
.training-shell .dashboard-booking-table{width:100%;table-layout:fixed;margin:0;border-top:1px solid #dedede}.training-shell .dashboard-booking-table caption{font-size:12px;color:#626262;text-align:left;padding:0 0 8px}
.training-shell .dashboard-booking-table th,.training-shell .dashboard-booking-table td{padding:10px;vertical-align:top;overflow-wrap:anywhere}.training-shell .dashboard-booking-table th{font-size:13px;background:#fafafa}
.training-shell .dashboard-booking-table th:nth-child(1){width:22%}.training-shell .dashboard-booking-table th:nth-child(2){width:30%}.training-shell .dashboard-booking-table th:nth-child(3){width:10%}.training-shell .dashboard-booking-table th:nth-child(4){width:13%}.training-shell .dashboard-booking-table th:nth-child(5){width:25%}
.training-shell .booking-reference{font-weight:700}.training-shell .dashboard-status{display:inline-block;padding:4px 8px;border-radius:4px;background:#eee;color:#444;font-size:12px;line-height:1.4}
.training-shell .status-confirmed,.training-shell .status-published{background:#e4f1e8;color:#225e36}.training-shell .status-pending_email,.training-shell .status-legacy_unreviewed,.training-shell .status-draft{background:#fff0cd;color:#795100}.training-shell .status-cancelled,.training-shell .status-expired{background:#f9d9d6;color:#8a1c16}.training-shell .status-archived{background:#e8e8e8;color:#555}
.training-shell .places-full{color:#a9000c}.training-shell .dashboard-empty{margin:8px 0;color:#626262}.training-shell .dashboard-pagination{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:18px 0;font-size:14px}
.training-shell .dashboard-table-wrap:focus-visible{outline:3px solid #174b7a;outline-offset:3px}.training-shell .training-dashboard .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:650px){.training-shell .dashboard-filters{grid-template-columns:minmax(0,1fr)}.training-shell .training-dashboard .heading-row{align-items:flex-start;gap:16px;flex-wrap:wrap}}
@media print{.training-shell .dashboard-filters,.training-shell .dashboard-actions,.training-shell .dashboard-event-actions,.training-shell .dashboard-pagination{display:none}.training-shell .dashboard-table{min-width:0;font-size:11px}.training-shell .dashboard-booking-table{font-size:11px}.training-shell .dashboard-event{break-after:avoid}.training-shell .dashboard-bookings{break-inside:auto}}

.training-shell .dashboard-booking-details>summary{cursor:pointer;font-size:17px;font-weight:700;padding:4px 0 14px}.training-shell .dashboard-booking-details>summary span{font-weight:400;color:#626262}.training-shell .dashboard-booking-details>summary:focus-visible{outline:3px solid #174b7a;outline-offset:3px}

/* Keep red action links white despite the site's general #main a link color. */
.training-shell #main a.button:not(.secondary):not(.quiet):not(.dealer-toggle):not(.dealer-delete){color:#fff}
