.mjc-dtc{background:#fff;border:1px solid #d8e0da;border-radius:14px;box-shadow:0 8px 24px rgba(0,0,0,.05);box-sizing:border-box;color:#1f2a24;max-width:980px;padding:1.25rem}.mjc-dtc *{box-sizing:border-box}.mjc-dtc__intro,.mjc-dtc__notice,.mjc-dtc__error,.mjc-dtc__graph-placeholder{border-radius:10px;margin:0 0 1rem;padding:.85rem 1rem}.mjc-dtc__intro{background:#f2f8f3;border:1px solid #cfe6d4}.mjc-dtc__intro p,.mjc-dtc__notice p{margin:.35rem 0 0}.mjc-dtc__notice{background:#eef7ee;border:1px solid #b8dfb8}.mjc-dtc__notice--inline{display:inline-block}.mjc-dtc__error{background:#fff2f2;border:1px solid #e2aaaa}.mjc-dtc__form{display:grid;gap:1rem}.mjc-dtc__section{background:#fbfdfb;border:1px solid #dce7df;border-radius:12px;margin:0;padding:1rem}.mjc-dtc__section legend{font-size:1.05rem;font-weight:800;padding:0 .35rem}.mjc-dtc__section-note,.mjc-dtc__help,.mjc-dtc__empty-results{color:#526157}.mjc-dtc__section-note{margin:.15rem 0 1rem}.mjc-dtc__grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.mjc-dtc__field{margin:0}.mjc-dtc label{display:block;font-weight:700;margin-bottom:.3rem}.mjc-dtc input,.mjc-dtc select{background:#fff;border:1px solid #aebbad;border-radius:8px;max-width:100%;min-height:42px;padding:.55rem .65rem;width:100%}.mjc-dtc input:focus,.mjc-dtc select:focus{border-color:#287a3e;box-shadow:0 0 0 3px rgba(40,122,62,.18);outline:none}.mjc-dtc__help{display:block;font-size:.9rem;line-height:1.35;margin-top:.35rem}.mjc-dtc__optional-card{background:#fff;border:1px solid #e0e6e1;border-radius:10px;margin:.85rem 0 0;padding:1rem}.mjc-dtc__optional-card h4{margin:.1rem 0 .35rem}.mjc-dtc__check-grid{display:grid;gap:.45rem .8rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-top:.75rem}.mjc-dtc__check{align-items:flex-start;display:flex;font-weight:500;gap:.45rem;margin:0}.mjc-dtc__check input{flex:0 0 auto;margin-top:.2rem;min-height:auto;width:auto}.mjc-dtc__check--standalone{margin:.75rem 0}.mjc-dtc__actions{margin:.35rem 0 0}.mjc-dtc__submit,.mjc-dtc button[type=submit]{background:#216b37;border:0;border-radius:999px;color:#fff;cursor:pointer;font-weight:800;min-height:46px;padding:.75rem 1.35rem}.mjc-dtc__submit:hover,.mjc-dtc button[type=submit]:hover{background:#185329}.mjc-dtc__results{border-top:1px solid #e1e7e2;margin-top:1.25rem;padding-top:1rem}.mjc-dtc__result-summary{background:linear-gradient(135deg,#f4fbf5,#ffffff);border:1px solid #cfe6d4;border-radius:12px;margin:0 0 1rem;padding:1rem}.mjc-dtc__result-summary h4{margin:.1rem 0 .45rem}.mjc-dtc__summary-stat{align-items:center;background:#fff;border:1px solid #dce7df;border-radius:10px;display:flex;flex-wrap:wrap;gap:.5rem 1rem;justify-content:space-between;margin:.75rem 0 0;padding:.75rem}.mjc-dtc__summary-stat strong{font-size:1.25rem}.mjc-dtc__summary-note{font-weight:700}.mjc-dtc__result-section{margin-top:1rem}.mjc-dtc__table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.mjc-dtc__results-table{border-collapse:collapse;margin:1rem 0;min-width:620px;width:100%}.mjc-dtc__results-table caption{font-weight:800;margin-bottom:.5rem;text-align:left}.mjc-dtc__results-table td,.mjc-dtc__results-table th{border:1px solid #d6d6d6;padding:.6rem;text-align:center;vertical-align:top}.mjc-dtc__results-table th{background:#f4f7f4}.mjc-dtc__results-table th[scope=row]{text-align:left}.mjc-dtc__series-key{background:#eef7ee;border-radius:999px;display:inline-block;font-weight:800;margin-right:.35rem;padding:.1rem .4rem}.mjc-dtc__graph-placeholder{background:#f7f7f7;border:1px dashed #bdbdbd;color:#555}.mjc-dtc__graph-note{font-weight:700;margin:1rem 0 .5rem}.mjc-dtc__graph{background:#fff;border:1px solid #ccd8cf;border-radius:12px;margin-top:1rem;overflow-x:auto;padding:1rem;-webkit-overflow-scrolling:touch}.mjc-dtc__graph-svg{display:block;height:auto;min-width:640px;width:100%}.mjc-dtc__graph-axis{fill:none;stroke:#445047;stroke-width:1.3}.mjc-dtc__graph-grid{stroke:#e5ebe6;stroke-width:1}.mjc-dtc__graph-line{stroke-linecap:round;stroke-linejoin:round}.mjc-dtc__graph-point{stroke:#fff;stroke-width:1.5}.mjc-dtc__graph-label{fill:#28332c;font-size:13px}.mjc-dtc__graph-label--axis{font-weight:800}.mjc-dtc__graph-label--legend{font-size:12px;font-weight:700}.mjc-dtc__graph-label--tick{fill:#526157;font-size:12px}.mjc-dtc__graph--rendered .mjc-dtc__graph-fallback{display:none}.mjc-dtc__graph--failed{border-style:dashed}.mjc-dtc__graph-fallback{color:#526157;margin:0}@media (max-width:700px){.mjc-dtc{border-radius:10px;padding:.85rem}.mjc-dtc__section{padding:.85rem}.mjc-dtc__grid,.mjc-dtc__check-grid{grid-template-columns:1fr}.mjc-dtc__summary-stat{align-items:flex-start;display:block}.mjc-dtc__graph{padding:.75rem}.mjc-dtc__graph-svg{min-width:560px}.mjc-dtc__results-table{font-size:.92rem;min-width:560px}.mjc-dtc__results-table td,.mjc-dtc__results-table th{padding:.45rem}.mjc-dtc__submit,.mjc-dtc button[type=submit]{width:100%}}@media (max-width:420px){.mjc-dtc{margin-left:-.25rem;margin-right:-.25rem}.mjc-dtc__intro,.mjc-dtc__notice,.mjc-dtc__error,.mjc-dtc__section,.mjc-dtc__optional-card,.mjc-dtc__result-summary{border-radius:8px}.mjc-dtc__graph-svg{min-width:520px}}

/* v0.4.0-alpha.2 usability corrections */
.mjc-dtc__field-pair {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(7rem, 0.45fr);
    gap: 0.75rem;
    align-items: end;
    grid-column: span 2;
}

.mjc-dtc__field-pair .mjc-dtc__field {
    margin: 0;
}

.mjc-dtc__field--unit select {
    min-width: 7rem;
}

.mjc-dtc__optional-toggle {
    padding: 0;
    overflow: hidden;
}

.mjc-dtc__optional-toggle > summary {
    cursor: pointer;
    list-style-position: inside;
    padding: 0.85rem 1rem;
    font-weight: 700;
    color: #163b2f;
    background: #f3f8f5;
    border-radius: 0.85rem;
}

.mjc-dtc__optional-toggle[open] > summary {
    border-bottom: 1px solid rgba(22, 59, 47, 0.14);
    border-radius: 0.85rem 0.85rem 0 0;
}

.mjc-dtc__optional-toggle > h4,
.mjc-dtc__optional-toggle > p,
.mjc-dtc__optional-toggle > label,
.mjc-dtc__optional-toggle > .mjc-dtc__field,
.mjc-dtc__optional-toggle > .mjc-dtc__check-grid {
    margin-left: 1rem;
    margin-right: 1rem;
}

.mjc-dtc__summary-note {
    margin-top: 0.35rem;
    color: #40534a;
    font-size: 0.94rem;
}

#mjc-dtc-results:focus {
    outline: 3px solid rgba(34, 113, 177, 0.35);
    outline-offset: 0.25rem;
}

