:root {
    --vcms-sidebar: #16211f;
    --vcms-accent: #303735;
    --vcms-border: #d5d8d6;
    --vcms-bg: #c9c9c9;
    --vcms-content-wrap: #c9c9c9;
    --vcms-panel-header: #ffffff;
    --vcms-panel-header-text: #25302d;
    --vcms-panel: #efefef;
    --vcms-builder-block: #f6f7f8;
    --vcms-button: #303735;
    --vcms-button-hover: #1f2523;
    --vcms-save: #303735;
    --vcms-save-hover: #1f2523;
}

body {
    background: var(--vcms-bg);
}

.admin-shell {
    min-height: 100vh;
    display: grid;
    grid-template-columns: 260px 1fr;
}

.admin-sidebar {
    background: var(--vcms-sidebar);
    color: #fff;
    padding: 1rem;
    position: sticky;
    top: 0;
    height: 100vh;
    overflow-y: auto;
}

.sidebar-brand {
    display: flex;
    justify-content: center;
}

.sidebar-brand-inner {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: calc(var(--vcms-sidebar-logo-height, 42px) + .5rem);
}

.sidebar-logo {
    display: block;
    height: var(--vcms-sidebar-logo-height, 42px);
    width: auto;
    max-width: 100%;
    object-fit: contain;
}

.sidebar-logo-text {
    font-size: 1.02rem;
    font-weight: 700;
}

.admin-nav-links a {
    color: rgba(255, 255, 255, .82);
    display: flex;
    align-items: center;
    gap: .6rem;
    padding: .58rem .7rem;
    border-radius: .375rem;
    text-decoration: none;
    font-size: .94rem;
    transition: background-color .15s ease, color .15s ease;
}

.admin-nav-links a:hover,
.admin-nav-links a.active {
    background: rgba(255, 255, 255, .1);
    color: #fff;
}

/* Icon inherits the link's color so it always reads as one unit with the
   label, and automatically follows the same hover/active state. */
.admin-nav-icon {
    font-size: 1.05rem;
    line-height: 1;
    color: inherit;
    opacity: .75;
    flex-shrink: 0;
    width: 1.2rem;
    text-align: center;
    transition: opacity .15s ease;
}

.admin-nav-links a:hover .admin-nav-icon,
.admin-nav-links a.active .admin-nav-icon {
    opacity: 1;
}

.admin-mobile-sidebar-toggle i {
    font-size: 1.05rem;
    line-height: 1;
}

.admin-sidebar-mobile {
    width: min(84vw, 290px);
}

.admin-sidebar-mobile .offcanvas-header {
    background: var(--vcms-sidebar);
    color: #fff;
    border-bottom: 1px solid rgba(255, 255, 255, .18);
}

.admin-sidebar-mobile .offcanvas-body {
    background: var(--vcms-sidebar);
    color: #fff;
}

.admin-main {
    min-width: 0;
}

.admin-topbar {
    background: #fff;
    border-bottom: 1px solid var(--vcms-border);
    padding: .85rem 1.25rem;
    position: sticky;
    top: 0;
    z-index: 20;
}

.admin-profile-toggle {
    border: 1px solid var(--vcms-border);
    background: #fff;
    color: #26302d;
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    min-height: 36px;
}

.admin-profile-toggle:hover,
.admin-profile-toggle:focus {
    border-color: var(--vcms-button);
    color: var(--vcms-button);
}

.admin-profile-dropdown {
    min-width: 230px;
    border: 1px solid var(--vcms-border);
    box-shadow: 0 18px 42px rgba(20, 30, 28, .16);
}

.admin-profile-dropdown .dropdown-item {
    border-radius: .45rem;
    display: flex;
    align-items: center;
    gap: .55rem;
    font-weight: 600;
}

.admin-profile-dropdown form {
    margin: 0;
}

.content-wrap {
    padding: 1.25rem;
    background: var(--vcms-content-wrap);
    min-height: calc(100vh - 58px);
}

.btn {
    border-radius: .375rem;
    font-weight: 600;
}

.btn-primary,
.btn-primary:focus {
    background: var(--vcms-button);
    border-color: var(--vcms-button);
    color: #fff;
}

.btn-primary:hover,
.btn-primary:active {
    background: var(--vcms-button-hover) !important;
    border-color: var(--vcms-button-hover) !important;
    color: #fff !important;
}

