/* The card, header, controls, sections and actions use the shared eCampus UI. */
.across-mc-form-page .ecampus-course-form {
    padding-top: 28px;
}

.across-mc-submission-main {
    min-width: 0;
}

.across-mc-repeat-row { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 190px), 1fr)); gap: .75rem; margin-bottom: 1rem; align-items: end; }
.across-mc-repeat-row label { display: flex; flex-direction: column; gap: .35rem; }
.across-mc-repeat-row input, .across-mc-repeat-row select { width: 100%; min-width: 0; }
.across-mc-repeat-row button { align-self: end; }
[data-mc-schedule-preview] { white-space: pre-line; }

.across-mc-form .ecampus-course-table {
    margin: 0;
    table-layout: fixed;
}

/* Micro-credential labels are longer than the standard course labels. */
.across-mc-form .ecampus-course-table td:first-child {
    white-space: normal;
    overflow-wrap: anywhere;
}

.across-mc-form fieldset {
    border: 0;
    padding: 0;
    margin: 0;
    min-width: 0;
}

.across-mc-form [data-mc-slot-time] {
    max-width: 240px;
}

.across-mc-options {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr));
    gap: .65rem;
    line-height: 1.35;
}

.across-mc-options label {
    overflow-wrap: anywhere;
}

.across-mc-options input {
    flex: 0 0 auto;
    margin-top: .25rem;
}

.across-mc-form-page .across-mc-note {
    margin: 8px 0 0;
    color: #64748b;
    font-size: var(--text-md, .875rem);
    line-height: 1.45;
}

.across-mc-form-page .across-mc-notice {
    border-radius: var(--radius-small, 8px);
    padding: .85rem 1rem;
    margin: 0 0 1.5rem;
    background: #fef2f2;
    border: 1px solid #fecaca;
    color: #991b1b;
}

.across-mc-error {
    color: #b52828;
    margin: .5rem 0;
}

/* Published course details keep their existing layout. */
.across-mc-note { font-size: .9em; opacity: .8; margin: .4rem 0 0; }
.across-mc-form-page .across-mc-note { opacity: 1; }
.across-mc-notice { border-left: 4px solid #c85b00; padding: 1rem; margin: 1rem 0; background: rgba(200, 91, 0, .08); }
.across-mc-section { border-top: 1px solid var(--wp--preset--color--contrast-3, #ddd); padding: 1.5rem 0; }
.across-mc-details { display: grid; grid-template-columns: minmax(10rem, 1fr) minmax(0, 2fr); gap: .7rem 1.2rem; }
.across-mc-details dt { font-weight: 600; }
.across-mc-details dd { margin: 0; overflow-wrap: anywhere; }
.across-mc-page [hidden] { display: none !important; }
html.dark-mode .across-mc-error, body.dark-mode .across-mc-error { color: #ffb4ab; }
body.dark-mode .across-mc-form-page .across-mc-note { color: var(--dm-text-muted, #8a93b2); }
body.dark-mode .across-mc-form-page .across-mc-notice { background: rgba(127, 29, 29, .22); border-color: rgba(248, 113, 113, .3); color: #fecaca; }
@media (max-width: 640px) { .across-mc-details { grid-template-columns: 1fr; } .across-mc-details dd { margin-bottom: .65rem; } }

.ecc-item__inner:focus .ecc-alu-help__tooltip { visibility: visible; opacity: 1; }
