:root{
    /*
     * DentaCalc brand palette.
     * Existing MedicalC selectors and class names remain unchanged.
     */
    --vc-primary:#1769AA;
    --vc-primary-dark:#0B2D4D;
    --vc-primary-light:#EAF5FC;
    --vc-border:#C6DCEB;
    --vc-text:#0B2D4D;
    --vc-muted:#66756b;
}

.medicalc{
    max-width:980px!important;
    margin:60px auto;
    padding:20px;
    font-family:Inter,Segoe UI,Arial,sans-serif;
}

.medicalc .mc-card{
    background:#fff;
    border-radius:18px;
    box-shadow:0 15px 35px rgba(15,35,67,.12);
    padding:40px;
    margin-bottom:30px;
    border:1px solid #e6edf5;
}

.medicalc .mc-card-header{
    display:flex!important;
    justify-content:space-between!important;
    align-items:flex-start!important;
    gap:24px!important;
    margin-bottom:28px!important;
}

.medicalc .mc-card-logo{
    width:140px!important;
    max-width:140px!important;
    height:auto!important;
    display:block!important;
    object-fit:contain!important;
    flex-shrink:0!important;
}

.medicalc .mc-card-title{
    font-size:28px;
    font-weight:700;
    color:#0F2343;
}

.medicalc .mc-card-meta{
    font-size:13px;
    color:#7b8794;
    margin-top:4px;
}

.medicalc .mc-subtitle{
    color:#40516b;
    font-size:17px;
    line-height:1.6;
    margin-bottom:28px;
}

.medicalc .mc-form-grid{
    display:grid;
    grid-template-columns:repeat(12,1fr);
    gap:24px;
}

.medicalc .mc-field-col{
    grid-column:span 12;
}

.medicalc .mc-field-half{
    grid-column:span 6;
}

.medicalc .mc-field-third{
    grid-column:span 4;
}

.medicalc .mc-field-quarter{
    grid-column:span 3;
}

.medicalc .mc-field{
    margin-bottom:24px;
}

.medicalc .mc-field label{
    display:block;
    font-weight:600;
    margin-bottom:8px;
    color:#0F2343;
}

.medicalc .mc-field input,
.medicalc .mc-field select{
    width:100%;
    padding:14px;
    border:1px solid #D7DEE8;
    border-radius:12px;
    font-size:16px;
    color:#0F2343;
    background:#fff;
}