.btn-success,
.btn-success:focus {
    background: var(--vcms-save);
    border-color: var(--vcms-save);
    color: #fff;
}

.btn-success:hover,
.btn-success:active {
    background: var(--vcms-save-hover) !important;
    border-color: var(--vcms-save-hover) !important;
    color: #fff !important;
}

.btn-outline-primary {
    border-color: var(--vcms-button);
    color: var(--vcms-button);
}

.btn-outline-primary:hover,
.btn-outline-primary:active {
    background: var(--vcms-button) !important;
    border-color: var(--vcms-button) !important;
    color: #fff !important;
}

.metric {
    border: 1px solid var(--vcms-border);
    border-radius: .5rem;
    background: #fff;
    padding: 1rem;
}

.metric-value {
    font-size: 1.7rem;
    font-weight: 700;
}

.panel {
    background: var(--vcms-panel);
    border: 1px solid var(--vcms-border);
    border-radius: .5rem;
    box-shadow: 0 10px 28px rgba(24, 31, 29, .07);
    overflow: hidden;
}

.panel-header {
    padding: 1rem;
    border-bottom: 1px solid var(--vcms-border);
    background: var(--vcms-panel-header);
    color: var(--vcms-panel-header-text);
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    align-items: center;
}

.panel-header h1,
.panel-header h2,
.panel-header h3,
.panel-header h4,
.panel-header h5,
.panel-header h6 {
    color: var(--vcms-panel-header-text);
}

.panel-header .text-muted,
.panel-header .small {
    color: var(--vcms-panel-header-text) !important;
}

.panel-body {
    padding: 1rem;
    background: var(--vcms-panel);
}

.upload-progress-card {
    border: 1px solid #d2d8d5;
    border-radius: .6rem;
    background: #fff;
    padding: .75rem;
}

.upload-progress-card .progress {
    height: .8rem;
}

.upload-progress-card .progress-bar {
    font-size: .72rem;
    font-weight: 700;
}

.settings-workspace {
    display: grid;
    gap: 1rem;
}

.settings-tabs {
    background: #fff;
    border: 1px solid var(--vcms-border);
    border-radius: .5rem;
    padding: .5rem;
    box-shadow: 0 8px 22px rgba(24, 31, 29, .06);
}

.settings-tabs .nav-link {
    color: #47534f;
    font-weight: 600;
}

.settings-tabs .nav-link.active {
    background: var(--vcms-accent);
}

.settings-actions {
    position: sticky;
    bottom: 0;
    z-index: 10;
    background: var(--vcms-content-wrap);
    border-top: 1px solid var(--vcms-border);
    padding: .85rem 0;
    display: flex;
    justify-content: flex-end;
}

.upload-preview {
    height: 88px;
    border: 1px dashed var(--vcms-border);
    border-radius: .5rem;
    background: #f9fbfa;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    color: #75817d;
}

.upload-preview img {
    max-width: 100%;
    max-height: 72px;
    object-fit: contain;
}

.color-control {
    display: grid;
    grid-template-columns: 48px 1fr;
    gap: .5rem;
}

.color-control input[type="color"] {
    width: 48px;
    height: 38px;
    padding: .2rem;
    border: 1px solid var(--vcms-border);
    border-radius: .375rem;
    background: #fff;
}

.dynamic-row {
    border: 1px solid var(--vcms-border);
    border-radius: .5rem;
    padding: 1rem;
    background: #fff;
    margin-bottom: .75rem;
}

.menu-icon-preview {
    min-width: 20px;
    justify-content: center;
    display: inline-flex;
    align-items: center;
}

.menu-icon-preview i {
    font-size: 1rem;
}

.menu-icon-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
    gap: .6rem;
    max-height: 50vh;
    overflow: auto;
    padding-right: .25rem;
}

.menu-icon-option {
    border: 1px solid #d2d8d5;
    border-radius: .65rem;
    min-height: 76px;
    display: grid;
    align-content: center;
    justify-items: center;
    gap: .18rem;
    font-size: .84rem;
    color: #2b3632;
}

.menu-icon-option-mark {
    font-size: 1.15rem;
}

.menu-icon-option:hover {
    border-color: #9aaca5;
    background: #f6f8f7;
}

.save-toast {
    position: fixed;
    inset: 0;
    z-index: 1095;
    display: flex;
    align-items: center;
    justify-content: center;
    pointer-events: none;
    opacity: 0;
    transition: opacity .18s ease;
}

.save-toast.show {
    opacity: 1;
}

