/*=================== Footer menu manager ===================*/
.fm-columns { display: grid; grid-template-columns: 1fr; gap: 16px; }
.fm-column {
    padding: 16px;
    background: var(--dash-bg);
    border: 1px solid var(--dash-line);
    border-radius: var(--dash-radius);
}
.fm-column-head { display: flex; align-items: center; gap: 10px; margin-bottom: 12px; }
.fm-column-ico {
    flex: 0 0 34px;
    width: 34px; height: 34px;
    display: inline-flex; align-items: center; justify-content: center;
    background: var(--dash-gold-soft);
    border-radius: 9px;
    color: var(--dash-gold);
    font-size: 15px;
}
.fm-column-title { font-weight: 700; }

.fm-links li {
    display: flex; align-items: center; gap: 8px;
    padding: 7px 0;
}
.fm-links .fm-link-label { flex: 0 0 38%; }
.fm-links .fm-link-url   { flex: 1 1 auto; }

.fm-add-link {
    display: inline-flex; align-items: center; gap: 7px;
    margin-top: 10px;
    padding: 8px 14px;
    background: transparent;
    border: 1px dashed var(--dash-line);
    border-radius: 9px;
    color: var(--dash-muted);
    font-size: 12.5px;
    cursor: pointer;
    transition: all .25s ease;
}
.fm-add-link:hover { border-color: var(--dash-gold); color: var(--dash-gold); }

.fm-about { min-height: 110px; }

.fm-social { display: flex; align-items: center; gap: 10px; margin-bottom: 12px; }
.fm-social-ico {
    flex: 0 0 38px;
    width: 38px; height: 38px;
    display: inline-flex; align-items: center; justify-content: center;
    background: var(--dash-surface-2);
    border: 1px solid var(--dash-line);
    border-radius: 9px;
    color: var(--dash-gold);
    font-size: 15px;
}

/*=================== preview ===================*/
.fm-preview {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    padding: 16px;
    background: #000;
    border: 1px solid var(--dash-line);
    border-radius: var(--dash-radius);
}
.fm-preview h6 {
    margin: 0 0 8px;
    font-size: 12px;
    font-weight: 700;
    color: var(--dash-gold);
    text-transform: uppercase;
    letter-spacing: .4px;
}
.fm-preview li { font-size: 12px; color: #b9b9c4; padding: 3px 0; }

@media (min-width: 768px) { .fm-columns { grid-template-columns: 1fr 1fr; } }
@media (max-width: 575.98px) {
    .fm-links li { flex-wrap: wrap; }
    .fm-links .fm-link-label, .fm-links .fm-link-url { flex: 1 1 100%; }
}