@media (max-width: 640px) {
    .mjc-dtc__field-pair {
        grid-template-columns: 1fr;
        grid-column: span 1;
    }

    .mjc-dtc__field--unit select {
        min-width: 100%;
    }
}

/* v0.4.0-alpha.3 consolidated optional contact polish */
.mjc-dtc__contact-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    gap: 0.75rem;
    align-items: end;
    margin: 0.85rem 1rem;
}

.mjc-dtc__contact-row .mjc-dtc__field {
    margin: 0;
}

.mjc-dtc__contact-or {
    align-self: center;
    color: #52645b;
    font-weight: 700;
    padding-bottom: 0.55rem;
    white-space: nowrap;
}

.mjc-dtc__contact-preferences {
    border: 1px solid rgba(22, 59, 47, 0.14);
    border-radius: 0.75rem;
    margin: 1rem;
    padding: 0.85rem;
}

.mjc-dtc__check-grid--shared {
    margin-top: 0.65rem;
}

@media (max-width: 640px) {
    .mjc-dtc__contact-row {
        grid-template-columns: 1fr;
    }

    .mjc-dtc__contact-or {
        padding-bottom: 0;
        text-align: center;
    }
}

/* v0.4.0-alpha.4 final Optional Updates contact layout polish */
.mjc-dtc__optional-toggle--contact > h4,
.mjc-dtc__optional-toggle--contact > p {
    max-width: 58rem;
}

