/* Floating vertical open button */
#mc-open{
    position: fixed;
    right: 0px;
    bottom: 100px;                 /* << as requested */
    z-index: 9998;                 /* panel is 9999 */
    writing-mode: sideways-lr;     /* vertical text */
    text-orientation: mixed;
    transform: translateY(8px);    /* subtle slide-in */
    transition: opacity .2s ease, transform .2s ease;
    opacity: 0;                    /* hidden by default */
    pointer-events: none;          /* not clickable until visible */
    /*transform: rotate(-180deg);*/
}

#mc-open,
#mc-panel header {
    background-color: #670038;
    color: white;
}
#mc-close {
    color: #ffffff;
    font-size: 30px;
}

/* When we decide it should show */
#mc-open.is-visible{
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
}

/* Optional: hide while panel is open */
.mc-panel.open ~ #mc-open {
    opacity: 0;
    pointer-events: none;
}

/* If you want a chunkier “pill” look */
#mc-open.mc-btn{
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    border-top-left-radius: .75rem;
    border-bottom-left-radius: .75rem;
    box-shadow: 0 4px 14px rgba(0,0,0,.12);
    font-weight: 600;
}


.mc-btn { padding:.6rem .9rem; border-radius:.5rem; border:1px solid #ddd; background:#fff; cursor:pointer }
.mc-panel {position:fixed;top:0;right:0;height:100dvh;width:min(420px,100%);background:#fff;box-shadow:-10px 0 30px rgba(0,0,0,.15);transform:translateX(100%);transition:transform .25s ease;z-index:9999;display:flex;flex-direction:column}
.mc-panel.open{transform:translateX(0)}
.mc-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:1px solid #eee}
.mc-close{background:none;border:none;font-size:1.25rem;cursor:pointer}
.mc-form{padding:1rem;display:grid;gap:.75rem;overflow:auto}
.mc-row{display:grid;grid-template-columns:1fr auto;gap:.75rem;align-items:start}
.mc-details summary{cursor:pointer;font-weight:600;margin-bottom:.25rem}
.mc-inline{display:flex;align-items:center;gap:.5rem}
.mc-actions{display:flex;justify-content:space-between;align-items:center}
.mc-link{background:none;border:none;color:#666;text-decoration:underline;cursor:pointer}
.mc-result{margin-top:.5rem;padding:.75rem;border:1px solid #eee;border-radius:.5rem;background:#fafafa}
.mc-line,.mc-total{display:flex;justify-content:space-between;margin:.25rem 0}
#mc-form input {width:100%;padding:0 10px;border-radius:.45rem;border:1px solid #ddd}
.realestate-page-container #mc-form .select2-selection.select2-selection--single{width:100%;padding:5px 10px;border-radius:.45rem;border:1px solid #ddd}

/* ------------------------------------ */
/* Primary Residence (centered, tidy)   */
/* ------------------------------------ */
#mc-primary-group{
    padding-bottom: 10px;
    /*display:flex;*/
    /*flex-direction:column;*/
    /*align-items:center;        !* center the whole block *!*/
    /*gap:.5rem;*/
    /*text-align:center;         !* center the text *!*/
}

#mc-primary-group .mc-label{
    /*font-weight:400;*/
    margin-bottom:.25rem;
    color: rgb(158,158,158);
}
.mc-margin-top10 {
    margin-top: 10px;
}
#mc-primary-group .mc-radios{
    display:flex;
    align-items:center;        /* vertically center radios within the row */
    /*justify-content:center;    !* horizontally center the row *!*/
    gap:1rem;                  /* replaces margin-right on children */
    flex-wrap:wrap;            /* wraps nicely on small screens */
    margin:0;                  /* reset any inherited margins */
    padding:0;
}
.mc-checkbox {
    width: 25px !important;
}
#mc-primary-group .mc-inline{
    display:inline-flex;       /* fixes baseline quirks in some browsers */
    align-items:center;        /* centers radio + text vertically */
    gap:.5rem;
    line-height:1.2;           /* avoids tall line-height pushing radios up */
    margin:0;                  /* override old margin-right rule */
    cursor:pointer;
}

#mc-primary-group .mc-inline input[type="radio"]{
    margin:0;
    vertical-align:middle;     /* extra safety for old engines */
    /* accent-color: var(--mc-accent, #0b6); */ /* optional color */
}

/* (Optional) Remove legacy spacing rule */
.mc-radios .mc-inline{
    margin-right:0;
}