.save-toast-card {
    min-width: min(440px, calc(100vw - 2rem));
    max-width: min(540px, calc(100vw - 2rem));
    background: rgba(22, 33, 31, .95);
    color: #fff;
    border-radius: .85rem;
    padding: 1rem 1.1rem;
    box-shadow: 0 18px 45px rgba(0, 0, 0, .35);
    display: flex;
    align-items: center;
    gap: .8rem;
}

.save-toast-card i {
    color: #39c173;
    font-size: 1.3rem;
}

.builder-block {
    border: 1px solid #cfd5d2;
    border-radius: .75rem;
    padding: 1rem;
    background: var(--vcms-builder-block);
    box-shadow: 0 14px 34px rgba(17, 24, 22, .08);
    margin-bottom: 1rem;
}

.builder-block.is-collapsed [data-block-body] { display: none; }
.builder-block.is-collapsed {
    padding-bottom: 1rem;
    background: #fff;
    box-shadow: 0 5px 15px rgba(17, 24, 22, .05);
}
.builder-block.is-collapsed .builder-block-header { margin-bottom: -1rem; border-bottom: 0; }
.builder-block.is-dragging { opacity: .55; border-color: var(--vcms-accent); }
.builder-drag-handle {
    border: 0;
    background: transparent;
    color: #65706d;
    cursor: grab;
    font-size: 1.25rem;
    padding: .25rem;
}
.builder-drag-handle:active { cursor: grabbing; }
.builder-block-icon {
    width: 38px;
    height: 38px;
    border-radius: .6rem;
    background: #f1f3f4;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
}

.media-selection-summary {
    min-height: 42px;
    display: flex;
    align-items: center;
    padding: .55rem .75rem;
    border: 1px solid #d5dcda;
    border-radius: .55rem;
    background: #fff;
    color: #4d5a56;
    font-size: .9rem;
    overflow-wrap: anywhere;
}

