/* Native public training. Class courses retain their own workspace. */
.dyoj-training-heading {display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 22px;}
.dyoj-training-heading h1 {font-size:26px;font-weight:700;line-height:1.4;margin:0 0 8px;color:var(--ref-ink);}
.dyoj-training-heading p,.dyoj-training-hint {font-size:14px;line-height:1.75;color:var(--ref-muted);}
.dyoj-training-heading .button {margin:0;flex-shrink:0;}
.dyoj-training-search {display:flex;align-items:center;gap:12px;padding:20px 24px;border-bottom:1px solid var(--ref-line);}
.dyoj-training-search label {font-size:14px;white-space:nowrap;}
.dyoj-training-search .textbox {flex:1;min-width:0;margin:0;height:44px;}
.dyoj-training-search .button {margin:0;min-height:44px;}
.dyoj-training-list {list-style:none;margin:0;padding:0;}
.dyoj-training-row {padding:24px;border-bottom:1px solid var(--ref-line);}
.dyoj-training-row:last-child {border-bottom:0;}
.dyoj-training-row-top,.dyoj-training-row-bottom {display:flex;align-items:center;justify-content:space-between;gap:20px;}
.dyoj-training-row h2 {font-size:18px;font-weight:650;line-height:1.55;margin:0;overflow-wrap:anywhere;}
.dyoj-training-row h2 a,.dyoj-training-enrolled a {color:var(--ref-ink);}
.dyoj-training-row h2 a:hover,.dyoj-training-enrolled a:hover {color:var(--ref-accent);}
.dyoj-training-state {font-size:12px;white-space:nowrap;color:var(--ref-muted);background:var(--ref-hover);border:1px solid var(--ref-line);padding:4px 8px;border-radius:6px;}
.dyoj-training-description {font-size:14px;color:var(--ref-muted);line-height:1.75;margin:10px 0 16px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.dyoj-training-meta {display:flex;flex-wrap:wrap;gap:8px 20px;font-size:13px;color:var(--ref-muted);}
.dyoj-training-enter {font-size:14px;white-space:nowrap;color:var(--ref-accent);min-height:36px;display:inline-flex;align-items:center;gap:12px;}
.dyoj-training-progress {display:flex;align-items:center;gap:12px;font-size:12px;color:var(--ref-muted);margin-top:12px;}
.dyoj-training-progress progress {appearance:none;border:0;height:5px;width:100%;border-radius:4px;background:var(--ref-line);accent-color:var(--ref-accent);}
.dyoj-training-progress progress::-webkit-progress-bar {background:var(--ref-line);border-radius:4px;}
.dyoj-training-progress progress::-webkit-progress-value {background:var(--ref-accent);border-radius:4px;}
.dyoj-training-enrolled {list-style:none;margin:0;padding:0;}
.dyoj-training-enrolled li+li {margin-top:18px;padding-top:18px;border-top:1px solid var(--ref-line);}
.dyoj-training-enrolled a {font-size:14px;line-height:1.6;display:block;overflow-wrap:anywhere;}
.dyoj-training-enrolled small {display:block;margin-top:6px;font-size:12px;color:var(--ref-muted);}
.dyoj-training-hint h2,.dyoj-training-empty h2 {font-size:16px;font-weight:650;color:var(--ref-ink);margin-bottom:10px;}
.dyoj-training-hint p+p {margin-top:12px;}
.dyoj-training-empty {padding:40px 24px;color:var(--ref-muted);}
html.hydro-refined .dyoj-training-detail .refined-training-title {font-size:26px;line-height:1.45;margin-top:12px;}
.dyoj-training-back {display:inline-block;color:var(--ref-muted);font-size:13px;line-height:24px;}
html.hydro-refined .dyoj-training-detail .dyoj-training-intro-summary {padding-top:0;padding-bottom:12px;color:var(--ref-muted);font-size:15px;}
html.hydro-refined .dyoj-training-detail .training__section > .section__header {padding:22px 24px 8px;}
html.hydro-refined .dyoj-training-detail .training__section > .section__body {padding:0 24px 16px;}
html.hydro-refined .dyoj-training-detail .training__problems {overflow-x:auto;}
html.hydro-refined .dyoj-training-detail .training__problems .data-table {min-width:650px;}
html.hydro-refined .dyoj-training-detail .training__problems .col--name a {color:var(--ref-ink);}
html.hydro-refined .dyoj-training-detail .training__problems .col--name a:hover {color:var(--ref-accent);}
.dyoj-training-page a:focus-visible,.dyoj-training-detail a:focus-visible {outline:2px solid var(--ref-accent);outline-offset:3px;border-radius:3px;}
@media(max-width:600px){
 .dyoj-training-heading {align-items:flex-start;gap:12px;flex-wrap:wrap;}
 .dyoj-training-heading h1 {font-size:23px;}
 .dyoj-training-search {padding:16px;gap:8px;flex-wrap:wrap;}
 .dyoj-training-search label {width:100%;}
 .dyoj-training-row {padding:18px 16px;}
 .dyoj-training-row h2 {font-size:16px;}
 .dyoj-training-row-top {align-items:flex-start;gap:10px;}
 .dyoj-training-row-bottom {align-items:flex-start;gap:8px;}
 .dyoj-training-meta {gap:6px 12px;}
 html.hydro-refined .dyoj-training-detail .refined-training-title {font-size:22px;}
}

.dyoj-training-join {display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;margin:0 0 18px;background:var(--ref-hover);border:1px solid var(--ref-line);border-radius:8px;font-size:14px;color:var(--ref-muted);}
.dyoj-training-join form,.dyoj-training-join .button {margin:0;white-space:nowrap;}
html.hydro-refined .dyoj-training-detail .section.side .menu__link.active {border-left-color:transparent;background:var(--ref-accent-soft)!important;color:var(--ref-accent)!important;}
@media(max-width:600px){.dyoj-training-join {align-items:flex-start;flex-direction:column;}.dyoj-training-page,.dyoj-training-detail {padding-inline:10px;}}
