.aocp-trainer .aocp-entry__content { display: grid; gap: 20px; }
.aocp-trainer__card { min-width: 0; padding: 20px 24px; border: 1px solid #d6e1db; background: #fafbf9; }
.aocp-trainer h2 { font-size: 25px; margin-bottom: 14px; }
.aocp-trainer h3 { margin: 0 0 10px; font: normal 22px Georgia, serif; }
.aocp-trainer h4 { margin: 0 0 2px; font-size: 14px; }
.aocp-trainer fieldset { min-width: 0; margin: 0 0 16px; padding: 0; border: 0; }
.aocp-trainer legend, .aocp-trainer__ident > label, .aocp-trainer__numbers label { display: block; margin-bottom: 6px; font-weight: bold; }
.aocp-trainer__sectors { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px 24px; }
.aocp-trainer__choice { display: flex; align-items: flex-start; gap: 8px; padding: 3px 0; cursor: pointer; }
.aocp-trainer__choice input { flex: none; margin: 4px 0 0; accent-color: #153d34; }
.aocp-trainer__choice span { min-width: 0; overflow-wrap: anywhere; }
.aocp-trainer__inline { display: flex; flex-wrap: wrap; gap: 6px 24px; }
.aocp-trainer .aocp-trainer__hint { font-size: 12px; color: #4d655d; margin-top: 5px; }
.aocp-trainer__ident-row { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
.aocp-trainer input[type="text"] { border: 1px solid #9caf9f; border-radius: 3px; padding: 8px 10px; font: inherit; color: inherit; background: #fff; min-width: 0; }
.aocp-trainer__ident-row input { width: 240px; max-width: 100%; }
.aocp-trainer__secondary { padding: 8px 12px; border: 1px solid #a7bbae; background: #fff; color: #153d34; border-radius: 3px; font: inherit; cursor: pointer; }
.aocp-trainer__advanced { margin-top: 16px; border-top: 1px solid #d6e1db; border-bottom: 1px solid #d6e1db; }
.aocp-trainer summary { padding: 10px 0; cursor: pointer; font-weight: bold; }
.aocp-trainer summary:focus-visible, .aocp-trainer__matrix-scroll:focus-visible { outline: 2px solid #123d33; outline-offset: 3px; }
.aocp-trainer__advanced-body { padding: 6px 0 16px; }
.aocp-trainer__numbers { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 18px; }
.aocp-trainer__numbers input { width: 80px; }
.aocp-trainer__help { font-size: 12px; }
.aocp-trainer__help summary { padding: 6px 0; text-decoration: underline; font-weight: normal; }
.aocp-trainer__help div { overflow-wrap: anywhere; }
.aocp-trainer__debug { margin-top: 12px; font-size: 12px; }
.aocp-trainer__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 20px; margin: 18px 0 12px; }
.aocp-trainer .aocp-entry__submit { min-height: 42px; padding: 10px 20px; font-size: 14px; }
.aocp-trainer__actions a, .aocp-trainer__links a, .aocp-trainer__corporate a { text-decoration: underline; text-underline-offset: 3px; }
.aocp-trainer__links, .aocp-trainer__corporate { font-size: 12px; }
.aocp-trainer__statistics { min-width: 0; }
.aocp-trainer__statistics > h2 { margin-bottom: 4px; }
.aocp-trainer__statistics > .aocp-trainer__hint { margin-bottom: 12px; overflow-wrap: anywhere; }
.aocp-trainer__table-scroll, .aocp-trainer__matrix-scroll { max-width: 100%; overflow-x: auto; }
.aocp-trainer__table { width: 100%; border-collapse: collapse; background: #fff; }
.aocp-trainer__table th, .aocp-trainer__table td { padding: 9px 12px; border-bottom: 1px solid #d6e1db; text-align: center; }
.aocp-trainer__table th:first-child { text-align: left; overflow-wrap: anywhere; }
.aocp-trainer__table thead { background: #edf3ee; }
.aocp-trainer__table tbody th { font-weight: normal; }
.aocp-trainer__sector { margin-top: 12px; }
.aocp-trainer__counts { display: flex; flex-wrap: wrap; gap: 12px 24px; margin: 0 0 14px; }
.aocp-trainer__counts dt { font-size: 12px; }
.aocp-trainer__counts dd { margin: 0; font-size: 20px; font-weight: bold; }
.aocp-trainer__coverage { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 16px 24px; }
.aocp-trainer__matrix-block { min-width: 0; }
.aocp-trainer__matrix { display: grid; grid-template-columns: repeat(40, 6px); grid-auto-rows: 6px; gap: 1px; width: max-content; padding: 6px 0; }
.aocp-trainer__cell { display: inline-block; width: 6px; height: 6px; background: #ccc; }
.aocp-trainer__cell--wrong { background: #e04336; }
.aocp-trainer__cell--correct1 { background: #377a3a; }
.aocp-trainer__cell--correct2 { background: #409040; }
.aocp-trainer__cell--correct3 { background: #60c060; }
.aocp-trainer__legend { display: flex; flex-wrap: wrap; gap: 6px 16px; margin: 10px 0 0; padding: 0; list-style: none; font-size: 11px; }
.aocp-trainer__legend li { display: flex; align-items: center; gap: 6px; }
.aocp-trainer__legend .aocp-trainer__cell { width: 9px; height: 9px; flex: none; }
.aocp-trainer__empty { padding: 14px 0; }
@media (max-width: 700px) {
    .aocp-trainer__sectors, .aocp-trainer__coverage, .aocp-trainer__numbers { grid-template-columns: minmax(0,1fr); }
    .aocp-trainer__card { padding: 16px; }
    .aocp-trainer__table th, .aocp-trainer__table td { padding: 8px 6px; font-size: 12px; }
}

/* F3 active trainer */
.aocp-trainer--active .aocp-entry__intro { padding-bottom: 12px; }
.aocp-trainer--active .aocp-entry__intro h1 { font-size: 26px; margin-bottom: 4px; }
.aocp-trainer--active .aocp-entry__intro > p:last-child { font-size: 13px; }
.aocp-trainer--active .aocp-entry__content { display: block; padding-top: 14px; }
.aocp-trainer--active .aocp-test { width: 100%; max-width: none; margin: 0; }
.aocp-trainer--active .aocp-test__intro { padding: 0 0 12px; border: 0; border-bottom: 1px solid #d6e1db; background: transparent; }
.aocp-trainer--active .aocp-test__caption { display: none; }
.aocp-trainer--active .aocp-test > br, .aocp-trainer--active .aocp-entry__content > br { display: none; }
.aocp-trainer--active .aocp-test > input[type="submit"] { width: auto !important; height: auto !important; min-height: 44px; margin: 16px 0 0; padding: 10px 22px; border: 1px solid #153d34; background: #153d34; color: #fff; font: 14px Arial, sans-serif; cursor: pointer; }
.aocp-trainer--active .aocp-test > input[type="submit"]:hover { background: #245448; }
.aocp-trainer--active .aocp-test > input[type="submit"]:focus-visible { outline: 2px solid #123d33; outline-offset: 4px; }
/* F3 end */

/* F4 trainer result */
.aocp-trainer--result .aocp-entry__intro { padding-bottom: 12px; }
.aocp-trainer--result .aocp-entry__intro h1 { font-size: 26px; margin-bottom: 4px; }
.aocp-trainer--result .aocp-entry__intro > p:last-child { font-size: 13px; }
.aocp-trainer--result .aocp-entry__content { display: block; padding-top: 14px; }
.aocp-trainer--result .aocp-result__intro { flex-wrap: wrap; padding: 0 0 12px; border: 0; border-bottom: 1px solid #d6e1db; background: transparent; }
.aocp-trainer--result .aocp-result__intro > div > p:first-child { display: none; }
.aocp-trainer--result .aocp-entry__content > br { display: none; }
.aocp-trainer--result .inline-button { display: inline-flex; align-items: center; min-height: 44px; margin-top: 8px; padding: 10px 22px; border: 1px solid #153d34; background: #153d34; color: #fff; text-decoration: none; }
.aocp-trainer--result .inline-button:hover { background: #245448; }
.aocp-trainer--result .inline-button:focus-visible { outline: 2px solid #123d33; outline-offset: 4px; }
/* F4 end */
