.training-today{padding:18px 22px;margin:0 0 20px}.training-heading,.training-session{display:flex;align-items:center;gap:16px;justify-content:space-between}.training-heading h3{display:flex;align-items:center;gap:9px;margin:0}.training-heading h3 svg{color:var(--teal,#087c83)}.training-heading p{font-size:12px;color:var(--muted,#718897);margin:5px 0 0}.training-session-list{max-height:220px;overflow:auto}.training-session{padding-top:12px;margin-top:12px;border-top:1px solid #e5edef}.training-clock{font-size:14px;font-weight:700;color:#087c83;white-space:nowrap}.training-clock small{display:block;font-size:11px;color:#7a909d;font-weight:400}.training-session-name{flex:1;min-width:0}.training-session-name strong{display:block;font-size:13px}.training-session-name small{display:block;color:#718897;font-size:11px;margin-top:4px}.training-info{display:flex;gap:12px;justify-content:space-between;flex-wrap:wrap;font-size:13px}.training-info span:first-child{display:flex;gap:7px;align-items:center}.training-guide,.training-harada,.training-scan-intro{display:flex;align-items:center;gap:12px;background:#eff8f6;border:1px solid #dceee9;border-radius:10px;padding:14px;margin:14px 0}.training-guide svg,.training-harada>svg,.training-scan-intro>svg{flex:none;color:#087c83}.training-guide p,.training-scan-intro p{font-size:12px;line-height:1.7;margin:0}.training-counts{display:flex;gap:20px;padding:12px 0;flex-wrap:wrap;font-size:12px}.training-counts b{color:#087c83;font-size:19px;margin-right:4px}.training-roster{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.training-person{border:1px solid #e0e9ed;border-radius:12px;padding:14px;min-width:0}.training-person strong{font-size:13px}.training-times{font-size:12px;color:#617d8b;margin:10px 0}.training-times b{color:#173d4c}.training-times span{margin-left:14px}.training-harada{padding:10px;margin:10px 0 0;align-items:flex-start}.training-harada>div{flex:1;min-width:0}.training-harada strong,.training-harada small{display:block;font-size:11px;line-height:1.6}.training-harada small{color:#617d8b}.training-qr-layout{display:grid;grid-template-columns:minmax(240px,310px) 1fr;gap:28px;align-items:start}.training-qr-paper{background:white;border:1px solid #dce7e9;border-radius:16px;padding:18px;text-align:center}.training-phase{display:block;font-size:12px;font-weight:700;letter-spacing:2px;color:#087c83}.training-qr-paper canvas{display:block;width:100%;height:auto;image-rendering:pixelated;margin:12px auto}.training-qr-paper canvas[hidden]{display:none}.training-qr-paper>strong{font-size:13px;color:#087c83}.training-qr-help h3{margin:4px 0 8px}.training-qr-help ol{padding-left:19px;font-size:13px;line-height:1.8}.training-qr-help li{margin:10px 0}.training-code{margin-top:20px;font-size:12px}.training-code summary{cursor:pointer;color:#087c83}.training-code textarea{display:block;width:100%;min-height:66px;resize:vertical;padding:9px;margin:10px 0;border:1px solid #dce7e9;border-radius:8px;overflow-wrap:anywhere;font-size:12px}.training-camera{background:#f2f7f8;border:1px dashed #b9d0d5;border-radius:12px;min-height:140px;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;padding:12px;text-align:center}.training-camera video{width:100%;max-height:300px;object-fit:cover;border-radius:8px}.training-camera p{font-size:13px;line-height:1.6}.training-scan-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:16px}.training-receipt{text-align:center;padding:18px 0}.training-receipt>svg{width:48px;height:48px;color:#087c83}.training-receipt h3{margin:16px 0;line-height:1.6}.scan-error{color:#ad4d24}.hc-event.training{border-left:3px solid #b78032;background:#fcf5e9}.hc-legend .event-dot.training{background:#b78032}.training-code label{display:block;margin-top:12px}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.training-scan-actions label:focus-within{outline:2px solid #087c83;outline-offset:3px}@media(max-width:640px){.training-heading{align-items:flex-start}.training-heading p{max-width:230px}.training-session{flex-wrap:wrap;gap:10px}.training-session>.flex{width:100%;padding-left:60px}.training-roster,.training-qr-layout{grid-template-columns:1fr}.training-qr-paper{max-width:300px;margin:auto;width:100%}.training-today{padding:16px}.training-heading>.btn{white-space:nowrap}.training-harada{flex-wrap:wrap}}
.training-roster>.training-person:only-child{grid-column:1/-1}

/* The home summary uses three equal columns only when training is scheduled. */
.method-cards.has-training{grid-template-columns:repeat(3,minmax(0,1fr))}
.method-cards>section{min-width:0}
.method-cards>.training-today{margin:0;padding:12px 18px;border-top:3px solid #b78032;background:linear-gradient(125deg,#fff,#fffbf4)}
.method-cards .training-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px 10px;align-items:center}
.method-cards .training-heading>div{display:contents}
.method-cards .training-heading h3{grid-column:1/-1;font-size:16px;line-height:1.25}
.method-cards .training-heading p{font-size:10px;line-height:1.5;margin:0;max-width:none}
.method-cards .training-heading>.btn{font-size:10px;padding:7px 9px;white-space:nowrap;min-height:32px}
.method-cards .training-heading>.btn svg{width:15px;height:15px}
.method-cards .training-session-list{max-height:140px;scrollbar-width:thin}
.method-cards .training-session{display:grid;grid-template-columns:38px minmax(0,1fr);gap:4px 8px;margin-top:8px;padding-top:8px;align-items:start}
.method-cards .training-clock{font-size:11px;grid-row:1/3}
.method-cards .training-clock small{font-size:9px}
.method-cards .training-session-name strong{font-size:11px;line-height:1.4;overflow-wrap:anywhere}
.method-cards .training-session-name small{font-size:9px;line-height:1.4;margin-top:2px}
.method-cards .training-session>.flex{grid-column:2;gap:5px;width:auto;padding:0}
.method-cards .training-session .btn{font-size:9px;padding:4px 6px;min-height:26px}
.method-cards .training-session .btn svg{width:12px;height:12px}
@media(max-width:1150px){.method-cards>.training-today{padding:12px 16px}.method-cards.has-training .method-bottom{flex-wrap:wrap}}
@media(min-width:701px) and (max-width:1000px){.method-cards.has-training{grid-template-columns:repeat(2,minmax(0,1fr))}.method-cards>.training-today{grid-column:1/-1}}
@media(max-width:700px){
  .method-cards.has-training{grid-template-columns:1fr}
  .method-cards .training-session-list{max-height:240px}
  .method-cards .training-heading>.btn,.method-cards .training-session .btn{min-height:44px;font-size:11px;padding:8px 10px}
}