.medicalc .mc-field select{
    padding-right:44px;
    appearance:none;
    -webkit-appearance:none;
    -moz-appearance:none;
    background-image:
        linear-gradient(45deg,transparent 50%,#40516b 50%),
        linear-gradient(135deg,#40516b 50%,transparent 50%);
    background-position:
        calc(100% - 22px) 50%,
        calc(100% - 16px) 50%;
    background-size:6px 6px,6px 6px;
    background-repeat:no-repeat;
}

.medicalc .mc-field input:focus,
.medicalc .mc-field select:focus{
    outline:none;
    border-color:var(--vc-primary);
    box-shadow:0 0 0 3px rgba(47,125,69,.14);
}

.medicalc .mc-field-help{
    margin-top:8px;
    font-size:13px;
    color:#6b7688;
    line-height:1.5;
}

.medicalc .mc-button{
    background:var(--vc-primary);
    color:#fff;
    border:0;
    padding:16px 30px;
    border-radius:12px;
    cursor:pointer;
    font-size:16px;
    font-weight:600;
}

.medicalc .mc-result-card{
    text-align:center;
}

.medicalc .mc-result-header{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:24px;
    margin-bottom:24px;
}

.medicalc .mc-result-logo{
    max-width:140px;
    height:auto;
    display:block;
    object-fit:contain;
}

.medicalc .mc-result-generated{
    margin-top:6px;
    font-size:13px;
    color:#6b7688;
}

.medicalc .mc-result-label{
    text-transform:uppercase;
    letter-spacing:.08em;
    font-size:13px;
    font-weight:700;
    color:var(--vc-primary);
}

.medicalc .mc-result{
    font-size:64px;
    font-weight:700;
    color:#0F2343;
    margin:20px 0;
}

.medicalc .mc-category{
    font-size:22px;
    color:#1FAE66;
    font-weight:600;
}

.medicalc .mc-interpretation{
    font-size:17px;
    line-height:1.6;
    color:#40516b;
    margin-top:16px;
}

.medicalc .mc-disclaimer{
    margin-top:24px;
    padding:16px;
    border-radius:12px;
    background:#f6f8fb;
    color:#5b6678;
    font-size:14px;
}

.medicalc .mc-range{
    position:relative;
    height:16px;
    background:linear-gradient(
        90deg,
        #00B8A9 0%,
        #19C463 25%,
        #D7D629 50%,
        #FF9F1C 75%,
        #F23838 100%
    );
    border:2px solid #ffffff;
    border-radius:999px;
    overflow:visible;
    margin:28px 0 12px;
    box-shadow:0 4px 14px rgba(15,35,67,.18);
}

.medicalc .mc-range-fill{
    height:100%;
    border-radius:999px;
    background:rgba(255,255,255,.10);
}


.medicalc .mc-range-marker{
    position:absolute;
    top:50%;
    width:24px;
    height:24px;
    transform:translate(-50%,-50%);
    border:4px solid #ffffff;
    border-radius:50%;
    background:#0F2343;
    box-shadow:
        0 0 0 2px rgba(15,35,67,.12),
        0 4px 12px rgba(15,35,67,.34);
    z-index:3;
}

.medicalc .mc-range-marker::after{
    content:"";
    position:absolute;
    left:50%;
    top:-12px;
    width:0;
    height:0;
    transform:translateX(-50%);
    border-left:5px solid transparent;
    border-right:5px solid transparent;
    border-top:7px solid #0F2343;
}

.medicalc .mc-range-labels{
    display:flex;
    justify-content:space-between;
    font-size:12px;
    color:#6b7688;
    margin-bottom:20px;
}

.medicalc .mc-segmented-control{
    display:flex;
    border:1px solid #d7dee8;
    border-radius:14px;
    overflow:hidden;
    background:#f6f8fb;
    max-width:360px;
}

.medicalc .mc-segment{
    flex:1;
    margin:0;
    cursor:pointer;
}

.medicalc .mc-segment input{
    position:absolute;
    opacity:0;
    pointer-events:none;
}

.medicalc .mc-segment span{
    display:block;
    text-align:center;
    padding:14px 22px;
    font-weight:600;
    color:#40516b;
    transition:.2s ease;
}

.medicalc .mc-segment input:checked + span{
    background:var(--vc-primary);
    color:#fff;
    box-shadow:0 8px 20px rgba(47,125,69,.25);
}

.medicalc .mc-checkbox-group{
    display:grid;
    gap:12px;
}

.medicalc .mc-checkbox{
    display:flex;
    align-items:center;
    gap:12px;
    padding:14px 16px;
    border:1px solid #D7DEE8;
    border-radius:12px;
    background:#fff;
    cursor:pointer;
    transition:.2s ease;
}

.medicalc .mc-checkbox input{
    width:18px;
    height:18px;
    accent-color:var(--vc-primary);
}

.medicalc .mc-checkbox span{
    font-weight:600;
    color:#0F2343;
}

.medicalc .mc-checkbox:hover{
    border-color:var(--vc-primary);
    box-shadow:0 8px 20px rgba(15,35,67,.08);
}

.medicalc .mc-checkbox small{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    margin-left:8px;
    padding:2px 7px;
    border-radius:999px;
    background:var(--vc-primary-light);
    color:var(--vc-primary-dark);
    font-size:12px;
    font-weight:700;
}

.medicalc .mc-errors{
    background:#fff3f3;
    border:1px solid #f2b8b8;
    border-radius:14px;
    padding:18px 20px;
    margin-bottom:24px;
    color:#8a1f1f;
}

.medicalc .mc-errors strong{
    display:block;
    margin-bottom:8px;
}

.medicalc .mc-errors ul{
    margin:0;
    padding-left:20px;
}

/* ==================================================
   CLINICAL DISCLAIMER
================================================== */

.medicalc-clinical-notice {
    margin-top: 22px;
    padding: 16px 18px;
    border-left: 4px solid var(--vc-primary);
    background: #f8fbfe;
    border-radius: 8px;
    font-size: 14px;
    line-height: 1.55;
}

.medicalc-clinical-notice strong {
    display: block;
    margin-bottom: 8px;
    color: #0f172a;
    font-size: 15px;
}

.medicalc-clinical-notice p {
    margin: 0;
    color: #475569;
}

.medicalc-clinical-notice__link {
    display: inline-block;
    margin-top: 10px;
    font-weight: 600;
    color: var(--vc-primary);
    text-decoration: none;
}

.medicalc-clinical-notice__link:hover {
    text-decoration: underline;
}

/* ==================================================
   CALCULATOR ACTIONS
================================================== */

/*
 * Desktop:
 * Calculate and Clear sit side by side.
 * Favourite sits on the row below.
 *
 * Mobile:
 * Calculate, Clear and Favourite stack vertically.
 */
.mc-calculator-actions{
    display:flex;
    flex-direction:column;
    gap:16px;
    margin-top:24px;
}

.mc-calculator-actions__buttons{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:12px;
}

.mc-calculator-actions .mc-button{
    margin:0;
}

.mc-calculator-actions__favourite,
.mc-calculator-actions .medicalc-favourite-action{
    margin:0;
}

.mc-calculator-actions .medicalc-favourite-button{
    min-height:44px;
}

@media(max-width:767px){
    .mc-calculator-actions{
        gap:16px;
        margin-top:28px;
        width:100%;
    }

    .mc-calculator-actions__buttons{
        flex-direction:column;
        align-items:stretch;
        gap:16px;
        width:100%;
    }

    .mc-calculator-actions__buttons .mc-button,
    .mc-calculator-actions__favourite,
    .mc-calculator-actions .medicalc-favourite-action,
    .mc-calculator-actions .medicalc-favourite-button{
        width:100%;
    }

    .mc-calculator-actions .medicalc-favourite-button{
        justify-content:center;
    }
}

@media(max-width:768px){
    .medicalc{max-width:100%!important;padding:14px!important}
    .medicalc .mc-card{padding:26px}
    .medicalc .mc-card-header{flex-direction:row!important}
    .medicalc .mc-card-logo{width:105px!important;max-width:105px!important}
    .medicalc .mc-field-half,
    .medicalc .mc-field-third,
    .medicalc .mc-field-quarter{grid-column:span 12}
    .medicalc .mc-result{font-size:48px}
}

.medicalc .mc-radio-group{display:grid;gap:12px}
.medicalc .mc-radio{display:flex;align-items:center;gap:12px;padding:14px 16px;border:1px solid #D7DEE8;border-radius:12px;background:#fff;cursor:pointer;transition:.2s ease}
.medicalc .mc-radio input{width:18px;height:18px;accent-color:var(--vc-primary)}
.medicalc .mc-radio span{font-weight:600;color:#0F2343}
.medicalc .mc-radio:hover{border-color:var(--vc-primary);box-shadow:0 8px 20px rgba(15,35,67,.08)}
.medicalc .mc-radio small{display:inline-flex;align-items:center;justify-content:center;margin-left:8px;padding:2px 7px;border-radius:999px;background:var(--vc-primary-light);color:var(--vc-primary-dark);font-size:12px;font-weight:700}

.medicalc .mc-references{margin-top:24px;padding:18px;border-radius:14px;background:#f8fbfd;border:1px solid #e6edf5;text-align:left}
.medicalc .mc-references-title{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--vc-primary);margin-bottom:10px}
.medicalc .mc-references ul{margin:0;padding-left:20px}
.medicalc .mc-references li{color:#40516b;font-size:14px;line-height:1.5;margin-bottom:6px}

.medicalc .mc-input-with-unit{
    display:grid;
    grid-template-columns:minmax(0, 1fr) 84px;
    gap:6px;
    width:100%;
}

.medicalc .mc-input-with-unit input,
.medicalc .mc-unit-standard input,
.medicalc .mc-unit-ftin input,
.medicalc .mc-unit-stlb input{
    border:1px solid #D7DEE8 !important;
    border-radius:12px !important;
    background:#ffffff !important;
    padding:14px !important;
    font-size:16px !important;
    color:#0F2343 !important;
    box-shadow:none !important;
}

.medicalc .mc-input-with-unit input:focus,
.medicalc .mc-unit-standard input:focus,
.medicalc .mc-unit-ftin input:focus,
.medicalc .mc-unit-stlb input:focus{
    outline:none !important;
    border-color:var(--vc-primary) !important;
    box-shadow:0 0 0 3px rgba(47,125,69,.14) !important;
}

.medicalc .mc-input-with-unit input{
    min-width:0;
    width:100%;
    border-radius:12px!important;
}

.medicalc .mc-input-with-unit .mc-unit-select{
    width:84px!important;
    min-width:84px!important;
    max-width:84px!important;
    padding:14px 26px 14px 10px!important;
    border-radius:12px!important;
    border:1px solid #D7DEE8;
    background-color:#f8fbfd;
    font-weight:600;
}
.medicalc .mc-unit-standard{
    min-width:0;
}

.medicalc .mc-unit-ftin,
.medicalc .mc-unit-stlb{
    min-width:0;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:6px;
}
@media(max-width:768px){
    .medicalc .mc-result-toolbar{
        display:grid;
        grid-template-columns:1fr 1fr;
        gap:10px;
    }

    .medicalc .mc-result-toolbar button{
        width:100%;
        justify-content:center;
        text-align:center;
    }
}
.medicalc .mc-unit-standard,
.medicalc .mc-unit-ftin,
.medicalc .mc-unit-stlb{
    opacity:1;
    transform:translateY(0);
    transition:
        opacity .18s ease,
        transform .18s ease;
}

.medicalc .mc-unit-group-hidden{
    opacity:0;
    transform:translateY(4px);
    pointer-events:none;
}
.medicalc .mc-field-error{
    margin-top:8px;
    font-size:13px;
    line-height:1.4;
    color:#b42318;
    font-weight:600;
}

.medicalc .mc-field:has(.mc-field-error) input,
.medicalc .mc-field:has(.mc-field-error) select{
    border-color:#d92d20!important;
}

.medicalc .mc-field:has(.mc-field-error) input:focus,
.medicalc .mc-field:has(.mc-field-error) select:focus{
    box-shadow:0 0 0 3px rgba(217,45,32,.12)!important;
}
.medicalc .mc-result-card{
    animation:mcResultEnter .28s ease-out;
}

/* ==================================================
   DENTACALC ADVERTISING
================================================== */

.medicalc-ad-placement {
    margin: 20px auto 28px;
    text-align: center;
}

.medicalc-ad-placement__label {
    display: inline-block;
    margin-bottom: 8px;
    padding: 4px 10px;
    border-radius: 999px;
    background: #f3f4f6;
    color: #64748b;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.medicalc-ad-slot {
    display: flex;
    justify-content: center;
    align-items: center;
}

.medicalc-ad-slot--preview {

    min-height: 90px;

    border: 2px dashed #cbd5e1;

    border-radius: 10px;

    background: #fafafa;

    padding: 24px;
}

.medicalc-ad-slot__preview-content {

    display: flex;

    flex-direction: column;

    gap: 8px;

    align-items: center;

    color: #64748b;

    font-size: 14px;
}

.medicalc-ad-slot__preview-content strong {

    color: var(--vc-primary);

    font-size: 16px;
}

@media (max-width:768px){

    .medicalc-ad-slot--preview{

        min-height:70px;

        padding:18px;

    }

}

@keyframes mcResultEnter{
    from{
        opacity:0;
        transform:translateY(12px);
    }

    to{
        opacity:1;
        transform:translateY(0);
    }
}
.medicalc .mc-field > label{
    display:flex;
    align-items:center;
    gap:8px;
    font-weight:600;
}

.medicalc .mc-tooltip{
    position:relative;
    display:inline-flex;
    align-items:center;
    justify-content:center;

    width:18px;
    height:18px;

    border-radius:50%;
    background:var(--vc-primary);
    color:#ffffff;

    font-size:11px;
    font-weight:700;
    line-height:1;

    cursor:help;
    user-select:none;

    transition:.18s ease;
}

.medicalc .mc-tooltip:hover{
    transform:translateY(-1px);
    box-shadow:0 6px 16px rgba(47,125,69,.35);
}
.medicalc .mc-field-label-row{
    display:flex;
    align-items:center;
    gap:8px;
    margin-bottom:8px;
}

.medicalc .mc-field-label-row > label{
    margin:0;
}

.medicalc .mc-popover-wrap{
    position:relative;
    display:inline-flex;
}

.medicalc .mc-info-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:18px;
    height:18px;
    padding:0;
    border:0;
    border-radius:50%;
    background:var(--vc-primary);
    color:#ffffff;
    font-size:11px;
    font-weight:700;
    line-height:1;
    cursor:pointer;
    transition:
        transform .18s ease,
        box-shadow .18s ease,
        background .18s ease;
}

.medicalc .mc-info-button:hover,
.medicalc .mc-info-button:focus{
    outline:none;
    background:var(--vc-primary-dark);
    transform:translateY(-1px);
    box-shadow:0 6px 16px rgba(47,125,69,.28);
}

.medicalc .mc-popover{
    position:absolute;
    left:50%;
    top:calc(100% + 10px);
    bottom:auto;
    transform:translate(-50%, -6px);
    z-index:30;
    width:260px;
    padding:16px;
    border:1px solid #dfe7ef;
    border-radius:14px;
    background:#ffffff;
    color:#0F2343;
    box-shadow:0 16px 36px rgba(15,35,67,.18);
    opacity:0;
    visibility:hidden;
    transition:
        opacity .18s ease,
        transform .18s ease,
        visibility .18s ease;
}

.medicalc .mc-popover.is-open{
    opacity:1;
    visibility:visible;
    transform:translate(-50%, 0);
}

.medicalc .mc-popover-wrap{
    position:relative;
    z-index:10000;
}

.medicalc .mc-popover{
    z-index:10001;
}

.medicalc .mc-popover-title,
.medicalc .mc-popover-body,
.medicalc .mc-popover-subtitle,
.medicalc .mc-popover-units{
    display:block;
}

.medicalc .mc-popover-title{
    margin-bottom:8px;
    font-size:15px;
    font-weight:700;
}

.medicalc .mc-popover-body{
    font-size:13px;
    line-height:1.5;
    color:#40516b;
}

.medicalc .mc-popover-subtitle{
    margin-top:12px;
    margin-bottom:7px;
    font-size:11px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.06em;
    color:#6b7688;
}

.medicalc .mc-popover-units{
    display:flex;
    flex-wrap:wrap;
    gap:6px;
}

.medicalc .mc-popover-units > span{
    padding:4px 8px;
    border-radius:999px;
    background:var(--vc-primary-light);
    color:var(--vc-primary-dark);
    font-size:12px;
    font-weight:700;
}

@media(max-width:768px){

    .medicalc .mc-popover-wrap{
        position:static;
    }

    .medicalc .mc-popover{
        position:fixed;

        top:auto;
        left:16px;
        right:16px;
        bottom:24px;

        width:auto;
        max-width:none;
        max-height:70vh;

        overflow-y:auto;
        -webkit-overflow-scrolling:touch;

        border-radius:16px;

        transform:translateY(12px);

        opacity:0;
        visibility:hidden;
        pointer-events:none;

        z-index:100001;
    }

    .medicalc .mc-popover.is-open{
        transform:translateY(0);
        opacity:1;
        visibility:visible;
        pointer-events:auto;
    }
}
.mc-learn-more-wrapper {
    margin-top: 18px;
    text-align: center;
}

.mc-learn-more {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
}

/*--------------------------------------------------------------
# Calculator / Result Card Header
--------------------------------------------------------------*/

.mc-card-header{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
    margin-bottom:20px;
    padding-bottom:18px;
    border-bottom:1px solid #e8edf3;
}

.mc-card-header__content{
    flex:1;
    min-width:0;
}

.mc-card-title{
    font-size:30px;
    font-weight:700;
    line-height:1.2;
    color:#0f172a;
}

.mc-card-meta{
    margin-top:6px;
    color:#64748b;
    font-size:15px;
}

.mc-card-logo-wrap{
    flex:0 0 auto;
}

.mc-card-logo{
    display:block;
    width:auto;
    height:70px;
    max-width:170px;
    object-fit:contain;
}

@media (max-width:768px){

    .mc-card-header{
        flex-direction:column;
        align-items:flex-start;
    }

    .mc-card-logo{
        height:56px;
        max-width:140px;
    }

    .mc-card-title{
        font-size:26px;
    }
}

.medicalc-tool-browser__search {
    position: relative;
}

.medicalc-tool-browser__search svg,
.medicalc-tool-browser__search i {
    position: absolute;
    left: 14px;
    top: 50%;
    transform: translateY(-50%);
    pointer-events: none;
}

.medicalc-tool-browser__search input {
    padding-left: 42px;
}

/* =========================================================
   DENTACALC RESULT ENHANCEMENTS
   ========================================================= */

/*
 * Result value and optional unit
 */

.mc-result-value-wrap {
    display: flex;
    align-items: baseline;
    justify-content: center;
    gap: 8px;
    margin: 24px 0 12px;
}

.mc-result-value-wrap .mc-result {
    margin: 0;
}

.mc-result-unit {
    color: #52606d;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.2;
}


/*
 * Shared result sections
 */

.mc-result-section {
    margin-top: 22px;
    padding: 18px;
    border: 1px solid #dfe5eb;
    border-radius: 12px;
    background: #ffffff;
}

.mc-result-section-title {
    margin: 0 0 8px;
    color: #152536;
    font-size: 0.95rem;
    font-weight: 700;
    line-height: 1.35;
}

.mc-result-section p {
    margin: 0;
    color: #425466;
    font-size: 0.95rem;
    line-height: 1.65;
}


/*
 * Clinical interpretation
 */

.mc-result-interpretation {
    background: #f8fafc;
}

.mc-result-interpretation .mc-interpretation {
    margin: 0;
}


/*
 * Score component breakdown
 */

.mc-component-list {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.mc-component-item {
    min-width: 0;
}

.mc-component-item-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px;
    margin-bottom: 7px;
}

.mc-component-label {
    min-width: 0;
    color: #263746;
    font-size: 0.9rem;
    font-weight: 600;
    line-height: 1.4;
}

.mc-component-value {
    flex: 0 0 auto;
    min-width: 32px;
    padding: 2px 8px;
    border-radius: 999px;
    background: var(--vc-primary-light);
    color: var(--vc-primary);
    font-size: 0.82rem;
    font-weight: 700;
    text-align: center;
}

.mc-component-bar {
    width: 100%;
    height: 8px;
    overflow: hidden;
    border-radius: 999px;
    background: #e8edf2;
}

.mc-component-bar-fill {
    height: 100%;
    min-width: 4px;
    border-radius: inherit;
    background: linear-gradient(
        90deg,
        #4a9b62 0%,
        var(--vc-primary) 100%
    );
}


/*
 * Clinical pearl
 */

.mc-clinical-pearl {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    border-color: var(--vc-border);
    background: #f3faf5;
}

.mc-clinical-pearl-icon {
    display: flex;
    flex: 0 0 30px;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: var(--vc-primary);
    color: #ffffff;
    font-family: Georgia, serif;
    font-size: 1rem;
    font-weight: 700;
    line-height: 1;
}

.mc-clinical-pearl .mc-result-section-title {
    color: var(--vc-primary-dark);
}


/*
 * Learn More card
 */

.mc-learn-more-card {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    color: inherit;
    text-decoration: none;
    transition:
        border-color 160ms ease,
        box-shadow 160ms ease,
        transform 160ms ease;
}

.mc-learn-more-card:hover,
.mc-learn-more-card:focus {
    border-color: #8fc49e;
    box-shadow: 0 8px 24px rgba(47, 125, 69, 0.12);
    color: inherit;
    text-decoration: none;
    transform: translateY(-1px);
}

.mc-learn-more-card:focus-visible {
    outline: 3px solid rgba(47, 125, 69, 0.28);
    outline-offset: 3px;
}

.mc-learn-more-card .mc-result-section-title {
    margin-bottom: 5px;
    color: var(--vc-primary);
}

.mc-learn-more-arrow {
    display: flex;
    flex: 0 0 36px;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: var(--vc-primary-light);
    color: var(--vc-primary);
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1;
}


/*
 * Related calculators
 */

.mc-related-tools-list {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
}

.mc-related-tool {
    display: inline-flex;
    align-items: center;
    min-height: 38px;
    padding: 8px 13px;
    border: 1px solid #cbd6df;
    border-radius: 999px;
    background: #ffffff;
    color: var(--vc-primary);
    font-size: 0.86rem;
    font-weight: 650;
    line-height: 1.3;
    text-decoration: none;
    transition:
        background-color 150ms ease,
        border-color 150ms ease,
        color 150ms ease;
}

.mc-related-tool:hover,
.mc-related-tool:focus {
    border-color: var(--vc-primary);
    background: var(--vc-primary);
    color: #ffffff;
    text-decoration: none;
}

.mc-related-tool:focus-visible {
    outline: 3px solid rgba(47, 125, 69, 0.25);
    outline-offset: 2px;
}


/*
 * Result toolbar refinements
 */

.mc-result-toolbar {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.mc-result-toolbar .button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-height: 40px;
    white-space: nowrap;
}


/*
 * Tablet and mobile
 */

@media screen and (max-width: 782px) {

    .mc-result-section {
        margin-top: 18px;
        padding: 16px;
        border-radius: 10px;
    }

    .mc-result-value-wrap {
        margin-top: 20px;
    }

    .mc-result-toolbar {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .mc-result-toolbar .button {
        width: 100%;
        min-width: 0;
        margin: 0;
        padding-right: 10px;
        padding-left: 10px;
        white-space: normal;
        line-height: 1.3;
    }

    .mc-related-tools-list {
        flex-direction: column;
    }

    .mc-related-tool {
        width: 100%;
        border-radius: 8px;
    }

}


@media screen and (max-width: 480px) {

    .mc-result-value-wrap {
        flex-wrap: wrap;
        gap: 5px;
    }

    .mc-result-unit {
        width: 100%;
        text-align: center;
    }

    .mc-result-toolbar {
        grid-template-columns: 1fr;
    }

    .mc-clinical-pearl {
        gap: 11px;
    }

    .mc-clinical-pearl-icon {
        flex-basis: 28px;
        width: 28px;
        height: 28px;
    }

    .mc-learn-more-card {
        align-items: flex-start;
    }

    .mc-learn-more-arrow {
        flex-basis: 32px;
        width: 32px;
        height: 32px;
    }

    .mc-component-item-header {
        gap: 8px;
    }

}


/*
 * Print report
 */

@media print {

    .mc-result-toolbar {
        display: none !important;
    }

    .mc-result-section {
        break-inside: avoid;
        box-shadow: none;
    }

    .mc-learn-more-card,
    .mc-related-tool {
        color: #000000 !important;
        text-decoration: none !important;
    }

    .mc-learn-more-arrow {
        display: none;
    }

}

/* ==========================================================
   PRINT STYLES
   ========================================================== */

@media print{
    header,
    footer,
    nav,
    aside,
    .site-header,
    .site-footer,
    .ct-header,
    .ct-footer,
    .mc-card:not(.mc-result-card),
    .mc-result-toolbar{display:none!important}

    body{background:#ffffff!important}

    .medicalc{max-width:100%!important;margin:0!important;padding:0!important}

    .medicalc .mc-result-card{border:none!important;box-shadow:none!important;margin:0!important;padding:0!important;page-break-inside:avoid}

    .medicalc .mc-result{font-size:48px!important}

    .medicalc .mc-result-logo{width:120px!important}

    .medicalc .mc-disclaimer,
    .medicalc .mc-references{background:none!important;border:1px solid #cccccc!important}
}

/* ==================================================
   DENTACALC RADIAL GAUGE
   The original .mc-range and .mc-range-fill spectrum
   above remain unchanged and continue to render.
================================================== */

.medicalc .mc-gauge{
    width:100%;
    max-width:520px;
    margin:30px auto 10px;
}

.medicalc .mc-gauge-visual{
    position:relative;
    width:100%;
    max-width:420px;
    aspect-ratio:2 / 1;
    margin:0 auto;
    overflow:visible;
    filter:drop-shadow(0 10px 18px rgba(15,35,67,.14));
}

.medicalc .mc-gauge-arc{
    position:absolute;
    left:50%;
    bottom:0;
    width:100%;
    aspect-ratio:2 / 1;
    transform:translateX(-50%);
    border-radius:420px 420px 0 0;
    background:conic-gradient(
        from 270deg at 50% 100%,
        #00B8A9 0deg 36deg,
        #19C463 36deg 72deg,
        #D7D629 72deg 108deg,
        #FF9F1C 108deg 144deg,
        #F23838 144deg 180deg,
        transparent 180deg 360deg
    );
}

.medicalc .mc-gauge-arc::after{
    content:"";
    position:absolute;
    left:50%;
    bottom:0;
    width:70%;
    aspect-ratio:2 / 1;
    transform:translateX(-50%);
    border-radius:330px 330px 0 0;
    background:#ffffff;
}

.medicalc .mc-gauge-needle{
    position:absolute;
    left:50%;
    bottom:0;
    width:42%;
    height:6px;
    transform-origin:0 50%;
    border-radius:999px;
    background:#0F2343;
    box-shadow:0 3px 10px rgba(15,35,67,.34);
    z-index:3;
}

.medicalc .mc-gauge-needle-tip{
    position:absolute;
    right:-8px;
    top:50%;
    width:16px;
    height:16px;
    transform:translateY(-50%);
    border:4px solid #ffffff;
    border-radius:50%;
    background:#0F2343;
    box-shadow:
        0 0 0 2px rgba(15,35,67,.12),
        0 3px 10px rgba(15,35,67,.34);
}

.medicalc .mc-gauge-hub{
    position:absolute;
    left:50%;
    bottom:0;
    width:24px;
    height:24px;
    transform:translate(-50%,50%);
    border:5px solid #ffffff;
    border-radius:50%;
    background:#0F2343;
    box-shadow:0 4px 14px rgba(15,35,67,.26);
    z-index:4;
}

@media(max-width:768px){
    .medicalc .mc-gauge-visual{
        max-width:320px;
    }
}

@media print{
    .medicalc .mc-gauge{
        break-inside:avoid;
    }
}
/* ==================================================
   RESULT CARD BORDER — REVISION 6
================================================== */

.medicalc .mc-result-card{
    border:1px solid var(--vc-primary);
    box-shadow:
        0 1px 0 rgba(47,125,69,.08),
        0 10px 28px rgba(15,35,67,.08);
}


/* Space between Favourite control and result card */
.medicalc .mc-calculator-actions__favourite {
    padding-bottom: 20px !important;
}

.medicalc .mc-result-card {
    margin-top: 0 !important;
}

/* ==================================================
   DENTACALC RESULT CARD V2
================================================== */

.medicalc .mc-result-calculator-name{
    margin-top:5px;
    color:#0F2343;
    font-size:18px;
    font-weight:700;
    line-height:1.3;
}

.medicalc .mc-result-inputs{
    text-align:left;
}

.medicalc .mc-result-input-list{
    margin:0;
}

.medicalc .mc-result-input-item{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:16px;
    padding:9px 0;
    border-bottom:1px solid #e8edf3;
}

.medicalc .mc-result-input-item:last-child{
    border-bottom:0;
}

.medicalc .mc-result-input-item dt,
.medicalc .mc-result-input-item dd{
    margin:0;
}

.medicalc .mc-result-input-item dt{
    color:#40516b;
    font-weight:600;
}

.medicalc .mc-result-input-item dd{
    color:#0F2343;
    font-weight:700;
    text-align:right;
}

.medicalc .mc-result-toolbar{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:10px;
    margin:24px 0 4px;
}

.medicalc .mc-result-action{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:100%;
    min-height:44px;
    margin:0;
    padding:11px 14px;
    border:0;
    border-radius:10px;
    background:var(--vc-primary);
    color:#fff;
    cursor:pointer;
    font-size:13px;
    font-weight:800;
    letter-spacing:.06em;
    line-height:1.2;
    text-align:center;
    text-transform:uppercase;
}

.medicalc .mc-result-action:hover,
.medicalc .mc-result-action:focus{
    background:var(--vc-primary-dark);
    color:#fff;
}

.mc-report-dialog[hidden]{
    display:none!important;
}

.mc-report-dialog{
    position:fixed;
    inset:0;
    z-index:1000000;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:20px;
}

.mc-report-dialog__backdrop{
    position:absolute;
    inset:0;
    background:rgba(15,35,67,.62);
}

.mc-report-dialog__panel{
    position:relative;
    z-index:1;
    width:min(100%,560px);
    max-height:calc(100vh - 40px);
    overflow-y:auto;
    padding:28px;
    border-radius:16px;
    background:#fff;
    box-shadow:0 24px 70px rgba(15,35,67,.30);
    text-align:left;
}

.mc-report-dialog__panel h2{
    margin:0 40px 8px 0;
    color:#0F2343;
}

.mc-report-dialog__panel>p{
    margin:0 0 22px;
    color:#52606d;
}

.mc-report-dialog__close{
    position:absolute;
    top:14px;
    right:14px;
    width:36px;
    height:36px;
    padding:0;
    border:0;
    border-radius:50%;
    background:#eef3f8;
    color:#0F2343;
    cursor:pointer;
    font-size:25px;
}

.mc-report-form fieldset{
    margin:0;
    padding:0;
    border:0;
}

.mc-report-form legend,
.mc-report-comments-label{
    color:#0F2343;
    font-weight:700;
}

.mc-report-option{
    display:flex;
    align-items:flex-start;
    gap:10px;
    margin:0 0 10px;
    color:#263746;
    cursor:pointer;
}

.mc-report-option input{
    width:18px;
    height:18px;
    margin-top:2px;
    accent-color:var(--vc-primary);
}

.mc-report-comments-label{
    display:block;
    margin:20px 0 8px;
}

.mc-report-form textarea{
    width:100%;
    min-height:120px;
    padding:12px;
    border:1px solid #D7DEE8;
    border-radius:10px;
    resize:vertical;
}

.mc-report-form__actions{
    display:flex;
    gap:12px;
    margin-top:18px;
}

.mc-report-form__actions .mc-result-action{
    width:auto;
    min-width:150px;
}

.mc-report-cancel{
    min-height:44px;
    padding:10px 18px;
    border:1px solid #cbd5df;
    border-radius:10px;
    background:#fff;
    color:#40516b;
    cursor:pointer;
    font-weight:700;
}

.mc-report-form__note{
    min-height:22px;
    margin:12px 0 0;
    color:var(--vc-primary-dark);
    font-size:13px;
    font-weight:600;
}

body.mc-report-dialog-open{
    overflow:hidden;
}

@media(max-width:768px){

    .medicalc{
        width:100% !important;
        max-width:none !important;
        margin:24px auto !important;
        padding:8px !important;
    }

    .medicalc > .mc-card{
        width:100%;
        padding:20px !important;
        box-sizing:border-box;
    }

    .medicalc .medicalc-calculator-result{
        margin:0;
    }

    .medicalc .mc-result-card{
        width:100%;
        max-width:100%;
        margin:0 auto;
        padding:18px !important;
        box-sizing:border-box;
    }

    .medicalc .mc-result-header{
        gap:12px;
    }

    .medicalc .mc-result-logo{
        width:auto !important;
        max-width:88px !important;
        max-height:44px !important;
        object-fit:contain !important;
        flex:0 0 auto;
    }

    .medicalc .mc-result-toolbar{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .medicalc .mc-result-input-item{
        grid-template-columns:minmax(0,1fr);
        gap:3px;
    }

    .medicalc .mc-result-input-item dd{
        text-align:left;
    }

    .mc-report-dialog{
        align-items:flex-end;
        padding:12px;
    }

    .mc-report-dialog__panel{
        width:100%;
        max-height:88vh;
        padding:22px 18px;
    }

}

@media(max-width:420px){
    .medicalc .mc-result-logo{
        max-width:76px!important;
        max-height:38px!important;
    }

    .medicalc .mc-result-action{
        padding-right:8px;
        padding-left:8px;
        font-size:12px;
    }

    .mc-report-form__actions{
        flex-direction:column;
    }

    .mc-report-form__actions .mc-result-action{
        width:100%;
    }
}

@media print{
    .mc-report-dialog,
    .mc-result-toolbar{
        display:none!important;
    }
}

/* ==================================================
   RESULT ACTION BUTTON COLOURS
================================================== */

.medicalc .mc-result-toolbar button,
.medicalc .mc-result-toolbar .mc-result-action,
.medicalc button.mc-print-result,
.medicalc button.mc-copy-result,
.medicalc button.mc-share-result,
.medicalc button.mc-report-result{
    background:var(--vc-primary) !important;
    border:1px solid var(--vc-primary) !important;
    color:#FFFFFF !important;
    box-shadow:none !important;
    font-weight:800;
    letter-spacing:.05em;
    text-transform:uppercase;
}

.medicalc .mc-result-toolbar button:hover,
.medicalc .mc-result-toolbar button:focus,
.medicalc .mc-result-toolbar .mc-result-action:hover,
.medicalc .mc-result-toolbar .mc-result-action:focus{
    background:var(--vc-primary-dark) !important;
    border-color:var(--vc-primary-dark) !important;
    color:#FFFFFF !important;
}

/* ==================================================
   DENTACALC RESULT CARD — FINAL UPGRADE OVERRIDES
================================================== */

/*
 * Maintain a clear gap below the calculator actions so the
 * Favourite control does not touch the result-card border.
 */
.medicalc .mc-calculator-actions{
    margin-bottom:26px;
}

.medicalc .mc-calculator-actions__favourite,
.medicalc .mc-calculator-actions .medicalc-favourite-action{
    display:block;
    margin-top:0 !important;
    margin-bottom:0 !important;
    padding-bottom:0 !important;
}

.medicalc .mc-calculator-actions__favourite .medicalc-favourite-button,
.medicalc .mc-calculator-actions .medicalc-favourite-action .medicalc-favourite-button{
    margin-bottom:0 !important;
}

/*
 * Result actions: DentaCalc green with white uppercase text.
 * Covers both the new result-action markup and older button markup.
 */
.medicalc .mc-result-toolbar > button,
.medicalc .mc-result-toolbar > .button,
.medicalc .mc-result-toolbar .mc-result-action,
.medicalc button.mc-print-result,
.medicalc button.mc-copy-result,
.medicalc button.mc-share-result,
.medicalc button.mc-report-result{
    appearance:none !important;
    -webkit-appearance:none !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:100% !important;
    min-height:44px !important;
    margin:0 !important;
    padding:11px 14px !important;
    border:1px solid var(--vc-primary) !important;
    border-radius:10px !important;
    background:var(--vc-primary) !important;
    background-image:none !important;
    color:#FFFFFF !important;
    box-shadow:none !important;
    font-size:13px !important;
    font-weight:800 !important;
    letter-spacing:.06em !important;
    line-height:1.2 !important;
    text-align:center !important;
    text-decoration:none !important;
    text-transform:uppercase !important;
}

.medicalc .mc-result-toolbar > button:hover,
.medicalc .mc-result-toolbar > button:focus,
.medicalc .mc-result-toolbar > .button:hover,
.medicalc .mc-result-toolbar > .button:focus,
.medicalc .mc-result-toolbar .mc-result-action:hover,
.medicalc .mc-result-toolbar .mc-result-action:focus,
.medicalc button.mc-print-result:hover,
.medicalc button.mc-print-result:focus,
.medicalc button.mc-copy-result:hover,
.medicalc button.mc-copy-result:focus,
.medicalc button.mc-share-result:hover,
.medicalc button.mc-share-result:focus,
.medicalc button.mc-report-result:hover,
.medicalc button.mc-report-result:focus{
    border-color:var(--vc-primary-dark) !important;
    background:var(--vc-primary-dark) !important;
    background-image:none !important;
    color:#FFFFFF !important;
}

/*
 * Report-dialog close control.
 */
.medicalc .mc-report-dialog__close,
.mc-report-dialog__close{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:36px !important;
    height:36px !important;
    padding:0 !important;
    border:1px solid var(--vc-primary) !important;
    border-radius:50% !important;
    background:var(--vc-primary) !important;
    background-image:none !important;
    color:#FFFFFF !important;
    box-shadow:none !important;
    font-size:25px !important;
    font-weight:400 !important;
    line-height:1 !important;
}

.medicalc .mc-report-dialog__close:hover,
.medicalc .mc-report-dialog__close:focus,
.mc-report-dialog__close:hover,
.mc-report-dialog__close:focus{
    border-color:var(--vc-primary-dark) !important;
    background:var(--vc-primary-dark) !important;
    color:#FFFFFF !important;
}

/*
 * Preserve the established radial gauge and needle.
 */
.medicalc .mc-gauge,
.medicalc .mc-gauge-visual,
.medicalc .mc-gauge-needle,
.medicalc .mc-gauge-hub{
    display:block;
}

.medicalc .mc-gauge-needle{
    z-index:3;
}

.medicalc .mc-gauge-hub{
    z-index:4;
}

@media(max-width:768px){
    .medicalc .mc-calculator-actions{
        margin-bottom:28px;
    }

    .medicalc .mc-result-logo{
        width:auto !important;
        max-width:88px !important;
        max-height:44px !important;
        object-fit:contain !important;
        flex:0 0 auto !important;
    }

    .medicalc .mc-result-toolbar{
        display:grid !important;
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:10px !important;
    }

    .medicalc .mc-result-toolbar > button,
    .medicalc .mc-result-toolbar > .button,
    .medicalc .mc-result-toolbar .mc-result-action{
        width:100% !important;
        min-width:0 !important;
    }
}

@media(max-width:420px){
    .medicalc .mc-result-logo{
        max-width:76px !important;
        max-height:38px !important;
    }
}

@media print{
    .medicalc .mc-result-toolbar,
    .medicalc .mc-report-dialog{
        display:none !important;
    }
    
    .medicalc-ad-slot {
    display: block !important;
    width: 100% !important;
}

.medicalc-ad-slot__label {
    display: block !important;
    width: 100% !important;
    float: none !important;
    clear: both !important;
    margin: 0 0 6px !important;
    text-align: center !important;
}

.medicalc-ad-slot__content {
    display: flex !important;
    width: 100% !important;
    clear: both !important;
    justify-content: center !important;
}
}

/* ==========================================================
   DENTACALC FINAL COLOUR OVERRIDES
   Loaded last to defeat legacy MedicalC declarations.
========================================================== */

:root{
    --vc-primary:#1769AA;
    --vc-primary-dark:#0B2D4D;
    --vc-primary-light:#EAF5FC;
    --vc-border:#C6DCEB;
    --vc-text:#0B2D4D;
}

/* Main dashboard and verification headers */
.medicalc-account-dashboard__header,
.medicalc-verification-panel__hero{
    background:var(--vc-primary)!important;
}

/* Dashboard tabs, progress and links */
.medicalc-account-tabs__button.is-active{
    border-bottom-color:var(--vc-primary)!important;
    color:var(--vc-primary)!important;
}

.medicalc-account-tabs__button:hover{
    background:var(--vc-primary-light)!important;
    color:var(--vc-primary-dark)!important;
}

.medicalc-account-progress span{
    background:var(--vc-primary)!important;
}

.medicalc-account-card__action,
.medicalc-account-text-button,
.medicalc-account-login h1,
.medicalc-account-card__header h2,
.medicalc-account-future h2,
.medicalc-verification-panel h2,
.medicalc-profile-section h3,
.medicalc-credential-status h3,
.medicalc-recent-tools__header h2,
.medicalc-recent-tool-card__content h3 a,
.medicalc-recent-tools__empty h3,
.medicalc-recent-tools__empty-icon{
    color:var(--vc-primary-dark)!important;
}

/* Dashboard buttons */
.medicalc-profile-actions .button,
.medicalc-account-primary-button,
.medicalc-recent-tool-card__open{
    border-color:var(--vc-primary)!important;
    background:var(--vc-primary)!important;
    color:#fff!important;
}

.medicalc-profile-actions .button:hover,
.medicalc-account-primary-button:hover,
.medicalc-recent-tool-card__open:hover{
    border-color:var(--vc-primary-dark)!important;
    background:var(--vc-primary-dark)!important;
    color:#fff!important;
}

.medicalc-account-secondary-button{
    border-color:var(--vc-primary)!important;
    background:#fff!important;
    color:var(--vc-primary)!important;
}

.medicalc-account-secondary-button:hover{
    background:var(--vc-primary-light)!important;
    color:var(--vc-primary-dark)!important;
}

.medicalc-account-dashboard__logout:hover{
    color:var(--vc-primary)!important;
}

.medicalc-account-future__button:hover,
.medicalc-recent-tool-card__icon{
    background:var(--vc-primary-light)!important;
}

/* Form focus colours */
.medicalc-profile-field input:focus,
.medicalc-profile-field select:focus,
.medicalc-profile-field textarea:focus,
.medicalc .mc-field input:focus,
.medicalc .mc-field select:focus,
.medicalc .mc-input-with-unit input:focus,
.medicalc .mc-unit-standard input:focus,
.medicalc .mc-unit-ftin input:focus,
.medicalc .mc-unit-stlb input:focus{
    border-color:var(--vc-primary)!important;
    outline-color:rgba(47,125,69,.15)!important;
    box-shadow:0 0 0 3px rgba(47,125,69,.14)!important;
}

/* Calculator and tool buttons */
.medicalc .mc-button,
.medicalc .mc-segment input:checked + span,
.medicalc .mc-tooltip,
.medicalc .mc-info-button,
.medicalc .mc-result-action,
.medicalc .mc-result-toolbar button,
.medicalc button.mc-print-result,
.medicalc button.mc-copy-result,
.medicalc button.mc-share-result,
.medicalc button.mc-report-result,
.medicalc .mc-report-dialog__close,
.mc-report-dialog__close{
    border-color:var(--vc-primary)!important;
    background:var(--vc-primary)!important;
    background-image:none!important;
    color:#fff!important;
}

.medicalc .mc-button:hover,
.medicalc .mc-info-button:hover,
.medicalc .mc-info-button:focus,
.medicalc .mc-result-action:hover,
.medicalc .mc-result-action:focus,
.medicalc .mc-result-toolbar button:hover,
.medicalc .mc-result-toolbar button:focus,
.medicalc button.mc-print-result:hover,
.medicalc button.mc-copy-result:hover,
.medicalc button.mc-share-result:hover,
.medicalc button.mc-report-result:hover,
.medicalc .mc-report-dialog__close:hover,
.mc-report-dialog__close:hover{
    border-color:var(--vc-primary-dark)!important;
    background:var(--vc-primary-dark)!important;
    color:#fff!important;
}

/* Calculator accents */
.medicalc .mc-result-label,
.medicalc .mc-references-title,
.medicalc .mc-learn-more-card .mc-result-section-title,
.medicalc .mc-related-tool{
    color:var(--vc-primary)!important;
}

.medicalc .mc-checkbox input,
.medicalc .mc-radio input,
.mc-report-option input{
    accent-color:var(--vc-primary)!important;
}

.medicalc .mc-checkbox:hover,
.medicalc .mc-radio:hover,
.medicalc .mc-learn-more-card:hover,
.medicalc .mc-learn-more-card:focus{
    border-color:var(--vc-primary)!important;
}

.medicalc .mc-related-tool:hover,
.medicalc .mc-related-tool:focus{
    border-color:var(--vc-primary)!important;
    background:var(--vc-primary)!important;
    color:#fff!important;
}

.medicalc .mc-result-card{
    border-color:var(--vc-primary)!important;
}

.medicalc-clinical-notice{
    border-left-color:var(--vc-primary)!important;
}

.medicalc-clinical-notice__link,
.medicalc-ad-slot__preview-content strong{
    color:var(--vc-primary)!important;
}

/* Login, signup, verification inline-style pages */
.medicalc-login button,
.medicalc-login .button,
.medicalc-signup__submit,
.medicalc-verification-button,
.medicalc-verification-resend button,
.medicalc-logout__button{
    border-color:var(--vc-primary)!important;
    background:var(--vc-primary)!important;
    color:#fff!important;
}

.medicalc-login button:hover,
.medicalc-login .button:hover,
.medicalc-signup__submit:hover,
.medicalc-verification-button:hover,
.medicalc-verification-resend button:hover,
.medicalc-logout__button:hover{
    border-color:var(--vc-primary-dark)!important;
    background:var(--vc-primary-dark)!important;
    color:#fff!important;
}

/* ==========================================================
   DENTACALC KEY RESULTS ALIGNMENT
========================================================== */

.mc-key-results .mc-result-input-list{
    display:grid;
    grid-template-columns:1fr;
    gap:0;
}

.mc-key-results .mc-result-input-item{
    display:grid;
    grid-template-columns:minmax(160px,1fr) minmax(180px,1fr);
    align-items:center;
    column-gap:24px;
    margin:0;
    padding:16px 0;
}

.mc-key-results .mc-result-input-item dt,
.mc-key-results .mc-result-input-item dd{
    margin:0;
}

.mc-key-results .mc-result-input-item dt{
    text-align:left;
    font-weight:500;
}

.mc-key-results .mc-result-input-item dd{
    text-align:right;
    font-weight:700;
}

@media(max-width:640px){

    .mc-key-results .mc-result-input-item{
        grid-template-columns:1fr;
        row-gap:6px;
    }

    .mc-key-results .mc-result-input-item dt,
    .mc-key-results .mc-result-input-item dd{
        text-align:left;
    }

}

/* ==========================================================
   DENTACALC RESULT FRAMEWORK V2
========================================================== */

.medicalc .mc-result-card[data-result-style]{
    overflow:hidden;
}

.medicalc .mc-result-header__content{
    min-width:0;
    text-align:left;
}

.medicalc .mc-result-card--calculation,
.medicalc .mc-result-card--decision,
.medicalc .mc-result-card--converter{
    text-align:left;
}

.medicalc .mc-result-card--calculation .mc-result-header,
.medicalc .mc-result-card--decision .mc-result-header,
.medicalc .mc-result-card--converter .mc-result-header{
    padding-bottom:20px;
    border-bottom:1px solid #e4ebe6;
}

/* ==========================================================
   CALCULATION RESULT HERO
========================================================== */

.medicalc .mc-result-card--calculation .mc-calculation-hero{
    position:relative;
    display:block;
    overflow:hidden;
    margin:26px 0 0;
    padding:30px 24px;
    border:1px solid var(--vc-border);
    border-radius:18px;
    background:linear-gradient(
        135deg,
        #f8fcf9 0%,
        var(--vc-primary-light) 100%
    );
    box-shadow:
        0 10px 26px rgba(47,125,69,.10),
        inset 0 1px 0 rgba(255,255,255,.85);
    text-align:center;
}

.medicalc .mc-calculation-hero::before{
    content:"";
    position:absolute;
    top:-70px;
    right:-60px;
    width:190px;
    height:190px;
    border-radius:50%;
    background:rgba(47,125,69,.08);
    pointer-events:none;
}

.medicalc .mc-calculation-hero::after{
    content:"";
    position:absolute;
    bottom:-80px;
    left:-65px;
    width:170px;
    height:170px;
    border-radius:50%;
    background:rgba(47,125,69,.06);
    pointer-events:none;
}

.medicalc .mc-result-card--calculation
.mc-calculation-hero__eyebrow{
    position:relative;
    z-index:1;
    margin-bottom:12px;
    color:var(--vc-primary);
    font-size:13px;
    font-weight:800;
    letter-spacing:.1em;
    line-height:1.3;
    text-transform:uppercase;
}

.medicalc .mc-result-card--calculation
.mc-calculation-hero__value-wrap{
    position:relative;
    z-index:1;
    display:flex;
    flex-wrap:wrap;
    align-items:baseline;
    justify-content:center;
    gap:10px;
}

.medicalc .mc-result-card--calculation
.mc-calculation-hero__value{
    color:#0f2343;
    font-size:64px;
    font-weight:800;
    letter-spacing:-.04em;
    line-height:1;
}

.medicalc .mc-result-card--calculation
.mc-calculation-hero__unit{
    color:var(--vc-primary-dark);
    font-size:20px;
    font-weight:700;
    line-height:1.2;
}

.medicalc .mc-result-card--calculation
.mc-calculation-hero__category{
    position:relative;
    z-index:1;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    margin-top:16px;
    padding:7px 14px;
    border:1px solid var(--vc-border);
    border-radius:999px;
    background:#fff;
    color:var(--vc-primary-dark);
    font-size:14px;
    font-weight:700;
    line-height:1.3;
}

/* ==========================================================
   CALCULATION KEY RESULTS
========================================================== */

.medicalc .mc-key-results--calculation{
    margin-top:22px;
    padding:20px;
    border:1px solid #dbe9df;
    border-radius:14px;
    background:#fbfdfb;
    text-align:left;
}

.medicalc .mc-key-results--calculation
.mc-result-section-title{
    margin:0 0 16px;
    color:#0B2D4D;
    font-size:15px;
    font-weight:800;
    text-align:left;
}

.medicalc .mc-key-results--calculation
.mc-key-result-grid{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:14px !important;
    width:100%;
    margin:0;
}

.medicalc .mc-key-results--calculation
.mc-key-result-card{
    position:relative;
    display:flex;
    flex-direction:column;
    justify-content:center;
    min-width:0;
    min-height:112px;
    overflow:hidden;
    padding:18px 16px 18px 20px;
    border:1px solid #d9e7dd;
    border-radius:12px;
    background:#fff;
    box-shadow:0 5px 16px rgba(15,35,67,.06);
    text-align:left;
}

.medicalc .mc-key-results--calculation
.mc-key-result-card::before{
    content:"";
    position:absolute;
    top:0;
    bottom:0;
    left:0;
    width:4px;
    border-radius:12px 0 0 12px;
    background:var(--vc-primary);
}

.medicalc .mc-key-results--calculation
.mc-key-result-card__label{
    margin-bottom:7px;
    color:#66756b;
    font-size:11px;
    font-weight:800;
    letter-spacing:.07em;
    line-height:1.35;
    text-transform:uppercase;
}

.medicalc .mc-key-results--calculation
.mc-key-result-card__value{
    color:#0B2D4D;
    font-size:18px;
    font-weight:800;
    line-height:1.3;
    overflow-wrap:anywhere;
}

/* ==========================================================
   CALCULATION INTERPRETATION
========================================================== */

.medicalc .mc-result-card--calculation
.mc-result-interpretation{
    border-color:#dbe9df;
    background:#f7fbf8;
}

.medicalc .mc-result-card--calculation
.mc-result-interpretation
.mc-result-section-title{
    color:var(--vc-primary-dark);
}

/* ==========================================================
   DECISION STYLE
========================================================== */

.medicalc .mc-decision-result{
    margin:26px 0 0;
    padding:28px;
    border:1px solid #e5c978;
    border-radius:18px;
    background:#fff9e8;
    box-shadow:0 10px 26px rgba(132,94,0,.10);
    text-align:center;
}

.medicalc .mc-decision-result__label{
    margin-bottom:10px;
    color:#8a6400;
    font-size:12px;
    font-weight:800;
    letter-spacing:.11em;
    text-transform:uppercase;
}

.medicalc .mc-decision-result__value{
    color:#573f00;
    font-size:46px;
    font-weight:800;
    line-height:1.1;
}

.medicalc .mc-decision-result__unit{
    margin-top:8px;
    color:#795d12;
    font-size:16px;
    font-weight:700;
}

.medicalc .mc-decision-result__category{
    display:inline-flex;
    margin-top:15px;
    padding:7px 13px;
    border-radius:999px;
    background:#fff;
    color:#795d12;
    font-size:13px;
    font-weight:800;
}

.medicalc .mc-decision-result.is-low-risk,
.medicalc .mc-decision-result.is-reassuring,
.medicalc .mc-decision-result.is-normal{
    border-color:#9ed2ac;
    background:#eef9f1;
}

.medicalc .mc-decision-result.is-high-risk,
.medicalc .mc-decision-result.is-critical,
.medicalc .mc-decision-result.is-danger{
    border-color:#efb1b1;
    background:#fff1f1;
}

/* ==========================================================
   CONVERTER STYLE
========================================================== */

.medicalc .mc-converter-result{
    margin:26px 0 0;
    padding:30px;
    border:1px solid #dce6df;
    border-radius:18px;
    background:#f8fbf9;
    text-align:center;
}

.medicalc .mc-converter-result__value{
    color:#0f2343;
    font-size:60px;
    font-weight:800;
    letter-spacing:-.035em;
    line-height:1;
}

.medicalc .mc-converter-result__unit{
    margin-top:10px;
    color:var(--vc-primary-dark);
    font-size:20px;
    font-weight:700;
}

.medicalc .mc-converter-result__category{
    margin-top:14px;
    color:#66756b;
    font-size:14px;
    font-weight:600;
}

/* ==========================================================
   SCORE COMPATIBILITY
========================================================== */

.medicalc .mc-result-card--score .mc-result-value-wrap,
.medicalc .mc-result-card--score .mc-category{
    text-align:center;
}

.medicalc
.mc-result-card:not(.mc-result-card--score)
.mc-gauge,
.medicalc
.mc-result-card:not(.mc-result-card--score)
.mc-range,
.medicalc
.mc-result-card:not(.mc-result-card--score)
.mc-range-labels,
.medicalc
.mc-result-card:not(.mc-result-card--score)
.mc-component-breakdown{
    display:none !important;
}

/* ==========================================================
   RESPONSIVE
========================================================== */

@media(max-width:900px){

    .medicalc .mc-key-results--calculation
    .mc-key-result-grid{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }

}

@media(max-width:768px){

    .medicalc .mc-calculation-hero,
    .medicalc .mc-decision-result,
    .medicalc .mc-converter-result{
        margin-top:22px;
        padding:24px 18px;
        border-radius:15px;
    }

    .medicalc .mc-calculation-hero__value{
        font-size:52px;
    }

    .medicalc .mc-calculation-hero__unit{
        font-size:18px;
    }

    .medicalc .mc-key-result-card{
        padding:16px;
    }

    .medicalc .mc-key-result-card__value{
        font-size:18px;
    }

}

@media(max-width:520px){

    .medicalc .mc-result-card--calculation
    .mc-calculation-hero__value-wrap{
        flex-direction:column;
        align-items:center;
        gap:7px;
    }

    .medicalc .mc-result-card--calculation
    .mc-calculation-hero__value{
        max-width:100%;
        font-size:46px;
        overflow-wrap:anywhere;
    }

    .medicalc .mc-result-card--calculation
    .mc-calculation-hero__unit{
        font-size:17px;
        text-align:center;
    }

    .medicalc .mc-key-results--calculation
    .mc-key-result-grid{
        grid-template-columns:1fr !important;
    }

    .medicalc .mc-key-results--calculation
    .mc-key-result-card{
        min-height:auto;
    }

}

/* ==========================================================
   PRINT
========================================================== */

@media print{

    .medicalc .mc-calculation-hero,
    .medicalc .mc-decision-result,
    .medicalc .mc-converter-result,
    .medicalc .mc-key-result-card{
        box-shadow:none !important;
        break-inside:avoid;
    }

    .medicalc .mc-calculation-hero{
        border:2px solid #1769AA !important;
        background:#fff !important;
    }

    .medicalc .mc-key-result-grid{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }
    
    /* ==========================================================
   DENTACALC CALCULATION INFORMATION CARDS
========================================================== */

.medicalc .mc-key-results--calculation{
    padding:0;
    border:0;
    background:transparent;
}

.medicalc .mc-key-results--calculation
.mc-key-result-grid{
    margin-top:0;
}

.medicalc .mc-key-results--calculation
.mc-key-result-card{
    align-items:flex-start;
    justify-content:center;
    min-height:116px;
    padding:20px 18px 18px 22px;
}

.medicalc .mc-key-results--calculation
.mc-key-result-card__value{
    margin-bottom:7px;
    color:#0B2D4D;
    font-size:21px;
    font-weight:800;
    letter-spacing:-.015em;
    line-height:1.25;
}

.medicalc .mc-key-results--calculation
.mc-key-result-card__label{
    margin:0;
    color:#66756b;
    font-size:11px;
    font-weight:800;
    letter-spacing:.08em;
    line-height:1.35;
    text-transform:uppercase;
}

@media(max-width:520px){

    .medicalc .mc-key-results--calculation
    .mc-key-result-card{
        min-height:92px;
    }
    
    /* ==========================================================
   DENTACALC SVG ICON SYSTEM
========================================================== */

.medicalc .mc-vet-icon-wrapper{
    --mc-vet-icon-size:28px;

    display:inline-flex;
    flex:0 0 auto;
    align-items:center;
    justify-content:center;
    width:var(--mc-vet-icon-size);
    height:var(--mc-vet-icon-size);
    color:currentColor;
    line-height:1;
    vertical-align:middle;
}

.medicalc .mc-vet-icon{
    display:block;
    width:100%;
    height:100%;
    overflow:visible;
    color:inherit;
}

/* ==========================================================
   DENTACALC PATIENT-GROUP ICON KEY
========================================================== */

.medicalc .mc-species-key{
    margin:0 0 24px;
    overflow:hidden;
    border:1px solid #d7e5dc;
    border-radius:14px;
    background:#ffffff;
}

.medicalc .mc-species-key__toggle{
    display:flex;
    width:100%;
    align-items:center;
    gap:10px;
    padding:15px 18px;
    border:0;
    background:#f5faf7;
    color:#0B2D4D;
    cursor:pointer;
    font:inherit;
    font-size:15px;
    font-weight:800;
    text-align:left;
}

.medicalc .mc-species-key__toggle:hover{
    background:#edf7f0;
}

.medicalc .mc-species-key__toggle:focus-visible{
    outline:3px solid rgba(47, 133, 79, .22);
    outline-offset:-3px;
}

.medicalc .mc-species-key__toggle-icon{
    font-size:20px;
    line-height:1;
}

.medicalc .mc-species-key__toggle-arrow{
    margin-left:auto;
    font-size:22px;
    font-weight:500;
    line-height:1;
    transition:transform .2s ease;
}

.medicalc .mc-species-key__toggle[aria-expanded="true"]
.mc-species-key__toggle-arrow{
    transform:rotate(45deg);
}

.medicalc .mc-species-key__content{
    padding:18px;
    border-top:1px solid #e3ece6;
}

.medicalc .mc-species-key__intro{
    margin:0 0 16px;
    color:#66756b;
    font-size:14px;
    line-height:1.55;
}

.medicalc .mc-species-key__grid{
    display:grid;
    grid-template-columns:repeat(4, minmax(0, 1fr));
    gap:10px;
}

.medicalc .mc-species-key__item{
    display:flex;
    min-height:48px;
    align-items:center;
    gap:10px;
    padding:10px 12px;
    border:1px solid #e0ebe4;
    border-radius:10px;
    background:#fafcfb;
}

.medicalc .mc-species-key__icon{
    flex:0 0 auto;
    font-size:23px;
    line-height:1;
}

.medicalc .mc-species-key__label{
    color:#294536;
    font-size:13px;
    font-weight:700;
    line-height:1.25;
}

.medicalc .mc-species-key--compact
.mc-species-key__grid{
    grid-template-columns:repeat(3, minmax(0, 1fr));
}

@media(max-width:800px){

    .medicalc .mc-species-key__grid{
        grid-template-columns:repeat(2, minmax(0, 1fr));
    }

}

@media(max-width:480px){

    .medicalc .mc-species-key__content{
        padding:14px;
    }

    .medicalc .mc-species-key__grid{
        grid-template-columns:1fr;
    }
    
    /* Individual calculator patient-group and category metadata */
.mc-calculator-metadata {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    margin: 0 0 18px;
}

.mc-calculator-metadata__item {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 40px;
    padding: 8px 14px;
    border: 1px solid #dbe3ed;
    border-radius: 999px;
    background: #ffffff;
    color: #0B2D4D;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.2;
    box-shadow: 0 3px 10px rgba(15, 23, 42, 0.05);
}

.mc-calculator-metadata__item--category {
    border-color: #cce5d3;
    background: #f2faf4;
}

.mc-calculator-metadata__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 21px;
    line-height: 1;
}

@media (max-width: 600px) {
    .mc-calculator-metadata {
        gap: 8px;
    }

    .mc-calculator-metadata__item {
        min-height: 38px;
        padding: 7px 12px;
        font-size: 13px;
    }

    .mc-calculator-metadata__icon {
        font-size: 19px;
    }
}

}

}

}

/* ==========================================================
   RESULT ACTIONS V2 — DEFINITIVE PRINT REPORT
   Keep this block at the very end of medicalc.css.
========================================================== */

@media print{

    @page{
        margin:14mm;
    }

    html,
    body{
        min-height:0 !important;
        background:#ffffff !important;
    }

    body.mc-result-print-active *{
        visibility:hidden !important;
    }

    body.mc-result-print-active
    .mc-result-print-target,
    body.mc-result-print-active
    .mc-result-print-target *{
        visibility:visible !important;
    }

    body.mc-result-print-active
    .mc-result-print-target{
        position:absolute !important;
        top:0 !important;
        left:0 !important;
        width:100% !important;
        max-width:none !important;
        margin:0 !important;
        padding:0 !important;
        overflow:visible !important;
        border:0 !important;
        border-radius:0 !important;
        background:#ffffff !important;
        box-shadow:none !important;
        animation:none !important;
        text-align:left !important;
    }

    body.mc-result-print-active
    .mc-result-toolbar,
    body.mc-result-print-active
    .mc-report-dialog,
    body.mc-result-print-active
    .mc-related-tools,
    body.mc-result-print-active
    .mc-related-tools-list,
    body.mc-result-print-active
    .mc-learn-more-card,
    body.mc-result-print-active
    .medicalc-ad-placement,
    body.mc-result-print-active
    .medicalc-ad-slot,
    body.mc-result-print-active
    .medicalc-ad-slot__label,
    body.mc-result-print-active
    .medicalc-ad-slot__content,
    body.mc-result-print-active
    [class*="ad-slot"],
    body.mc-result-print-active
    [class*="ad-placement"]{
        display:none !important;
        visibility:hidden !important;
    }

    body.mc-result-print-active
    .mc-result-header{
        display:flex !important;
        margin-bottom:20px !important;
        padding-bottom:16px !important;
        border-bottom:1px solid #cfd8d2 !important;
        break-inside:avoid;
    }

    body.mc-result-print-active
    .mc-result-logo{
        width:auto !important;
        max-width:120px !important;
        max-height:60px !important;
    }

    body.mc-result-print-active
    .mc-calculation-hero,
    body.mc-result-print-active
    .mc-decision-result,
    body.mc-result-print-active
    .mc-converter-result,
    body.mc-result-print-active
    .mc-result-section,
    body.mc-result-print-active
    .mc-key-result-card,
    body.mc-result-print-active
    .mc-disclaimer,
    body.mc-result-print-active
    .mc-references{
        break-inside:avoid;
        box-shadow:none !important;
    }

    body.mc-result-print-active
    .mc-calculation-hero,
    body.mc-result-print-active
    .mc-decision-result,
    body.mc-result-print-active
    .mc-converter-result{
        background:#ffffff !important;
        border:2px solid #1769AA !important;
    }

    body.mc-result-print-active
    .mc-key-result-grid{
        display:grid !important;
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:10px !important;
    }

    body.mc-result-print-active
    .mc-key-result-card,
    body.mc-result-print-active
    .mc-result-section,
    body.mc-result-print-active
    .mc-disclaimer,
    body.mc-result-print-active
    .mc-references{
        background:#ffffff !important;
        border:1px solid #cfd8d2 !important;
    }

    body.mc-result-print-active
    a{
        color:#000000 !important;
        text-decoration:none !important;
    }
    
    /* ==========================================================
   DENTACALC IMPORTER-DRIVEN FIELD INFORMATION
========================================================== */

.medicalc .mc-popover-link{
    display:inline-flex;
    align-items:center;
    margin-top:14px;
    color:var(--vc-primary);
    font-size:13px;
    font-weight:800;
    line-height:1.4;
    text-decoration:none;
}

.medicalc .mc-popover-link:hover,
.medicalc .mc-popover-link:focus{
    color:var(--vc-primary-dark);
    text-decoration:underline;
}

.medicalc .mc-popover-list,
.medicalc .mc-popover-note,
.medicalc .mc-popover-reference{
    display:block;
    color:#40516b;
    font-size:13px;
    line-height:1.5;
}

.medicalc .mc-popover-list{
    display:flex;
    flex-wrap:wrap;
    gap:6px;
}

.medicalc .mc-popover-list > span{
    padding:4px 8px;
    border-radius:999px;
    background:var(--vc-primary-light);
    color:var(--vc-primary-dark);
    font-size:12px;
    font-weight:700;
}

@media(max-width:768px){
    .medicalc .mc-popover-link{
        min-height:44px;
        justify-content:center;
        width:100%;
        margin-top:16px;
        border-radius:10px;
        background:var(--vc-primary);
        color:#fff;
        text-decoration:none;
    }

    .medicalc .mc-popover-link:hover,
    .medicalc .mc-popover-link:focus{
        background:var(--vc-primary-dark);
        color:#fff;
        text-decoration:none;
    }
}

 
 /* ==========================================================
   DENTACALC RESULT PRINT — CLONED REPORT
   Keep at the absolute bottom of medicalc.css
========================================================== */

.mc-print-container {
    display: none;
}

@media print {

    @page {
        size: A4 portrait;
        margin: 8mm;
    }

    html,
    body {
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;

        margin: 0 !important;
        padding: 0 !important;

        background: #ffffff !important;
    }

    body.mc-printing-result > *:not(
        .mc-print-container
    ) {
        display: none !important;
    }

    body.mc-printing-result
    .mc-print-container {
        display: block !important;

        position: static !important;

        width: 100% !important;
        max-width: none !important;

        height: auto !important;
        min-height: 0 !important;

        margin: 0 !important;
        padding: 0 !important;

        overflow: visible !important;

        background: #ffffff !important;
    }

    body.mc-printing-result
    .mc-print-card {
        display: block !important;

        position: static !important;

        width: 100% !important;
        max-width: none !important;

        height: auto !important;
        min-height: 0 !important;

        margin: 0 !important;
        padding: 0 !important;

        overflow: visible !important;

        border: 0 !important;
        border-radius: 0 !important;

        background: #ffffff !important;

        box-shadow: none !important;
        animation: none !important;

        font-size: 10px !important;
        line-height: 1.35 !important;
    }

    body.mc-printing-result
    .mc-print-card
    .mc-result-header {
        display: flex !important;

        align-items: flex-start !important;
        justify-content: space-between !important;

        gap: 12px !important;

        margin: 0 0 10px !important;
        padding: 0 0 8px !important;

        border-bottom:
            1px solid #cfd8d2 !important;

        break-inside: avoid !important;
    }

    body.mc-printing-result
    .mc-print-card
    .mc-result-logo {
        display: block !important;

        width: auto !important;
        max-width: 90px !important;
        max-height: 42px !important;
    }

    body.mc-printing-result
    .mc-print-card
    .mc-result-label {
        font-size: 10px !important;
    }

    body.mc-printing-result
    .mc-print-card
    .mc-result-calculator-name {
        font-size: 15px !important;
    }

    body.mc-printing-result
    .mc-print-card
    .mc-result-generated {
        font-size: 9px !important;
    }

    body.mc-printing-result
    .mc-print-card
    .mc-calculation-hero,
    body.mc-printing-result
    .mc-print-card
    .mc-decision-result,
    body.mc-printing-result
    .mc-print-card
    .mc-converter-result {
        margin: 10px 0 0 !important;
        padding: 14px !important;

        border:
            1.5px solid #1769AA !important;

        border-radius: 10px !important;

        background: #ffffff !important;

        box-shadow: none !important;

        break-inside: avoid !important;
    }

    body.mc-printing-result
    .mc-print-card
    .mc-calculation-hero__eyebrow {
        margin-bottom: 6px !important;
        font-size: 9px !important;
    }

    body.mc-printing-result
    .mc-print-card
    .mc-calculation-hero__value {
        font-size: 38px !important;
    }

    body.mc-printing-result
    .mc-print-card
    .mc-calculation-hero__unit {
        font-size: 14px !important;
    }

    body.mc-printing-result
    .mc-print-card
    .mc-calculation-hero__category {
        margin-top: 8px !important;
        padding: 4px 9px !important;
        font-size: 9px !important;
    }

    body.mc-printing-result
    .mc-print-card
    .mc-key-results--calculation {
        margin-top: 10px !important;
        padding: 0 !important;

        border: 0 !important;
        background: transparent !important;
    }

    body.mc-printing-result
    .mc-print-card
    .mc-key-result-grid {
        display: grid !important;

        grid-template-columns:
            repeat(
                4,
                minmax(0, 1fr)
            ) !important;

        gap: 7px !important;
    }

    body.mc-printing-result
    .mc-print-card
    .mc-key-result-card {
        min-height: 58px !important;

        padding: 9px !important;

        border:
            1px solid #cfd8d2 !important;

        border-radius: 7px !important;

        background: #ffffff !important;

        box-shadow: none !important;

        break-inside: avoid !important;
    }

    body.mc-printing-result
    .mc-print-card
    .mc-key-result-card::before {
        width: 3px !important;
    }

    body.mc-printing-result
    .mc-print-card
    .mc-key-result-card__value {
        margin-bottom: 3px !important;
        font-size: 12px !important;
    }

    body.mc-printing-result
    .mc-print-card
    .mc-key-result-card__label {
        font-size: 7px !important;
    }

    body.mc-printing-result
    .mc-print-card
    .mc-result-section,
    body.mc-printing-result
    .mc-print-card
    .mc-disclaimer,
    body.mc-printing-result
    .mc-print-card
    .mc-references {
        margin-top: 9px !important;
        padding: 10px !important;

        border:
            1px solid #cfd8d2 !important;

        border-radius: 7px !important;

        background: #ffffff !important;

        box-shadow: none !important;

        break-inside: avoid !important;
    }

    body.mc-printing-result
    .mc-print-card
    .mc-result-section-title,
    body.mc-printing-result
    .mc-print-card
    .mc-references-title {
        margin-bottom: 4px !important;
        font-size: 9px !important;
    }

    body.mc-printing-result
    .mc-print-card
    .mc-result-section p,
    body.mc-printing-result
    .mc-print-card
    .mc-interpretation,
    body.mc-printing-result
    .mc-print-card
    .mc-disclaimer,
    body.mc-printing-result
    .mc-print-card
    .mc-references li {
        font-size: 9px !important;
        line-height: 1.35 !important;
    }

    body.mc-printing-result
    .mc-print-card
    .mc-references ul {
        margin: 0 !important;
        padding-left: 16px !important;
    }

    body.mc-printing-result
    .mc-print-card
    .mc-references li {
        margin-bottom: 2px !important;
    }

    body.mc-printing-result
    .mc-print-card
    .mc-result-toolbar,
    body.mc-printing-result
    .mc-print-card
    .mc-report-dialog,
    body.mc-printing-result
    .mc-print-card
    .mc-related-tools,
    body.mc-printing-result
    .mc-print-card
    .mc-related-tools-list,
    body.mc-printing-result
    .mc-print-card
    .mc-learn-more-card,
    body.mc-printing-result
    .medicalc-ad-placement,
    body.mc-printing-result
    .medicalc-ad-slot,
    body.mc-printing-result
    [class*="ad-placement"],
    body.mc-printing-result
    [class*="ad-slot"] {
        display: none !important;
    }

}

/* ==========================================================
   DENTACALC MOBILE WIDTH & OVERFLOW FIXES — UI v1.2
   Keep this block at the end of medicalc.css.
========================================================== */

@media screen {
    .medicalc,
    .medicalc *,
    .medicalc *::before,
    .medicalc *::after,
    .medicalc-knowledge-hub,
    .medicalc-knowledge-hub *,
    .medicalc-knowledge-hub *::before,
    .medicalc-knowledge-hub *::after {
        box-sizing: border-box;
    }

    .medicalc,
    .medicalc .mc-card,
    .medicalc .mc-result-card,
    .medicalc-knowledge-hub,
    .medicalc-knowledge-hub__hero,
    .medicalc-knowledge-hub__layout,
    .medicalc-knowledge-hub__nav,
    .medicalc-knowledge-hub__content,
    .medicalc-knowledge-hub__section {
        min-width: 0;
        max-width: 100%;
    }

    .medicalc img,
    .medicalc svg,
    .medicalc video,
    .medicalc canvas,
    .medicalc iframe,
    .medicalc-knowledge-hub img,
    .medicalc-knowledge-hub svg,
    .medicalc-knowledge-hub video,
    .medicalc-knowledge-hub canvas,
    .medicalc-knowledge-hub iframe {
        max-width: 100%;
    }

    .medicalc .mc-card,
    .medicalc .mc-field,
    .medicalc .mc-input-with-unit,
    .medicalc .mc-result-section,
    .medicalc .mc-result-input-item,
    .medicalc .mc-result-header__content,
    .medicalc-knowledge-hub__section-body,
    .medicalc-knowledge-hub__reference,
    .medicalc-knowledge-hub__faq-answer {
        overflow-wrap: anywhere;
        word-break: normal;
    }

    .medicalc table,
    .medicalc-knowledge-hub table {
        display: block;
        width: 100%;
        max-width: 100%;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
}

@media screen and (max-width: 768px) {
    .medicalc {
        width: auto !important;
        max-width: 100% !important;
        margin: 28px 0 !important;
        padding: 0 12px !important;
        overflow-x: clip;
    }

    .medicalc .mc-card {
        width: 100%;
        max-width: 100%;
        padding: 22px 16px;
        border-radius: 15px;
    }

    .medicalc .mc-card-header,
    .medicalc .mc-result-header {
        min-width: 0;
        gap: 14px !important;
    }

    .medicalc .mc-card-header > *,
    .medicalc .mc-result-header > * {
        min-width: 0;
    }

    .medicalc .mc-card-title,
    .medicalc .mc-result-calculator-name {
        overflow-wrap: anywhere;
    }

    .medicalc .mc-form-grid {
        grid-template-columns: minmax(0, 1fr);
        gap: 18px;
    }

    .medicalc .mc-field-col,
    .medicalc .mc-field-half,
    .medicalc .mc-field-third,
    .medicalc .mc-field-quarter {
        grid-column: 1 / -1;
        min-width: 0;
    }

    .medicalc .mc-input-with-unit {
        grid-template-columns: minmax(0, 1fr) 78px;
    }

    .medicalc .mc-input-with-unit .mc-unit-select {
        width: 78px !important;
        min-width: 78px !important;
        max-width: 78px !important;
    }

    .medicalc-knowledge-hub {
        width: 100%;
        max-width: 100%;
        margin-top: 30px;
        overflow: hidden;
    }

    .medicalc-knowledge-hub__hero,
    .medicalc-knowledge-hub__section {
        width: 100%;
        padding: 20px 16px;
        border-radius: 14px;
    }

    .medicalc-knowledge-hub__title {
        font-size: clamp(25px, 8vw, 34px);
        overflow-wrap: anywhere;
    }

    .medicalc-knowledge-hub__layout {
        display: block;
        width: 100%;
        margin-top: 18px;
    }

    .medicalc-knowledge-hub__nav {
        width: 100%;
        max-width: 100%;
        margin: 0 0 18px;
        padding: 14px;
        overflow: hidden;
    }

    .medicalc-knowledge-hub__nav-list {
        display: flex;
        width: 100%;
        max-width: 100%;
        gap: 8px;
        margin: 0;
        padding: 0 0 8px;
        overflow-x: auto;
        overflow-y: hidden;
        overscroll-behavior-inline: contain;
        scroll-snap-type: x proximity;
        scrollbar-width: thin;
        -webkit-overflow-scrolling: touch;
        touch-action: pan-x;
    }

    .medicalc-knowledge-hub__nav-list > li {
        flex: 0 0 auto;
        scroll-snap-align: start;
    }

    .medicalc-knowledge-hub__nav-link {
        display: inline-flex;
        align-items: center;
        min-height: 40px;
        padding: 9px 12px;
        border: 1px solid var(--mckh-border);
        border-radius: 999px;
        background: #fff;
        white-space: nowrap;
    }

    .medicalc-knowledge-hub__nav-link.is-active {
        border-color: rgba(47, 125, 69, .28);
    }

    .medicalc-knowledge-hub__section-title {
        align-items: flex-start;
        font-size: 20px;
    }

    .medicalc-knowledge-hub__section-body,
    .medicalc-knowledge-hub__section-body p,
    .medicalc-knowledge-hub__section-body li,
    .medicalc-knowledge-hub__reference,
    .medicalc-knowledge-hub__reference a {
        max-width: 100%;
        overflow-wrap: anywhere;
        word-break: break-word;
    }

    .medicalc-knowledge-hub__references {
        padding-left: 20px;
    }
}

@media screen and (max-width: 420px) {
    .medicalc {
        padding: 0 9px !important;
    }

    .medicalc .mc-card {
        padding: 20px 14px;
    }

    .medicalc .mc-card-header,
    .medicalc .mc-result-header {
        flex-direction: column !important;
        align-items: flex-start !important;
    }

    .medicalc .mc-card-logo,
    .medicalc .mc-result-logo {
        width: 96px !important;
        max-width: 96px !important;
    }
    
    /* ==================================================
   RELATED CALCULATORS - MOBILE
================================================== */

@media (max-width:768px){

    .medicalc .mc-related-tools,
    .medicalc .medicalc-related-tools,
    .medicalc .medicalc-related-tools-section{
        width:100%;
        max-width:100%;
        overflow:hidden;
        box-sizing:border-box;
    }

    .medicalc .mc-related-tools-list,
    .medicalc .medicalc-related-tools__grid{
        width:100%;
        max-width:100%;
        display:grid;
        grid-template-columns:1fr;
        gap:14px;
        box-sizing:border-box;
    }

    .medicalc .mc-related-tools-list > *,
    .medicalc .medicalc-related-tools__grid > *{
        width:100%;
        max-width:100%;
        min-width:0;
        box-sizing:border-box;
    }
}
}

/* ==========================================================================
   DentaCalc v2.3.2 — calculator UX polish
   ========================================================================== */

/*
 * A clicked info card must always sit above neighbouring field/card stacking
 * contexts. The JS adds is-popover-open to only the active wrapper.
 */
.medicalc .mc-popover-wrap.is-popover-open{
    z-index:10020 !important;
}

.medicalc .mc-popover-wrap.is-popover-open .mc-popover{
    z-index:10030 !important;
}

.medicalc .mc-popover.is-open{
    z-index:10030 !important;
    isolation:isolate;
}


.medicalc .dentacalc-reference-back-to-top{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    min-height:38px;
    margin:12px 0 0;
    padding:8px 13px;
    border:1px solid #b9d9c3;
    border-radius:9px;
    background:#ffffff;
    color:#0B2D4D;
    font:inherit;
    font-size:13px;
    font-weight:750;
    cursor:pointer;
    transition:
        transform .18s ease,
        border-color .18s ease,
        box-shadow .18s ease,
        background .18s ease;
}

.medicalc .dentacalc-reference-back-to-top:hover,
.medicalc .dentacalc-reference-back-to-top:focus{
    outline:none;
    transform:translateY(-1px);
    border-color:#1769AA;
    background:#eef8f1;
    box-shadow:0 7px 18px rgba(47,125,69,.13);
}

.medicalc .dentacalc-reference-back-to-top span{
    color:#1769AA;
    font-size:17px;
    line-height:1;
}


/* DentaCalc v2.3.3 — robust popover stacking fix */
.medicalc .is-popover-parent-open{
    position:relative !important;
    z-index:10010 !important;
    overflow:visible !important;
    isolation:auto !important;
}

.medicalc .mc-popover-wrap.is-popover-open{
    position:relative !important;
    z-index:10020 !important;
    overflow:visible !important;
}

.medicalc .mc-popover-wrap.is-popover-open .mc-popover,
.medicalc .mc-popover.is-open{
    z-index:10030 !important;
    overflow:visible !important;
}

.medicalc .mc-popover-wrap:not(.is-popover-open){
    z-index:auto;
}


/* DentaCalc v2.3.4 — smart popover collision handling
 *
 * If another info icon physically falls inside the open card's rectangle,
 * frontend.js marks only that icon as obscured. This removes the visual
 * collision without globally hiding useful help buttons.
 */
.medicalc .mc-info-button.is-obscured-by-popover{
    opacity:0 !important;
    visibility:hidden !important;
    pointer-events:none !important;
    transform:none !important;
    box-shadow:none !important;
}

.medicalc .mc-popover.is-open{
    pointer-events:auto;
}


/* v1.5.3 DentaCalc → MDPDA clinical knowledge bridge */
.dentacalc-mdpda-bridge{margin:28px 0;padding:30px;border:1px solid #e4e8ef;border-radius:18px;background:#fbfafc;box-shadow:0 8px 28px rgba(15,45,65,.035)}
.dentacalc-mdpda-eyebrow{margin-bottom:8px;font-size:12px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:#6d2c78}
.dentacalc-mdpda-bridge h2{margin:0 0 8px;font-size:30px;line-height:1.15;color:#102f46}
.dentacalc-mdpda-intro{margin:0 0 22px;color:#506579;font-size:17px;line-height:1.55}
.dentacalc-mdpda-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:20px}
.dentacalc-mdpda-card{display:flex;flex-direction:column;min-height:200px;padding:20px;border:1px solid #dfe3ea;border-radius:14px;background:#fff;text-decoration:none!important;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}
.dentacalc-mdpda-card:hover{transform:translateY(-1px);border-color:#ccb9d1;box-shadow:0 8px 22px rgba(42,23,50,.07)}
.dentacalc-mdpda-card span{font-size:12px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:#7e4b87}
.dentacalc-mdpda-card strong{display:block;margin:10px 0 8px;font-size:19px;line-height:1.3;color:#112f45}
.dentacalc-mdpda-card p{margin:0 0 16px;color:#586d7e;line-height:1.55}
.dentacalc-mdpda-card b{margin-top:auto;color:#71317c;font-size:15px}
.dentacalc-mdpda-browse{display:inline-block;font-weight:800;color:#71317c;text-decoration:none}
.dentacalc-mdpda-browse:hover{text-decoration:underline}
@media(max-width:720px){.dentacalc-mdpda-bridge{padding:22px}.dentacalc-mdpda-grid{grid-template-columns:1fr}.dentacalc-mdpda-bridge h2{font-size:25px}.dentacalc-mdpda-card{min-height:0}}