.editorial-block-palette { width: min(520px, 100vw) !important; }
.editorial-palette-group { font-size: .75rem; letter-spacing: .08em; color: #71807b; }
.editorial-palette-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem; }
.editorial-palette-item {
    min-height: 92px;
    border: 1px solid #d9dfdc;
    border-radius: .8rem;
    background: #f6f8fb;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    color: #1d2936;
    font-weight: 700;
}
.editorial-palette-item:hover { border-color: var(--vcms-accent); background: #fff; box-shadow: 0 8px 22px rgba(20, 28, 26, .1); }
.editorial-palette-item i { font-size: 1.35rem; }
.seo-assistant { background: #f6f7f7; border: 1px solid #dce1df; border-radius: .75rem; padding: 1rem; }
.seo-score { border-radius: 999px; background: #e8ecea; padding: .25rem .6rem; font-weight: 800; }
.seo-check { display: flex; align-items: flex-start; gap: .5rem; margin: .4rem 0; font-size: .9rem; }
.seo-check.is-ok { color: #18733d; }
.seo-check.is-warning { color: #a55b00; }
.editorial-revisions > summary { cursor: pointer; list-style: none; }
.editorial-revisions > summary::-webkit-details-marker { display: none; }
.editorial-tabs .nav-link { color: #58645f; font-weight: 700; }
.editorial-tabs .nav-link.active { color: var(--vcms-accent); }
.form-field-card { border: 1px solid #d8dfdc; border-radius: .8rem; background: #fff; padding: 1rem; margin-bottom: 1rem; }
.form-field-card.is-dragging { opacity: .55; border-color: var(--vcms-accent); }
.form-builder-preview { max-width: 760px; margin: 0 auto; border: 1px dashed #bcc7c2; border-radius: .9rem; background: #fff; padding: clamp(1rem, 3vw, 2rem); }
.form-submission-card.is-new { border-left: 4px solid #0d6efd; }
.submission-data-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 1rem; }
.submission-data-grid > div { background: #f7f8f8; border-radius: .65rem; padding: .8rem; }
.submission-data-grid dt { color: #66736f; font-size: .76rem; text-transform: uppercase; letter-spacing: .04em; margin-bottom: .25rem; }
.submission-data-grid dd { margin: 0; overflow-wrap: anywhere; }

.builder-block-header {
    margin: -1rem -1rem 1rem;
    padding: .9rem 1rem;
    background: #ffffff;
    border-bottom: 1px solid #d3d9d6;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
}

.builder-block-heading-wrap {
    flex: 1;
    min-width: 280px;
}

.builder-block-title-toggle {
    width: 100%;
    border: 0;
    padding: 0;
    background: transparent;
    color: inherit;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    text-align: left;
}

.builder-block-title-toggle:hover strong,
.builder-block-title-toggle:focus-visible strong {
    color: var(--vcms-accent);
}

.builder-block-title-toggle:focus-visible {
    outline: 2px solid var(--vcms-accent);
    outline-offset: 4px;
    border-radius: .3rem;
}

.builder-block-toggle-hint {
    color: #65706d;
    font-size: .78rem;
    font-weight: 700;
    white-space: nowrap;
}

.builder-block-type-wrap {
    max-width: 360px;
}

.builder-block-header-tools {
    display: flex;
    align-items: center;
    gap: .75rem;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.builder-active-switch {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    padding: .3rem .55rem;
    border: 1px solid #d1d7d4;
    border-radius: .5rem;
    background: #f8fafa;
    min-height: auto;
    cursor: pointer;
    user-select: none;
}

.builder-active-switch.form-check,
.builder-active-switch.form-switch {
    padding-left: .55rem;
    margin-bottom: 0;
}

.builder-active-switch .form-check-label {
    margin: 0;
    color: #2d3734;
    font-weight: 600;
}

.builder-active-switch .form-check-input {
    float: none;
    margin: 0;
}

.builder-subpanel {
    border: 1px solid #d6ddda;
    border-radius: .65rem;
    background: #ffffff;
    box-shadow: 0 6px 18px rgba(22, 31, 29, .05);
    padding: .9rem;
}

.builder-subpanel-title {
    font-weight: 700;
    color: #25302d;
    margin-bottom: .75rem;
    font-size: .96rem;
}

.link-builder [data-link-field][hidden] {
    display: none !important;
}

.block-fields[hidden] {
    display: none !important;
}

.rich-field {
    border: 1px solid #d6dad8;
    border-radius: .5rem;
    overflow: hidden;
    background: #fff;
}

.rich-field > .form-label {
    padding: .75rem .85rem 0;
}

.rich-toolbar {
    display: flex;
    flex-wrap: wrap;
    gap: .35rem;
    padding: .6rem .75rem;
    background: #f6f7f7;
    border-bottom: 1px solid #d6dad8;
}

.rich-toolbar button,
.rich-toolbar input[type="color"] {
    min-width: 34px;
    height: 32px;
    border: 1px solid #9ca5a1;
    border-radius: .375rem;
    background: #fff;
    color: #303735;
    font-weight: 600;
}

.rich-toolbar input[type="color"] {
    padding: .15rem;
}

.rich-editor {
    min-height: 170px;
    padding: .85rem;
    background: #fff;
    outline: none;
}

.rich-editor:focus {
    box-shadow: inset 0 0 0 2px rgba(0, 120, 180, .18);
}

.char-counter {
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}

.builder-image-preview {
    min-height: 92px;
    border: 1px dashed #b8bfbc;
    border-radius: .5rem;
    background: #f8f9f9;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #66736f;
    overflow: hidden;
}

.builder-image-preview img {
    max-height: 110px;
    max-width: 100%;
    object-fit: contain;
}

.selected-media-grid {
    min-height: 44px;
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
    align-items: center;
    color: #66736f;
}

.selected-media-grid span {
    width: 78px;
    height: 52px;
    border: 1px solid #c8ccca;
    border-radius: .375rem;
    overflow: hidden;
    background: #fff;
}

.selected-media-grid img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.media-picker-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
    gap: .75rem;
}

.media-picker-item {
    min-height: 150px;
    border: 1px solid #d6dad8;
    border-radius: .5rem;
    background: #f8f9f9;
    padding: .5rem;
    display: grid;
    gap: .45rem;
    align-content: start;
    text-align: left;
}

.media-picker-item:hover,
.media-picker-item.selected {
    border-color: var(--vcms-button);
    box-shadow: 0 0 0 3px rgba(48, 55, 53, .12);
}

.media-picker-item img {
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
    border-radius: .35rem;
    background: #fff;
}

.media-picker-item span {
    width: 100%;
    aspect-ratio: 4 / 3;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: .35rem;
    background: #fff;
    color: #66736f;
    font-weight: 700;
}

.media-picker-item small {
    color: #303735;
    line-height: 1.25;
    overflow-wrap: anywhere;
}

.repeat-row {
    border: 1px solid #d6dad8;
    border-radius: .5rem;
    padding: .85rem;
    background: var(--vcms-panel);
    margin-bottom: .75rem;
}

.upload-overlay {
    position: fixed;
    inset: 0;
    z-index: 1055;
    background: rgba(15, 20, 19, .36);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
}

.upload-overlay-dialog {
    width: min(420px, 100%);
    border-radius: .65rem;
    background: #fff;
    border: 1px solid #d2d8d5;
    box-shadow: 0 20px 44px rgba(16, 23, 21, .28);
    padding: 1rem;
    display: grid;
    gap: .6rem;
}

.upload-overlay-dialog .spinner-border {
    width: 1.25rem;
    height: 1.25rem;
}

.drag-handle {
    cursor: grab;
    color: #66736f;
}

.media-thumb {
    aspect-ratio: 4 / 3;
    object-fit: cover;
    width: 100%;
    background: #eef2f1;
    border-radius: .375rem;
}

.table td,
.table th {
    vertical-align: middle;
}

.stores-admin-map-wrap {
    border: 1px solid #d2d8d5;
    border-radius: .7rem;
    overflow: hidden;
    background: #fff;
}

.stores-admin-map {
    width: 100%;
    height: clamp(280px, 42vh, 520px);
}

.stores-table th {
    white-space: nowrap;
}

.stores-table td {
    font-size: .92rem;
    line-height: 1.35;
}

.stores-actions {
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    gap: .35rem;
    white-space: nowrap;
}

.stores-actions .btn {
    width: 32px;
    height: 32px;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.customer-import-live {
    position: fixed;
    inset: 0;
    z-index: 1085;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
    background: rgba(18, 27, 25, .52);
}

.customer-import-live.d-none {
    display: none !important;
}

.customer-import-live-card {
    width: min(460px, 100%);
    padding: 1.25rem;
    border: 1px solid var(--vcms-border);
    border-radius: .65rem;
    background: #fff;
    box-shadow: 0 24px 70px rgba(15, 24, 22, .28);
}

.customer-import-live-count {
    font-size: clamp(2rem, 7vw, 3.2rem);
    line-height: 1;
    font-weight: 800;
    letter-spacing: 0;
}

@media (max-width: 991px) {
    .admin-shell {
        grid-template-columns: 1fr;
    }

    .admin-sidebar {
        display: none;
    }

    .admin-topbar {
        padding: .75rem .9rem;
    }

    .admin-topbar form {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-end;
        gap: .4rem;
    }

    .builder-block-header {
        flex-direction: column;
        align-items: stretch;
    }

    .builder-block-type-wrap {
        max-width: none;
    }

    .builder-block-header-tools {
        justify-content: flex-start;
    }
}

.support-admin-workspace{min-height:calc(100vh - 180px)}.support-inbox-list{max-height:calc(100vh - 255px);overflow:auto}.support-thread{height:calc(100vh - 390px);min-height:360px;overflow:auto;background:#f4f6f5;display:flex;flex-direction:column;gap:.75rem}.support-message{max-width:82%;padding:.75rem 1rem;border-radius:1rem;background:#fff;border:1px solid #dfe4e2}.support-message.is-admin{align-self:flex-end;background:#e8f2ef}.support-message time{display:block;font-size:.72rem;color:#6c757d;margin-top:.35rem}.admin-nav-links a{display:flex;align-items:center}

/* Admin experience 2026: superfici chiare, gerarchia visiva e controlli coerenti. */
body{background:#f3f6fb;color:#172033;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}
.admin-shell{grid-template-columns:276px minmax(0,1fr);background:#f3f6fb}
.admin-sidebar{padding:1rem .8rem;background:linear-gradient(180deg,color-mix(in srgb,var(--vcms-sidebar) 88%,#12284d) 0%,color-mix(in srgb,var(--vcms-sidebar) 58%,#07172e) 100%);box-shadow:8px 0 32px rgba(15,30,55,.08)}
.sidebar-brand{padding:.35rem .5rem 1rem;border-bottom:1px solid rgba(255,255,255,.1);margin-bottom:.75rem!important}
.admin-nav-links{gap:.2rem!important}.admin-nav-links a{min-height:44px;padding:.68rem .8rem;border-radius:11px;font-weight:600;font-size:.92rem}.admin-nav-links a:hover{background:rgba(255,255,255,.09)}.admin-nav-links a.active{background:rgba(255,255,255,.2);box-shadow:inset 0 0 0 1px rgba(255,255,255,.14);color:#fff}.admin-nav-icon{width:1.35rem}
.admin-main{background:#f3f6fb}.admin-topbar{min-height:76px;padding:.75rem clamp(1rem,2.5vw,2rem);border-bottom:1px solid #e6eaf1;box-shadow:0 5px 22px rgba(30,43,70,.04);z-index:1030}.admin-current-section{color:#1a2335;font-size:.92rem}.admin-topbar-actions{min-width:0}
.admin-icon-button{width:42px;height:42px;padding:0;border:1px solid #edf0f5;background:#fff;color:#1c273a;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 8px 22px rgba(24,36,60,.08)}.admin-icon-button:hover,.admin-icon-button:focus{background:#f8f9fc;border-color:#d8dee9;color:var(--vcms-accent);transform:translateY(-1px)}
.admin-profile-toggle{min-height:46px;padding:.35rem .55rem .35rem .4rem;border:1px solid #edf0f5;border-radius:999px;box-shadow:0 8px 22px rgba(24,36,60,.08);gap:.65rem}.admin-avatar{width:36px;height:36px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;background:linear-gradient(135deg,#1a2134,#766e82);color:#fff;font-size:.78rem;font-weight:800;box-shadow:0 5px 14px rgba(35,35,55,.24)}.admin-profile-copy{display:grid;text-align:left;line-height:1.12;min-width:0}.admin-profile-copy strong{font-size:.86rem;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-profile-copy small{font-size:.69rem;color:#7b8494;margin-top:.14rem}
.admin-profile-dropdown{min-width:290px;border:1px solid #e7eaf0;border-radius:16px;overflow:hidden;box-shadow:0 22px 55px rgba(20,30,52,.18)}.admin-profile-summary{display:flex;align-items:center;gap:.75rem;padding:1rem}.admin-profile-dropdown .dropdown-item{padding:.75rem;border-radius:10px;color:#202a3b}.admin-profile-dropdown .dropdown-item>span{display:grid}.admin-profile-dropdown .dropdown-item small{font-size:.72rem;color:#7a8495;font-weight:500}.admin-profile-dropdown .dropdown-item:hover{background:#f0f2f6}
.notification-count{position:absolute;right:-5px;top:-5px;min-width:20px;height:20px;padding:0 5px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#dc3545;color:#fff;border:2px solid #fff;font-size:.65rem;font-weight:800}.admin-notification-dropdown{width:min(390px,calc(100vw - 24px));border:1px solid #e6eaf0;border-radius:16px;overflow:hidden;box-shadow:0 22px 60px rgba(20,30,52,.2)}.notification-dropdown-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;padding:1rem;border-bottom:1px solid #edf0f5}.notification-dropdown-header>div{display:grid}.notification-dropdown-header small{color:#778194;font-size:.72rem}.notification-list{max-height:420px;overflow:auto}.notification-empty{padding:2rem 1rem;text-align:center;color:#7a8495}.notification-item{display:flex;gap:.75rem;padding:.85rem 1rem;color:#202a3b;text-decoration:none;border-bottom:1px solid #f0f2f6;background:#fff}.notification-item:hover{background:#f7f9fc}.notification-item.is-unread{background:#f0f6ff}.notification-icon{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex:0 0 auto;background:#e9eef8;color:#273a60}.notification-copy{display:grid;min-width:0;line-height:1.3}.notification-copy strong{font-size:.85rem}.notification-copy>span{font-size:.76rem;color:#606b7d;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notification-copy time{font-size:.68rem;color:#8b94a3;margin-top:.25rem}.notification-dropdown-footer{padding:.75rem 1rem;background:#fafbfc;border-top:1px solid #edf0f5;text-align:right}
.content-wrap{padding:clamp(1rem,2.5vw,2rem);background:#f3f6fb;min-height:calc(100vh - 76px)}.content-wrap>*{max-width:1600px;margin-left:auto;margin-right:auto}
.panel,.metric,.settings-tabs,.card{background:#fff;border:1px solid #e6eaf1;border-radius:18px;box-shadow:0 14px 38px rgba(29,42,69,.07)}.panel{overflow:hidden}.panel-header{padding:1rem 1.15rem;background:#fff;border-color:#e9edf3;color:#192337}.panel-header h1,.panel-header h2,.panel-header h3,.panel-header h4,.panel-header h5,.panel-header h6{color:#192337}.panel-header .text-muted,.panel-header .small{color:#758095!important}.panel-body{padding:1.15rem;background:#fff}.metric{padding:1.2rem}.metric-value{color:#172033}
.btn{min-height:39px;border-radius:10px;padding:.48rem .85rem;display:inline-flex;align-items:center;justify-content:center;gap:.4rem;transition:transform .15s ease,box-shadow .15s ease,background-color .15s ease,border-color .15s ease}.btn>.bi{font-size:1em;line-height:1;flex:0 0 auto}.btn:hover{transform:translateY(-1px)}.btn-primary,.btn-success{box-shadow:0 8px 20px color-mix(in srgb,var(--vcms-button) 22%,transparent)}.btn-sm{min-height:33px;border-radius:9px;padding:.35rem .65rem}.btn-link{min-height:auto;box-shadow:none}
.form-control,.form-select,.input-group-text{border-color:#dfe4ec;border-radius:10px;min-height:42px}.form-control:focus,.form-select:focus{border-color:color-mix(in srgb,var(--vcms-accent) 62%,#7ba7ff);box-shadow:0 0 0 4px color-mix(in srgb,var(--vcms-accent) 12%,transparent)}.input-group>.input-group-text{background:#f7f9fc}.input-group>.form-control:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.input-group-text+.form-control{border-top-left-radius:0;border-bottom-left-radius:0}
.table{--bs-table-bg:transparent;--bs-table-border-color:#edf0f4}.table thead th{padding:.85rem .9rem;color:#747f92;font-size:.72rem;text-transform:uppercase;letter-spacing:.07em;background:#f8f9fc}.table tbody td{padding:.9rem}.table-responsive{border-radius:14px}
.alert{border:0;border-radius:12px;box-shadow:0 8px 22px rgba(30,43,70,.06)}
.support-search-panel .panel-body{padding:.75rem}.support-admin-workspace{min-height:calc(100vh - 270px)}.support-inbox-list{max-height:calc(100vh - 330px)}.support-inbox-list .list-group-item{padding:.9rem 1rem;border-color:#edf0f4}.support-inbox-list .list-group-item.active{background:color-mix(in srgb,var(--vcms-accent) 12%,#fff);color:#172033;border-color:color-mix(in srgb,var(--vcms-accent) 22%,#e9edf3)}.support-thread{height:calc(100vh - 470px);min-height:360px;background:#f5f7fa;padding:1.15rem}.support-message{box-shadow:0 5px 16px rgba(30,43,70,.05);border-color:#e4e8ef}.support-message.is-admin{background:color-mix(in srgb,var(--vcms-accent) 9%,#fff);border-color:color-mix(in srgb,var(--vcms-accent) 18%,#e4e8ef)}.support-composer textarea{resize:vertical;min-height:92px}.support-quick-buttons{display:flex;gap:.4rem;flex-wrap:wrap}.support-quick-replies-manager>summary{cursor:pointer;list-style:none}.support-quick-replies-manager>summary::-webkit-details-marker{display:none}.support-quick-replies-manager[open]>summary i{transform:rotate(180deg)}
.admin-row-actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:.35rem;white-space:nowrap}.admin-row-actions form{display:inline-flex;margin:0}.customer-password-reset-box{padding:.9rem;border:1px solid #e1e6ee;border-radius:12px;background:#f8f9fc}.customer-password-reset-box .small{line-height:1.45}
@media(max-width:991px){.admin-shell{grid-template-columns:1fr}.admin-profile-copy{display:none}.admin-profile-toggle{padding:.3rem}.admin-topbar{min-height:66px}.content-wrap{min-height:calc(100vh - 66px)}.support-thread{height:50vh}.support-inbox-list{max-height:38vh}}
@media(max-width:767.98px){.admin-row-actions{gap:.3rem}.admin-row-actions .btn{width:38px;height:38px;padding:0}.admin-row-actions .admin-action-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}}
@media(max-width:575px){.admin-topbar-actions{gap:.35rem!important}.admin-icon-button{width:39px;height:39px}.admin-profile-toggle .bi-chevron-down{display:none}.admin-current-section{font-size:.8rem}.content-wrap{padding:.8rem}.admin-page-heading{flex-direction:column}.admin-page-heading>div:last-child{width:100%;justify-content:flex-start!important}.panel,.metric,.settings-tabs,.card{border-radius:14px}}