.mjc-dtc__contact-row {
    grid-template-columns: minmax(15rem, 1fr) minmax(3.5rem, auto) minmax(15rem, 1fr);
    column-gap: 1rem;
    row-gap: 0.75rem;
    align-items: end;
}

.mjc-dtc__contact-row .mjc-dtc__field {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    min-width: 0;
}

.mjc-dtc__contact-row input[type="email"],
.mjc-dtc__contact-row input[type="tel"] {
    width: 100%;
    min-height: 2.75rem;
}

.mjc-dtc__contact-or {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2.75rem;
    padding: 0 0.25rem;
    margin-bottom: 0;
    color: #3f554a;
    font-size: 0.92rem;
}

.mjc-dtc__contact-preferences {
    margin-top: 1.1rem;
    padding: 1rem;
}

.mjc-dtc__contact-preferences legend {
    padding: 0 0.35rem;
    font-weight: 700;
}

.mjc-dtc__check-grid--shared {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.6rem 1rem;
    align-items: start;
}

.mjc-dtc__check-grid--shared .mjc-dtc__check {
    align-items: flex-start;
    line-height: 1.35;
    padding: 0.2rem 0;
}

.mjc-dtc__check-grid--shared input[type="checkbox"] {
    margin-top: 0.2rem;
    flex: 0 0 auto;
}

@media (max-width: 760px) {
    .mjc-dtc__check-grid--shared {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .mjc-dtc__contact-row {
        grid-template-columns: 1fr;
        margin-left: 0.75rem;
        margin-right: 0.75rem;
    }

    .mjc-dtc__contact-or {
        min-height: auto;
        padding: 0.1rem 0;
    }

    .mjc-dtc__contact-preferences {
        margin-left: 0.75rem;
        margin-right: 0.75rem;
    }
}

/* v0.4.0-alpha.5 simple Optional Updates contact field layout */
.mjc-dtc__optional-toggle--contact .mjc-dtc__contact-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 0.85rem;
    align-items: stretch;
    max-width: 42rem;
}

.mjc-dtc__optional-toggle--contact .mjc-dtc__contact-row .mjc-dtc__field {
    display: flex;
    flex-direction: column;
    margin: 0;
    width: 100%;
}

.mjc-dtc__optional-toggle--contact .mjc-dtc__contact-row input[type="email"],
.mjc-dtc__optional-toggle--contact .mjc-dtc__contact-row input[type="tel"] {
    width: 100%;
    min-height: 2.75rem;
}

.mjc-dtc__optional-toggle--contact .mjc-dtc__contact-or {
    display: none;
}


.mjc-dtc__form--loading .mjc-dtc__submit {
    opacity: 0.7;
    cursor: wait;
}

.mjc-dtc__graph--failed::before {
    content: '';
    display: block;
}

.mjc-dtc__result-summary--candidate{border-color:#7ebf8e;background:linear-gradient(135deg,#eefaf1,#fff)}.mjc-dtc__candidate-meta{display:grid;gap:.35rem;margin:.75rem 0}.mjc-dtc__candidate-meta p{margin:0}.mjc-dtc-v10-model-selector{background:#f7fbf8;border:1px solid #cfe6d4;border-radius:10px;margin:0 0 1rem;padding:.85rem}.mjc-dtc__results-table--candidate th,.mjc-dtc__results-table--candidate-probability th{background:#eef7ee}

/* v10.14 UX / copy polish */
.mjc-dtc__intro strong {
    display: block;
    font-size: clamp(1.35rem, 2.6vw, 2rem);
    line-height: 1.15;
    margin-bottom: 0.35rem;
}

.mjc-dtc__section-note,
.mjc-dtc__help {
    max-width: 58rem;
}

.mjc-dtc-v10-model-selector label {
    font-size: 1.02rem;
}

.mjc-dtc-v10-model-selector .mjc-dtc-help,
.mjc-dtc-v10-model-selector .mjc-dtc__help {
    color: #40534a;
    display: block;
    margin-top: 0.4rem;
}

.mjc-dtc__graph-note {
    background: #f7fbf8;
    border-left: 4px solid #7ebf8e;
    border-radius: 0.45rem;
    padding: 0.55rem 0.75rem;
}

.mjc-dtc__table-wrap {
    border-radius: 0.65rem;
}

.mjc-dtc__results-table caption {
    color: #24352b;
}

@media (max-width: 700px) {
    .mjc-dtc input,
    .mjc-dtc select,
    .mjc-dtc__submit,
    .mjc-dtc button[type=submit] {
        min-height: 48px;
    }

    .mjc-dtc__graph-label--legend {
        font-size: 11px;
    }
}
