







:root {
    --cvf-z-overlay: 99999;
    --cvf-z-modal: 100000;
    --cvf-z-notification: 100001;
}















.cv-vault-wrap,
.cv-vault-wrap.cv-theme-navy,
.cv-login-wrap {
    --cvf-primary: #1e3a5f;
    --cvf-primary-light: #2a5298;
    --cvf-primary-rgb: 30,58,95;
    --cvf-accent: #e8913a;
    --cvf-accent-light: #f5a623;
    --cvf-success: #27ae60;
    --cvf-danger: #e74c3c;
    --cvf-bg: #f7f8fc;
    --cvf-card: #ffffff;
    --cvf-border: #e4e8ee;
    --cvf-text: #2c3e50;
    --cvf-text-muted: #5a6c7d;
    --cvf-radius: 12px;
    --cvf-shadow: 0 2px 16px rgba(0,0,0,0.05);
    --cvf-link: #1a56db;
    --cvf-tag-blue: #949494;
    --cvf-tag-blue-bg: #e8f0fe;
    --cvf-tag-green: #155724;
    --cvf-tag-green-bg: #d4edda;
    --cvf-tag-orange: #856404;
    --cvf-tag-orange-bg: #fff3cd;
    --cvf-tag-red: #721c24;
    --cvf-tag-red-bg: #f8d7da;
    --cvf-tag-purple: #6b21a8;
    --cvf-tag-purple-bg: #f3e8ff;
    --cvf-tag-teal: #00796b;
    --cvf-tag-teal-bg: #e0f7fa;
}


.cv-vault-wrap.cv-theme-emerald {
    --cvf-primary: #064e3b;
    --cvf-primary-light: #059669;
    --cvf-primary-rgb: 6,78,59;
    --cvf-accent: #f59e0b;
    --cvf-accent-light: #fbbf24;
    --cvf-link: #059669;
}


.cv-vault-wrap.cv-theme-violet {
    --cvf-primary: #4c1d95;
    --cvf-primary-light: #7c3aed;
    --cvf-primary-rgb: 76,29,149;
    --cvf-accent: #f59e0b;
    --cvf-accent-light: #fbbf24;
    --cvf-link: #7c3aed;
}


.cv-vault-wrap.cv-theme-bordeaux {
    --cvf-primary: #7f1d1d;
    --cvf-primary-light: #b91c1c;
    --cvf-primary-rgb: 127,29,29;
    --cvf-accent: #f59e0b;
    --cvf-accent-light: #fbbf24;
    --cvf-link: #b91c1c;
}


.cv-vault-wrap.cv-theme-sunset {
    --cvf-primary: #9a3412;
    --cvf-primary-light: #ea580c;
    --cvf-primary-rgb: 154,52,18;
    --cvf-accent: #0ea5e9;
    --cvf-accent-light: #38bdf8;
    --cvf-link: #ea580c;
}


.cv-vault-wrap.cv-theme-charcoal {
    --cvf-primary: #1f2937;
    --cvf-primary-light: #4b5563;
    --cvf-primary-rgb: 31,41,55;
    --cvf-accent: #3b82f6;
    --cvf-accent-light: #60a5fa;
    --cvf-link: #3b82f6;
}











.fcom_wp_page {
    min-height: 0 !important;
    
    scrollbar-gutter: stable;
}





.cv-vault-wrap .cv-preview-overlay,
.cv-vault-wrap .cv-lightbox {
    

}


.cv-vault-wrap {
    max-width: 100%;
    width: 100%;
    margin: 0 auto;
    padding: 0;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, sans-serif !important;
    font-size: 14px !important;
    line-height: 1.6 !important;
    color: var(--cvf-text) !important;
    background-color: transparent !important;
    overflow: visible;
    






    position: relative;
    z-index: 5;
    box-sizing: border-box !important;
    -webkit-text-size-adjust: 100%;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    --cvf-z-content: 1;
    --cvf-z-dropdown: 1000;
    --cvf-z-overlay: 99999;
    --cvf-z-modal: 100000;
    --cvf-z-notification: 100001;
    
    
    --cvf-font-xs: 11px;
    --cvf-font-sm: 12px;
    --cvf-font-base: 13px;
    --cvf-font-md: 14px;
    --cvf-font-lg: 15px;
    --cvf-font-xl: 18px;
    
    --cvf-space-xs: 4px;
    --cvf-space-sm: 8px;
    --cvf-space-md: 12px;
    --cvf-space-lg: 16px;
    --cvf-space-xl: 20px;
    
    --cvf-transition: 0.15s ease;
    
    --cvf-hover-bg: #fafbfc;
    
    --cvf-separator: #f0f1f3;
    
    --cvf-date-muted: #8895a7;
    
    --cvf-author-self-bg: #fff3e0;
    --cvf-author-self: #e65100;
    --cvf-author-admin-bg: #e3f2fd;
    --cvf-author-admin: #1565c0;
    --cvf-author-client: #7c3aed;
    --cvf-author-client-bg: #f3e8ff;
    
    --cvf-icon-bg: #f0f4f8;
    --cvf-icon-size: 32px;
    --cvf-icon-radius: 8px;
}




.cvf-vault-container *,
.cvf-vault-container *::before,
.cvf-vault-container *::after {
    box-sizing: border-box;
}


.cv-vault-wrap *,
.cv-vault-wrap *::before,
.cv-vault-wrap *::after {
    box-sizing: border-box !important;
}
.cv-vault-wrap *:not(.dashicons):not(.dashicons-before) {
    font-family: inherit !important;
}
.cv-vault-wrap *::-webkit-scrollbar { display: none; }
.cv-vault-wrap { scrollbar-width: none; }


.cv-vault-wrap .dashicons,
.cv-vault-wrap .dashicons-before::before {
    font-family: dashicons !important;
    font-style: normal !important;
    font-weight: normal !important;
    font-variant: normal !important;
    text-transform: none !important;
    speak: never;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    display: inline-block;
    text-decoration: none !important;
    text-align: center;
}


.cv-vault-wrap h1, .cv-vault-wrap h2, .cv-vault-wrap h3,
.cv-vault-wrap h4, .cv-vault-wrap h5, .cv-vault-wrap h6 {
    font-family: inherit !important;
    color: var(--cvf-text) !important;
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    padding: 0 !important;
    margin: 0 0 0.5em !important;
    line-height: 1.4 !important;
    font-weight: 700 !important;
    text-transform: none !important;
    letter-spacing: normal !important;
    word-spacing: normal !important;
    text-shadow: none !important;
    text-decoration: none !important;
    float: none !important;
}

.cv-vault-wrap h1::before, .cv-vault-wrap h1::after,
.cv-vault-wrap h2::before, .cv-vault-wrap h2::after,
.cv-vault-wrap h3::before, .cv-vault-wrap h3::after,
.cv-vault-wrap h4::before, .cv-vault-wrap h4::after,
.cv-vault-wrap h5::before, .cv-vault-wrap h5::after,
.cv-vault-wrap h6::before, .cv-vault-wrap h6::after {
    content: none !important;
    display: none !important;
}


.cv-vault-wrap p {
    font-family: inherit !important;
    font-size: inherit !important;
    color: inherit !important;
    background: transparent !important;
    background-color: transparent !important;
    padding: 0 !important;
    margin: 0 0 0.5em !important;
    line-height: inherit !important;
    text-transform: none !important;
    letter-spacing: normal !important;
    text-indent: 0 !important;
}


.cv-vault-wrap span,
.cv-vault-wrap strong,
.cv-vault-wrap b,
.cv-vault-wrap em,
.cv-vault-wrap i:not(.dashicons),
.cv-vault-wrap small,
.cv-vault-wrap label,
.cv-vault-wrap abbr,
.cv-vault-wrap cite,
.cv-vault-wrap code,
.cv-vault-wrap mark,
.cv-vault-wrap sub,
.cv-vault-wrap sup {
    font-family: inherit !important;
    letter-spacing: normal !important;
    text-transform: none !important;
}
.cv-vault-wrap strong, .cv-vault-wrap b { font-weight: 700 !important; }
.cv-vault-wrap em, .cv-vault-wrap i:not(.dashicons) { font-style: italic !important; }
.cv-vault-wrap small { font-size: 85% !important; }


.cv-vault-wrap div {
    font-family: inherit !important;
    letter-spacing: normal !important;
}


.cv-vault-wrap a {
    font-family: inherit !important;
    color: var(--cvf-link, var(--cvf-primary-light)) !important;
    text-decoration: none !important;
    text-transform: none !important;
    letter-spacing: normal !important;
    transition: color .15s, opacity .15s;
    cursor: pointer;
}
.cv-vault-wrap a:hover {
    opacity: .8;
    text-decoration: none !important;
}
.cv-vault-wrap a:visited {
    color: var(--cvf-link, var(--cvf-primary-light)) !important;
    text-decoration: none !important;
}
.cv-vault-wrap a:focus {
    outline: 2px solid var(--cvf-primary) !important;
    outline-offset: 2px !important;
}
.cv-vault-wrap a:active {
    color: var(--cvf-link, var(--cvf-primary-light)) !important;
    text-decoration: none !important;
}


.cv-vault-wrap button,
.cv-vault-wrap input[type="button"],
.cv-vault-wrap input[type="submit"],
.cv-vault-wrap input[type="reset"] {
    font-family: inherit !important;
    font-size: inherit !important;
    line-height: 1.4 !important;
    cursor: pointer;
    border: none;
    outline: none;
    text-transform: none !important;
    letter-spacing: normal !important;
    text-decoration: none !important;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}










.cv-vault-wrap :where(button, input[type="button"], input[type="submit"], input[type="reset"]) {
    background-color: transparent;
    background-image: none;
    color: inherit;
}


.cv-vault-wrap button:focus,
.cv-vault-wrap input[type="button"]:focus,
.cv-vault-wrap input[type="submit"]:focus,
.cv-vault-wrap input[type="reset"]:focus {
    outline: 2px solid var(--cvf-primary) !important;
    outline-offset: 2px !important;
}


.cv-vault-wrap input[type="text"],
.cv-vault-wrap input[type="email"],
.cv-vault-wrap input[type="search"],
.cv-vault-wrap input[type="url"],
.cv-vault-wrap input[type="date"],
.cv-vault-wrap input[type="number"],
.cv-vault-wrap input[type="password"],
.cv-vault-wrap input[type="tel"],
.cv-vault-wrap input[type="file"],
.cv-vault-wrap textarea,
.cv-vault-wrap select {
    font-family: inherit !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
    color: var(--cvf-text) !important;
    background-color: #fff !important;
    background-image: none !important;
    border: 1.5px solid var(--cvf-border) !important;
    border-radius: 8px !important;
    padding: 8px 12px !important;
    outline: none !important;
    box-shadow: none !important;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    transition: border-color .15s;
    max-width: 100% !important;
}


.cv-vault-wrap input[type="text"],
.cv-vault-wrap input[type="email"],
.cv-vault-wrap input[type="search"],
.cv-vault-wrap input[type="url"],
.cv-vault-wrap input[type="number"],
.cv-vault-wrap input[type="password"],
.cv-vault-wrap input[type="tel"],
.cv-vault-wrap select {
    height: 40px !important;
    width: 100% !important;
}


.cv-vault-wrap textarea {
    width: 100% !important;
    height: auto !important;
}


.cv-vault-wrap input[type="date"] {
    height: 40px !important;
    width: auto;
    padding: 8px 12px !important;
    background-color: #fff !important;
    color: var(--cvf-text) !important;
    border: 1.5px solid var(--cvf-border) !important;
}


.cv-vault-wrap input[type="file"] {
    height: auto !important;
    padding: 8px 0 !important;
}
.cv-vault-wrap input[type="file"]::file-selector-button {
    padding: 8px 16px !important;
    background: var(--cvf-primary) !important;
    color: #fff !important;
    border: none !important;
    border-radius: 6px !important;
    cursor: pointer !important;
    font-weight: 600 !important;
    margin-right: 12px !important;
    transition: background 0.2s !important;
}
.cv-vault-wrap input[type="file"]::file-selector-button:hover {
    background: var(--cvf-primary-light) !important;
}


.cv-vault-wrap select {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%235a6c7d' stroke-width='2.5'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 12px center !important;
    padding-right: 32px !important;
}


.cv-vault-wrap input:focus,
.cv-vault-wrap textarea:focus,
.cv-vault-wrap select:focus,
.cv-vault-wrap button:focus {
    border-color: var(--cvf-primary) !important;
    box-shadow: 0 0 0 3px rgba(var(--cvf-primary-rgb), 0.12) !important;
    outline: none !important;
}


.cv-vault-wrap input[type="checkbox"],
.cv-vault-wrap input[type="radio"] {
    -webkit-appearance: auto !important;
    -moz-appearance: auto !important;
    appearance: auto !important;
    width: auto !important;
    height: auto !important;
    border: revert !important;
    border-radius: revert !important;
    padding: revert !important;
    background: revert !important;
    box-shadow: revert !important;
}


.cv-vault-wrap ul, .cv-vault-wrap ol {
    list-style: none !important;
    list-style-type: none !important;
    padding: 0 !important;
    padding-left: 0 !important;
    margin: 0 !important;
    margin-left: 0 !important;
}
.cv-vault-wrap li {
    font-family: inherit !important;
    line-height: inherit !important;
    list-style: none !important;
    list-style-type: none !important;
    padding-left: 0 !important;
    margin-left: 0 !important;
}


.cv-vault-wrap img {
    max-width: 100%;
    height: auto;
    border: none !important;
    box-shadow: none !important;
    outline: none !important;
}


.cv-vault-wrap table {
    border-collapse: collapse !important;
    border-spacing: 0 !important;
    width: 100% !important;
    font-family: inherit !important;
    font-size: inherit !important;
}
.cv-vault-wrap th, .cv-vault-wrap td {
    text-align: left !important;
    padding: 0;
    border: none;
    font-family: inherit !important;
    font-size: inherit !important;
    line-height: inherit !important;
}


.cv-vault-wrap hr {
    border: none !important;
    border-top: 1px solid var(--cvf-border) !important;
    margin: 1em 0 !important;
    padding: 0 !important;
}
.cv-vault-wrap blockquote {
    font-family: inherit !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
}
.cv-vault-wrap pre, .cv-vault-wrap code {
    font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, monospace !important;
    font-size: 13px !important;
}
.cv-vault-wrap ::placeholder {
    font-family: inherit !important;
    color: var(--cvf-text-muted) !important;
    opacity: 1 !important;
}












.cv-vault-wrap {
    max-width: 100%;
    box-sizing: border-box;
}





.cv-vault-header {
    background: linear-gradient(135deg, var(--cvf-primary) 0%, var(--cvf-primary-light) 60%, rgba(var(--cvf-primary-rgb), 0.85) 100%) !important;
    color: #fff !important;
    border-radius: 20px !important;
    padding: 30px 30px 30px !important;
    margin-bottom: 26px !important;
    box-shadow: 0 8px 32px rgba(var(--cvf-primary-rgb), 0.22) !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 28px !important;
    position: relative !important;
    overflow: hidden !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

.cv-vault-header-watermark {
    position: absolute !important;
    right: 0;
    top: 45%;
    transform: translateY(-50%);
    pointer-events: none;
    z-index: var(--cvf-z-content);
    opacity: 0.08;
    line-height: 1;
}
.cv-vault-header-watermark .dashicons {
    font-size: 220px !important;
    width: 220px !important;
    height: 220px !important;
    color: #fff !important;
    font-family: dashicons !important;
}

.cv-vault-header h2,
.cv-vault-header h3,
.cv-vault-header h4,
.cv-vault-header p,
.cv-vault-header span,
.cv-vault-header label,
.cv-vault-header strong {
    color: #fff !important;
}


.cv-vault-header-top {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 24px !important;
    position: relative !important;
    z-index: var(--cvf-z-content) !important;
    width: 100% !important;
    box-sizing: border-box !important;
}
.cv-vault-header-identity {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 22px !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    overflow: visible !important;
    visibility: visible !important;
    width: 100% !important;
    box-sizing: border-box !important;
}


.cv-vault-avatar {
    flex-shrink: 0;
    width: 76px;
    height: 76px;
    min-width: 76px;
    min-height: 76px;
    border-radius: 50%;
    overflow: hidden;
    background: rgba(255,255,255,.18);
    border: 3px solid rgba(255,255,255,.45);
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    box-shadow: 0 4px 16px rgba(0,0,0,.12);
}


.cv-vault-avatar-initials {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex !important;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-size: clamp(15px, 4vw, 26px) !important;
    font-weight: 700 !important;
    color: #fff !important;
    letter-spacing: 1px;
    line-height: 1;
    user-select: none;
    z-index: 1;
}

.cv-vault-wrap .cv-vault-header .cv-vault-avatar img,
.cv-vault-wrap .cv-vault-avatar img,
.cv-vault-avatar img,
.cv-vault-avatar .avatar {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    border-radius: 50% !important;
    object-fit: cover !important;
    max-width: none !important;
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
    background: rgba(255,255,255,.15);
}


.cv-vault-avatar .cv-vault-avatar-img {
    z-index: 2;
    opacity: 0;
    object-fit: cover;
    transition: opacity 0.18s ease;
    pointer-events: none;
}
.cv-vault-avatar .cv-vault-avatar-img.cv-avatar-loaded {
    opacity: 1;
    pointer-events: auto;
}

.cv-vault-avatar-gravatar { display: none !important; z-index: 3; }
.cv-vault-avatar-gravatar.cv-avatar-active { display: block !important; }
.cv-vault-avatar-fcom { z-index: 2; }





.cv-vault-header-text {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    overflow: visible !important;
    max-height: none !important;
    height: auto !important;
    position: relative !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
}
.cv-vault-header h2 {
    font-size: 26px !important;
    font-weight: 700 !important;
    color: #fff !important;
    margin: 0 0 2px !important;
    letter-spacing: -0.3px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}
.cv-vault-header-subtitle {
    font-size: 14px !important;
    color: rgba(255,255,255,.7) !important;
    margin: 0 0 10px !important;
    font-weight: 400 !important;
    letter-spacing: 0.1px;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}


.cv-vault-header-meta {
    display: flex !important;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
    font-size: 12px !important;
    opacity: 0.55;
    visibility: visible !important;
}
.cv-vault-meta-item {
    display: inline-flex;
    align-items: center;
    gap: 3px;
}
.cv-vault-meta-sep {
    width: 3px;
    height: 3px;
    border-radius: 50%;
    background: rgba(255,255,255,.5);
    display: inline-block;
    margin: 0 4px;
}
.cv-vault-meta-icon {
    font-size: 13px !important;
    width: 13px !important;
    height: 13px !important;
    vertical-align: middle;
}


.cv-vault-header-icon {
    font-size: 22px !important;
    width: 22px !important;
    height: 22px !important;
    vertical-align: middle;
    margin-right: 2px;
}




.cv-vault-actions-bar {
    display: flex;
    align-items: stretch;
    gap: 10px;
    margin: 0 0 14px;
    padding: 0;
}
.cv-vault-actions-search-wrap {
    flex: 1;
    position: relative;
    min-width: 0;
}
.cv-vault-actions-search-icon {
    position: absolute;
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 14px;
    pointer-events: none;
}
.cv-vault-wrap .cv-vault-actions-bar .cv-vault-actions-search,
.cv-vault-actions-search {
    width: 100% !important;
    height: 44px !important;
    padding: 0 14px 0 38px !important;
    border: 1.5px solid var(--cvf-border) !important;
    border-radius: 12px !important;
    font-size: 13px !important;
    color: var(--cvf-text) !important;
    background: var(--cvf-card) !important;
    font-family: inherit !important;
    box-shadow: 0 1px 3px rgba(15, 23, 42, .04);
    transition: border-color .2s, box-shadow .2s;
    outline: none !important;
    box-sizing: border-box !important;
}
.cv-vault-actions-search::placeholder {
    color: var(--cvf-text-muted) !important;
}
.cv-vault-actions-search:focus {
    border-color: var(--cvf-primary) !important;
    box-shadow: 0 0 0 3px rgba(var(--cvf-primary-rgb), .08) !important;
}

.cv-vault-actions-period {
    padding: 10px 32px 10px 12px !important;
    border: 1.5px solid var(--cvf-border) !important;
    border-radius: 10px !important;
    background: var(--cvf-card) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%235a6c7d' stroke-width='2.5'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") no-repeat right 10px center !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    appearance: none !important;
    color: var(--cvf-text) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    font-family: inherit !important;
    cursor: pointer;
    transition: border-color .2s;
    flex-shrink: 0;
    white-space: nowrap;
}
.cv-vault-actions-period:focus {
    outline: none !important;
    border-color: var(--cvf-primary) !important;
}

.cv-vault-actions-bar .cv-vault-actions-send-btn,
.cv-vault-actions-bar .cv-dropdown-btn {
    padding: 10px 22px !important;
    background: var(--cvf-primary) !important;
    color: #fff !important;
    border: 2px solid var(--cvf-primary) !important;
    border-radius: 10px !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    cursor: pointer;
    white-space: nowrap;
    transition: background .2s, transform .15s, box-shadow .2s;
    font-family: inherit !important;
    backdrop-filter: none !important;
    box-shadow: 0 2px 8px rgba(var(--cvf-primary-rgb), .25) !important;
}

.cv-vault-actions-bar .cv-btn-plus {
    font-size: 18px !important;
    font-weight: 700 !important;
    color: #fff !important;
    line-height: 1;
}
.cv-vault-actions-bar .cv-vault-actions-send-btn:hover,
.cv-vault-actions-bar .cv-dropdown-btn:hover {
    background: var(--cvf-primary-light) !important;
    border-color: var(--cvf-primary-light) !important;
    transform: translateY(-1px);
    box-shadow: 0 4px 16px rgba(var(--cvf-primary-rgb), .35) !important;
}

.cv-vault-wrap .cv-period-empty {
    padding: 30px 20px;
    text-align: center;
    color: var(--cvf-text-muted);
    font-size: 13px;
    font-style: italic;
}

.cv-vault-stats {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    justify-content: stretch;
    position: relative;
    z-index: var(--cvf-z-content);
}
.cv-vault-stat {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 5px;
    flex: 1;
    padding: 12px 16px;
    background: rgba(255,255,255,.12) !important;
    border: 1px solid rgba(255,255,255,.2) !important;
    border-radius: 12px;
    min-width: 75px;
    cursor: pointer;
    transition: transform .15s, background .15s, box-shadow .15s;
    backdrop-filter: blur(4px);
}
.cv-vault-stat:hover {
    transform: translateY(-2px);
    background: rgba(255,255,255,.25);
    box-shadow: 0 4px 12px rgba(0,0,0,.15);
}
.cv-vault-stat-info { cursor: default; }
.cv-vault-stat-info:hover { transform: none; }
.cv-vault-stat-icon {
    font-size: 22px;
    width: 22px;
    height: 22px;
    line-height: 1;
    color: rgba(255,255,255,.85);
}

.cv-vault-header-icon {
    font-size: 22px !important;
    width: 22px !important;
    height: 22px !important;
    vertical-align: middle;
    margin-right: 2px;
}

.cv-vault-meta-icon {
    font-size: 13px !important;
    width: 13px !important;
    height: 13px !important;
    vertical-align: middle;
    margin-right: 1px;
}
.cv-vault-stat strong {
    font-size: 24px;
    font-weight: 700;
    color: #fff !important;
    line-height: 1;
}
.cv-vault-stat > span:last-child,
.cv-vault-stat span:not(.cv-vault-stat-icon):not(.cv-vault-stat-storage-quota) {
    font-size: 11px;
    color: rgba(255,255,255,.85) !important;
    text-transform: uppercase;
    letter-spacing: .5px;
    font-weight: 600;
    white-space: nowrap;
    line-height: 1;
}

.cv-vault-stat-storage { cursor: default; min-width: 100px; }
.cv-vault-stat-storage:hover { transform: none; }
.cv-vault-stat-storage-detail {
    display: flex; flex-direction: column; align-items: center; gap: 3px;
}
.cv-vault-stat-storage-detail strong {
    font-size: 16px; font-weight: 700; color: #fff !important; line-height: 1;
}
.cv-vault-stat-storage-quota {
    font-size: 10px !important; opacity: 0.7; white-space: nowrap;
}
.cv-vault-stat-storage-gauge {
    width: 100%; height: 4px; background: rgba(255,255,255,.2);
    border-radius: 2px; margin-top: 2px; overflow: hidden;
}
.cv-vault-stat-storage-fill {
    height: 100%; border-radius: 2px;
    transition: width .3s;
}




.cv-vault-stats--storage-only .cv-vault-stat-storage {
    flex-direction: row; align-items: center; justify-content: flex-start;
    gap: 12px; padding: 10px 18px; min-width: 0;
}
.cv-vault-stats--storage-only .cv-vault-stat-storage .cv-vault-stat-storage-detail {
    flex-direction: row; align-items: center; gap: 12px; flex: 1 1 auto; width: 100%;
}
.cv-vault-stats--storage-only .cv-vault-stat-storage-gauge {
    flex: 1 1 auto; margin-top: 0; min-width: 120px; height: 6px;
}


.cv-upgrade-teaser--front {
    text-align: center;
    padding: 48px 24px;
    background: linear-gradient(135deg, #fffbeb 0%, #fef3c7 100%);
    border: 1px solid #fde68a;
    border-radius: 12px;
    margin: 8px 0;
}
.cv-upgrade-teaser--front .cv-upgrade-teaser-icon { margin-bottom: 16px; }
.cv-upgrade-teaser--front .cv-upgrade-teaser-title {
    font-size: 20px; font-weight: 700; color: #1e3a5f; margin: 0 0 10px;
}
.cv-upgrade-teaser--front .cv-upgrade-teaser-desc {
    font-size: 14px; color: #6b7280; max-width: 420px; margin: 0 auto 24px; line-height: 1.6;
}
.cv-upgrade-teaser--front .cv-upgrade-teaser-features {
    display: inline-grid; grid-template-columns: 1fr 1fr; gap: 8px 20px;
    text-align: left; margin-bottom: 20px;
}
.cv-upgrade-teaser--front .cv-upgrade-teaser-feat {
    font-size: 13px; color: #374151; display: flex; align-items: center; gap: 6px;
}
.cv-upgrade-teaser--front .cv-upgrade-teaser-feat .dashicons { font-size: 16px; width: 16px; height: 16px; }

.cv-vault-stat--locked { opacity: .7; }
.cv-vault-stat--muted  { opacity: .6; }
@media (max-width: 600px) {
    .cv-upgrade-teaser--front .cv-upgrade-teaser-features { grid-template-columns: 1fr; }
    .cv-upgrade-teaser--front { padding: 32px 16px; }
}


.cv-settings-collapsible .cv-settings-card-toggle {
    cursor: pointer; display: flex; align-items: center; gap: 6px;
    user-select: none; margin: 0; padding: 0;
}
.cv-settings-collapsible .cv-settings-toggle-arrow {
    margin-left: auto; font-size: 12px; transition: transform .25s ease;
    color: var(--cvf-text-muted, #8a94a6);
}
.cv-settings-collapsible.cv-card-collapsed .cv-settings-toggle-arrow {
    transform: rotate(-90deg);
}
.cv-settings-collapsible .cv-settings-card-body {
    overflow: hidden; transition: max-height .3s ease, opacity .25s ease, margin-top .25s ease;
    margin-top: 16px; opacity: 1;
}
.cv-settings-collapsible.cv-card-collapsed .cv-settings-card-body {
    max-height: 0 !important; opacity: 0; margin-top: 0; pointer-events: none;
}


.cv-sett-drag {
    cursor: grab; user-select: none; -webkit-user-select: none; touch-action: none;
    display: inline-flex; align-items: center; justify-content: center;
    width: 24px; height: 24px; flex: 0 0 auto; border-radius: 6px;
    font-size: 15px; line-height: 1; color: var(--cvf-text-muted, #8a94a6);
    transition: background .15s ease, color .15s ease;
}
.cv-sett-drag:hover { background: var(--cvf-border, rgba(0,0,0,.08)); color: var(--cvf-text, #333); }
.cv-sett-drag:active { cursor: grabbing; }
.cli-settings-card.cv-sett-dragging {
    opacity: .55;
    outline: 2px dashed var(--cvf-accent, #e8913a);
    outline-offset: 2px;
}


.cv-settings-storage-info { padding: 4px 0; }
.cv-settings-storage-value { margin-bottom: 12px; }
.cv-settings-storage-gauge {
    width: 100%; height: 10px; background: var(--cvf-border, #e2e8f0);
    border-radius: 5px; overflow: hidden;
}
.cv-settings-storage-fill {
    height: 100%; border-radius: 5px;
    transition: width .4s ease;
}



.cv-login-wrap { display: flex; align-items: center; justify-content: center; padding: 60px 20px; }
.cv-login-box {
    background: var(--cvf-card); border: 1px solid var(--cvf-border); border-radius: 22px;
    padding: 48px 40px; max-width: 440px; width: 100%;
    box-shadow:
        0 1px 0 rgba(255,255,255,0.8) inset,
        0 24px 60px -20px rgba(var(--cvf-primary-rgb), 0.35),
        0 8px 28px rgba(15, 23, 42, 0.10);
    position: relative; overflow: hidden;
}

.cv-login-box::before {
    content: ""; position: absolute; top: 0; left: 0; right: 0; height: 5px;
    background: linear-gradient(90deg, var(--cvf-primary), var(--cvf-primary-light), var(--cvf-accent));
}
.cv-login-header { text-align: center; margin-bottom: 28px; }
.cv-login-icon {
    display: inline-flex; align-items: center; justify-content: center;
    width: 72px; height: 72px; border-radius: 18px;
    background: linear-gradient(135deg, var(--cvf-primary), var(--cvf-primary-light));
    color: #fff; margin-bottom: 16px;
    box-shadow: 0 10px 24px -6px rgba(var(--cvf-primary-rgb), 0.55);
}
.cv-login-box h2 { font-size: 22px; font-weight: 800; color: var(--cvf-primary); margin: 0 0 8px; }
.cv-login-subtitle { color: var(--cvf-text-muted); font-size: 14px; margin: 0; }


.cv-login-error {
    background: #fef2f2; border: 1px solid #fecaca; color: #991b1b;
    padding: 12px 16px; border-radius: 10px; font-size: 13px;
    margin-bottom: 20px; text-align: center; font-weight: 500;
}


.cv-login-field { margin-bottom: 18px; }
.cv-login-field label {
    display: flex; align-items: center; gap: 6px;
    font-weight: 600; font-size: 13px; color: var(--cvf-text); margin-bottom: 8px;
}
.cv-login-field label .dashicons {
    font-size: 15px; width: 15px; height: 15px; color: var(--cvf-primary);
}
.cv-login-field input[type="text"],
.cv-login-field input[type="password"] {
    width: 100%; padding: 12px 16px; border: 1.5px solid var(--cvf-border);
    border-radius: 10px; font-size: 14px; box-sizing: border-box;
    background: var(--cvf-bg); transition: border-color .2s, box-shadow .2s;
    color: var(--cvf-text);
}
.cv-login-field input:focus {
    border-color: var(--cvf-primary); outline: none;
    box-shadow: 0 0 0 3px rgba(42,82,152,0.12); background: var(--cvf-card);
}
.cv-login-field input::placeholder { color: var(--cvf-text-muted); opacity: 0.6; }


.cv-login-pass-wrap { position: relative; }
.cv-login-pass-wrap input { padding-right: 44px; }
.cv-toggle-pass {
    position: absolute; right: 4px; top: 50%; transform: translateY(-50%);
    background: none; border: none; cursor: pointer; padding: 8px;
    color: var(--cvf-text-muted); transition: color .15s;
}
.cv-toggle-pass:hover { color: var(--cvf-primary); }
.cv-toggle-pass .dashicons { font-size: 18px; width: 18px; height: 18px; }


.cv-login-options {
    display: flex; justify-content: space-between; align-items: center;
    margin-bottom: 24px;
}
.cv-login-remember {
    display: flex; align-items: center; gap: 6px;
    font-size: 13px; color: var(--cvf-text-muted); cursor: pointer;
}
.cv-login-remember input[type="checkbox"] {
    accent-color: var(--cvf-primary); width: 16px; height: 16px;
}
.cv-login-forgot {
    font-size: 13px; color: var(--cvf-primary); text-decoration: none; font-weight: 500;
}
.cv-login-forgot:hover { text-decoration: underline; }


.cv-login-submit {
    width: 100%; padding: 15px; background: linear-gradient(135deg, var(--cvf-primary), var(--cvf-primary-light));
    color: #fff; border: none; border-radius: 12px;
    font-size: 15px; font-weight: 700; letter-spacing: .02em; cursor: pointer;
    transition: transform .15s, box-shadow .15s, filter .15s;
    box-shadow: 0 10px 22px -8px rgba(var(--cvf-primary-rgb), 0.6);
    display: flex; align-items: center; justify-content: center; gap: 8px;
}
.cv-login-submit:hover:not(:disabled) {
    transform: translateY(-2px); filter: brightness(1.05);
    box-shadow: 0 16px 30px -10px rgba(var(--cvf-primary-rgb), 0.7);
}
.cv-login-submit:active:not(:disabled) { transform: translateY(0); }
.cv-login-submit:disabled { opacity: 0.7; cursor: not-allowed; }


@keyframes cv-shake {
    0%, 100% { transform: translateX(0); }
    20%, 60% { transform: translateX(-8px); }
    40%, 80% { transform: translateX(8px); }
}
.cv-shake { animation: cv-shake 0.5s ease-in-out; }


.cv-login-footer {
    text-align: center; margin-top: 20px; padding-top: 16px;
    border-top: 1px solid var(--cvf-border);
    font-size: 12px; color: var(--cvf-text-muted);
    display: flex; align-items: center; justify-content: center; gap: 6px;
}
.cv-login-footer .dashicons { font-size: 14px; width: 14px; height: 14px; }


.cv-login-box .login-username, .cv-login-box .login-password { margin-bottom: 14px; text-align: left; }
.cv-login-box .login-submit input {
    width: 100%; padding: 14px; background: var(--cvf-primary); color: #fff; border: none; border-radius: 10px;
    font-size: 15px; font-weight: 700; cursor: pointer;
}
.cv-login-box .login-submit input:hover { background: var(--cvf-primary-light); }




.cv-tabs {
    display: flex;
    flex-wrap: nowrap;
    gap: 4px;
    margin-bottom: 14px;
    background: var(--cvf-card);
    border: 1.5px solid var(--cvf-border);
    border-radius: var(--cvf-radius);
    padding: 6px;
    box-shadow: var(--cvf-shadow);
    overflow-x: auto;
    scrollbar-width: thin;
    scrollbar-color: rgba(0,0,0,.12) transparent;
}
.cv-tabs::-webkit-scrollbar { height: 4px; }
.cv-tabs::-webkit-scrollbar-track { background: transparent; margin: 0 8px; }
.cv-tabs::-webkit-scrollbar-thumb { background: rgba(0,0,0,.10); border-radius: 4px; }
.cv-tabs:hover::-webkit-scrollbar-thumb { background: rgba(0,0,0,.20); }
.cv-tab {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 10px 14px;
    border: none;
    background: none;
    font-size: 13px;
    font-weight: 600;
    color: var(--cvf-text-muted);
    cursor: pointer;
    border-radius: 8px;
    transition: all 0.2s;
    white-space: nowrap;
    flex-shrink: 0;
}
.cv-tab:hover {
    color: var(--cvf-primary) !important;
    background: rgba(var(--cvf-primary-rgb), 0.06) !important;
}
.cv-tab.active {
    color: #fff !important;
    background: linear-gradient(135deg, var(--cvf-primary), var(--cvf-primary-light)) !important;
    box-shadow: 0 2px 8px rgba(var(--cvf-primary-rgb), 0.3) !important;
}
.cv-tab svg { flex-shrink: 0; width: 13px; height: 13px; }
.cv-tab.active svg { stroke: #fff; }
.cv-tab-count {
    background: rgba(var(--cvf-primary-rgb), 0.08);
    color: var(--cvf-primary);
    font-size: 10px;
    font-weight: 700;
    padding: 2px 8px;
    border-radius: 20px;
    line-height: 1;
    min-width: 18px;
    text-align: center;
}

.cv-vault-wrap .cv-tab-unread { display: inline-flex; align-items: center; justify-content: center; min-width: 18px; height: 18px; padding: 0 5px; margin-left: 4px; border-radius: 999px; background: #ef4444; color: #fff; font-size: 10.5px; font-weight: 800; line-height: 1; }
.cv-tab.active .cv-tab-count {
    background: rgba(255,255,255,0.25);
    color: #fff;
}


.cv-vault-wrap .cv-tab-content { display: none; }
.cv-vault-wrap .cv-tab-content.active { display: block; }




.cv-add-btn {
    display: inline-flex; align-items: center; gap: 8px; padding: 10px 20px;
    background: linear-gradient(135deg, var(--cvf-primary), var(--cvf-primary-light));
    color: #fff !important; border: none; border-radius: 10px;
    font-size: 14px; font-weight: 700; cursor: pointer; margin-bottom: 20px;
    transition: transform .15s, box-shadow .15s;
    box-shadow: 0 2px 8px rgba(var(--cvf-primary-rgb), 0.2);
}
.cv-add-btn:hover {
    transform: translateY(-1px);
    box-shadow: 0 4px 16px rgba(var(--cvf-primary-rgb), 0.3);
}
.cv-add-btn svg { flex-shrink: 0; }

.cv-btn-primary {
    padding: 10px 22px; background: var(--cvf-primary); color: #fff; border: none;
    border-radius: 10px; font-size: 13px; font-weight: 700; cursor: pointer; transition: background 0.2s;
}
.cv-btn-primary:hover { background: var(--cvf-primary-light); }

.cv-modal-btn-save {
    padding: 10px 22px; background: var(--cvf-primary); color: #fff; border: none;
    border-radius: 10px; font-size: 13px; font-weight: 700; cursor: pointer;
    transition: background 0.2s, transform 0.15s; font-family: inherit;
}
.cv-modal-btn-save:hover { background: #152d4a; transform: translateY(-1px); }
.cv-modal-btn-save:disabled { opacity: 0.5; cursor: not-allowed; transform: none; }
.cv-modal-btn-cancel {
    padding: 10px 18px; background: none; border: 1px solid var(--cvf-border);
    border-radius: 10px; font-size: 13px; font-weight: 600; color: var(--cvf-text-muted);
    cursor: pointer; font-family: inherit; transition: all 0.15s;
}
.cv-modal-btn-cancel:hover { border-color: var(--cvf-danger); color: var(--cvf-danger); }

.cv-btn-cancel {
    padding: 10px 18px; background: none; border: 1px solid var(--cvf-border);
    border-radius: 10px; font-size: 13px; font-weight: 600; color: var(--cvf-text-muted); cursor: pointer;
}
.cv-btn-cancel:hover { border-color: var(--cvf-danger); color: var(--cvf-danger); }





.cv-vault-upload {
    background: var(--cvf-card, #fff);
    border: 1px solid var(--cvf-border);
    border-radius: 10px;
    padding: 20px;
    margin-bottom: 16px;
}
.cv-vault-dropzone {
    border: 2px dashed var(--cvf-border);
    border-radius: 10px;
    padding: 24px 20px;
    text-align: center;
    cursor: pointer;
    transition: border-color .2s, background .2s;
    background: var(--cvf-card, #fff);
}
.cv-vault-dropzone:hover,
.cv-vault-dropzone.dragover {
    border-color: var(--cvf-accent);
    background: #fff9f0;
}
.cv-vault-drop-icon {
    font-size: 28px;
    display: block;
    margin-bottom: 6px;
}
.cv-vault-drop-content p {
    margin: 0 0 8px;
    color: var(--cvf-text-muted);
    font-size: 13px;
}
.cv-vault-browse-btn {
    display: inline-block;
    background: var(--cvf-accent, #e8913a);
    color: #fff !important;
    padding: 8px 20px;
    border-radius: 8px;
    cursor: pointer;
    font-weight: 600;
    font-size: 13px;
    transition: background .2s;
    text-decoration: none !important;
}
.cv-vault-browse-btn:hover {
    background: var(--cvf-accent-light, #d47f2e);
}
.cv-vault-drop-content small {
    display: block;
    margin-top: 8px;
    color: var(--cvf-text-muted);
    font-size: 11px;
}

.cv-vault-upload-options {
    display: flex;
    flex-direction: column;
    gap: 0;
    margin-top: 16px;
    background: var(--cvf-bg, #f8f9fb);
    border: 1px solid var(--cvf-border, #e1e5eb);
    border-radius: 10px;
    overflow: hidden;
}

.cv-vault-upload-field {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 16px;
    border-bottom: 1px solid var(--cvf-border, #e1e5eb);
}
.cv-vault-upload-field:last-child {
    border-bottom: none;
}
.cv-vault-upload-field-label {
    font-size: 12px;
    font-weight: 700;
    color: var(--cvf-text-muted, #6b7280);
    white-space: nowrap;
    min-width: 80px;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}
.cv-vault-wrap input[type="text"].cv-vault-upload-desc {
    flex: 1 !important;
    padding: 6px 10px !important;
    border: 1px solid var(--cvf-border) !important;
    border-radius: 6px !important;
    font-size: 13px !important;
    height: auto !important;
    background: #fff !important;
}
.cv-vault-upload-tags {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
    flex: 1;
    min-width: 0;
    position: relative;
}

.cv-vault-upload-tags-row {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    border-bottom: none !important;
}
.cv-vault-upload-tags-row .cv-vault-upload-submit {
    flex-shrink: 0;
    margin-left: auto;
}

.cv-upload-tag-overflow {
    display: none !important;
}
.cv-vault-upload-tags.cv-upload-tags-expanded .cv-upload-tag-overflow {
    display: inline-flex !important;
}

.cv-upload-tag-more-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 24px;
    height: 20px;
    padding: 0 7px;
    border-radius: 10px;
    border: 1px solid var(--cvf-border, #e1e5eb);
    background: var(--cvf-bg, #f8f9fb);
    color: var(--cvf-primary, #1e3a5f);
    font-size: 10px;
    font-weight: 700;
    cursor: pointer;
    transition: all .15s;
}
.cv-upload-tag-more-btn:hover {
    background: var(--cvf-primary, #1e3a5f);
    color: #fff;
    border-color: var(--cvf-primary, #1e3a5f);
}

.cv-vault-upload-submit {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    width: 100% !important;
    padding: 24px !important;
    background: var(--cvf-primary, #1e3a5f) !important;
    color: #fff !important;
    border: none !important;
    border-radius: 14px !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    font-family: inherit !important;
    cursor: pointer !important;
    transition: all .2s !important;
    box-shadow: 0 12px 28px rgba(30,58,95,.30) !important;
}
.cv-vault-upload-submit:hover {
    background: #264d7a !important;
    box-shadow: 0 16px 34px rgba(30,58,95,.38) !important;
    transform: translateY(-1px) !important;
}
.cv-vault-upload-submit:disabled {
    opacity: 0.5 !important;
    cursor: not-allowed !important;
    transform: none !important;
    box-shadow: none !important;
}
.cv-vault-upload-submit .dashicons { font-size: 19px !important; width: 19px !important; height: 19px !important; }

.cv-vault-progress { margin-top: 12px; }
.cv-vault-progress-bar { height: 6px; background: #eee; border-radius: 3px; overflow: hidden; }
.cv-vault-progress-fill { height: 100%; background: var(--cvf-primary, #1e3a5f); width: 0%; transition: width 0.3s; border-radius: 3px; }
.cv-vault-progress-text { font-size: 12px; color: var(--cvf-text-muted); margin-top: 4px; display: block; }

.cv-vault-upload-message { margin-top: 12px; padding: 10px 16px; border-radius: 10px; font-size: 13px; font-weight: 600; }
.cv-vault-upload-message.success { background: #d4edda; color: #155724; }
.cv-vault-upload-message.error { background: #f8d7da; color: #721c24; }


.cv-vault-wrap .cv-perfile-card {
    background: #f8f9fb;
    border: 1px solid var(--cvf-border, #d0d5dd);
    border-radius: 10px;
    padding: 12px 14px;
    margin-bottom: 10px;
}
.cv-vault-wrap .cv-perfile-header {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 8px;
}
.cv-vault-wrap .cv-perfile-name {
    font-size: 12.5px;
    font-weight: 600;
    color: var(--cvf-primary, #1e3a5f);
    flex: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.cv-vault-wrap .cv-perfile-remove {
    background: none !important;
    border: none !important;
    color: #767676 !important;
    font-size: 18px !important;
    cursor: pointer !important;
    padding: 0 4px !important;
    line-height: 1 !important;
    min-width: auto !important;
}
.cv-vault-wrap .cv-perfile-remove:hover {
    color: #c0392b !important;
}
.cv-vault-wrap .cv-perfile-fields {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: flex-start;
}
.cv-vault-wrap .cv-perfile-field {
    display: flex;
    flex-direction: column;
    gap: 3px;
}
.cv-vault-wrap .cv-perfile-field label {
    font-size: 10px !important;
    font-weight: 600 !important;
    color: #5a6c7d !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}
.cv-vault-wrap .cv-perfile-field input[type="text"],
.cv-vault-wrap .cv-perfile-field input[type="date"] {
    padding: 5px 10px !important;
    border: 1px solid var(--cvf-border, #d0d5dd) !important;
    border-radius: 8px !important;
    font-size: 12px !important;
    background: #fff !important;
    min-width: 140px !important;
    height: auto !important;
}
.cv-vault-wrap .cv-perfile-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    padding-top: 2px;
}
.cv-vault-wrap .cv-perfile-tag {
    padding: 2px 8px !important;
    border-radius: 10px !important;
    font-size: 10px !important;
    font-weight: 600 !important;
    border: 1.5px solid currentColor !important;
    background: rgba(255,255,255,.85) !important;
    cursor: pointer !important;
    line-height: 1.3 !important;
    opacity: 0.5;
    transition: opacity .15s;
}
.cv-vault-wrap .cv-perfile-tag.cv-form-tag-active {
    opacity: 1;
    background: currentColor !important;
}
.cv-vault-wrap .cv-perfile-tag.cv-form-tag-active {
    color: inherit;
}
.cv-vault-wrap .cv-vault-upload-action {
    margin-top: 10px;
    text-align: right;
}


.cv-vault-wrap .cv-updz { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; padding: 34px 24px; border: 2px dashed var(--cvf-border, #cdd5e0); border-radius: 16px; background: var(--cvf-bg-soft, #f8fafc); text-align: center; cursor: pointer; transition: border-color .15s, background .15s; }
.cv-vault-wrap .cv-updz:hover, .cv-vault-wrap .cv-updz.dragover { border-color: var(--cvf-primary, #2563eb); background: #eef4ff; }
.cv-vault-wrap .cv-updz-ico { font-size: 38px; width: 38px; height: 38px; color: var(--cvf-primary, #2563eb); }
.cv-vault-wrap .cv-updz-title { font-size: 15px; font-weight: 600; color: var(--cvf-text-dark, #1e293b); }
.cv-vault-wrap .cv-updz-browse { display: inline-flex; align-items: center; gap: 8px; background: var(--cvf-primary, #2563eb); color: #fff; border: none; border-radius: 10px; padding: 10px 20px; font-size: 14px; font-weight: 600; cursor: pointer; transition: filter .15s; }
.cv-vault-wrap .cv-updz-browse .dashicons { font-size: 17px; width: 17px; height: 17px; }
.cv-vault-wrap .cv-updz-browse:hover { filter: brightness(1.08); }
.cv-vault-wrap .cv-updz-hint { font-size: 12px; color: var(--cvf-text-muted, #94a3b8); }

.cv-vault-wrap .cv-perfile-top { display: flex; align-items: center; gap: 12px; margin-bottom: 12px; }
.cv-vault-wrap .cv-perfile-thumb { flex: 0 0 auto; width: 44px; height: 44px; border-radius: 10px; overflow: hidden; background: var(--cvf-bg-soft, #f1f5f9); }
.cv-vault-wrap .cv-perfile-thumb .cv-docs-gallery-thumb { width: 100%; height: 100%; border-radius: 10px; }
.cv-vault-wrap .cv-perfile-thumb .cv-docs-gallery-thumb-ext { display: none; }
.cv-vault-wrap .cv-perfile-thumb .cv-docs-gallery-thumb-ico .dashicons { font-size: 22px; width: 22px; height: 22px; }
.cv-vault-wrap .cv-perfile-thumb .cv-doc-type-vid .cv-docs-gallery-thumb-ico, .cv-vault-wrap .cv-perfile-thumb .cv-doc-type-aud .cv-docs-gallery-thumb-ico { background: #efe9fb; }
.cv-vault-wrap .cv-perfile-thumb .cv-doc-type-vid .dashicons, .cv-vault-wrap .cv-perfile-thumb .cv-doc-type-aud .dashicons { color: #6d28d9; }
.cv-vault-wrap .cv-perfile-id { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; gap: 1px; }
.cv-vault-wrap .cv-perfile-id .cv-perfile-name { font-weight: 600; font-size: 13.5px; color: var(--cvf-text-dark, #1e293b); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.cv-vault-wrap .cv-perfile-id .cv-perfile-size { font-size: 11.5px; color: var(--cvf-text-muted, #94a3b8); }
.cv-vault-wrap .cv-perfile-card .cv-perfile-remove { flex: 0 0 auto; }
.cv-vault-wrap .cv-perfile-remove .dashicons { font-size: 16px; width: 16px; height: 16px; }

.cv-vault-wrap .cv-vault-upload-action { display: flex; flex-direction: column; align-items: stretch; gap: 8px; margin-top: 18px; text-align: center; }
.cv-vault-wrap .cv-updf { position: relative; }
.cv-vault-wrap .cv-updf-btn { display: inline-flex; align-items: center; gap: 8px; background: var(--cvf-card, #fff); border: 1px solid var(--cvf-border, #e8ecf0); border-radius: 10px; padding: 9px 14px; font-size: 13px; font-weight: 500; color: var(--cvf-text, #334155); cursor: pointer; }
.cv-vault-wrap .cv-updf.cv-updf-has .cv-updf-btn { border-color: var(--cvf-primary, #2563eb); color: var(--cvf-primary, #2563eb); }
.cv-vault-wrap .cv-updf-btn .dashicons { font-size: 16px; width: 16px; height: 16px; }
.cv-vault-wrap .cv-updf-caret { font-size: 14px !important; width: 14px !important; height: 14px !important; opacity: .6; }


.cv-vault-wrap .cv-updf-pop { position: absolute; bottom: calc(100% + 6px); left: 0; z-index: 900; min-width: 230px; max-height: 260px; overflow-y: auto; background: var(--cvf-card, #fff); border: 1px solid var(--cvf-border, #e8ecf0); border-radius: 12px; box-shadow: 0 14px 36px rgba(15,23,42,.16); padding: 6px; }
.cv-vault-wrap .cv-updf-opt { display: flex; align-items: center; gap: 8px; padding: 8px 10px; border-radius: 8px; font-size: 13px; color: var(--cvf-text, #334155); cursor: pointer; }
.cv-vault-wrap .cv-updf-opt:hover { background: var(--cvf-bg-soft, #f1f5f9); }
.cv-vault-wrap .cv-updf-opt input { accent-color: var(--cvf-primary, #2563eb); }
.cv-vault-wrap .cv-updf-opt .dashicons { font-size: 15px; width: 15px; height: 15px; color: var(--cvf-text-muted, #94a3b8); }
.cv-vault-wrap .cv-updf-empty { padding: 10px; font-size: 12.5px; color: var(--cvf-text-muted, #94a3b8); }

.cv-vault-wrap .cv-vault-upload-submit { display: flex; align-items: center; justify-content: center; gap: 10px; width: 100%; background: var(--cvf-primary, #2563eb); color: #fff; border: none; border-radius: 14px; padding: 23px 24px; font-size: 16px; font-weight: 700; letter-spacing: .01em; cursor: pointer; box-shadow: 0 12px 26px rgba(37,99,235,.30); transition: filter .15s, transform .08s, box-shadow .15s; }
.cv-vault-wrap .cv-vault-upload-submit:hover { filter: brightness(1.07); box-shadow: 0 16px 32px rgba(37,99,235,.36); }
.cv-vault-wrap .cv-vault-upload-submit:active { transform: translateY(1px); }
.cv-vault-wrap .cv-vault-upload-submit .dashicons { font-size: 19px; width: 19px; height: 19px; }
.cv-vault-wrap .cv-vault-upload-submit:disabled { opacity: .55; cursor: not-allowed; filter: none; box-shadow: none; }
.cv-vault-wrap .cv-vault-upload-hint { order: -1; font-size: 13px; color: var(--cvf-text-muted, #94a3b8); }


.cv-vault-wrap .cv-perfile-card { background: var(--cvf-card, #fff); border: 1px solid var(--cvf-border, #e8ecf0); border-radius: 14px; padding: 16px 18px; margin-top: 12px; box-shadow: 0 1px 3px rgba(15,23,42,.05); }
.cv-vault-wrap .cv-perfile-top { display: flex; align-items: flex-start; gap: 12px; margin-bottom: 14px; }
.cv-vault-wrap .cv-perfile-id { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; gap: 3px; }
.cv-vault-wrap .cv-perfile-lbl { font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; color: var(--cvf-text-muted, #94a3b8); }
.cv-vault-wrap .cv-perfile-title { width: 100%; font-size: 15px; font-weight: 600; color: var(--cvf-text-dark, #1e293b); border: 1px solid var(--cvf-border, #e8ecf0); border-radius: 9px; padding: 9px 12px; background: var(--cvf-bg-soft, #fafbfc); transition: border-color .12s, background .12s; box-sizing: border-box; }
.cv-vault-wrap .cv-perfile-title:focus { outline: none; border-color: var(--cvf-primary, #2563eb); background: #fff; }
.cv-vault-wrap .cv-perfile-id .cv-perfile-size { font-size: 11.5px; color: var(--cvf-text-muted, #94a3b8); }
.cv-vault-wrap .cv-perfile-remove { flex: 0 0 auto; background: none; border: none; cursor: pointer; color: var(--cvf-text-muted, #94a3b8); padding: 4px; border-radius: 8px; margin-top: 16px; }
.cv-vault-wrap .cv-perfile-remove:hover { color: var(--cvf-danger, #e74c3c); background: rgba(231,76,60,.08); }
.cv-vault-wrap .cv-perfile-remove .dashicons { font-size: 16px; width: 16px; height: 16px; }

.cv-vault-wrap .cv-perfile-grid { display: grid; grid-template-columns: repeat(6, 1fr); gap: 18px 16px; align-items: start; }
.cv-vault-wrap .cv-perfile-cell { display: flex; flex-direction: column; gap: 5px; min-width: 0; }

.cv-vault-wrap .cv-perfile-cell.cv-cell-title, .cv-vault-wrap .cv-perfile-cell.cv-cell-desc, .cv-vault-wrap .cv-perfile-cell.cv-cell-exp { grid-column: span 2; }

.cv-vault-wrap .cv-perfile-cell.cv-cell-tags, .cv-vault-wrap .cv-perfile-cell.cv-cell-folders { grid-column: span 3; }
.cv-vault-wrap .cv-perfile-cell.cv-cell-title .cv-perfile-title { width: 100%; height: 42px; font-size: 14px; font-weight: 600; color: var(--cvf-text-dark, #1e293b); border: 1px solid var(--cvf-border, #e8ecf0); border-radius: 10px; padding: 0 12px; background: #fff; box-sizing: border-box; }
.cv-vault-wrap .cv-perfile-cell.cv-cell-title .cv-perfile-title:focus { outline: none; border-color: var(--cvf-primary, #2563eb); }
.cv-vault-wrap .cv-perfile-cell > label { font-size: 12px; font-weight: 600; color: var(--cvf-text-secondary, #475569); }
.cv-vault-wrap .cv-perfile-opt { font-weight: 400; color: var(--cvf-text-muted, #94a3b8); }
.cv-vault-wrap .cv-perfile-cell input[type="text"], .cv-vault-wrap .cv-perfile-cell input[type="date"] { width: 100%; height: 42px; border: 1px solid var(--cvf-border, #e8ecf0); border-radius: 10px; padding: 0 12px; font-size: 14px; color: var(--cvf-text, #334155); background: #fff; box-sizing: border-box; }
.cv-vault-wrap .cv-perfile-cell input:focus { outline: none; border-color: var(--cvf-primary, #2563eb); }
.cv-vault-wrap .cv-perfile-tags { display: flex; flex-wrap: wrap; gap: 8px; align-content: flex-start; }

.cv-vault-wrap .cv-perfile-tags .cv-perfile-tag { padding: 8px 15px !important; border-radius: 999px; border: 1px solid var(--cvf-border, #e8ecf0); background: var(--cvf-bg-soft, #f1f5f9) !important; color: var(--cvf-text, #475569) !important; font-size: 13.5px !important; font-weight: 500 !important; line-height: 1.2 !important; cursor: pointer; transition: all .12s; }
.cv-vault-wrap .cv-perfile-tags .cv-perfile-tag:hover { border-color: var(--cvf-primary, #2563eb); }
.cv-vault-wrap .cv-perfile-tags .cv-perfile-tag.cv-form-tag-active { background: var(--cvf-primary, #2563eb) !important; color: #fff !important; border-color: var(--cvf-primary, #2563eb); }
.cv-vault-wrap .cv-perfile-tag.cv-form-tag-active { background: var(--cvf-primary, #2563eb) !important; color: #fff !important; border-color: var(--cvf-primary, #2563eb); }

.cv-vault-wrap .cv-perfile-folders { position: relative; }
.cv-vault-wrap .cv-perfile-folders .cv-updf-btn { width: 100%; height: 42px; justify-content: flex-start; padding: 0 12px; font-size: 14px; }
.cv-vault-wrap .cv-perfile-folders .cv-updf-label { flex: 1 1 auto; text-align: left; }
.cv-vault-wrap .cv-perfile-folders .cv-updf-pop { top: calc(100% + 6px); bottom: auto; left: 0; right: 0; }
.cv-vault-wrap .cv-vault-upload-hint { font-size: 12.5px; color: var(--cvf-text-muted, #94a3b8); }
@media (max-width: 680px) {
  .cv-vault-wrap .cv-perfile-grid { grid-template-columns: 1fr; }
  .cv-vault-wrap .cv-perfile-cell.cv-cell-title, .cv-vault-wrap .cv-perfile-cell.cv-cell-desc, .cv-vault-wrap .cv-perfile-cell.cv-cell-exp, .cv-vault-wrap .cv-perfile-cell.cv-cell-tags, .cv-vault-wrap .cv-perfile-cell.cv-cell-folders { grid-column: 1 / -1; }
  .cv-vault-wrap .cv-perfile-grid.cv-pf-grid-2 .cv-perfile-cell { grid-column: 1 / -1; }
}


.cv-vault-wrap .cv-perfile-grid.cv-pf-grid-2 .cv-perfile-cell { grid-column: span 3; }
.cv-vault-wrap .cv-perfile-tags .cv-perfile-tag.cv-mu-tag-active { background: var(--cvf-primary, #2563eb) !important; color: #fff !important; border-color: var(--cvf-primary, #2563eb); }
.cv-vault-wrap .cv-updz-cancel { align-self: center; background: none; border: none; color: var(--cvf-text-muted, #94a3b8); font-size: 13px; cursor: pointer; padding: 6px 10px; }
.cv-vault-wrap .cv-updz-cancel:hover { color: var(--cvf-text, #475569); text-decoration: underline; }

.cv-vault-wrap .cv-perfile-title { width: 100%; height: 42px; font-size: 14px; font-weight: 600; color: var(--cvf-text-dark, #1e293b); border: 1px solid var(--cvf-border, #e8ecf0); border-radius: 10px; padding: 0 12px; background: #fff; box-sizing: border-box; }
.cv-vault-wrap .cv-perfile-title:focus { outline: none; border-color: var(--cvf-primary, #2563eb); }





.cv-vault-wrap .cv-perfile-cell .cv-form-tags-row {
    margin: 0 !important; padding: 0 !important; border-top: none !important;
    display: flex; flex-wrap: wrap; align-items: flex-start; gap: 8px;
}
.cv-vault-wrap .cv-perfile-cell .cv-form-tags-row > label { display: none; }

.cv-vault-wrap .cv-perfile-cell.cv-cell-tags, .cv-vault-wrap .cv-perfile-cell.cv-cell-folders { align-self: start; }

.cv-vault-wrap .cv-record-note.cv-perfile-card { margin-top: 14px; }


.cv-vault-wrap .cv-fiche-card { padding: 22px; }
.cv-vault-wrap .cv-fiche-card > .cv-perfile-cell { margin-bottom: 16px; }
.cv-vault-wrap .cv-fiche-card > .cv-perfile-grid { margin-top: 2px; }
.cv-vault-wrap textarea.cv-fiche-content-input { width: 100%; min-height: 120px; font-size: 14px; line-height: 1.5; color: var(--cvf-text-dark, #1e293b); border: 1px solid var(--cvf-border, #e8ecf0); border-radius: 10px; padding: 11px 13px; background: #fff; box-sizing: border-box; resize: vertical; font-family: inherit; }
.cv-vault-wrap textarea.cv-fiche-content-input:focus { outline: none; border-color: var(--cvf-primary, #2563eb); }
.cv-vault-wrap .cv-cell-color .cv-color-picker { display: flex; align-items: center; gap: 10px; }
.cv-vault-wrap .cv-fiche-action { margin-top: 16px; }


.cv-vault-wrap .cv-link-card-form { padding: 22px; }
.cv-vault-wrap .cv-link-card-form > .cv-cell-url { margin-bottom: 16px; }
.cv-vault-wrap .cv-link-action { margin-top: 16px; }




.cv-vault-wrap .cv-card-form .cv-perfile-card,
.cv-vault-wrap .cv-link-form .cv-perfile-card,
.cv-vault-wrap .cv-embed-form .cv-perfile-card { margin-top: 0; }


.cv-vault-wrap button.cv-vault-upload-submit { font-size: 17.5px !important; }
.cv-vault-wrap button.cv-vault-upload-submit .dashicons { font-size: 21px; width: 21px; height: 21px; }


.cv-vault-wrap .cv-embed-card.cv-perfile-card { display: block; padding: 22px; }
.cv-vault-wrap .cv-embed-type-hidden { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; clip: rect(0 0 0 0); }
.cv-vault-wrap .cv-embed-typetabs { display: inline-flex; gap: 4px; padding: 4px; background: var(--cvf-bg-soft, #f1f5f9); border: 1px solid var(--cvf-border, #e8ecf0); border-radius: 12px; margin-bottom: 18px; }
.cv-vault-wrap .cv-embed-typetab { display: inline-flex; align-items: center; gap: 7px; border: 1px solid transparent; background: transparent; color: var(--cvf-text, #475569); font-size: 13.5px; font-weight: 600; padding: 8px 16px; border-radius: 9px; cursor: pointer; transition: all .12s; }
.cv-vault-wrap .cv-embed-typetab .dashicons { font-size: 17px; width: 17px; height: 17px; }
.cv-vault-wrap .cv-embed-typetab:hover { color: var(--cvf-text-dark, #1e293b); }
.cv-vault-wrap .cv-embed-typetab.is-active { background: #fff; color: var(--cvf-primary, #2563eb); border-color: var(--cvf-border, #e8ecf0); box-shadow: 0 1px 3px rgba(15,23,42,.06); }
.cv-vault-wrap .cv-embed-urlbox { margin-bottom: 18px; }
.cv-vault-wrap .cv-embed-urllabel { display: flex; align-items: center; gap: 7px; font-size: 13px; font-weight: 600; color: var(--cvf-text-dark, #1e293b); margin-bottom: 7px; }
.cv-vault-wrap .cv-embed-urllabel .dashicons { font-size: 16px; width: 16px; height: 16px; color: var(--cvf-primary, #2563eb); }
.cv-vault-wrap textarea.cv-embed-urlinput { width: 100%; min-height: 52px; font-size: 14px; color: var(--cvf-text-dark, #1e293b); border: 1px solid var(--cvf-border, #e8ecf0); border-radius: 10px; padding: 11px 13px; background: #fff; box-sizing: border-box; resize: vertical; font-family: inherit; }
.cv-vault-wrap textarea.cv-embed-urlinput:focus { outline: none; border-color: var(--cvf-primary, #2563eb); }
.cv-vault-wrap textarea.cv-embed-urlinput.cv-field-readonly { background: var(--cvf-bg-soft, #f1f5f9); color: var(--cvf-text-muted, #94a3b8); }
.cv-vault-wrap .cv-embed-urlbox .cv-embed-url-hint { display: block; margin-top: 6px; font-size: 12.5px; color: var(--cvf-text-muted, #94a3b8); }
.cv-vault-wrap .cv-embed-card .cv-cell-desc input,
.cv-vault-wrap .cv-embed-card .cv-cell-title input { width: 100%; box-sizing: border-box; }


.cv-vault-wrap input[type="date"].cv-vault-upload-expires {
    padding: 5px 14px !important;
    border: 1px solid var(--cvf-border, #d0d5dd) !important;
    border-radius: 20px !important;
    font-size: 12px !important;
    font-family: inherit !important;
    color: var(--cvf-text, #333) !important;
    background: #fff !important;
    height: 30px !important;
    box-sizing: border-box !important;
}



.cv-front-edit-overlay {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    background: rgba(0,0,0,.45);
    z-index: var(--cvf-z-modal, 100000); 
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
    transform: none !important;
}
.cv-front-edit-modal {
    background: var(--cvf-card, #fff);
    border-radius: 16px;
    width: 100%;
    max-width: 480px;
    box-shadow: 0 20px 60px rgba(0,0,0,.2);
    overflow: hidden;
}
.cv-front-edit-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 18px 22px;
    border-bottom: 1px solid var(--cvf-border, #e1e5eb);
}
.cv-front-edit-header h3 {
    margin: 0 !important;
    padding: 0 !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    color: var(--cvf-text, #1a1a2e) !important;
}
.cv-front-edit-close {
    background: none !important;
    border: none !important;
    font-size: 22px !important;
    color: var(--cvf-text-muted, #8a94a6) !important;
    cursor: pointer;
    padding: 0 !important;
    line-height: 1;
}
.cv-front-edit-close:hover { color: var(--cvf-danger, #dc3545) !important; }
.cv-front-edit-body {
    padding: 20px 22px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}
.cv-front-edit-field {
    display: flex;
    flex-direction: column;
    gap: 5px;
}
.cv-front-edit-label {
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase;
    letter-spacing: .3px;
    color: var(--cvf-text-muted, #6b7280) !important;
}
.cv-vault-wrap input[type="text"].cv-front-edit-input,
.cv-vault-wrap input[type="date"].cv-front-edit-input {
    padding: 8px 14px !important;
    border: 1px solid var(--cvf-border, #d0d5dd) !important;
    border-radius: 10px !important;
    font-size: 13px !important;
    font-family: inherit !important;
    background: #fff !important;
    color: var(--cvf-text, #333) !important;
    height: auto !important;
    width: 100% !important;
    box-sizing: border-box !important;
}
.cv-vault-wrap input[type="text"].cv-front-edit-input:focus,
.cv-vault-wrap input[type="date"].cv-front-edit-input:focus {
    border-color: var(--cvf-primary, #1e3a5f) !important;
    box-shadow: 0 0 0 3px rgba(30,58,95,.08) !important;
    outline: none !important;
}
.cv-front-edit-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}
.cv-front-edit-footer {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    padding: 16px 22px;
    border-top: 1px solid var(--cvf-border, #e1e5eb);
    background: var(--cvf-bg, #f8f9fb);
}
.cv-front-edit-cancel {
    padding: 8px 18px !important;
    border: 1.5px solid var(--cvf-border, #d0d5dd) !important;
    border-radius: 10px !important;
    background: #fff !important;
    color: var(--cvf-text-muted, #6b7280) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    font-family: inherit !important;
    cursor: pointer;
}
.cv-front-edit-cancel:hover { border-color: var(--cvf-text-muted) !important; }
.cv-front-edit-save {
    padding: 8px 22px !important;
    border: none !important;
    border-radius: 10px !important;
    background: var(--cvf-primary, #1e3a5f) !important;
    color: #fff !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    font-family: inherit !important;
    cursor: pointer;
    box-shadow: 0 2px 8px rgba(30,58,95,.2);
    transition: all .2s;
}
.cv-front-edit-save:hover {
    background: #264d7a !important;
    box-shadow: 0 4px 12px rgba(30,58,95,.3);
}


.cv-vault-filter { display: flex; gap: 8px; margin-bottom: 20px; flex-wrap: wrap; }
.cv-filter-btn {
    padding: 8px 18px; border: 1px solid var(--cvf-border); border-radius: 24px;
    background: var(--cvf-card); font-size: 13px; font-weight: 600; cursor: pointer;
    color: var(--cvf-text-muted); transition: all 0.2s;
}
.cv-filter-btn:hover { border-color: var(--cvf-primary); color: var(--cvf-primary); }
.cv-filter-btn.active { background: var(--cvf-primary); color: #fff; border-color: var(--cvf-primary); }


.cv-vault-files { display: flex; flex-direction: column; gap: 10px; }
.cv-vault-file-card {
    display: flex; align-items: center; gap: 16px; background: var(--cvf-card);
    border: 1px solid var(--cvf-border); border-radius: var(--cvf-radius); padding: 16px 20px;
    transition: all 0.2s; box-shadow: var(--cvf-shadow);
}
.cv-vault-file-card:hover { transform: translateX(4px); border-color: var(--cvf-primary-light); }
.cv-vault-file-card[data-hidden="true"] { display: none; }
.cv-vault-file-icon { font-size: 32px; flex-shrink: 0; }
.cv-vault-file-info { flex: 1; min-width: 0; }
.cv-vault-file-info h4 { margin: 0; font-size: 14px; font-weight: 700; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.cv-vault-file-desc { margin: 2px 0 0; font-size: 12px; color: var(--cvf-text-muted); }
.cv-vault-file-meta { display: flex; align-items: center; gap: 6px; margin-top: 4px; font-size: 12px; color: var(--cvf-text-muted); flex-wrap: wrap; }
.cv-vault-sep { opacity: 0.4; }
.cv-vault-self { color: var(--cvf-accent); font-weight: 600; }
.cv-vault-admin { color: var(--cvf-primary); font-weight: 600; }

.cv-vault-file-actions { display: flex; gap: 8px; flex-shrink: 0; }
.cv-vault-action-btn {
    display: inline-flex; align-items: center; justify-content: center;
    width: 36px; height: 36px; border-radius: 10px; border: 1px solid var(--cvf-border);
    background: #fff; cursor: pointer; text-decoration: none; color: var(--cvf-text-muted); transition: all 0.2s;
}
.cv-vault-action-btn:hover { border-color: var(--cvf-primary); color: var(--cvf-primary); background: rgba(var(--cvf-primary-rgb), 0.05); }
.cv-vault-delete-btn:hover, .cv-delete-link-btn:hover { border-color: var(--cvf-danger) !important; color: var(--cvf-danger) !important; background: #fff5f5 !important; }


.cv-vault-empty { text-align: center; padding: 48px; color: var(--cvf-text-muted); }
.cv-vault-empty span { font-size: 48px; display: block; margin-bottom: 12px; }




.cv-card-form {
    background: var(--cvf-card); border: 1px solid var(--cvf-border); border-radius: var(--cvf-radius);
    padding: 12px 12px 14px; margin-bottom: 20px; box-shadow: var(--cvf-shadow);
}
.cv-card-form-row { margin-bottom: 16px; }
.cv-card-form-row input[type="text"],
.cv-card-form-row input[type="url"],
.cv-card-form-row textarea {
    width: 100%; padding: 12px 16px; border: 1px solid var(--cvf-border); border-radius: 10px;
    font-size: 14px; box-sizing: border-box; font-family: inherit; transition: border-color 0.2s;
}
.cv-card-form-row input:focus, .cv-card-form-row textarea:focus {
    border-color: var(--cvf-primary-light); outline: none; box-shadow: 0 0 0 3px rgba(42,82,152,0.1);
}
.cv-card-form-footer {
    display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 14px;
    padding-top: 16px; margin-top: 4px; border-top: 1px solid var(--cvf-border, #e8ecf0);
}
.cv-card-form-actions {
    display: flex; gap: 12px; padding-top: 18px; margin-top: 6px;
    border-top: 1px solid var(--cvf-border, #e8ecf0);
}
.cv-form-tags-row {
    padding-top: 14px; margin-top: 4px; border-top: 1px solid var(--cvf-border, #e8ecf0);
}


.cv-color-picker { display: flex; align-items: center; gap: 10px; }
.cv-color-picker label { font-size: 13px; font-weight: 600; color: var(--cvf-text-muted); }
.cv-color-dot {
    width: 28px; height: 28px; border-radius: 50%; border: 2.5px solid transparent;
    cursor: pointer; transition: all 0.2s; padding: 0;
}
.cv-color-dot:hover { transform: scale(1.18); }
.cv-color-dot.active { border-color: var(--cvf-text); box-shadow: 0 0 0 2px #fff, 0 0 0 4px var(--cvf-text); }


.cv-card-form .cv-btn-primary {
    background: var(--cvf-primary, #1e3a5f); color: #fff; font-weight: 700;
    padding: 10px 24px; border-radius: 8px; border: none; cursor: pointer;
    font-size: 14px; transition: all .2s; box-shadow: 0 2px 8px rgba(30,58,95,.2);
}
.cv-card-form .cv-btn-primary:hover {
    background: #16304f; box-shadow: 0 4px 14px rgba(30,58,95,.3); transform: translateY(-1px);
}
.cv-card-form .cv-btn-cancel {
    background: none; color: var(--cvf-text-muted, #767676); font-weight: 500;
    padding: 10px 18px; border-radius: 8px; border: 1px solid var(--cvf-border, #e0e0e0);
    cursor: pointer; font-size: 13px; transition: all .2s;
}
.cv-card-form .cv-btn-cancel:hover { background: #f5f5f5; color: #666; }


.cv-cards-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 14px; padding-bottom: 20px; }
.cv-vault-wrap .cv-card-item {
    background: var(--cvf-card); border-radius: 12px; box-shadow: 0 1px 6px rgba(0,0,0,.04);
    overflow: hidden; border: 1.5px solid var(--cvf-border, #e8ecf0);
    transition: all .15s;
}
.cv-vault-wrap .cv-card-item:hover {
    transform: translateY(-2px); box-shadow: 0 4px 16px rgba(0,0,0,.08);
    background: #fcfcfd;
}

.cv-vault-wrap .cv-fiche-color { height: 5px; }

.cv-vault-wrap .cv-fiche-body { padding: 16px 18px; }
.cv-vault-wrap .cv-fiche-title {
    font-size: 15px; font-weight: 700; color: var(--cvf-primary, #1e3a5f);
    display: flex; align-items: center; gap: 5px; margin-bottom: 6px;
}
.cv-vault-wrap .cv-fiche-text {
    font-size: 13px; color: var(--cvf-text-muted, #666); line-height: 1.6;
    margin-bottom: 8px; word-break: break-word;
}
.cv-vault-wrap .cv-fiche-text p { margin: 0 0 6px; }

.cv-vault-wrap .cv-fiche-tags { display: flex; gap: 4px; flex-wrap: wrap; margin-bottom: 8px; }
.cv-vault-wrap .cv-fiche-tag {
    display: inline-flex; align-items: center; padding: 2px 8px; border-radius: 10px;
    font-size: 11px; font-weight: 600; gap: 3px;
}
.cv-vault-wrap .cv-fiche-tag-blue { background: var(--cvf-tag-blue-bg); color: var(--cvf-tag-blue); }
.cv-vault-wrap .cv-fiche-tag-green { background: var(--cvf-tag-green-bg); color: var(--cvf-tag-green); }
.cv-vault-wrap .cv-fiche-tag-orange { background: var(--cvf-tag-orange-bg); color: var(--cvf-tag-orange); }
.cv-vault-wrap .cv-fiche-tag-red { background: var(--cvf-tag-red-bg); color: var(--cvf-tag-red); }
.cv-vault-wrap .cv-fiche-tag-purple { background: var(--cvf-tag-purple-bg); color: var(--cvf-tag-purple); }
.cv-vault-wrap .cv-fiche-tag-teal { background: var(--cvf-tag-teal-bg); color: var(--cvf-tag-teal); }

.cv-vault-wrap .cv-fiche-meta {
    display: flex; justify-content: space-between; align-items: center;
    font-size: 12px; color: var(--cvf-text-muted, #767676);
}

.cv-vault-wrap .cv-hover-actions { display: flex; gap: 2px; opacity: 0; transition: opacity .15s; }
.cv-vault-wrap .cv-card-item:hover .cv-hover-actions { opacity: 1; }
.cv-vault-wrap .cv-hover-action-btn {
    background: none; border: none; cursor: pointer; font-size: 14px; padding: 3px 5px;
    color: #aaa; border-radius: 4px; transition: all .15s;
}
.cv-vault-wrap .cv-hover-action-btn:hover { color: var(--cvf-primary, #1e3a5f); background: rgba(30,58,95,.08); }
.cv-vault-wrap .cv-hover-action-delete:hover { color: #e74c3c; background: rgba(231,76,60,.08); }

.cv-vault-wrap .cv-card-item.cv-card-admin {
    border-color: var(--cvf-accent, #e8913a);
    background: linear-gradient(135deg, #fffcf7, #fff9f0);
}
.cv-vault-wrap .cv-card-item.cv-card-admin .cv-fiche-color {
    background: var(--cvf-accent, #e8913a) !important;
}
.cv-vault-wrap .cv-fiche-admin-badge {
    display: inline-flex; align-items: center; gap: 3px;
    background: linear-gradient(135deg, #e8913a, #d4802e); color: #fff;
    font-size: 10px; font-weight: 700; padding: 2px 9px; border-radius: 10px;
    margin-left: 6px; white-space: nowrap; letter-spacing: .2px;
    box-shadow: 0 1px 4px rgba(232,145,58,.3);
}




.cv-link-form {
    background: var(--cvf-card); border: 1px solid var(--cvf-border); border-radius: var(--cvf-radius);
    padding: 12px 12px 14px; margin-bottom: 20px; box-shadow: var(--cvf-shadow);
}
.cv-link-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
@media (max-width: 600px) { .cv-link-form-grid { grid-template-columns: 1fr; } }

.cv-link-form .cv-btn-primary,
#cv-link-form .cv-btn-primary {
    background: var(--cvf-primary, #1e3a5f); color: #fff; font-weight: 700;
    padding: 10px 24px; border-radius: 8px; border: none; cursor: pointer;
    font-size: 14px; transition: all .2s; box-shadow: 0 2px 8px rgba(30,58,95,.2);
}
.cv-link-form .cv-btn-primary:hover,
#cv-link-form .cv-btn-primary:hover {
    background: #16304f; box-shadow: 0 4px 14px rgba(30,58,95,.3); transform: translateY(-1px);
}
.cv-link-form .cv-btn-cancel,
#cv-link-form .cv-btn-cancel {
    background: none; color: var(--cvf-text-muted, #767676); font-weight: 500;
    padding: 10px 18px; border-radius: 8px; border: 1px solid var(--cvf-border, #e0e0e0);
    cursor: pointer; font-size: 13px; transition: all .2s;
}
.cv-link-form .cv-btn-cancel:hover,
#cv-link-form .cv-btn-cancel:hover { background: #f5f5f5; color: #666; }

.cv-links-list { display: flex; flex-direction: column; gap: 10px; padding-bottom: 20px; }
.cv-vault-wrap .cv-link-card {
    display: flex; gap: 14px; padding: 16px 18px;
    background: #fff; border-radius: 12px;
    border: 1.5px solid var(--cvf-border, #e8ecf0);
    box-shadow: 0 1px 6px rgba(0,0,0,.04);
    transition: all .15s;
    cursor: pointer; 
}
.cv-vault-wrap .cv-link-card:hover {
    background: var(--cvf-hover-bg); border-color: var(--cvf-primary, #1e3a5f);
    box-shadow: 0 6px 20px rgba(30,58,95,.12); transform: translateY(-2px);
}

.cv-vault-wrap .cv-link-icon {
    width: 40px; height: 40px; border-radius: 10px; background: var(--cvf-icon-bg);
    display: flex; align-items: center; justify-content: center; flex-shrink: 0;
    font-size: 20px;
}

.cv-vault-wrap .cv-link-body { flex: 1; min-width: 0; }
.cv-vault-wrap .cv-link-title {
    font-size: 14px; font-weight: 700; margin-bottom: 2px;
    display: flex; align-items: center; gap: 6px; flex-wrap: wrap;
}
.cv-vault-wrap .cv-link-title a {
    color: var(--cvf-primary, #1e3a5f); text-decoration: none;
}
.cv-vault-wrap .cv-link-title a:hover { text-decoration: underline; }
.cv-vault-wrap .cv-link-url {
    font-size: 12px; color: var(--cvf-text-muted, #767676);
    overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
    margin-bottom: 2px;
}
.cv-vault-wrap .cv-link-desc {
    font-size: 13px; color: var(--cvf-text-muted, #777); margin-bottom: 4px;
}
.cv-vault-wrap .cv-link-card .cv-link-meta {
    display: flex; justify-content: space-between; align-items: center;
    font-size: 12px; color: var(--cvf-text-muted); margin-top: 4px;
}
.cv-vault-wrap .cv-link-card:hover .cv-hover-actions { opacity: 1; }

.cv-vault-wrap .cv-link-card.cv-link-admin {
    border-color: var(--cvf-accent, #e8913a);
    background: linear-gradient(135deg, #fffcf7, #fff9f0);
}
.cv-vault-wrap .cv-link-card.cv-link-admin .cv-link-icon {
    background: linear-gradient(135deg, #fff3e0, #ffe0b2);
}
.cv-vault-wrap .cv-link-admin-badge {
    display: inline-flex; align-items: center; gap: 3px;
    background: linear-gradient(135deg, #e8913a, #d4802e); color: #fff;
    font-size: 10px; font-weight: 700; padding: 2px 9px; border-radius: 10px;
    white-space: nowrap; letter-spacing: .2px;
    box-shadow: 0 1px 4px rgba(232,145,58,.3);
}
.cv-vault-wrap .cv-link-card.cv-link-admin:hover {
    border-color: #d4802e;
    box-shadow: 0 6px 20px rgba(232,145,58,.18);
}




.cv-vault-wrap .cvf-section-hint {
    font-size: 13px; color: var(--cvf-text-muted, #767676); margin: 0 0 14px;
}



.cv-vault-wrap .cv-note-input {
    display: flex; gap: 10px; padding: 0; margin-bottom: 20px;
    background: none; border: none; border-radius: 0;
}
.cv-vault-wrap .cv-note-field {
    flex: 1; padding: 10px 14px; border: 1px solid var(--cvf-border);
    border-radius: 8px; font-size: 13px; background: #fff; font-family: inherit;
    transition: border-color .2s;
}
.cv-vault-wrap .cv-note-field:focus {
    border-color: var(--cvf-primary, #1e3a5f); outline: none;
}
.cv-vault-wrap .cv-note-send-btn {
    padding: 10px 22px; font-size: 13px; font-weight: 600; border-radius: 8px;
    background: var(--cvf-primary, #1e3a5f); color: #fff; border: none; cursor: pointer;
    transition: background .2s; white-space: nowrap;
}
.cv-vault-wrap .cv-note-send-btn:hover { background: #264d7a; }


.cv-vault-wrap .cv-note-thread {
    background: none; border: none; border-radius: 0;
    box-shadow: none; overflow: visible; padding: 0;
}


.cv-vault-wrap .cv-note-msg {
    display: flex; gap: 12px; padding: 14px 4px;
    position: relative; transition: background .15s;
    border-bottom: 1px solid var(--cvf-separator);
}
.cv-vault-wrap .cv-note-msg:last-child { border-bottom: none; }
.cv-vault-wrap .cv-note-msg:hover { background: var(--cvf-hover-bg); }


.cv-vault-wrap .cv-note-msg[data-author-type="coach"] {
    border-left: 3px solid var(--cvf-primary, #1e3a5f);
    padding-left: 12px;
}


.cv-vault-wrap .cv-note-av {
    width: 32px; height: 32px; border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    font-size: 11px; font-weight: 700; color: #fff; flex-shrink: 0;
}
.cv-vault-wrap .cv-note-av-coach { background: var(--cvf-primary, #1e3a5f); }
.cv-vault-wrap .cv-note-av-client { background: var(--cvf-author-client); }


.cv-vault-wrap .cv-note-who {
    font-size: var(--cvf-font-sm); font-weight: 600; margin-bottom: 2px;
    display: flex; align-items: center; gap: 6px;
}
.cv-vault-wrap .cv-note-who-coach { color: var(--cvf-primary, #1e3a5f); }
.cv-vault-wrap .cv-note-who-client { color: var(--cvf-author-client); }


.cv-vault-wrap .cv-note-admin-badge {
    display: inline-flex; align-items: center;
    background: var(--cvf-primary, #1e3a5f); color: #fff;
    font-size: 10px; font-weight: 600; padding: 2px 8px; border-radius: 6px;
    text-transform: uppercase;
}


.cv-vault-wrap .cv-note-txt {
    font-size: 13.5px; color: var(--cvf-text); line-height: 1.55; word-break: break-word;
}


.cv-vault-wrap .cv-note-time {
    font-size: 11px; color: var(--cvf-text-muted); margin-top: 3px;
}


.cv-vault-wrap .cv-note-msg-actions {
    position: absolute; top: 12px; right: 8px;
    display: flex; gap: 4px; opacity: 0; transition: opacity .15s;
}
.cv-vault-wrap .cv-note-msg:hover .cv-note-msg-actions { opacity: 1; }


.cv-vault-wrap .cvf-sort-controls { display: flex; gap: 4px; }
.cv-vault-wrap .cvf-sort-btn {
    padding: 5px 10px; border: 1px solid var(--cvf-border); border-radius: 7px;
    font-size: 12px; font-weight: 500; background: #fff; color: #777;
    cursor: pointer; transition: all .15s;
}
.cv-vault-wrap .cvf-sort-btn:hover { border-color: var(--cvf-primary, #1e3a5f); color: var(--cvf-primary, #1e3a5f); }
.cv-vault-wrap .cvf-sort-btn.active {
    background: var(--cvf-primary, #1e3a5f); color: #fff; border-color: var(--cvf-primary, #1e3a5f);
}


.cv-vault-wrap .cv-note-month-sep {
    display: flex; align-items: center; gap: 12px;
    margin: 20px 0 10px; padding: 0;
    user-select: none;
}
.cv-vault-wrap .cv-note-month-sep .cv-note-sep-label {
    font-size: 11px; font-weight: 600; color: var(--cvf-date-muted);
    text-transform: uppercase; letter-spacing: .4px; white-space: nowrap;
}
.cv-vault-wrap .cv-note-month-sep .cv-note-sep-count {
    font-size: 10px; color: var(--cvf-text-muted); white-space: nowrap;
}
.cv-vault-wrap .cv-note-month-sep .cv-note-sep-line {
    flex: 1; height: 1px; background: var(--cvf-border);
}





.cv-quick-add {
    position: relative;
    z-index: var(--cvf-z-dropdown);
}

.cv-quick-add-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 16px 36px;
    background: var(--cvf-primary);
    color: #fff;
    border: none;
    border-radius: 14px;
    font-size: 18px;
    font-weight: 800;
    cursor: pointer;
    transition: background 0.2s;
    letter-spacing: 0.3px;
}

.cv-quick-add-btn:hover { background: var(--cvf-primary-light); }

.cv-quick-add-menu {
    position: absolute;
    top: calc(100% + 8px);
    left: 50%;
    transform: translateX(-50%);
    background: var(--cvf-card);
    border: 1px solid var(--cvf-border);
    border-radius: 12px;
    padding: 8px;
    min-width: 240px;
    box-shadow: var(--cvf-shadow);
    z-index: var(--cvf-z-modal);
}

.cv-quick-add-item {
    width: 100%;
    text-align: left;
    padding: 10px 12px;
    background: #fff;
    border: 0;
    border-radius: 10px;
    cursor: pointer;
    font-size: 13px;
    font-weight: 800;
    color: var(--cvf-primary);
    transition: background 0.15s;
}

.cv-quick-add-item:hover { background: rgba(var(--cvf-primary-rgb), 0.04); }

.cv-dashboard {
    background: var(--cvf-card);
    border: 1px solid var(--cvf-border);
    border-radius: var(--cvf-radius);
    padding: 20px;
    margin-bottom: 24px;
    box-shadow: var(--cvf-shadow);
}

.cv-dashboard-header { display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; margin-bottom: 14px; }
.cv-dashboard-title { margin: 0; font-size: 16px; font-weight: 900; color: var(--cvf-primary); }
.cv-dashboard-subtitle { color: var(--cvf-text-muted); font-size: 12px; margin-top: 2px; }
.cv-dashboard-items { display: flex; flex-direction: column; gap: 10px; }

.cv-dashboard-item {
    display: flex;
    gap: 14px;
    padding: 14px 16px;
    border: 1px solid var(--cvf-border);
    border-radius: 12px;
    background: #fff;
}

.cv-dashboard-item-icon {
    width: 40px;
    height: 40px;
    border-radius: 12px;
    background: #eef2f7;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    font-size: 18px;
}

.cv-dashboard-item-body { flex: 1; min-width: 0; }
.cv-dashboard-item-title-row { display: flex; justify-content: space-between; align-items: flex-start; gap: 10px; }
.cv-dashboard-item-title {
    display: block;
    max-width: 340px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.cv-dashboard-meta { color: var(--cvf-text-muted); font-size: 12px; white-space: nowrap; }
.cv-dashboard-item-snippet { color: var(--cvf-text); font-size: 12px; margin-top: 6px; line-height: 1.5; word-break: break-word; }
.cv-dashboard-item-actions { margin-top: 10px; }

.cv-dashboard-link-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 12px;
    border-radius: 10px;
    background: var(--cvf-primary);
    color: #fff;
    text-decoration: none;
    font-weight: 900;
    font-size: 12px;
}

.cv-dashboard-link-btn:hover { background: var(--cvf-primary-light); }




.cv-search-wrap {
    position: relative;
    margin-bottom: 20px;
}

.cv-search-box {
    position: relative;
    display: flex;
    align-items: center;
}

.cv-search-icon {
    position: absolute;
    left: 16px;
    color: var(--cvf-text-muted);
    pointer-events: none;
}

.cv-search-input {
    width: 100%;
    padding: 14px 40px 14px 44px;
    border: 2px solid var(--cvf-border);
    border-radius: var(--cvf-radius);
    font-size: 14px;
    font-family: inherit;
    background: var(--cvf-card);
    color: var(--cvf-text);
    transition: border-color 0.2s, box-shadow 0.2s;
    box-sizing: border-box;
}

.cv-search-input:focus {
    border-color: var(--cvf-primary-light);
    outline: none;
    box-shadow: 0 0 0 3px rgba(42, 82, 152, 0.1);
}

.cv-search-input::placeholder {
    color: var(--cvf-text-muted);
    font-size: 13px;
}

.cv-search-clear {
    position: absolute;
    right: 14px;
    font-size: 22px;
    color: var(--cvf-text-muted);
    cursor: pointer;
    line-height: 1;
    padding: 4px;
}

.cv-search-clear:hover {
    color: var(--cvf-danger);
}

.cv-search-results {
    position: absolute;
    top: calc(100% + 6px);
    left: 0;
    right: 0;
    background: var(--cvf-card);
    border: 1px solid var(--cvf-border);
    border-radius: var(--cvf-radius);
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.12);
    z-index: 200;
    max-height: 400px;
    overflow-y: auto;
}

.cv-search-empty {
    padding: 24px;
    text-align: center;
    color: var(--cvf-text-muted);
    font-size: 14px;
}

.cv-search-result-item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 16px;
    border-bottom: 1px solid #f0f2f5;
    cursor: pointer;
    transition: background 0.15s;
}

.cv-search-result-item:last-child {
    border-bottom: none;
}

.cv-search-result-item:hover {
    background: #f8f9fb;
}

.cv-search-result-icon {
    font-size: 22px;
    flex-shrink: 0;
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #eef2f7;
    border-radius: 10px;
}

.cv-search-result-body {
    flex: 1;
    min-width: 0;
}

.cv-search-result-title {
    font-size: 13px;
    font-weight: 700;
    color: var(--cvf-text);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.cv-search-result-desc {
    font-size: 12px;
    color: var(--cvf-text-muted);
    margin-top: 2px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.cv-search-result-meta {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 2px;
    flex-shrink: 0;
}

.cv-search-result-type {
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    color: var(--cvf-primary);
    background: #eef2f7;
    padding: 2px 8px;
    border-radius: 10px;
}

.cv-search-result-meta span:last-child {
    font-size: 11px;
    color: var(--cvf-text-muted);
}

.cv-search-result-action {
    flex-shrink: 0;
    padding: 6px 12px;
    background: var(--cvf-primary);
    

    color: #fff !important;
    border-radius: 8px;
    text-decoration: none;
    font-size: 12px;
    font-weight: 700;
    transition: background 0.2s;
}

.cv-search-result-action:hover,
.cv-search-result-action:focus {
    background: var(--cvf-primary-light);
    color: #fff !important;
}




.cv-embeds-list { display: flex; flex-direction: column; gap: 20px; }
.cv-embed-item {
    background: var(--cvf-card); border: 1px solid var(--cvf-border); border-radius: var(--cvf-radius);
    overflow: hidden; box-shadow: var(--cvf-shadow);
}
.cv-embed-header { padding: 16px 20px 10px; }
.cv-embed-title { margin: 0; font-size: 15px; font-weight: 700; color: var(--cvf-primary); }
.cv-embed-desc { margin: 4px 0 0; font-size: 13px; color: var(--cvf-text-muted); }
.cv-embed-content {
    padding: 0 20px 16px; position: relative;
}
.cv-embed-content iframe {
    width: 100%; aspect-ratio: 16 / 9; height: auto; border: none; border-radius: 8px;
}
.cv-embed-footer {
    display: flex; justify-content: space-between; align-items: center;
    padding: 10px 20px; border-top: 1px solid var(--cvf-border); background: var(--cvf-hover-bg);
}
.cv-embed-meta { font-size: 12px; color: var(--cvf-text-muted); }




.cv-comment-toggle {
    background: none; border: 1px solid var(--cvf-border); border-radius: 8px;
    padding: 4px 10px; cursor: pointer; font-size: 13px; color: var(--cvf-text-muted);
    transition: all 0.2s;
}
.cv-comment-toggle:hover { border-color: var(--cvf-primary); color: var(--cvf-primary); }
.cv-comments-panel {
    padding: 14px 20px; background: #f8f9fb; border-top: 1px solid var(--cvf-border);
}
.cv-comments-thread { display: flex; flex-direction: column; gap: 10px; margin-bottom: 12px; }
.cv-comments-empty { text-align: center; color: var(--cvf-text-muted); font-size: 13px; padding: 10px 0; }
.cv-comment {
    padding: 10px 14px; border-radius: 10px; position: relative;
}
.cv-comment-admin { background: #fef8f0; border-left: 3px solid var(--cvf-accent, #e8913a); }
.cv-comment-client { background: #f8fafc; border-left: 3px solid var(--cvf-primary, #1e3a5f); }
.cv-comment-header {
    display: flex; align-items: center; gap: 8px; font-size: 12px; margin-bottom: 4px;
}
.cv-comment-header strong { color: var(--cvf-primary); }
.cv-comment-client .cv-comment-header strong { color: var(--cvf-accent); }
.cv-comment-header span { color: var(--cvf-text-muted); }
.cv-comment-delete {
    margin-left: auto; background: none; border: none; color: var(--cvf-text-muted);
    cursor: pointer; font-size: 16px; line-height: 1;
}
.cv-comment-delete:hover { color: var(--cvf-danger); }
.cv-comment-body { font-size: 13px; line-height: 1.5; color: var(--cvf-text); }
.cv-comment-form textarea {
    width: 100%; padding: 8px 12px; border: 1px solid var(--cvf-border); border-radius: 8px;
    font-size: 13px; font-family: inherit; box-sizing: border-box; resize: vertical;
}
.cv-comment-form textarea:focus {
    border-color: var(--cvf-primary-light); outline: none; box-shadow: 0 0 0 2px rgba(42,82,152,0.1);
}




.cv-tags-bar { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 6px; }
.cv-tag {
    display: inline-flex; align-items: center; gap: 4px;
    padding: 2px 10px; border-radius: 20px; font-size: 11px; font-weight: 700;
}
.cv-tag-blue { background: var(--cvf-tag-blue-bg); color: var(--cvf-tag-blue); }
.cv-tag-green { background: var(--cvf-tag-green-bg); color: var(--cvf-tag-green); }
.cv-tag-orange { background: var(--cvf-tag-orange-bg); color: var(--cvf-tag-orange); }
.cv-tag-red { background: var(--cvf-tag-red-bg); color: var(--cvf-tag-red); }
.cv-tag-purple { background: var(--cvf-tag-purple-bg); color: var(--cvf-tag-purple); }



.cv-preview-overlay {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    background: rgba(0,0,0,0.92);
    -webkit-backdrop-filter: blur(8px);
    backdrop-filter: blur(8px);
    z-index: var(--cvf-z-overlay);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
    transform: none !important;
}
.cv-preview-modal {
    background: var(--cvf-card); border-radius: var(--cvf-radius);
    width: 90vw; max-width: 1000px; height: 85vh; max-height: 85vh;
    display: flex; flex-direction: column;
    box-shadow: 0 20px 60px rgba(0,0,0,0.3);
    overflow: hidden;
}
.cv-preview-header {
    display: flex; align-items: center; justify-content: space-between;
    padding: 14px 20px; border-bottom: 1px solid var(--cvf-border);
    background: var(--cvf-bg); flex-shrink: 0;
}
.cv-preview-title {
    font-weight: 600; font-size: 14px; color: var(--cvf-text);
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.cv-preview-close {
    background: none; border: none; font-size: 24px; cursor: pointer;
    color: var(--cvf-text-muted); padding: 0 4px; line-height: 1;
    transition: color 0.15s;
}
.cv-preview-close:hover { color: var(--cvf-danger); }
.cv-preview-body {
    flex: 1; overflow: hidden; display: flex; align-items: center; justify-content: center;
    background: #f0f0f0; position: relative;
}
.cv-preview-body img {
    max-width: 100%; max-height: 100%; object-fit: contain;
}
.cv-preview-body iframe {
    width: 100%; height: 100%; border: none;
}




.cv-col-wm {
    position: absolute; left: 0; right: 0; top: 10%; z-index: 6;
    display: flex; justify-content: space-around; gap: 40px;
    white-space: nowrap; pointer-events: none; user-select: none; overflow: hidden;
    opacity: .24; mix-blend-mode: difference;
    animation: cvColWmSweep 17s ease-in-out infinite alternate;
}
.cv-col-wm span {
    font: 600 12px/1 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
    color: #9a9a9a; white-space: nowrap; letter-spacing: .3px;
}
@keyframes cvColWmSweep { from { top: 8%; } to { top: 86%; } }
@media (prefers-reduced-motion: reduce) { .cv-col-wm { animation: none; top: 48%; } }

.cv-txt-frame { width: 100%; height: 100%; min-height: 60vh; border: none; background: #fff; }
.cv-docs-gallery-stage .cv-txt-frame { height: 60vh; }
.cv-preview-loading {
    font-size: 14px; color: var(--cvf-text-muted);
}
.cv-preview-text-content {
    padding: 28px 32px;
    font-size: 14px;
    line-height: 1.7;
    color: var(--cvf-text, #333);
    overflow-y: auto;
    max-height: 100%;
    text-align: left;
    width: 100%;
}
.cv-preview-text-content p { margin: 0 0 12px; }
.cv-preview-text-content strong { font-weight: 600; }
.cv-preview-text-content .cv-preview-note-header { font-size: 13px; border-bottom: 1px solid var(--cvf-border, #e1e5eb); padding-bottom: 10px; margin-bottom: 12px; }
.cv-preview-embed-content {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 0;
}
.cv-preview-embed-content iframe,
.cv-preview-embed-content video {
    width: 100% !important;
    max-width: 100% !important;
    max-height: 70vh;
    border: none;
    border-radius: 8px;
    aspect-ratio: 16 / 9;
    object-fit: contain;
}

.cv-preview-embed-content .fp_player_wrapper,
.cv-preview-embed-content .fp-media-block,
.cv-preview-embed-content .wp-video,
.cv-preview-embed-content .wp-video-shortcode,
.cv-preview-embed-content .mejs-container,
.cv-preview-embed-content .mejs-overlay,
.cv-preview-embed-content .mejs-mediaelement,
.cv-preview-embed-content .mejs-layers,
.cv-preview-embed-content .mejs-controls {
    width: 100% !important;
    max-width: 100% !important;
}
.cv-preview-embed-content .fp_player_wrapper video,
.cv-preview-embed-content .wp-video video,
.cv-preview-embed-content .mejs-container video {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    aspect-ratio: 16 / 9;
}

.cv-preview-modal.cv-preview-modal-video {
    height: auto !important;
    max-height: 90vh;
}
.cv-preview-modal-video .cv-preview-body {
    height: auto !important;
    min-height: 200px;
}
.cv-preview-modal-video .cv-front-preview-content {
    max-height: 80vh;
}


.cv-preview-modal.cv-preview-modal-audio { height: 82vh; max-height: 90vh; }
.cv-preview-modal-audio .cv-preview-body { height: 100%; }
.cv-embed-player-audio { width: 100%; max-width: 820px; padding: 32px 28px; box-sizing: border-box; }
.cv-preview-embed-content.cv-embed-player-audio iframe { aspect-ratio: auto; max-height: none; }

.cv-preview-embed-content .cv-popup-audio-visualizer { min-height: 0; height: auto; flex: none; padding: 32px; gap: 40px; }
.cv-preview-embed-content .cv-popup-audio-bars { height: 260px; gap: 9px; }
.cv-preview-embed-content .cv-popup-audio-bars span { width: 16px; }
.cv-preview-embed-content .cv-popup-audio-visualizer audio { width: 100%; max-width: 680px; height: 56px !important; min-height: 56px; flex: 0 0 auto; display: block; }

.cv-embed-audio-card { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 26px; width: 100%; padding: 16px 0; }
.cv-embed-audio-ico { font-size: 72px; width: 72px; height: 72px; line-height: 72px; color: var(--cvf-primary, #1e3a5f); opacity: .32; }
.cv-embed-audio-el { width: 100%; max-width: 520px; height: 54px !important; display: block; min-height: 54px; }
.cv-preview-btn { color: var(--cvf-primary-light); }
.cv-preview-btn:hover { color: var(--cvf-primary); }




.cvf-section {
    border: 1px solid var(--cvf-border, #e1e5eb);
    border-radius: 10px;
    overflow: clip;          
    background: var(--cvf-card, #fff);
    margin-bottom: 16px;
}
.cvf-section-header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px;
    padding: 14px 18px !important;
    border-bottom: 1px solid var(--cvf-border, #e1e5eb);
    min-height: 50px;
    box-sizing: border-box !important;
}
.cv-vault-wrap .cvf-section-header h2 {
    margin: 0 !important;
    padding: 0 !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px;
    flex: 1;
    min-width: 0;
    line-height: 1.2 !important;
    border: none !important;
    background: none !important;
}
.cv-vault-wrap .cvf-section-header h2::before,
.cv-vault-wrap .cvf-section-header h2::after {
    display: none !important;
    content: none !important;
}
.cv-vault-wrap .cvf-section-header h2 .dashicons {
    font-size: 18px;
    width: 18px;
    height: 18px;
    opacity: 0.85;
}
.cvf-section-header-actions {
    display: flex !important;
    align-items: center !important;
    gap: 8px;
    flex-shrink: 0;
    margin: 0 !important;
    padding: 0 !important;
}
.cvf-section-header-actions .cv-add-btn {
    font-family: inherit !important;
    font-size: 13px !important;
    padding: 8px 18px !important;
    gap: 6px !important;
    margin: 0 !important;
    line-height: 1.3 !important;
    display: inline-flex !important;
    align-items: center !important;
    background: #fff !important;
    color: var(--cvf-primary, #1e3a5f) !important;
    border: 1.5px solid var(--cvf-primary, #1e3a5f) !important;
    border-radius: 10px !important;
    box-shadow: none !important;
    font-weight: 600 !important;
    opacity: 1 !important;
    transition: all .2s !important;
    transform: none !important;
    cursor: pointer !important;
    white-space: nowrap !important;
    text-transform: none !important;
    letter-spacing: normal !important;
}
.cvf-section-header-actions .cv-add-btn:hover {
    background: #f0f5fb !important;
    box-shadow: 0 2px 8px rgba(30,58,95,0.12) !important;
    transform: translateY(-1px) !important;
}

.cvf-section-header-actions .cv-add-btn.cv-import-agency-btn {
    background: linear-gradient(135deg, #d4af56 0%, #c2972f 100%) !important;
    color: #fff !important;
    border: none !important;
    box-shadow: 0 2px 8px rgba(194,151,47,.25) !important;
    text-shadow: 0 1px 1px rgba(120,86,10,.25) !important;
}
.cvf-section-header-actions .cv-add-btn.cv-import-agency-btn:hover {
    background: linear-gradient(135deg, #dcba66 0%, #caa13a 100%) !important;
    box-shadow: 0 4px 12px rgba(194,151,47,.35) !important;
    transform: translateY(-1px) !important;
}
.cvf-section-header-actions .cv-add-btn.cv-import-agency-btn .dashicons {
    color: #fff !important;
    font-size: 16px;
    width: 16px;
    height: 16px;
}
.cvf-section-header-actions .cv-add-btn svg {
    width: 12px;
    height: 12px;
}
.cvf-section-filters {
    padding: 10px 16px 0;
}






.cv-mbar { position: relative; }
.cv-mbar-main { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }

.cv-mbar-search { position: relative; flex: 1 1 240px; min-width: 200px; }
.cv-mbar-search .dashicons { position: absolute; left: 12px; top: 50%; transform: translateY(-50%); color: var(--cvf-text-muted); font-size: 18px; width: 18px; height: 18px; pointer-events: none; }
.cv-vault-wrap .cv-mbar-search input {
    width: 100%; height: 42px; box-sizing: border-box;
    border: 1px solid var(--cvf-border); border-radius: 12px;
    padding: 0 14px 0 38px; font-size: 14px; background: var(--cvf-card); color: var(--cvf-text); outline: none;
}
.cv-vault-wrap .cv-mbar-search input:focus { border-color: var(--cvf-primary); }

.cv-mbar-types { display: inline-flex; align-items: center; gap: 2px; background: var(--cvf-bg); border-radius: 12px; padding: 4px; }
.cv-vault-wrap .cv-mbar-types .cv-mtype-btn {
    height: 34px; padding: 0 14px; border: none; background: transparent; border-radius: 9px;
    font-size: 13px; font-weight: 600; color: var(--cvf-text-muted); cursor: pointer; transition: all .12s;
    display: inline-flex; align-items: center; justify-content: center;
}
.cv-vault-wrap .cv-mbar-types .cv-mtype-icon { width: 38px; padding: 0; }
.cv-vault-wrap .cv-mbar-types .cv-mtype-btn .dashicons { font-size: 18px; width: 18px; height: 18px; }
.cv-vault-wrap .cv-mbar-types .cv-mtype-btn:hover { color: var(--cvf-text); }
.cv-vault-wrap .cv-mbar-types .cv-mtype-btn.active { background: var(--cvf-card); color: var(--cvf-text); box-shadow: 0 1px 2px rgba(0,0,0,.08); }
.cv-vault-wrap .cv-mbar-types .cv-mtype-btn-reply { color: var(--cvf-primary); }
.cv-vault-wrap .cv-mbar-types .cv-mtype-btn-reply.active { color: var(--cvf-primary); }

.cv-vault-wrap .cv-mbar-btn {
    height: 42px; padding: 0 16px; border: 1px solid var(--cvf-border); border-radius: 12px;
    background: var(--cvf-card); color: var(--cvf-text); font-size: 14px; font-weight: 600; cursor: pointer;
    display: inline-flex; align-items: center; gap: 8px; white-space: nowrap;
}
.cv-vault-wrap .cv-mbar-btn:hover { border-color: var(--cvf-primary); }
.cv-mbar-btn .dashicons { font-size: 18px; width: 18px; height: 18px; }
.cv-mbar-btn.cv-mbar-btn-on { border-color: var(--cvf-primary); color: var(--cvf-primary); }
.cv-mbar-badge { background: var(--cvf-primary); color: #fff; font-size: 11px; font-weight: 700; min-width: 18px; height: 18px; border-radius: 9px; display: inline-flex; align-items: center; justify-content: center; padding: 0 5px; }

.cv-mbar-sortwrap { position: relative; }
.cv-mbar-menu { position: absolute; top: 50px; right: 0; width: 190px; background: var(--cvf-card); border: 1px solid var(--cvf-border); border-radius: 12px; box-shadow: 0 12px 40px rgba(15,23,42,.16); padding: 6px; z-index: 60; }
.cv-vault-wrap .cv-mbar-menu button { display: flex; align-items: center; justify-content: space-between; width: 100%; border: none; background: transparent; text-align: left; font-size: 13.5px; color: var(--cvf-text); padding: 9px 12px; border-radius: 8px; cursor: pointer; }
.cv-vault-wrap .cv-mbar-menu button:hover { background: var(--cvf-bg); }
.cv-vault-wrap .cv-mbar-menu button.active { background: var(--cvf-hover-bg, #f3effe); color: var(--cvf-primary); font-weight: 600; }
.cv-mbar-menu button.active::after { content: "\f147"; font-family: dashicons; }

.cv-mbar-chipsrow { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; margin-top: 10px; }
.cv-mbar-chips { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }
.cv-mbar-chip { display: inline-flex; align-items: center; gap: 6px; font-size: 12.5px; font-weight: 600; color: var(--cvf-primary); background: var(--cvf-hover-bg, #f3effe); border: 1px solid #e6dcff; border-radius: 20px; padding: 4px 10px; }
.cv-mbar-chip .cv-mbar-chip-x { cursor: pointer; font-size: 14px; width: 14px; height: 14px; line-height: 14px; }
.cv-mbar-clear { font-size: 12.5px; color: var(--cvf-text-muted); cursor: pointer; }
.cv-mbar-clear:hover { color: var(--cvf-text); }
.cv-mbar-count { margin-left: auto; font-size: 13px; color: var(--cvf-text-muted); }

.cv-mbar-popover { position: absolute; top: 56px; right: 0; width: 420px; max-width: calc(100vw - 40px); background: var(--cvf-card); border: 1px solid var(--cvf-border); border-radius: 16px; box-shadow: 0 16px 48px rgba(15,23,42,.18); padding: 18px; z-index: 60; }
.cv-mbar-pop-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 14px; }
.cv-mbar-pop-head span:first-child { font-size: 15px; font-weight: 700; color: var(--cvf-text); }
.cv-mbar-pop-head .dashicons { cursor: pointer; color: var(--cvf-text-muted); }
.cv-mbar-group { margin-bottom: 14px; }
.cv-mbar-group-label { font-size: 11px; font-weight: 700; color: var(--cvf-text-muted); text-transform: uppercase; letter-spacing: .4px; margin-bottom: 8px; }
.cv-vault-wrap .cv-mbar-select {
    width: 100%; height: 38px; padding: 0 34px 0 12px; border-radius: 9px;
    border: 1px solid var(--cvf-border); background-color: #fff; color: var(--cvf-text);
    font-size: 13px; font-weight: 600; cursor: pointer; -webkit-appearance: none; appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%2364748b' d='M1 1l5 5 5-5'/%3E%3C/svg%3E");
    background-repeat: no-repeat; background-position: right 12px center;
}
.cv-vault-wrap .cv-mbar-select:focus { outline: none; border-color: var(--cvf-primary); box-shadow: 0 0 0 3px color-mix(in srgb, var(--cvf-primary) 18%, transparent); }
.cv-mbar-period { display: flex; flex-wrap: nowrap; gap: 6px; overflow-x: auto; }
.cv-mbar-period .cvf-period-btn { white-space: nowrap; flex: 0 0 auto; }
.cv-mbar-dates { display: flex; align-items: center; gap: 8px; margin-top: 8px; }
.cv-vault-wrap .cv-mbar-dates .cvf-date-input { flex: 1; height: 36px; border: 1px solid var(--cvf-border); border-radius: 9px; padding: 0 10px; font-size: 13px; background: var(--cvf-card); color: var(--cvf-text); }
.cv-mbar-pop-foot { display: flex; align-items: center; justify-content: space-between; margin-top: 16px; border-top: 1px solid var(--cvf-border); padding-top: 14px; }
.cv-mbar-reset { font-size: 13px; color: var(--cvf-text-muted); cursor: pointer; }
.cv-mbar-reset:hover { color: var(--cvf-text); }
.cv-vault-wrap .cv-mbar-apply { background: var(--cvf-primary); color: #fff; border: none; border-radius: 10px; height: 38px; padding: 0 20px; font-size: 14px; font-weight: 600; cursor: pointer; }
@media (max-width: 640px) {
    .cv-mbar-popover { right: 0; left: 0; width: auto; }
    .cv-mbar-search { flex-basis: 100%; }
}

.cv-front-embeds-list.cv-mbar-flat .cv-media-month-separator,
.cv-front-embeds-list.cv-mbar-flat .cv-media-week-separator { display: none !important; }



.cv-vault-wrap .cv-mbar-search input { padding-left: 40px !important; }
.cv-mbar .cv-tag-filter-pills,
.cv-mbar .cvf-owner-filters,
.cv-mbar .cv-mbar-period { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; }
.cv-mbar .cv-mbar-period { flex-wrap: nowrap; overflow-x: auto; padding-bottom: 2px; }
.cv-vault-wrap .cv-mbar .cv-tag-pill,
.cv-vault-wrap .cv-mbar .cv-seg-btn,
.cv-vault-wrap .cv-mbar .cvf-period-btn,
.cv-vault-wrap .cv-mbar .cv-archive-filter-btn {
    height: 32px; padding: 0 13px; margin: 0; border: 1px solid var(--cvf-border); border-radius: 9px;
    background: var(--cvf-bg); color: var(--cvf-text); font-size: 13px; font-weight: 600; line-height: 1;
    cursor: pointer; display: inline-flex; align-items: center; gap: 5px; white-space: nowrap; flex: 0 0 auto;
    transition: all .12s;
}
.cv-vault-wrap .cv-mbar .cv-tag-pill:hover,
.cv-vault-wrap .cv-mbar .cv-seg-btn:hover,
.cv-vault-wrap .cv-mbar .cvf-period-btn:hover,
.cv-vault-wrap .cv-mbar .cv-archive-filter-btn:hover { border-color: var(--cvf-primary); }
.cv-vault-wrap .cv-mbar .cv-tag-pill.active,
.cv-vault-wrap .cv-mbar .cv-seg-btn.active,
.cv-vault-wrap .cv-mbar .cvf-period-btn.active,
.cv-vault-wrap .cv-mbar .cv-archive-filter-btn.active {
    background: var(--cvf-primary); color: #fff; border-color: var(--cvf-primary);
}
.cv-mbar .cv-archive-count { background: rgba(255,255,255,.25); border-radius: 10px; padding: 0 6px; font-size: 11px; }


.cv-mbar-types .cv-mtype-btn.active,
.cv-mbar-types .cv-mtype-btn-reply,
.cv-mbar-types .cv-mtype-btn-reply.active { color: var(--cvf-primary); }
.cv-mbar-badge { background: var(--cvf-primary); }
.cv-mbar-menu button.active { color: var(--cvf-primary); }
.cv-vault-wrap .cv-mbar-apply { background: var(--cvf-primary); }
.cv-vault-wrap .cv-mbar-search input:focus { border-color: var(--cvf-primary); }


.cv-mbar-chipsrow { margin-top: 12px; padding: 4px 0; }
.cv-mbar-chip {
    background: var(--cvf-primary); color: #fff; border: none; border-radius: 20px;
    padding: 5px 6px 5px 12px; font-size: 12.5px; font-weight: 600;
}
.cv-mbar-chip .cv-mbar-chip-x { color: #fff; opacity: .8; }
.cv-mbar-chip .cv-mbar-chip-x:hover { opacity: 1; }


.cvf-section-filters { padding-bottom: 6px; }
.cv-vault-wrap .cv-front-embeds-list { margin-top: 16px; }


.cv-mbar-dates label { font-size: 12px; color: var(--cvf-text-muted); }
.cv-vault-wrap .cv-mbar-dates input[type="date"] { color: var(--cvf-text); }


.cv-vault-wrap .cv-mbar .cv-mbar-period { flex-wrap: nowrap !important; overflow-x: visible; gap: 5px; }

.cv-vault-wrap .cv-mbar .cv-mbar-period .cvf-period-btn { height: 28px; padding: 0 10px; font-size: 12px !important; font-weight: 500 !important; }
.cv-vault-wrap .cv-mbar-types .cv-mtype-btn-reply {
    background: transparent !important; color: var(--cvf-text-muted) !important;
}
.cv-vault-wrap .cv-mbar-types .cv-mtype-btn-reply:hover { color: var(--cvf-primary) !important; }
.cv-vault-wrap .cv-mbar-types .cv-mtype-btn.active { background: var(--cvf-card) !important; color: var(--cvf-primary) !important; box-shadow: 0 1px 2px rgba(0,0,0,.08); }



.cv-vault-wrap .cv-mbar .cv-tag-pill { height: 28px; padding: 0 10px; font-size: 12px !important; font-weight: 500 !important; max-width: 150px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }




.cv-vault-wrap .cv-embeds-tag-btn.active { background: var(--cvf-primary) !important; border-color: var(--cvf-primary) !important; color: #fff !important; }
.cv-vault-wrap .cv-embeds-tag-btn.cv-tag-color-blue.active   { background: var(--cvf-primary-light) !important; border-color: var(--cvf-primary-light) !important; color: #fff !important; }
.cv-vault-wrap .cv-embeds-tag-btn.cv-tag-color-green.active  { background: var(--cvf-success) !important; border-color: var(--cvf-success) !important; color: #fff !important; }
.cv-vault-wrap .cv-embeds-tag-btn.cv-tag-color-orange.active { background: var(--cvf-accent) !important; border-color: var(--cvf-accent) !important; color: #fff !important; }
.cv-vault-wrap .cv-embeds-tag-btn.cv-tag-color-red.active    { background: var(--cvf-danger) !important; border-color: var(--cvf-danger) !important; color: #fff !important; }
.cv-vault-wrap .cv-embeds-tag-btn.cv-tag-color-purple.active { background: #8e44ad !important; border-color: #8e44ad !important; color: #fff !important; }
.cv-vault-wrap .cv-embeds-tag-btn.active::before { content: "\2713"; margin-right: 5px; font-weight: 700; color: #fff !important; }

.cv-vault-wrap .cv-msel { position: relative; }
.cv-vault-wrap .cv-msel-toggle {
    display: flex; align-items: center; justify-content: space-between; gap: 8px; width: 100%; height: 36px;
    padding: 0 12px; border: 1px solid var(--cvf-border); border-radius: 9px; background: #fff; color: var(--cvf-text);
    font-size: 12px; font-weight: 500; cursor: pointer;
}
.cv-vault-wrap .cv-msel-toggle:hover { border-color: var(--cvf-primary); }
.cv-vault-wrap .cv-msel-toggle .cv-msel-label { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cv-vault-wrap .cv-msel-toggle .dashicons { color: var(--cvf-text-muted); font-size: 16px; width: 16px; height: 16px; }
.cv-vault-wrap .cv-msel-panel {
    

    position: absolute; top: calc(100% + 6px); left: 0; right: 0; z-index: 40;
    max-height: 200px; overflow-y: auto; border: 1px solid var(--cvf-border);
    border-radius: 9px; background: #fff; box-shadow: 0 6px 18px rgba(0,0,0,.14); padding: 4px;
}
.cv-vault-wrap .cv-msel-opt {
    display: flex; align-items: center; gap: 8px; padding: 6px 8px; border-radius: 7px; cursor: pointer; font-size: 12.5px; color: var(--cvf-text);
}
.cv-vault-wrap .cv-msel-opt:hover { background: var(--cvf-hover-bg); }
.cv-vault-wrap .cv-msel-opt input[type="checkbox"] { margin: 0; flex: 0 0 auto; accent-color: var(--cvf-primary); width: auto; }
.cv-vault-wrap .cv-msel-opt .cv-msel-opt-name { flex: 1 1 auto; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cv-vault-wrap .cv-msel-opt .cv-msel-opt-cnt { flex: 0 0 auto; color: var(--cvf-text-muted); font-size: 11px; }
.cv-mbar-dates { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }
.cv-vault-wrap .cv-mbar-dates input[type="date"] { flex: 1 1 130px; min-width: 0; box-sizing: border-box; }
.cv-mbar-cnt {
    display: inline-flex; align-items: center; justify-content: center; min-width: 16px; height: 16px;
    padding: 0 5px; margin-left: 2px; border-radius: 8px; font-size: 10.5px; font-weight: 700; line-height: 1;
    background: rgba(0,0,0,.07); color: var(--cvf-text-muted);
}


.cv-vault-wrap .cv-mbar .active .cv-mbar-cnt,
.cv-vault-wrap .cv-mbar .cv-mtype-btn.active .cv-mbar-cnt,
.cv-vault-wrap .cv-mbar-types .cv-mtype-btn.active .cv-mbar-cnt { background: #fff !important; color: var(--cvf-primary) !important; }






.cv-vault-wrap .cvf-toolbar {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 12px 16px;
    background: var(--cvf-bg, #f8f9fb);
    border-radius: 10px;
    border: 1px solid var(--cvf-border, #e1e5eb);
    margin-bottom: 10px;
}
.cv-vault-wrap .cvf-toolbar-row {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.cv-vault-wrap .cvf-doc-search-wrapper {
    position: relative;
    display: flex;
    align-items: center;
}
.cv-vault-wrap .cvf-doc-search-icon {
    position: absolute;
    left: 9px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--cvf-text-muted, #8a94a6);
    font-size: 13px !important;
    width: 13px !important;
    height: 13px !important;
    pointer-events: none;
    z-index: 1;
}
.cv-vault-wrap .cvf-doc-search-wrapper:focus-within .cvf-doc-search-icon {
    color: var(--cvf-primary, #1e3a5f);
}
.cv-vault-wrap input[type="text"].cvf-doc-search {
    padding: 4px 8px 4px 32px !important;
    border: 1px solid var(--cvf-border, #d0d5dd) !important;
    border-radius: 6px !important;
    font-size: 12px !important;
    font-family: inherit !important;
    background: #fff !important;
    outline: none !important;
    transition: border-color .2s;
    box-sizing: border-box !important;
    width: 200px !important;
    height: 30px !important;
    line-height: 1.3 !important;
}
.cv-vault-wrap input[type="text"].cvf-doc-search:focus {
    border-color: var(--cvf-primary, #1e3a5f) !important;
}

.cv-vault-wrap .cvf-toolbar-row .cv-file-type-filters {
    display: flex;
    gap: 4px;
    margin-bottom: 0;
    flex-wrap: wrap;
    margin-left: 4px;
}
.cv-vault-wrap .cvf-toolbar-row .cv-ftype-btn {
    padding: 5px 11px !important;
    border: 1.5px solid var(--cvf-border, #d0d5dd) !important;
    border-radius: 6px !important;
    font-size: 12px !important;
    background: #fff !important;
    color: var(--cvf-text-muted, #666) !important;
    cursor: pointer;
    font-weight: 500 !important;
    font-family: inherit !important;
    transition: all .15s;
}
.cv-vault-wrap .cvf-toolbar-row .cv-ftype-btn:hover {
    border-color: var(--cvf-text-muted, #767676) !important;
    color: var(--cvf-text, #333) !important;
}
.cv-vault-wrap .cvf-toolbar-row .cv-ftype-btn.active {
    border-color: var(--cvf-primary, #1e3a5f) !important;
    background: #e8f0fe !important;
    color: var(--cvf-primary, #1e3a5f) !important;
}


.cv-vault-wrap .cv-mtype-btn-reply {
    border: 1px solid transparent !important;
    color: var(--cvf-text-muted) !important;
    background: transparent !important;
    font-weight: 600 !important;
    box-shadow: none !important;
}
.cv-vault-wrap .cv-mtype-btn-reply:hover {
    background: var(--cvf-hover-bg) !important;
    color: var(--cvf-primary) !important;
    box-shadow: none !important;
}
.cv-vault-wrap .cv-mtype-btn-reply.active {
    background: var(--cvf-card) !important;
    color: var(--cvf-primary) !important;
    border-color: var(--cvf-border) !important;
    box-shadow: 0 1px 2px rgba(0,0,0,.08) !important;
}

.cv-vault-wrap .cvf-toolbar-label {
    font-size: 11px !important;
    font-weight: 600 !important;
    text-transform: uppercase;
    letter-spacing: .5px;
    color: var(--cvf-text-muted, #8a94a6) !important;
    margin-right: 2px;
    white-space: nowrap;
}

.cv-vault-wrap .cvf-toolbar-divider {
    width: 1px;
    height: 16px;
    background: var(--cvf-border, #e1e5eb);
    margin: 0 4px;
    flex-shrink: 0;
}

.cv-vault-wrap .cvf-toolbar-row .cv-tag-filter-pills {
    display: flex;
    gap: 4px;
    flex-wrap: wrap;
    margin: 0;
}
.cv-vault-wrap .cvf-toolbar-row .cv-tag-pill {
    padding: 3px 9px !important;
    border-radius: 10px !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    cursor: pointer;
    border: 1px solid transparent !important;
    transition: all .15s;
}
.cv-vault-wrap .cvf-toolbar-row .cv-tag-pill.active {
    background: var(--cvf-primary, #1e3a5f) !important;
    color: #fff !important;
    border-color: var(--cvf-primary, #1e3a5f) !important;
    box-shadow: none !important;
}

.cv-tag-overflow {
    display: none !important;
}
.cv-vault-wrap .cvf-toolbar .cv-tag-filter-pills.cvf-tags-expanded .cv-tag-overflow {
    display: inline-flex !important;
}
.cv-vault-wrap .cvf-tag-more-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 11px !important;
    font-weight: 700 !important;
    padding: 2px 8px !important;
    border-radius: 6px !important;
    background: var(--cvf-border, #e5e7eb) !important;
    color: var(--cvf-text-muted, #64748b) !important;
    border: none !important;
    cursor: pointer;
    transition: background .15s, color .15s;
    line-height: 1.4;
    white-space: nowrap;
}
.cv-vault-wrap .cvf-tag-more-btn:hover {
    background: #dbeafe !important;
    color: var(--cvf-primary, #1e3a5f) !important;
}

.cv-vault-wrap .cvf-owner-filters {
    display: flex;
    align-items: center;
    gap: 3px;
}
.cv-vault-wrap .cvf-owner-filters .cv-seg-btn {
    padding: 5px 12px !important;
    border: 1px solid var(--cvf-border, #e1e5eb) !important;
    border-radius: 20px !important;
    font-size: 12px !important;
    font-family: inherit !important;
    font-weight: 500 !important;
    color: var(--cvf-text-muted, #666) !important;
    background: #fff !important;
    cursor: pointer;
    transition: all .15s;
    box-shadow: none !important;
}
.cv-vault-wrap .cvf-owner-filters .cv-seg-btn:hover {
    border-color: var(--cvf-primary, #1e3a5f) !important;
    color: var(--cvf-primary, #1e3a5f) !important;
}
.cv-vault-wrap .cvf-owner-filters .cv-seg-btn.active {
    border-color: var(--cvf-primary, #1e3a5f) !important;
    background: #e8f0fe !important;
    color: var(--cvf-primary, #1e3a5f) !important;
    font-weight: 600 !important;
}

.cv-vault-wrap .cvf-period-pills {
    display: flex;
    align-items: center;
    gap: 1px;
    flex-wrap: wrap;
}
.cv-vault-wrap .cvf-toolbar .cvf-period-btn {
    padding: 4px 10px !important;
    border: none !important;
    border-radius: 5px !important;
    font-size: 12px !important;
    font-family: inherit !important;
    font-weight: 500 !important;
    color: var(--cvf-text-muted, #8a94a6) !important;
    background: transparent !important;
    cursor: pointer !important;
    transition: all .15s !important;
}
.cvf-period-btn:hover {
    color: var(--cvf-text, #333) !important;
    background: var(--cvf-border, #e8ecf0) !important;
}
.cv-vault-wrap .cvf-toolbar .cvf-period-btn:hover {
    color: var(--cvf-text, #333) !important;
    background: var(--cvf-border, #e8ecf0) !important;
}
.cv-vault-wrap .cvf-toolbar .cvf-period-btn.active {
    color: var(--cvf-primary, #1e3a5f) !important;
    background: #e0eaf5 !important;
    font-weight: 600 !important;
}

.cv-vault-wrap .cvf-toolbar-sep {
    color: var(--cvf-text-muted, #8a94a6) !important;
    font-size: 13px !important;
    line-height: 1;
    user-select: none;
    margin: 0 4px;
    flex-shrink: 0;
}
.cv-vault-wrap input[type="text"].cvf-date-input {
    padding: 5px 14px !important;
    border: 1px solid var(--cvf-border, #d0d5dd) !important;
    border-radius: 20px !important;
    font-size: 12px !important;
    font-family: inherit !important;
    color: var(--cvf-text, #333) !important;
    background: #fff !important;
    width: 140px !important;
    height: 30px !important;
    box-sizing: border-box !important;
    line-height: 1.3 !important;
}
.cv-vault-wrap input[type="text"].cvf-date-input:focus {
    border-color: var(--cvf-primary, #1e3a5f) !important;
    outline: none !important;
}


.cvf-section[data-block="documents"] > .cvf-section-header {
    background: linear-gradient(135deg, #eff6ff 0%, #dbeafe 100%);
    border-left: 4px solid #3b82f6;
}
.cv-vault-wrap .cvf-section[data-block="documents"] > .cvf-section-header h2 { color: #1e40af; }


.cvf-section[data-block="embeds"] > .cvf-section-header {
    background: linear-gradient(135deg, #faf5ff 0%, #f3e8ff 100%);
    border-left: 4px solid #a855f7;
}
.cv-vault-wrap .cvf-section[data-block="embeds"] > .cvf-section-header h2 { color: #6b21a8; }

.cvf-section[data-block="cards"] > .cvf-section-header {
    background: linear-gradient(135deg, #fefce8 0%, #fef9c3 100%);
    border-left: 4px solid #eab308;
}
.cv-vault-wrap .cvf-section[data-block="cards"] > .cvf-section-header h2 { color: #854d0e; }

.cvf-section[data-block="links"] > .cvf-section-header {
    background: linear-gradient(135deg, #f0fdf4 0%, #dcfce7 100%);
    border-left: 4px solid #22c55e;
}
.cv-vault-wrap .cvf-section[data-block="links"] > .cvf-section-header h2 { color: #166534; }

.cvf-section[data-block="notepad"] > .cvf-section-header {
    background: linear-gradient(135deg, #fff7ed 0%, #ffedd5 100%);
    border-left: 4px solid #f97316;
}
.cv-vault-wrap .cvf-section[data-block="notepad"] > .cvf-section-header h2 { color: #9a3412; }

.cvf-section[data-block="tags"] > .cvf-section-header {
    background: linear-gradient(135deg, #fdf2f8 0%, #fce7f3 100%);
    border-left: 4px solid #ec4899;
}
.cv-vault-wrap .cvf-section[data-block="tags"] > .cvf-section-header h2 { color: #9d174d; }

.cvf-section[data-block="activite"] > .cvf-section-header {
    background: linear-gradient(135deg, #f0f9ff 0%, #e0f2fe 100%);
    border-left: 4px solid #0ea5e9;
}
.cv-vault-wrap .cvf-section[data-block="activite"] > .cvf-section-header h2 { color: #0369a1; }

.cvf-section[data-block="parametres"] > .cvf-section-header {
    background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);
    border-left: 4px solid #64748b;
}
.cv-vault-wrap .cvf-section[data-block="parametres"] > .cvf-section-header h2 { color: #334155; }

.cvf-section[data-block="folders"] > .cvf-section-header {
    background: linear-gradient(135deg, #f0fdf4 0%, #dcfce7 100%);
    border-left: 4px solid #22c55e;
}
.cv-vault-wrap .cvf-section[data-block="folders"] > .cvf-section-header h2 { color: #166534; }


.cv-settings-body {
    padding: 18px;
}
.cv-settings-body .cli-settings-card {
    margin-bottom: 18px;
}
.cv-settings-body .cli-settings-card:last-child {
    margin-bottom: 0;
}


.cvf-section .cv-vault-files,
.cvf-section .cv-media-grid,
.cvf-section .cv-cards-grid,
.cvf-section .cv-links-list,
.cvf-section .cv-link-form,
.cvf-section .cv-embed-form,
.cvf-section .cv-card-form,
.cvf-section .cv-note-thread,
.cvf-section .cv-note-input,
.cvf-section .cv-notepad-wrap .cv-notepad-messages,
.cvf-section .cv-load-more-wrap {
    padding-left: 20px;
    padding-right: 20px;
}
.cvf-section .cv-vault-files { padding-bottom: 10px; }
.cvf-section .cv-load-more-wrap { padding-bottom: 16px; }


.cv-section-title {
    font-size: 15px; font-weight: 600; color: var(--cvf-text);
    margin: 0 0 14px; padding: 0;
}
.cv-dashboard-list {
    display: flex; flex-direction: column; gap: 6px;
}
.cv-dashboard-item {
    display: flex; align-items: center; gap: 14px;
    padding: 14px 18px; background: var(--cvf-card); border: 1px solid var(--cvf-border);
    border-radius: 10px; transition: all .15s ease;
    box-shadow: 0 1px 3px rgba(0,0,0,0.04);
}
.cv-dashboard-clickable { cursor: pointer; user-select: none; }

.cv-dashboard-item.cv-dashboard-clickable:hover {
    border-color: var(--cvf-primary-light); background: rgba(var(--cvf-primary-rgb), 0.03);
    transform: translateX(3px); box-shadow: 0 2px 8px rgba(var(--cvf-primary-rgb), 0.1);
}
.cv-dashboard-item.cv-dashboard-clickable:active {
    transform: translateX(1px); background: rgba(var(--cvf-primary-rgb), 0.06);
}

.cv-vault-wrap .cli-item.cv-dashboard-clickable:hover,
.cv-vault-wrap .cli-act-item.cv-dashboard-clickable:hover,
.cv-vault-wrap .cli-item:hover,
.cv-vault-wrap .cli-act-item:hover {
    transform: none !important;
    box-shadow: none !important;
}
.cv-vault-wrap .cli-item.cv-dashboard-clickable:active,
.cv-vault-wrap .cli-act-item.cv-dashboard-clickable:active {
    transform: none !important;
    background: rgba(var(--cvf-primary-rgb), 0.06) !important;
}
.cv-dashboard-icon { font-size: 20px; flex-shrink: 0; }
.cv-dashboard-info { flex: 1; min-width: 0; }
.cv-dashboard-info strong { font-size: 14px; color: var(--cvf-text); display: block; }
.cv-dashboard-snippet {
    font-size: 12px; color: var(--cvf-text-muted); margin: 2px 0 0;
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.cv-dashboard-meta { font-size: 11px; color: var(--cvf-text-muted); margin-top: 2px; display: block; }
.cv-dashboard-arrow { color: var(--cvf-text-muted); flex-shrink: 0; opacity: 0; transition: opacity .15s; }
.cv-dashboard-clickable:hover .cv-dashboard-arrow { opacity: 1; }
.cv-dashboard-preview-btn {
    flex-shrink: 0;
    margin-right: 4px;
    opacity: 0.5;
    transition: opacity 0.15s;
}
.cv-dashboard-item:hover .cv-dashboard-preview-btn { opacity: 1; }


@keyframes cv-deeplink-glow {
    0%   { box-shadow: 0 0 0 0 rgba(232, 145, 58, 0.7); background-color: #fff8e1; }
    25%  { box-shadow: 0 0 0 6px rgba(232, 145, 58, 0.4); background-color: #fff3cd; }
    50%  { box-shadow: 0 0 0 3px rgba(232, 145, 58, 0.6); background-color: #fff8e1; }
    75%  { box-shadow: 0 0 0 6px rgba(232, 145, 58, 0.4); background-color: #fff3cd; }
    100% { box-shadow: 0 0 0 0 rgba(232, 145, 58, 0.7); background-color: #fff8e1; }
}
.cv-deeplink-highlight {
    animation: cv-deeplink-glow 1.5s ease-in-out infinite !important;
    border: 2px solid var(--cvf-accent) !important;
    border-radius: 10px !important;
    position: relative;
    z-index: 10;
}


.cv-tags-section { }
.cv-tags-list { display: flex; flex-wrap: wrap; gap: 8px; }
.cv-tag {
    display: inline-flex; align-items: center; gap: 4px;
    padding: 4px 10px; border-radius: 20px; font-size: 12px; font-weight: 500;
    cursor: default;
}
.cv-tags-list .cv-tag-color-blue { background: var(--cvf-tag-blue-bg); color: var(--cvf-tag-blue); }
.cv-tags-list .cv-tag-color-green { background: var(--cvf-tag-green-bg); color: var(--cvf-tag-green); }
.cv-tags-list .cv-tag-color-orange { background: var(--cvf-tag-orange-bg); color: var(--cvf-tag-orange); }
.cv-tags-list .cv-tag-color-red { background: var(--cvf-tag-red-bg); color: var(--cvf-tag-red); }
.cv-tags-list .cv-tag-color-purple { background: var(--cvf-tag-purple-bg); color: var(--cvf-tag-purple); }

.cv-tag-delete {
    background: none; border: none; cursor: pointer;
    font-size: 14px; line-height: 1; color: inherit; opacity: 0.6; padding: 0 2px; margin-left: 2px;
}
.cv-tag-delete:hover { opacity: 1; }

.cv-inline-confirm { background: var(--cvf-success); color: #fff; border: none; border-radius: 4px; padding: 2px 8px; cursor: pointer; margin-left: 4px; font-size: 14px; font-weight: bold; line-height: 1; transition: background .15s; }
.cv-inline-confirm:hover { background: #219a52; }

.cv-tag-input {
    padding: 6px 12px; border: 1px solid var(--cvf-border); border-radius: 8px;
    font-size: 13px; background: var(--cvf-card); color: var(--cvf-text);
    min-width: 140px;
}
.cv-tag-color-select {
    padding: 6px 8px; border: 1px solid var(--cvf-border); border-radius: 8px;
    font-size: 12px; background: var(--cvf-card); color: var(--cvf-text);
}
.cv-tags-empty { font-size: 13px; color: var(--cvf-text-muted); margin: 0; }


.cv-settings-section { }
.cv-settings-desc { font-size: 13px; color: var(--cvf-text-muted); margin: 0 0 16px; }

.cv-tag-add-form {
    display: flex; gap: 10px; align-items: center; flex-wrap: nowrap;
    margin-top: 14px; margin-bottom: 0;
    padding: 14px 16px; background: var(--cvf-hover-bg, #f8fafc);
    border: 1px solid var(--cvf-border); border-radius: 10px;
}
.cv-tag-add-form .cv-tag-input { flex: 1 1 50%; min-width: 0; }
.cv-tag-add-form .dbtn { flex: 0 0 auto; white-space: nowrap; }
.cv-tags-wrap { margin-top: 16px; }



.cv-vault-wrap .cv-tagm-add { display: flex; align-items: center; gap: 8px; margin: 14px 0 0; padding: 5px 5px 5px 14px; background: var(--cvf-card, #fff); border: 1px solid var(--cvf-border, #e8ecf0); border-radius: 12px; max-width: 460px; }
.cv-vault-wrap .cv-tagm-add-ico { color: var(--cvf-text-muted, #94a3b8); font-size: 18px; width: 18px; height: 18px; flex: 0 0 auto; }
.cv-vault-wrap .cv-tagm-input { flex: 1 1 auto; border: none !important; background: transparent !important; padding: 8px 4px !important; min-width: 0 !important; font-size: 14px; box-shadow: none !important; }
.cv-vault-wrap .cv-tagm-input:focus { outline: none; box-shadow: none !important; }
.cv-vault-wrap .cv-tagm-add-btn { flex: 0 0 auto; display: inline-flex; align-items: center; gap: 6px; background: var(--cvf-primary, #2563eb); color: #fff; border: none; border-radius: 9px; padding: 9px 16px; font-size: 13px; font-weight: 600; cursor: pointer; transition: filter .15s; }
.cv-vault-wrap .cv-tagm-add-btn .dashicons { font-size: 16px; width: 16px; height: 16px; }
.cv-vault-wrap .cv-tagm-add-btn:hover { filter: brightness(1.08); }

.cv-vault-wrap .cv-tags-list .cv-tag,
.cv-vault-wrap .cv-tags-list .cv-tag[class*="cv-tag-color-"] { display: inline-flex; align-items: center; gap: 6px; padding: 6px 8px 6px 12px; border-radius: 10px; font-size: 13px; font-weight: 600; border: 1px solid var(--cvf-border, #e8ecf0); background: var(--cvf-bg-soft, #f1f5f9) !important; color: var(--cvf-text, #334155) !important; }
.cv-vault-wrap .cv-tags-list .cv-tag .cv-tag-name { line-height: 1; }
.cv-vault-wrap .cv-tags-list .cv-tag-count { font-size: 11px; font-weight: 700; color: var(--cvf-text-muted, #94a3b8); background: rgba(15,23,42,.06); border-radius: 999px; padding: 1px 7px; }
.cv-vault-wrap .cv-tag-acts { display: inline-flex; align-items: center; gap: 1px; margin-left: 2px; opacity: 0; max-width: 0; overflow: hidden; transition: opacity .15s, max-width .15s; }
.cv-vault-wrap .cv-tags-list .cv-tag:hover .cv-tag-acts,
.cv-vault-wrap .cv-tags-list .cv-tag.cv-tag-editing .cv-tag-acts { opacity: 1; max-width: 64px; }
.cv-vault-wrap .cv-tag-acts button { background: none; border: none; cursor: pointer; color: var(--cvf-text-muted, #94a3b8); padding: 2px; display: inline-flex; border-radius: 6px; }
.cv-vault-wrap .cv-tag-acts button:hover { color: var(--cvf-primary, #2563eb); background: rgba(15,23,42,.06); }
.cv-vault-wrap .cv-tag-acts .cv-tag-delete:hover { color: var(--cvf-danger, #e74c3c); }
.cv-vault-wrap .cv-tag-acts .dashicons { font-size: 15px; width: 15px; height: 15px; }
.cv-vault-wrap .cv-tag-rename-input { border: 1px solid var(--cvf-primary, #2563eb); border-radius: 6px; padding: 2px 6px; font-size: 13px; font-weight: 600; background: #fff; }

.cv-vault-wrap .cv-tags-list .cv-tag.cv-tag-admin,
.cv-vault-wrap .cv-tags-list .cv-tag.cv-tag-admin[class*="cv-tag-color-"] { background: #eaf1fd !important; color: var(--cvf-primary, #2563eb) !important; border-color: rgba(37,99,235,.35); box-shadow: inset 3px 0 0 var(--cvf-primary, #2563eb); padding-left: 11px; }
.cv-vault-wrap .cv-tag-lock { font-size: 13px; width: 13px; height: 13px; color: var(--cvf-primary, #2563eb); flex: 0 0 auto; }
.cv-vault-wrap .cv-tagm-legend { display: flex; align-items: center; gap: 5px; margin-top: 12px; font-size: 12px; color: var(--cvf-text-muted, #94a3b8); }
.cv-vault-wrap .cv-tagm-legend .dashicons { font-size: 13px; width: 13px; height: 13px; color: var(--cvf-primary, #2563eb); }

.cv-vault-wrap .cv-fiche-tag,
.cv-vault-wrap .cv-tags-chip,
.cv-vault-wrap .cv-inline-tag { background: var(--cvf-bg-soft, #f1f5f9) !important; color: var(--cvf-text, #475569) !important; }

.cv-btn-export {
    display: inline-flex; align-items: center; gap: 10px;
    padding: 14px 28px; border-radius: 12px; font-size: 15px; font-weight: 700;
    color: #fff; background: var(--cvf-primary); border: none;
    cursor: pointer; transition: background .15s;
}
.cv-btn-export:hover { background: var(--cvf-primary-light); }


.cv-btn-secondary {
    display: inline-flex; align-items: center; gap: 8px;
    padding: 10px 18px; border-radius: 10px; font-size: 13px; font-weight: 500;
    color: var(--cvf-text); background: var(--cvf-card); border: 1px solid var(--cvf-border);
    cursor: pointer; transition: all .15s;
}
.cv-btn-secondary:hover { border-color: var(--cvf-primary-light); color: var(--cvf-primary); }
.cv-btn-sm { padding: 6px 14px; font-size: 12px; }








.cv-vault-wrap .cv-btn-link {
    display: inline-flex; align-items: center; gap: 6px;
    background: transparent !important;
    background-image: none !important;
    border: none !important;
    box-shadow: none !important;
    color: var(--cvf-danger) !important;
    font-family: inherit; font-weight: 600; cursor: pointer;
    padding: 4px 8px; border-radius: 6px; line-height: 1.4;
    text-decoration: none !important;
    transition: color .15s, background .15s;
}
.cv-vault-wrap .cv-btn-link:hover {
    color: var(--cvf-danger) !important;
    background: rgba(231, 76, 60, .08) !important;
    text-decoration: underline !important;
}
.cv-vault-wrap .cv-btn-link:focus,
.cv-vault-wrap .cv-btn-link:focus-visible {
    outline: 2px solid var(--cvf-danger) !important;
    outline-offset: 2px !important;
    box-shadow: none !important;
}

.cv-vault-wrap .cv-btn-primary,
.cv-vault-wrap .cv-btn-export {
    background-color: var(--cvf-primary) !important;
    background-image: none !important;
    color: #fff !important;
}
.cv-vault-wrap .cv-btn-primary:hover,
.cv-vault-wrap .cv-btn-export:hover {
    background-color: var(--cvf-primary-light) !important;
}





.cv-activity-type-btn {
    display: inline-flex; align-items: center; gap: 4px;
    padding: 6px 14px; border-radius: 20px; border: 1px solid var(--cvf-border);
    background: #fff; color: #555; font-size: 12px; font-weight: 600;
    cursor: pointer; transition: all .15s; white-space: nowrap;
}
.cv-activity-type-btn:hover { border-color: #bbb; background: #fafafa; }
.cv-activity-type-btn.active { background: var(--cvf-primary, #1e3a5f); color: #fff; border-color: var(--cvf-primary, #1e3a5f); }
.cv-act-pill-blue.active   { background: var(--cvf-primary, #1e3a5f); border-color: var(--cvf-primary, #1e3a5f); }
.cv-act-pill-green.active  { background: var(--cvf-success, #27ae60); border-color: var(--cvf-success, #27ae60); }
.cv-act-pill-orange.active { background: var(--cvf-accent, #e8913a); border-color: var(--cvf-accent, #e8913a); }
.cv-act-pill-purple.active { background: var(--cvf-tag-purple); border-color: var(--cvf-tag-purple); }
.cv-act-pill-teal.active   { background: #16a085; border-color: #16a085; }
.cv-act-pill-pink.active   { background: #c0392b; border-color: #c0392b; }
.cv-act-pill-gray.active   { background: #7f8c8d; border-color: #7f8c8d; }


.cv-activity-timeline {
    min-height: 60px;
    padding: 0 4px;
}
.cv-activity-group {
    margin-bottom: 20px;
}
.cv-activity-date-header {
    display: flex; align-items: center; gap: 12px; margin-bottom: 10px;
}
.cv-activity-date-badge {
    font-size: 11px; font-weight: 600; color: var(--cvf-date-muted);
    white-space: nowrap; text-transform: uppercase; letter-spacing: .4px;
}
.cv-activity-date-line {
    flex: 1; height: 1px; background: var(--cvf-border);
}
.cv-activity-entries {
    display: flex; flex-direction: column; gap: 4px;
}
.cv-activity-entry {
    display: flex; align-items: center; gap: 12px;
    padding: 12px 14px; background: #fff;
    border-bottom: 1px solid var(--cvf-separator); border-radius: 0;
    transition: background 0.15s;
}
.cv-activity-entry:last-child { border-bottom: none; }
.cv-activity-entry:hover { background: var(--cvf-hover-bg); }
.cv-activity-icon {
    font-size: 18px; width: 32px; height: 32px;
    display: flex; align-items: center; justify-content: center;
    background: var(--cvf-icon-bg); border-radius: 8px; flex-shrink: 0;
}
.cv-activity-content {
    flex: 1; min-width: 0;
}
.cv-activity-row {
    display: flex; justify-content: space-between; align-items: center; gap: 8px;
}
.cv-activity-label {
    font-size: var(--cvf-font-base); font-weight: 600; color: var(--cvf-text, #2c3e50);
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.cv-activity-time {
    font-size: 11px; color: var(--cvf-text-muted); flex-shrink: 0;
    font-variant-numeric: tabular-nums;
}
.cv-activity-detail {
    display: block; font-size: 12px; color: var(--cvf-text-muted); margin-top: 2px;
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.cv-activity-meta {
    display: flex; align-items: center; gap: 6px; margin-top: 3px;
}

.cv-activity-type-badge {
    display: inline-block; font-size: 10px; font-weight: 600;
    padding: 2px 8px; border-radius: 10px;
    text-transform: uppercase; letter-spacing: .3px;
}
.cv-act-badge-blue   { background: rgba(30,58,95,.08); color: var(--cvf-primary, #1e3a5f); }
.cv-act-badge-green  { background: rgba(39,174,96,.08); color: var(--cvf-success, #27ae60); }
.cv-act-badge-orange { background: rgba(232,145,58,.1); color: var(--cvf-accent, #e8913a); }
.cv-act-badge-purple { background: rgba(142,68,173,.08); color: #8e44ad; }
.cv-act-badge-teal   { background: rgba(22,160,133,.08); color: #16a085; }
.cv-act-badge-pink   { background: rgba(192,57,43,.08); color: #c0392b; }
.cv-act-badge-gray   { background: rgba(127,140,141,.08); color: #7f8c8d; }

.cv-activity-author {
    display: inline-block; font-size: 10px; font-weight: 600;
    padding: 2px 8px; border-radius: 10px;
}
.cv-activity-author-self {
    background: var(--cvf-author-self-bg); color: var(--cvf-author-self);
}
.cv-activity-author-admin {
    background: var(--cvf-author-admin-bg); color: var(--cvf-author-admin);
}


.cv-embed-form {
    background: var(--cvf-card); border: 1px solid var(--cvf-border); border-radius: var(--cvf-radius);
    padding: 12px; margin-bottom: 20px; box-shadow: var(--cvf-shadow);
}



.cv-item-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    padding: 6px 16px 10px;
    border-top: 1px solid var(--cvf-border, rgba(0,0,0,0.06));
}
.cv-tag-toggle {
    display: inline-flex;
    align-items: center;
    padding: 2px 10px;
    border-radius: 12px;
    font-size: 11px;
    font-weight: 500;
    cursor: pointer;
    border: 1.5px solid transparent;
    opacity: 0.45;
    transition: opacity .15s, border-color .15s, background .15s;
    background: var(--cvf-surface, #f4f6f9);
}
.cv-tag-toggle:hover { opacity: 0.7; }
.cv-tag-toggle.cv-tag-active {
    opacity: 1;
    border-color: currentColor;
}
.cv-tag-color-blue { color: var(--cvf-primary-light); }
.cv-tag-color-green { color: var(--cvf-success); }
.cv-tag-color-orange { color: var(--cvf-accent); }
.cv-tag-color-red { color: var(--cvf-danger); }
.cv-tag-color-purple { color: #8e44ad; }
.cv-tag-toggle.cv-tag-active.cv-tag-color-blue { background: rgba(42,82,152,0.1); }
.cv-tag-toggle.cv-tag-active.cv-tag-color-green { background: rgba(39,174,96,0.1); }
.cv-tag-toggle.cv-tag-active.cv-tag-color-orange { background: rgba(232,145,58,0.1); }
.cv-tag-toggle.cv-tag-active.cv-tag-color-red { background: rgba(231,76,60,0.1); }
.cv-tag-toggle.cv-tag-active.cv-tag-color-purple { background: rgba(142,68,173,0.1); }


.cv-tag-dropdown {
    background: var(--cvf-card, #fff);
    border: 1px solid var(--cvf-border, #e4e8ee);
    border-radius: 10px;
    box-shadow: 0 8px 24px rgba(0,0,0,0.12);
    min-width: 180px;
    max-width: 240px;
    overflow: hidden;
}
.cv-tag-dropdown-title {
    padding: 8px 14px;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--cvf-text-muted, #5a6c7d);
    border-bottom: 1px solid var(--cvf-border, #e4e8ee);
}
.cv-tag-dropdown-list {
    max-height: 220px;
    overflow-y: auto;
}
.cv-tag-dropdown-item {
    display: flex;
    align-items: center;
    gap: 8px;
    width: 100%;
    padding: 8px 14px;
    border: none;
    background: none;
    font-size: 13px;
    cursor: pointer;
    text-align: left;
    color: var(--cvf-text, #2c3e50);
    transition: background 0.15s;
}
.cv-tag-dropdown-item:hover { background: var(--cvf-bg, #f7f8fc); }
.cv-tag-dropdown-item.active {
    font-weight: 700;
    background: rgba(39,174,96,0.08);
}
.cv-tag-check {
    width: 18px;
    height: 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 4px;
    font-size: 11px;
    flex-shrink: 0;
    border: 1.5px solid var(--cvf-border, #d0d5dd);
    background: #fff;
    color: transparent;
    transition: all 0.15s;
}
.cv-tag-dropdown-item.active .cv-tag-check {
    background: var(--cvf-success, #27ae60);
    border-color: var(--cvf-success, #27ae60);
    color: #fff;
}

.cv-tag-dropdown-item.cv-tag-locked {
    opacity: 0.65;
    cursor: not-allowed;
    background: #f3f4f6 !important;
}
.cv-tag-dropdown-item.cv-tag-locked:hover {
    background: #f3f4f6 !important;
}
.cv-vault-wrap .cv-form-tag-btn.cv-tag-locked {
    opacity: 0.7 !important;
    cursor: not-allowed !important;
    position: relative;
}
.cv-vault-wrap .cv-form-tag-btn.cv-tag-locked::after {
    content: '🔒';
    font-size: 8px;
    margin-left: 3px;
}

.cv-tag-filter-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 14px;
    border-radius: 20px;
    border: 1px solid #dde1e6;
    background: #fff;
    font-size: 12px;
    font-weight: 600;
    color: var(--cvf-text);
    cursor: pointer;
    transition: all 0.15s ease;
}
.cv-tag-filter-btn:hover {
    border-color: var(--cvf-primary);
    color: var(--cvf-primary);
}
.cv-tag-filter-btn.active {
    background: var(--cvf-primary);
    color: #fff;
    border-color: var(--cvf-primary);
}
.cv-tag-pill-blue.active { background: var(--cvf-primary-light, #2a5298); border-color: var(--cvf-primary-light, #2a5298); }
.cv-tag-pill-green.active { background: var(--cvf-success, #27ae60); border-color: var(--cvf-success, #27ae60); }
.cv-tag-pill-orange.active { background: var(--cvf-accent, #e8913a); border-color: var(--cvf-accent, #e8913a); }
.cv-tag-pill-red.active { background: var(--cvf-danger, #e74c3c); border-color: var(--cvf-danger, #e74c3c); }
.cv-tag-pill-purple.active { background: #8e44ad; border-color: #8e44ad; }
.cv-tag-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    border-radius: 9px;
    background: rgba(0,0,0,0.07);
    font-size: 10px;
    font-weight: 700;
    line-height: 1;
}
.cv-tag-filter-btn.active .cv-tag-count {
    background: rgba(255,255,255,0.25);
    color: #fff;
}

.cv-tags-timeline {
    min-height: 60px;
    padding: 0 4px;
}


.cv-tags-group {
    margin-bottom: 20px;
}
.cv-tags-date-header {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 10px;
}
.cv-tags-date-badge {
    font-size: 11px;
    font-weight: 600;
    color: var(--cvf-date-muted);
    white-space: nowrap;
    text-transform: uppercase;
    letter-spacing: .4px;
}
.cv-tags-date-line {
    flex: 1;
    height: 1px;
    background: var(--cvf-border);
}
.cv-tags-entries {
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.cv-tags-entry {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 14px;
    background: #fff;
    border-bottom: 1px solid var(--cvf-separator);
    border-radius: 0;
    cursor: pointer;
    transition: background 0.15s;
}
.cv-tags-entry:last-child { border-bottom: none; }
.cv-tags-entry:hover {
    background: var(--cvf-hover-bg);
}
.cv-tags-icon {
    font-size: 18px;
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--cvf-icon-bg);
    border-radius: 8px;
    flex-shrink: 0;
}
.cv-tags-content {
    flex: 1;
    min-width: 0;
}
.cv-tags-content strong {
    display: block;
    font-size: var(--cvf-font-base);
    color: var(--cvf-text, #2c3e50);
    font-weight: 600;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.cv-tags-type-badge {
    display: inline-block;
    font-size: 10px;
    font-weight: 600;
    padding: 2px 8px;
    border-radius: 10px;
    margin-top: 3px;
    text-transform: uppercase;
    letter-spacing: .3px;
}
.cv-tags-type-blue {
    background: rgba(30,58,95,.08); color: var(--cvf-primary, #1e3a5f);
}
.cv-tags-type-green {
    background: rgba(39,174,96,.08); color: var(--cvf-success, #27ae60);
}
.cv-tags-type-orange {
    background: rgba(232,145,58,.1); color: var(--cvf-accent, #e8913a);
}
.cv-tags-type-purple {
    background: rgba(142,68,173,.08); color: #8e44ad;
}
.cv-tags-arrow {
    color: var(--cvf-text-muted);
    flex-shrink: 0;
    transition: color 0.15s;
}
.cv-tags-entry:hover .cv-tags-arrow {
    color: var(--cvf-primary, #1e3a5f);
}

.cv-highlight-flash {
    animation: cvHighlightFlash 2s ease;
}
@keyframes cvHighlightFlash {
    0%, 100% { background: transparent; }
    15%, 50% { background: rgba(30,58,95,.08); }
}


.cv-tag-filter-bar {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 8px 0 14px;
    flex-wrap: wrap;
}
.cv-tag-filter-bar .cv-author-label {
    font-size: 12px;
    font-weight: 600;
    color: var(--cvf-text-muted, #8899aa);
    white-space: nowrap;
}
.cv-tag-filter-pills {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
}
.cv-tag-pill {
    padding: 4px 12px;
    border-radius: 20px;
    border: 1px solid var(--cvf-border, #e1e5eb);
    background: var(--cvf-surface, #fff);
    font-size: 12px;
    cursor: pointer;
    transition: all .15s;
    color: var(--cvf-text, #333);
}
.cv-tag-pill:hover { border-color: var(--cvf-accent, #2a5298); }
.cv-tag-pill.active {
    background: var(--cvf-primary, #1e3a5f);
    color: #fff;
    border-color: var(--cvf-primary, #1e3a5f);
}

.cv-tag-pill.cv-tag-color-blue.active { background: var(--cvf-primary-light); border-color: var(--cvf-primary-light); }
.cv-tag-pill.cv-tag-color-green.active { background: var(--cvf-success); border-color: var(--cvf-success); }
.cv-tag-pill.cv-tag-color-orange.active { background: var(--cvf-accent); border-color: var(--cvf-accent); }
.cv-tag-pill.cv-tag-color-red.active { background: var(--cvf-danger); border-color: var(--cvf-danger); }
.cv-tag-pill.cv-tag-color-purple.active { background: #8e44ad; border-color: #8e44ad; }
.cv-tag-pill-blue { border-color: var(--cvf-primary-light); }
.cv-tag-pill-green { border-color: var(--cvf-success); }
.cv-tag-pill-orange { border-color: var(--cvf-accent); }
.cv-tag-pill-red { border-color: var(--cvf-danger); }
.cv-tag-pill-purple { border-color: #8e44ad; }


.cv-date-filter-bar {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0 0 14px;
}
.cv-date-filter-select {
    padding: 6px 28px 6px 12px;
    border: 1.5px solid var(--cvf-border);
    border-radius: 8px;
    font-size: 12px;
    font-weight: 600;
    color: var(--cvf-primary);
    background: var(--cvf-card);
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%231e3a5f' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 10px center;
    transition: border-color 0.2s;
}
.cv-date-filter-select:hover {
    border-color: var(--cvf-primary);
}
.cv-date-filter-select:focus {
    outline: none;
    border-color: var(--cvf-primary-light);
    box-shadow: 0 0 0 2px rgba(42,82,152,0.1);
}


.cv-vault-wrap .cv-embed-meta-grid { display: flex; gap: 18px; flex-wrap: wrap; margin-top: 6px; }
.cv-vault-wrap .cv-embed-meta-col { flex: 1 1 240px; min-width: 0; }
.cv-vault-wrap .cv-embed-meta-label { display: block; font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .4px; color: var(--cvf-text-muted); margin-bottom: 7px; }
.cv-vault-wrap .cv-embed-meta-col .cv-form-tags-row { margin-top: 0; }


.cv-form-tags-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    margin-top: 8px;
}
.cv-form-tags-row label {
    font-size: 12px;
    font-weight: 600;
    color: var(--cvf-text-muted);
    margin-right: 4px;
}
.cv-vault-wrap .cv-form-tag-btn {
    padding: 3px 10px !important;
    border-radius: 11px !important;
    font-size: 10.5px !important;
    font-weight: 600 !important;
    cursor: pointer;
    border: 1.5px solid currentColor !important;
    background: rgba(255,255,255,.85) !important;
    opacity: 1;
    transition: all 0.15s;
    box-shadow: 0 1px 3px rgba(0,0,0,.08);
    line-height: 1.3 !important;
}
.cv-form-tag-btn:hover {
    box-shadow: 0 2px 6px rgba(0,0,0,.14);
    transform: translateY(-1px);
}
.cv-vault-wrap .cv-form-tag-btn.cv-form-tag-active {
    

    background: var(--cvf-primary) !important;
    border-color: var(--cvf-primary) !important;
    color: #fff !important;
    box-shadow: 0 2px 8px rgba(0,0,0,.18);
}
.cv-vault-wrap .cv-form-tag-btn.cv-form-tag-active::before { content: "\2713"; margin-right: 4px; font-weight: 700; }

.cv-form-tag-btn.cv-tag-color-blue { color: var(--cvf-primary-light) !important; }
.cv-form-tag-btn.cv-tag-color-green { color: var(--cvf-success) !important; }
.cv-form-tag-btn.cv-tag-color-orange { color: var(--cvf-accent) !important; }
.cv-form-tag-btn.cv-tag-color-red { color: var(--cvf-danger) !important; }
.cv-form-tag-btn.cv-tag-color-purple { color: #8e44ad !important; }

.cv-vault-wrap .cv-form-tag-btn.cv-form-tag-active.cv-tag-color-blue { background: var(--cvf-primary-light) !important; border-color: var(--cvf-primary-light) !important; color: #fff !important; }
.cv-vault-wrap .cv-form-tag-btn.cv-form-tag-active.cv-tag-color-green { background: var(--cvf-success) !important; border-color: var(--cvf-success) !important; color: #fff !important; }
.cv-vault-wrap .cv-form-tag-btn.cv-form-tag-active.cv-tag-color-orange { background: var(--cvf-accent) !important; border-color: var(--cvf-accent) !important; color: #fff !important; }
.cv-vault-wrap .cv-form-tag-btn.cv-form-tag-active.cv-tag-color-red { background: var(--cvf-danger) !important; border-color: var(--cvf-danger) !important; color: #fff !important; }
.cv-vault-wrap .cv-form-tag-btn.cv-form-tag-active.cv-tag-color-purple { background: #8e44ad !important; border-color: #8e44ad !important; color: #fff !important; }
.cv-upload-tags-row {
    margin: 6px 0 0;
}


.cv-inline-tag {
    display: inline-block;
    padding: 2px 7px;
    border-radius: 8px;
    font-size: 10px;
    font-weight: 600;
    color: #fff;
    white-space: nowrap;
}
.cv-inline-tag.cv-tag-color-blue { background: var(--cvf-tag-blue); }
.cv-inline-tag.cv-tag-color-green { background: var(--cvf-tag-green); }
.cv-inline-tag.cv-tag-color-orange { background: var(--cvf-tag-orange); }
.cv-inline-tag.cv-tag-color-red { background: var(--cvf-tag-red); }
.cv-inline-tag.cv-tag-color-purple { background: var(--cvf-tag-purple); }


.cv-doc-tags {
    position: relative;
}
.cv-tags-more {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 2px 6px;
    border-radius: 8px;
    font-size: 10px;
    font-weight: 700;
    color: var(--cvf-text-muted, #8a94a6);
    background: var(--cvf-bg, #f1f5f9);
    cursor: pointer;
    white-space: nowrap;
    transition: background .15s;
}
.cv-tags-more:hover {
    background: var(--cvf-border, #e2e8f0);
}
.cv-tags-popup {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 50;
    background: #fff;
    border: 1px solid var(--cvf-border, #e2e8f0);
    border-radius: 10px;
    padding: 8px 10px;
    box-shadow: 0 4px 16px rgba(0,0,0,.10);
    margin-top: 4px;
    min-width: 120px;
    max-width: 240px;
}
.cv-tags-popup .cv-inline-tag {
    margin: 2px 2px;
}
.cv-doc-tags:hover .cv-tags-popup,
.cv-tags-more:focus + .cv-tags-popup {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
}


.cv-author-segmented {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 12px;
}
.cv-author-label {
    font-size: 12px;
    font-weight: 700;
    color: var(--cvf-text-muted);
    white-space: nowrap;
}
.cv-segmented-control {
    display: inline-flex;
    background: var(--cvf-bg);
    border: 1px solid var(--cvf-border);
    border-radius: 10px;
    padding: 3px;
    gap: 2px;
}
.cv-seg-btn {
    padding: 6px 14px;
    border: none;
    background: none;
    font-size: 12px;
    font-weight: 600;
    color: var(--cvf-text-muted);
    cursor: pointer;
    border-radius: 8px;
    transition: all 0.2s;
    white-space: nowrap;
}
.cv-seg-btn:hover {
    color: var(--cvf-primary);
    background: rgba(30,58,95,0.05);
}
.cv-seg-btn.active {
    background: var(--cvf-primary);
    color: #fff;
    box-shadow: 0 1px 4px rgba(30,58,95,0.2);
}
.cv-seg-admin {
    font-style: italic;
}
.cv-seg-admin.active {
    background: linear-gradient(135deg, var(--cvf-primary), #2a5298);
}


.cv-type-badge {
    display: inline-block;
    padding: 2px 10px;
    border-radius: 10px;
    font-size: 10px;
    font-weight: 700;
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    margin-right: 6px;
}
.cv-dashboard-meta {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
    font-size: 12px;
}




@media (max-width: 768px) {
    .cv-vault-header { padding: 26px 20px 22px !important; gap: 20px !important; }
    .cv-vault-header-top { gap: 16px; }
    
    html body .cv-app.cv-vault-wrap .cv-vault-header .cv-vault-header-identity,
    html body .cv-vault-wrap .cv-vault-header .cv-vault-header-identity {
        grid-template-columns: 56px minmax(0, 1fr) !important;
        column-gap: 14px !important;
    }
    .cv-vault-header-watermark .dashicons { font-size: 140px !important; width: 140px !important; height: 140px !important; }
    .cv-vault-header-watermark { right: -20px; }
    .cv-vault-header h2,
    .cv-vault-header .cv-vault-header-greeting { font-size: 20px !important; min-height: 24px !important; }
    .cv-vault-header-subtitle { font-size: 13px !important; margin-bottom: 6px !important; }
    .cv-vault-stats { gap: 6px; justify-content: center; }
    .cv-vault-stat { padding: 8px 12px; min-width: 60px; flex: 1; }
    .cv-vault-stat strong { font-size: 18px; }
    .cv-vault-avatar { width: 56px; height: 56px; min-width: 56px; min-height: 56px; }
    .cv-vault-wrap .cv-vault-avatar img { width: 56px !important; height: 56px !important; min-width: 56px !important; min-height: 56px !important; }
    .cv-vault-actions-bar { flex-wrap: wrap; }
    .cv-vault-actions-search-wrap { width: 100%; }
    .cv-vault-actions-period { width: 100%; }
    .cv-vault-actions-send-btn { width: 100%; text-align: center; }
    .cv-form-grid { grid-template-columns: 1fr; }
    .cv-adv-filters { padding: 10px 12px; gap: 6px; }
}
@media (max-width: 600px) {
    .cv-vault-wrap { padding: 20px 12px; }
    .cv-vault-header { padding: 20px 16px; border-radius: 12px; }
    .cv-vault-header-watermark { display: none !important; }
    .cv-vault-file-card { flex-wrap: wrap; }
    .cv-vault-file-actions { width: 100%; justify-content: flex-end; padding-top: 8px; border-top: 1px solid #f0f2f5; }
    .cv-tabs { gap: 0; border-radius: 10px; padding: 3px; }
    .cv-tab { padding: 8px 10px; font-size: 12px; }
    .cv-cards-grid { grid-template-columns: 1fr; }
    .cv-preview-modal { width: 98vw; height: 90vh; }
    .cv-dashboard-snippet { white-space: normal; }
    .cv-dropdown-menu { min-width: 220px; right: -10px; }
    .cv-form-panel.open { padding: 14px; }
}




.cv-vault-wrap .cv-agency-scope-toggle .cv-scope-lbl { color: inherit !important; }


.cv-vault-wrap .cv-hero-subline { position: relative; }
.cv-vault-wrap .cv-hero-subline .cv-vault-header-meta-v2 { margin-top: 6px; }



@media (max-width: 680px) {
    
    .cv-vault-wrap {
        width: 100vw !important;
        max-width: 100vw !important;
        position: relative !important;
        left: 50% !important;
        right: 50% !important;
        margin-left: -50vw !important;
        margin-right: -50vw !important;
        padding-left: 12px !important;
        padding-right: 12px !important;
        box-sizing: border-box !important;
    }
    
    .cv-vault-header.cv-vault-header-v2 { padding: 13px 13px !important; }
    
    .cv-vault-header-v2 .cv-agency-scope-mini {
        position: absolute !important;
        top: 12px !important; right: 12px !important;
        display: inline-flex !important;
        margin: 0 !important;
        z-index: 5 !important;
    }
    .cv-vault-header-v2 .cv-agency-scope-mini .cv-scope-lbl { display: none !important; }
    .cv-vault-header-v2 .cv-agency-scope-toggle { padding: 5px 8px !important; }
    
    .cv-vault-header.cv-vault-header-v2 { padding: 16px 14px !important; }
    


    .cv-vault-wrap .cv-vault-stats {
        display: flex !important;
        flex-wrap: nowrap !important;
        overflow-x: auto !important;
        gap: 8px !important;
        margin-top: 16px !important;
        padding-bottom: 9px !important;
        justify-content: flex-start !important;
        scroll-snap-type: x proximity;
        -webkit-overflow-scrolling: touch;
        
        scrollbar-width: thin;
        scrollbar-color: rgba(255,255,255,.18) transparent;
        

        -webkit-mask-image: linear-gradient(to right, #000 0, #000 calc(100% - 26px), rgba(0,0,0,.15) 100%);
        mask-image: linear-gradient(to right, #000 0, #000 calc(100% - 26px), rgba(0,0,0,.15) 100%);
    }
    .cv-vault-wrap .cv-vault-stats::-webkit-scrollbar { height: 3px; }
    .cv-vault-wrap .cv-vault-stats::-webkit-scrollbar-track { background: transparent; }
    .cv-vault-wrap .cv-vault-stats::-webkit-scrollbar-thumb { background: rgba(255,255,255,.18); border-radius: 999px; }
    .cv-vault-wrap .cv-vault-stat {
        flex: 0 0 auto !important;
        width: 76px !important; min-width: 76px !important;
        scroll-snap-align: start;
        display: flex !important; flex-direction: column !important; flex-wrap: nowrap !important;
        align-items: center !important; justify-content: center !important;
        row-gap: 2px !important; column-gap: 0 !important;
        padding: 10px 6px !important; border-radius: 11px !important;
    }
    .cv-vault-wrap .cv-vault-stat:not(.cv-vault-stat-storage) .cv-vault-stat-icon { order: 0 !important; font-size: 17px !important; width: 17px !important; height: 17px !important; }
    .cv-vault-wrap .cv-vault-stat:not(.cv-vault-stat-storage) strong { order: 1 !important; font-size: 17px !important; line-height: 1.05 !important; }
    .cv-vault-wrap .cv-vault-stat:not(.cv-vault-stat-storage) > span:last-child { order: 2 !important; flex-basis: auto !important; text-align: center !important; font-size: 9px !important; letter-spacing: .2px !important; white-space: nowrap !important; }
    
    .cv-vault-wrap .cv-vault-stat-storage { width: 98px !important; min-width: 98px !important; }
    .cv-vault-wrap .cv-vault-stat-storage .cv-vault-stat-icon { font-size: 16px !important; width: 16px !important; height: 16px !important; }
    .cv-vault-wrap .cv-vault-stat-storage-detail { gap: 1px !important; }
    .cv-vault-wrap .cv-vault-stat-storage-detail strong { font-size: 13px !important; }
    .cv-vault-wrap .cv-vault-stat-storage-quota { font-size: 8.5px !important; }
}







.cv-vault-wrap .cv-hero-info-btn {
    -webkit-appearance: none !important;
    appearance: none !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    padding: 0 !important;
    box-shadow: none !important;
    line-height: 1 !important;
    vertical-align: middle !important;
}
.cv-vault-wrap .cv-hero-info-btn .dashicons {
    flex: 0 0 auto !important;
    line-height: 1 !important;
}

.cv-vault-wrap .cv-agency-scope-toggle {
    -webkit-appearance: none !important;
    appearance: none !important;
}

.cv-vault-wrap .cv-tab-unread,
.cv-vault-wrap .cv-tab-count,
.cv-vault-wrap .cv-seen-dot,
.cv-vault-wrap .cli-msg-count,
.cv-vault-wrap .cv-badge-count {
    flex: 0 0 auto !important;
    box-sizing: border-box !important;
}
.cv-vault-wrap .cv-tab-unread,
.cv-vault-wrap .cli-msg-count,
.cv-vault-wrap .cv-badge-count {
    aspect-ratio: 1 / 1 !important; 
}

@media (max-width: 680px) {
    

    .cv-vault-wrap .cv-msglist-meta {
        display: flex !important;
        flex-wrap: wrap !important;
        align-items: center !important;
        gap: 5px 6px !important;
    }
    .cv-vault-wrap .cv-fmsg-att,
    .cv-vault-wrap .cv-fmsg-att-chip,
    .cv-vault-wrap .cv-seen-pill,
    .cv-vault-wrap .cv-fmsg-tag,
    .cv-vault-wrap .cv-fmsg-folder,
    .cv-vault-wrap .cv-doc-tag,
    .cv-vault-wrap .cv-tagchip,
    .cv-vault-wrap .cv-card-tag,
    .cv-vault-wrap .cv-link-tag {
        max-width: 100% !important;
        min-width: 0 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }
    .cv-vault-wrap .cv-fmsg-att .dashicons,
    .cv-vault-wrap .cv-fmsg-att-chip .dashicons,
    .cv-vault-wrap .cv-seen-pill .cv-seen-dot,
    .cv-vault-wrap .cv-fmsg-folder .dashicons {
        flex: 0 0 auto !important;
    }
    
    .cv-vault-wrap .cv-msglist-main { flex: 1 1 auto !important; min-width: 0 !important; }
    
    .cv-vault-wrap .cv-fmsg-actions { flex: 0 0 auto !important; }

    


    .cv-vault-wrap table.cv-folder-files-table { table-layout: auto !important; width: 100% !important; }
    .cv-vault-wrap table.cv-folder-files-table thead { display: none !important; }
    .cv-vault-wrap table.cv-folder-files-table tbody { display: block !important; }
    .cv-vault-wrap table.cv-folder-files-table tr { display: block !important; padding: 12px 12px !important; border-bottom: 1px solid #eef2f7 !important; }
    .cv-vault-wrap table.cv-folder-files-table td {
        display: block !important;
        width: auto !important;
        max-width: 100% !important;
        min-width: 0 !important;
        border: none !important;
        padding: 1px 0 !important;
        text-align: left !important;
        white-space: normal !important;
    }
    
    .cv-vault-wrap table.cv-folder-files-table td.cv-folder-file-name { width: auto !important; }
    .cv-vault-wrap table.cv-folder-files-table td.cv-folder-file-name .cv-folder-file-desc { white-space: normal !important; }
    
    .cv-vault-wrap table.cv-folder-files-table td:nth-child(2),
    .cv-vault-wrap table.cv-folder-files-table td:nth-child(3) { font-size: 11.5px !important; color: var(--cvf-text-muted, #94a3b8) !important; margin-top: 2px !important; }
    
    .cv-vault-wrap table.cv-folder-files-table td.cv-folder-file-actions { margin-top: 8px !important; }
    .cv-vault-wrap table.cv-folder-files-table td.cv-folder-file-actions .cv-act-row {
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 6px !important;
        opacity: 1 !important;
        justify-content: flex-start !important;
    }

    

    .cv-vault-wrap .cv-fmsg-item .cv-fmsg-actions,
    .cv-vault-wrap .cv-bomv-item .cv-bomv-actions,
    .cv-vault-wrap .cv-card-item .cv-card-actions,
    .cv-vault-wrap .cv-link-card .cv-link-actions { opacity: 1 !important; }
    
    .cv-vault-wrap .cv-ff-att, .cv-vault-wrap .cv-doc-att-chip {
        max-width: 100% !important; min-width: 0 !important;
        white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important;
    }
}


.cv-inline-rename {
    border: none;
    border-bottom: 2px solid var(--cvf-accent);
    background: transparent;
    font-size: inherit;
    font-weight: inherit;
    color: inherit;
    padding: 0 2px;
    outline: none;
    font-family: inherit;
}


.cv-timeline {
    position: relative;
    padding: 0 0 0 24px;
}

.cv-timeline::before {
    content: '';
    position: absolute;
    left: 11px;
    top: 0;
    bottom: 0;
    width: 2px;
    background: var(--cvf-border, #e1e5eb);
}

.cv-timeline-date {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 20px 0 12px -24px;
    position: relative;
    z-index: 1;
}

.cv-timeline-date:first-child {
    margin-top: 0;
}

.cv-timeline-date-badge {
    background: var(--cvf-accent, var(--cvf-primary));
    color: #fff;
    padding: 4px 14px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 600;
    white-space: nowrap;
}

.cv-timeline-date-line {
    flex: 1;
    height: 1px;
    background: var(--cvf-border, #e1e5eb);
}

.cv-timeline-item {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    padding: 14px 16px;
    margin: 0 0 8px 0;
    background: var(--cvf-surface, #fff);
    border-radius: 12px;
    border: 1px solid var(--cvf-border, #e1e5eb);
    position: relative;
    transition: all 0.15s;
}

.cv-timeline-item:hover {
    border-color: var(--cvf-accent, #2a5298);
    box-shadow: 0 2px 8px rgba(0,0,0,.06);
    transform: translateX(4px);
}

.cv-timeline-dot {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    flex-shrink: 0;
    color: #fff;
}

.cv-timeline-content {
    flex: 1;
    min-width: 0;
}

.cv-timeline-header {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 4px;
}

.cv-timeline-type-badge {
    padding: 2px 10px;
    border-radius: 12px;
    font-size: 11px;
    font-weight: 600;
}

.cv-timeline-time {
    font-size: 12px;
    color: var(--cvf-text-muted, #8899aa);
    margin-left: auto;
}

.cv-timeline-title {
    font-size: 14px;
    font-weight: 600;
    margin: 0;
    color: var(--cvf-text, var(--cvf-primary));
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.cv-timeline-snippet {
    font-size: 12px;
    color: var(--cvf-text-muted, #8899aa);
    margin: 4px 0 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.cv-timeline-arrow {
    flex-shrink: 0;
    color: var(--cvf-text-muted, #ccc);
    align-self: center;
}

.cv-timeline-item:hover .cv-timeline-arrow {
    color: var(--cvf-accent, #2a5298);
}





.cv-dropdown-wrap {
    position: relative;
    display: inline-block;
    z-index: var(--cvf-z-dropdown);
}
.cv-dropdown-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 22px;
    border: 2px solid rgba(255,255,255,.5) !important;
    border-radius: 10px !important;
    background: rgba(255,255,255,.25) !important;
    backdrop-filter: blur(6px);
    color: #fff !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    cursor: pointer;
    font-family: inherit !important;
    box-shadow: 0 2px 8px rgba(0,0,0,.12);
    transition: all .2s;
    white-space: nowrap;
}
.cv-dropdown-btn:hover {
    background: rgba(255,255,255,.4) !important;
    box-shadow: 0 4px 16px rgba(0,0,0,.22);
    transform: translateY(-1px);
    border-color: rgba(255,255,255,.7) !important;
}
.cv-dropdown-btn .cv-dd-arrow {
    font-size: 10px;
    opacity: .7;
    transition: transform .2s;
}
.cv-dropdown-wrap.open .cv-dd-arrow {
    transform: rotate(180deg);
}
.cv-dropdown-menu {
    display: none;
    position: absolute;
    top: calc(100% + 8px);
    right: 0;
    min-width: 280px;
    background: var(--cvf-card);
    border: 1.5px solid var(--cvf-border);
    border-radius: var(--cvf-radius);
    padding: 8px;
    box-shadow: 0 12px 40px rgba(0,0,0,.15);
    z-index: var(--cvf-z-modal);
}
.cv-dropdown-wrap.open .cv-dropdown-menu {
    display: block;
}
.cv-dd-item {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 12px;
    padding: 10px 12px;
    border-radius: 10px;
    cursor: pointer;
    transition: background .15s;
    border: none;
    background: none;
    width: 100%;
    text-align: left !important;
    font-family: inherit;
    

    text-indent: 0 !important;
}
.cv-dd-item > * {
    
    margin-left: 0 !important;
}
.cv-dd-item:hover {
    background: rgba(var(--cvf-primary-rgb), 0.04);
}
.cv-dd-icon {
    width: 36px;
    height: 36px;
    border-radius: 10px;
    

    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 18px;
    line-height: 1 !important;
    text-align: center !important;
    vertical-align: middle;
    flex-shrink: 0;
    flex-grow: 0;
    overflow: hidden;
    padding: 0 !important;
    margin: 0 !important;
}
.cv-dd-label {
    font-size: 14px;
    font-weight: 600;
    color: var(--cvf-primary);
    margin-bottom: 1px;
}
.cv-dd-desc {
    font-size: 12px;
    color: #5a6c7d;
}


.cv-dropdown-btn-standalone {
    background: var(--cvf-primary);
    color: #fff;
    border: none;
    padding: 10px 20px;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: background .2s;
}
.cv-dropdown-btn-standalone:hover {
    background: var(--cvf-primary-light);
}




.cv-form-panel {
    background: var(--cvf-card);
    border: 1.5px solid var(--cvf-border);
    border-radius: var(--cvf-radius);
    padding: 0;
    margin-bottom: 20px;
    box-shadow: var(--cvf-shadow);
    overflow: hidden;
    max-height: 0;
    opacity: 0;
    transition: max-height .35s ease, opacity .25s ease, margin .25s ease;
}
.cv-form-panel.open {
    max-height: 800px;
    opacity: 1;
    padding: 20px;
}
.cv-form-panel-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 16px;
}
.cv-form-panel-title {
    font-size: 16px;
    font-weight: 700;
    color: var(--cvf-primary);
    display: flex;
    align-items: center;
    gap: 8px;
}
.cv-form-panel-close {
    background: none;
    border: 1px solid var(--cvf-border);
    border-radius: 8px;
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: var(--cvf-text-muted);
    font-size: 18px;
    transition: all .15s;
}
.cv-form-panel-close:hover {
    border-color: var(--cvf-danger);
    color: var(--cvf-danger);
    background: #fff5f5;
}
.cv-form-panel .cv-form-row {
    margin-bottom: 14px;
}
.cv-form-panel .cv-form-row label {
    display: block;
    font-size: 13px;
    font-weight: 600;
    color: var(--cvf-text);
    margin-bottom: 6px;
}
.cv-form-panel .cv-form-row input[type="text"],
.cv-form-panel .cv-form-row input[type="url"],
.cv-form-panel .cv-form-row textarea,
.cv-form-panel .cv-form-row select {
    width: 100%;
    padding: 10px 14px;
    border: 1.5px solid var(--cvf-border);
    border-radius: 10px;
    font-size: 14px;
    font-family: inherit;
    box-sizing: border-box;
    transition: border-color .2s, box-shadow .2s;
    background: var(--cvf-bg);
    color: var(--cvf-text);
}
.cv-form-panel .cv-form-row input:focus,
.cv-form-panel .cv-form-row textarea:focus,
.cv-form-panel .cv-form-row select:focus {
    border-color: var(--cvf-primary-light);
    outline: none;
    box-shadow: 0 0 0 3px rgba(42,82,152,0.1);
    background: var(--cvf-card);
}
.cv-form-panel .cv-form-row textarea {
    resize: vertical;
    min-height: 80px;
}
.cv-form-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
}
@media (max-width: 600px) {
    .cv-form-grid { grid-template-columns: 1fr; }
}
.cv-form-actions {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    margin-top: 16px;
    padding-top: 16px;
    border-top: 1px solid var(--cvf-border);
}




.cv-adv-filters {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 14px;
    flex-wrap: wrap;
    padding: 12px 16px;
    background: var(--cvf-card);
    border-radius: 12px;
    border: 1px solid var(--cvf-border);
}
.cv-adv-filters label {
    font-size: 12px;
    font-weight: 600;
    color: var(--cvf-text-muted);
    white-space: nowrap;
}
.cv-adv-select {
    padding: 6px 10px;
    border: 1.5px solid var(--cvf-border);
    border-radius: 7px;
    font-size: 12px;
    font-family: inherit;
    color: var(--cvf-text);
    background: var(--cvf-card);
    cursor: pointer;
}
.cv-adv-date {
    padding: 6px 10px;
    border: 1.5px solid var(--cvf-border);
    border-radius: 7px;
    font-size: 12px;
    font-family: inherit;
    color: var(--cvf-text);
    background: var(--cvf-card);
    width: 130px;
}
.cv-adv-sep {
    width: 1px;
    height: 24px;
    background: var(--cvf-border);
    flex-shrink: 0;
}




.cv-sort-ctl {
    display: flex;
    align-items: center;
    gap: 4px;
}
.cv-sort-btn {
    padding: 5px 10px;
    border: 1.5px solid var(--cvf-border);
    border-radius: 7px;
    font-size: 11px;
    font-weight: 600;
    cursor: pointer;
    background: var(--cvf-card);
    color: var(--cvf-text-muted);
    font-family: inherit;
    display: flex;
    align-items: center;
    gap: 3px;
    transition: all .15s;
}
.cv-sort-btn.active {
    border-color: var(--cvf-primary);
    background: #e8f0fe;
    color: var(--cvf-primary);
}




.cv-content-table {
    background: var(--cvf-card);
    border-radius: 14px;
    box-shadow: 0 1px 8px rgba(0,0,0,.04);
    overflow: hidden;
    border: 1px solid var(--cvf-border);
}
.cv-content-table table {
    width: 100%;
    border-collapse: collapse;
}
.cv-content-table th {
    padding: 10px 14px;
    text-align: left;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .4px;
    color: var(--cvf-text-muted);
    background: var(--cvf-bg);
    border-bottom: 1px solid var(--cvf-border);
    white-space: nowrap;
}
.cv-content-table td {
    padding: 12px 14px;
    border-bottom: 1px solid #f0f2f5;
    font-size: 14px;
    vertical-align: middle;
}
.cv-content-table tbody tr:hover td {
    background: #f8fafc;
}
.cv-content-table-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px 18px;
    border-top: 1px solid var(--cvf-border);
    font-size: 13px;
    color: var(--cvf-text-muted);
}




.cv-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    border-radius: 9px;
    font-size: 10px;
    font-weight: 700;
    line-height: 1;
}
.cv-badge-red { background: #e74c3c; color: #fff; }
.cv-badge-gray { background: #e8ecf0; color: #888; }
.cv-badge-blue { background: #e8f0fe; color: #949494; }
.cv-badge-green { background: #d4edda; color: #155724; }




.cv-paginated-hidden { display: none !important; }

.cv-load-more-wrap {
    text-align: center;
    margin: 20px 0 8px;
}
.cv-btn-load-more {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 10px 28px;
    border: 1px solid var(--cvf-border);
    border-radius: 10px;
    background: #fff;
    color: var(--cvf-primary);
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    transition: all .2s;
}
.cv-btn-load-more:hover {
    background: var(--cvf-primary);
    color: #fff;
    border-color: var(--cvf-primary);
}




.cv-file-type-filters {
    display: flex;
    gap: 6px;
    margin-bottom: 14px;
    flex-wrap: wrap;
}
.cv-ftype-btn {
    padding: 6px 16px;
    border: 1px solid var(--cvf-border);
    border-radius: 20px;
    background: #fff;
    color: var(--cvf-text);
    font-size: 12px;
    font-weight: 500;
    cursor: pointer;
    transition: all .2s;
}
.cv-ftype-btn:hover { border-color: var(--cvf-primary); color: var(--cvf-primary); }
.cv-ftype-btn.active {
    background: var(--cvf-primary);
    color: #fff;
    border-color: var(--cvf-primary);
}




.cv-doc-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 13px;
}
.cv-doc-table thead th {
    text-align: center !important;
    padding: 10px 14px;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .5px;
    color: var(--cvf-text-muted);
    border-bottom: 2px solid var(--cvf-border);
    white-space: normal;
    line-height: 1.4;
    vertical-align: middle;
}
.cv-doc-table thead th:first-child,
.cv-doc-table thead th:nth-child(2) {
    text-align: left !important;
}
.cv-doc-table tbody tr.cv-doc-row {
    border-bottom: 1px solid var(--cvf-border);
    transition: background .15s;
}
.cv-doc-table tbody tr.cv-doc-row:hover {
    background: linear-gradient(90deg, rgba(30,58,95,0.07) 0%, rgba(30,58,95,0.02) 100%) !important;
}
.cv-doc-table td {
    padding: 12px 14px;
    vertical-align: middle;
}


.cv-doc-name {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 180px;
}
.cv-doc-icon {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    flex-shrink: 0;
    background: var(--cvf-icon-bg);
}
.cv-di-pdf { background: #fce4ec; }
.cv-di-img { background: #e8f5e9; }
.cv-di-word { background: #e3f2fd; }
.cv-di-xls { background: #e8f5e9; }
.cv-di-ppt { background: #fff0e6; }
.cv-di-zip { background: #fff3e0; }
.cv-di-doc { background: #e3f2fd; }
.cv-doc-name-t {
    font-weight: 600;
    color: var(--cvf-text);
    word-break: break-all;
    display: inline;
}
.cv-doc-name-clickable:hover {
    color: var(--cvf-primary, #1e3a5f);
    text-decoration: underline;
}
.cv-doc-name-s {
    font-size: 11px;
    color: var(--cvf-text-muted);
    display: inline;
    margin-left: 0;
}
.cv-doc-name-s::before { content: '('; }
.cv-doc-name-s::after { content: ')'; }
.cv-doc-desc {
    font-size: 11px;
    color: var(--cvf-text-muted);
    margin-top: 2px;
    max-width: 280px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}


.cv-doc-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    justify-content: center;
}


.cv-doc-table td:nth-child(2),
.cv-doc-table td:nth-child(3),
.cv-doc-table td:nth-child(4),
.cv-doc-table td:nth-child(5) {
    text-align: center;
}
.cv-doc-date {
    font-size: 12px;
    color: var(--cvf-text);
    white-space: nowrap;
}


.cv-doc-from {
    font-size: 12px;
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
}

.cv-doc-table td:has(.cv-doc-from) {
    text-align: center !important;
    line-height: 1.3;
}
.cv-doc-from-icon { font-size: 13px; line-height: 1; }
.cv-doc-from-name { word-break: break-word; font-weight: 500; }
.cv-doc-from-coach { color: var(--cvf-primary); }
.cv-doc-from-client { color: var(--cvf-success); }


.cv-doc-exp {
    font-size: 12px;
    white-space: nowrap;
}
.cv-doc-exp-ok { color: var(--cvf-success); }
.cv-doc-exp-warn { color: var(--cvf-accent); }
.cv-doc-exp-expired { color: var(--cvf-danger); text-decoration: line-through; }
.cv-doc-exp-none { color: var(--cvf-text-muted, #adb5bd); opacity: 0.5; }


.cv-doc-actions {
    display: flex;
    gap: 1px;
    align-items: center;
    flex-wrap: nowrap;
}
.cv-dact-btn {
    width: 26px;
    height: 26px;
    border: none;
    border-radius: 5px;
    background: transparent;
    cursor: pointer;
    font-size: 13px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background .15s;
    flex-shrink: 0;
}
.cv-dact-btn:hover { background: var(--cvf-bg); }
.cv-dact-btn sup {
    font-size: 9px;
    color: var(--cvf-primary);
    margin-left: 1px;
}
.cv-dact-btn .dashicons {
    font-size: 16px !important;
    width: 16px !important;
    height: 16px !important;
    color: var(--cvf-text-muted, #8a94a6);
}
.cv-dact-btn.cv-has-comments {
    position: relative;
}
.cv-dact-btn.cv-has-comments .dashicons {
    color: var(--cvf-primary, #1e3a5f);
}
.cv-comment-badge {
    position: absolute;
    top: 0;
    right: 0;
    min-width: 14px;
    height: 14px;
    font-size: 9px;
    font-weight: 700;
    line-height: 14px;
    text-align: center;
    background: var(--cvf-danger, #dc3545);
    color: #fff;
    border-radius: 7px;
    padding: 0 3px;
}


.cv-doc-table tbody tr.cv-doc-row:nth-child(4n+1) {
    background: rgba(241, 245, 249, 0.45);
}
.cv-doc-table tbody tr.cv-doc-row:nth-child(4n+1):hover {
    background: var(--cvf-hover-bg);
}


.cv-doc-table thead th {
    position: sticky;
    top: 0;
    background: #fff;
    z-index: 10;
    box-shadow: 0 1px 3px rgba(0,0,0,0.08);
}


.cv-doc-table thead th.cv-sortable {
    cursor: pointer;
    user-select: none;
    white-space: nowrap;
}
.cv-doc-table thead th.cv-sortable:hover {
    color: var(--cvf-primary, #1e3a5f);
}
.cv-doc-table thead th .cv-sort-arrow {
    font-size: 10px;
    margin-left: 3px;
    opacity: 0.4;
}
.cv-doc-table thead th.cv-sort-active .cv-sort-arrow {
    opacity: 1;
    color: var(--cvf-primary, #1e3a5f);
}


.cv-doc-tags:empty::after {
    content: '—';
    color: #cbd5e1;
    font-size: 12px;
}


.cv-doc-table thead th.cv-col-check,
.cv-doc-table td.cv-col-check {
    width: 36px;
    text-align: center !important;
    padding-left: 8px;
    padding-right: 4px;
}
.cv-doc-check {
    width: 16px;
    height: 16px;
    accent-color: var(--cvf-primary, #1e3a5f);
    cursor: pointer;
    vertical-align: middle;
}


.cv-batch-bar {
    display: none;
    align-items: center;
    gap: 10px;
    padding: 8px 14px;
    background: var(--cvf-primary, #1e3a5f);
    color: #fff;
    border-radius: 8px;
    margin-bottom: 8px;
    font-size: 13px;
    font-weight: 500;
    position: sticky;
    top: 0;
    z-index: 20;
    box-shadow: 0 2px 8px rgba(30,58,95,0.25);
}
.cv-batch-bar.cv-batch-visible {
    display: flex;
}
.cv-batch-bar button {
    background: rgba(255,255,255,0.2);
    border: none;
    color: #fff;
    padding: 5px 12px;
    border-radius: 6px;
    font-size: 12px;
    cursor: pointer;
    transition: background .15s;
}
.cv-batch-bar button:hover {
    background: rgba(255,255,255,0.35);
}
.cv-batch-bar .cv-batch-count {
    font-weight: 700;
}


.cv-batch-move-overlay {
    position: fixed;
    inset: 0;
    z-index: var(--cvf-z-overlay);
    background: rgba(0,0,0,0.4);
    display: flex;
    align-items: center;
    justify-content: center;
    animation: cvFadeIn .2s ease;
}
@keyframes cvFadeIn { from { opacity: 0; } to { opacity: 1; } }
.cv-batch-move-modal {
    background: #fff;
    border-radius: 14px;
    box-shadow: 0 8px 32px rgba(0,0,0,0.18);
    width: 380px;
    max-width: 90vw;
    overflow: hidden;
    animation: cvSlideUp .25s ease;
}
@keyframes cvSlideUp { from { transform: translateY(20px); opacity: 0; } to { transform: translateY(0); opacity: 1; } }
.cv-batch-move-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 20px;
    font-size: 15px;
    font-weight: 600;
    color: var(--cvf-text, #1e293b);
    border-bottom: 1px solid var(--cvf-border, #e2e8f0);
}
.cv-batch-move-close {
    background: none;
    border: none;
    font-size: 22px;
    color: var(--cvf-text-muted, #8a94a6);
    cursor: pointer;
    line-height: 1;
    padding: 0 4px;
    border-radius: 6px;
    transition: background .15s;
}
.cv-batch-move-close:hover {
    background: var(--cvf-bg, #f1f5f9);
    color: var(--cvf-text, #1e293b);
}
.cv-batch-move-body {
    padding: 16px 20px 20px;
}
.cv-batch-move-info {
    font-size: 13px;
    color: var(--cvf-text-muted, #64748b);
    margin: 0 0 12px;
}
.cv-batch-move-list {
    display: flex;
    flex-direction: column;
    gap: 6px;
    max-height: 260px;
    overflow-y: auto;
}
.cv-batch-folder-btn {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 14px;
    border: 1px solid var(--cvf-border, #e2e8f0);
    border-radius: 10px;
    background: #fff;
    font-size: 13px;
    font-weight: 500;
    color: var(--cvf-text, #1e293b);
    cursor: pointer;
    transition: all .15s;
    text-align: left;
    width: 100%;
}
.cv-batch-folder-btn:hover {
    background: var(--cvf-primary, #1e3a5f);
    color: #fff;
    border-color: var(--cvf-primary, #1e3a5f);
}


.cv-confirm-overlay {
    position: fixed;
    inset: 0;
    z-index: var(--cvf-z-modal, 100000); 
    background: rgba(0,0,0,0.45);
    display: none;
    align-items: center;
    justify-content: center;
    animation: cvFadeIn .2s ease;
}
.cv-confirm-overlay.cv-confirm-open {
    display: flex;
}
.cv-confirm-modal {
    background: #fff;
    border-radius: 14px;
    box-shadow: 0 8px 32px rgba(0,0,0,0.2);
    width: 400px;
    max-width: 90vw;
    overflow: hidden;
    animation: cvSlideUp .25s ease;
}
.cv-confirm-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 20px;
    font-size: 15px;
    font-weight: 600;
}
.cv-confirm-header-danger {
    background: linear-gradient(135deg, #dc2626 0%, #b91c1c 100%);
    color: #fff;
}
.cv-confirm-close {
    background: none;
    border: none;
    font-size: 22px;
    color: rgba(255,255,255,0.8);
    cursor: pointer;
    line-height: 1;
    padding: 0 4px;
    border-radius: 6px;
    transition: color .15s;
}
.cv-confirm-close:hover {
    color: #fff;
}
.cv-confirm-body {
    padding: 28px 24px;
    text-align: center;
}
.cv-confirm-body p {
    font-size: 15px;
    color: #334155;
    margin: 0 0 20px;
    line-height: 1.5;
}
.cv-confirm-actions {
    display: flex;
    gap: 12px;
    justify-content: center;
}
.cv-confirm-btn {
    padding: 10px 22px;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all .15s;
    border: none;
    line-height: 1.4;
}
.cv-confirm-btn-secondary {
    background: #f1f5f9;
    color: #475569;
    border: 1px solid #e2e8f0;
}
.cv-confirm-btn-secondary:hover {
    background: #e2e8f0;
}
.cv-confirm-btn-danger {
    background: #dc2626;
    color: #fff;
}
.cv-confirm-btn-danger:hover {
    background: #b91c1c;
}


.cv-doc-name-t[title] {
    position: relative;
}


.cv-doc-footer {
    padding: 10px 12px;
    font-size: 12px;
    color: var(--cvf-text-muted);
    border-top: 1px solid var(--cvf-border);
}


@media (max-width: 768px) {
    .cv-doc-table thead { display: none; }
    .cv-doc-table,
    .cv-doc-table tbody,
    .cv-doc-table tr,
    .cv-doc-table td {
        display: block;
        width: 100%;
    }
    .cv-doc-table tr.cv-doc-row {
        padding: 12px;
        margin-bottom: 8px;
        border: 1px solid var(--cvf-border);
        border-radius: 10px;
        background: #fff;
    }
    .cv-doc-table td {
        padding: 4px 0;
        border: none;
    }
    .cv-doc-table td:empty { display: none; }
    .cv-doc-from { flex-direction: row; gap: 6px; }
    .cv-doc-actions { justify-content: flex-end; margin-top: 8px; }
    .cv-folder-move-select { max-width: 100%; }
}




.cv-media-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 16px;
    padding-bottom: 20px; 
}

.cv-media-item {
    border: 1.5px solid var(--cvf-border);
    border-radius: 12px;
    overflow: hidden;
    background: #1a1a2e;
    transition: box-shadow .2s, transform .2s;
    cursor: pointer;
}
.cv-media-item:hover {
    box-shadow: 0 6px 20px rgba(30,58,95,.18);
    transform: translateY(-2px);
}
.cv-media-item.cv-media-admin-reply {
    border-color: var(--cvf-accent);
    box-shadow: 0 0 0 1px rgba(232,145,58,.1), 0 2px 8px rgba(232,145,58,.12);
}

.cv-vault-wrap .cv-media-month-separator {
    display: flex; align-items: center; gap: 10px;
    grid-column: 1 / -1;
    margin: 14px 0 6px; padding: 0;
    cursor: pointer; user-select: none;
    transition: all .25s ease;
}
.cv-vault-wrap .cv-media-month-separator:first-child { margin-top: 0; }
.cv-vault-wrap .cv-media-month-label {
    font-size: 13px; font-weight: 600; color: #5a6578;
    text-transform: capitalize; white-space: nowrap;
    display: flex; align-items: center; gap: 6px;
}
.cv-vault-wrap .cv-media-month-arrow {
    font-size: 11px; transition: transform .2s; color: var(--cvf-text-muted, #a0aec0);
}
.cv-vault-wrap .cv-media-month-separator.collapsed .cv-media-month-arrow {
    transform: rotate(-90deg);
}
.cv-vault-wrap .cv-media-month-count {
    font-size: 11px; font-weight: 500; color: #b0b8c9; margin-left: 2px;
}
.cv-vault-wrap .cv-media-month-line {
    flex: 1; height: 1px; background: var(--cvf-border, #d8dde6);
}
.cv-vault-wrap .cv-media-month-separator:hover .cv-media-month-label {
    color: var(--cvf-primary, #1e3a5f);
}
.cv-vault-wrap .cv-media-month-separator:hover .cv-media-month-line {
    background: #c0c8d4;
}

.cv-vault-wrap .cv-media-month-separator.collapsed {
    background: linear-gradient(135deg, #f8f5f0, #f3ede4);
    border: 1px solid #e0d5c5;
    border-radius: 8px;
    padding: 10px 14px;
    margin: 16px 0;
}
.cv-vault-wrap .cv-media-month-separator.collapsed .cv-media-month-label {
    font-size: 13.5px; font-weight: 700;
    color: var(--cvf-accent, #e8913a);
}
.cv-vault-wrap .cv-media-month-separator.collapsed .cv-media-month-count {
    background: var(--cvf-accent, #e8913a); color: #fff;
    font-size: 10.5px; font-weight: 700;
    padding: 2px 8px; border-radius: 10px; margin-left: 4px;
}
.cv-vault-wrap .cv-media-month-separator.collapsed .cv-media-month-line {
    display: none;
}
.cv-vault-wrap .cv-media-month-separator.collapsed .cv-media-month-arrow {
    color: var(--cvf-accent, #e8913a);
}
.cv-vault-wrap .cv-media-month-separator.collapsed:hover {
    border-color: var(--cvf-accent, #e8913a);
    box-shadow: 0 2px 12px rgba(232,145,58,.15);
}

.cv-vault-wrap .cv-media-week-separator {
    display: flex; align-items: center; gap: 8px;
    grid-column: 1 / -1;
    margin: 6px 0 2px; padding: 0 0 0 4px;
    cursor: pointer; user-select: none;
    transition: all .25s ease;
}
.cv-vault-wrap .cv-media-week-label {
    font-size: 11px; font-weight: 500; color: #b0b8c9;
    white-space: nowrap; letter-spacing: .2px;
    display: flex; align-items: center; gap: 5px;
}
.cv-vault-wrap .cv-media-week-arrow {
    font-size: 10px; transition: transform .2s; color: #c0c8d4;
}
.cv-vault-wrap .cv-media-week-separator.collapsed .cv-media-week-arrow {
    transform: rotate(-90deg);
}
.cv-vault-wrap .cv-media-week-count {
    font-size: 10px; font-weight: 500; color: #c0c8d4;
}
.cv-vault-wrap .cv-media-week-line {
    flex: 1; height: 1px; background: #edf0f5;
}
.cv-vault-wrap .cv-media-week-separator:hover .cv-media-week-label {
    color: #5a6578;
}

.cv-vault-wrap .cv-media-week-separator.collapsed {
    background: linear-gradient(135deg, #f0f4f9, #e8edf4);
    border: 1px solid #d0d8e4;
    border-radius: 8px;
    padding: 10px 14px;
    margin: 12px 0;
}
.cv-vault-wrap .cv-media-week-separator.collapsed .cv-media-week-label {
    font-size: 12px; font-weight: 700;
    color: var(--cvf-primary, #1e3a5f);
}
.cv-vault-wrap .cv-media-week-separator.collapsed .cv-media-week-count {
    background: var(--cvf-primary, #1e3a5f); color: #fff;
    font-size: 10px; font-weight: 700;
    padding: 2px 8px; border-radius: 10px; margin-left: 2px;
}
.cv-vault-wrap .cv-media-week-separator.collapsed .cv-media-week-line {
    display: none;
}
.cv-vault-wrap .cv-media-week-separator.collapsed .cv-media-week-arrow {
    color: var(--cvf-primary, #1e3a5f);
}
.cv-vault-wrap .cv-media-week-separator.collapsed:hover {
    border-color: var(--cvf-primary, #1e3a5f);
    box-shadow: 0 2px 12px rgba(30,58,95,.15);
}

.cv-vault-wrap .cv-media-item.cv-month-hidden,
.cv-vault-wrap .cv-media-week-separator.cv-month-hidden {
    display: none !important;
}
.cv-vault-wrap .cv-media-item.cv-week-hidden {
    display: none !important;
}
.cv-vault-wrap .cv-media-item.cv-week-paginated {
    display: none !important;
}
.cv-vault-wrap .cv-week-load-more {
    grid-column: 1 / -1;
    text-align: center;
    padding: 8px 0;
}
.cv-vault-wrap .cv-week-load-more.cv-month-hidden,
.cv-vault-wrap .cv-week-load-more.cv-week-hidden {
    display: none !important;
}
.cv-media-preview,
.cv-media-card-thumb {
    position: relative;
    height: 180px;
    background: linear-gradient(135deg, #1a2a4a 0%, #2a4a7a 100%);
    background-size: cover;
    background-position: center;
    display: flex;
    align-items: center;
    justify-content: center;
}

.cv-media-reply-badge {
    position: absolute;
    bottom: 8px;
    left: 8px;
    display: inline-flex;
    align-items: center;
    gap: 3px;
    padding: 3px 10px;
    border-radius: 6px;
    background: #fef3e2;
    color: #b06e1a;
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .4px;
    box-shadow: 0 1px 4px rgba(0,0,0,.15);
}
.cv-media-reply-badge .dashicons {
    font-size: 11px; width: 11px; height: 11px; line-height: 11px;
}

.cv-media-comment-badge {
    position: absolute;
    bottom: 8px;
    right: 8px;
    padding: 3px 8px;
    border-radius: 6px;
    background: rgba(0,0,0,.55);
    color: #fff;
    font-size: 11px;
    font-weight: 600;
}
.cv-media-type-badge {
    position: absolute;
    top: 8px;
    left: 8px;
    padding: 3px 10px;
    border-radius: 6px;
    background: rgba(0,0,0,.55);
    color: #fff;
    font-size: 10px;
    font-weight: 600;
    letter-spacing: .3px;
}

.cv-media-card-info {
    padding: 10px 14px;
    background: #161b22;
    border-top: 1px solid rgba(255,255,255,.06);
}
.cv-media-card-title {
    font-size: 13px;
    font-weight: 600;
    color: #e6edf3;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    margin-bottom: 3px;
}
.cv-media-card-meta {
    font-size: 11px;
    color: #8b949e;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.cv-media-card-modified {
    color: #e8913a;
}

.cv-media-card-thumb:not([style*="background-image"]) {
    background: linear-gradient(135deg, #1a2332 0%, #2d3748 100%);
}
.cv-media-play {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: rgba(255,255,255,.9);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    color: var(--cvf-primary);
    cursor: pointer;
    transition: transform .2s;
}


.cv-media-play::after {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 9px 0 9px 15px;
    border-color: transparent transparent transparent var(--cvf-primary);
    margin-left: 4px;
}
.cv-media-play:hover { transform: scale(1.1); }



.cv-sc-lightbox {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    z-index: var(--cvf-z-overlay);
    display: flex;
    align-items: center;
    justify-content: center;
    transform: none !important;
}
.cv-sc-lightbox-overlay {
    position: absolute; top: 0; left: 0; right: 0; bottom: 0;
    background: rgba(0,0,0,.85); cursor: pointer;
}
.cv-sc-lightbox-content {
    position: relative; z-index: 2;
    width: 90%; max-width: 1100px; max-height: 92vh;
    overflow: auto; border-radius: 14px; background: #0d1117;
    padding: 20px;
}
.cv-sc-lightbox-close {
    position: absolute; top: 10px; right: 14px; z-index: 3;
    background: none; border: none; color: #fff; font-size: 28px; cursor: pointer;
}
.cv-sc-lightbox-player video,
.cv-sc-lightbox-player iframe,
.cv-sc-lightbox-player .fp-media-block {
    width: 100% !important; max-width: 100% !important;
    border-radius: 10px;
}
.cv-sc-lightbox-player video {
    max-height: 80vh;
    display: block;
}
.cv-media-lock {
    position: absolute;
    top: 8px;
    right: 8px;
    font-size: 14px;
}

.cv-media-popup {
    position: fixed;
    inset: 0;
    z-index: var(--cvf-z-modal, 100000); 
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
}
.cv-media-popup-overlay {
    position: absolute;
    inset: 0;
    background: rgba(0,0,0,.92);
    backdrop-filter: blur(8px);
    cursor: pointer;
}
.cv-media-popup-container {
    position: relative;
    z-index: 2;
    display: flex;
    width: 96%;
    max-width: 1300px;
    max-height: 92vh;
    background: #fff;
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 20px 60px rgba(0,0,0,.4);
}

.cv-media-popup-container.cv-popup-mode-audio {
    max-width: 1100px;
    max-height: 92vh;
}

.cv-media-popup-main {
    flex: 1;
    display: flex;
    flex-direction: column;
    min-width: 0;
    background: #0d1117;
}
.cv-media-popup-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px 20px;
    background: #161b22;
    border-bottom: 1px solid #30363d;
    gap: 14px;
}
.cv-media-popup-header-left {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 2px;
    overflow: hidden;
}
.cv-media-popup-title {
    font-size: 15px;
    font-weight: 600;
    color: #fff;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.cv-media-popup-meta {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    color: #8b949e;
    white-space: nowrap;
    flex-wrap: wrap;
}
.cv-popup-meta-modified {
    color: #e8913a;
}
.cv-media-popup-header-right {
    display: flex;
    gap: 6px;
    align-items: center;
    flex-shrink: 0;
}
.cv-media-popup-header-right button.cv-media-popup-btn-edit,
.cv-media-popup-header-right button.cv-media-popup-btn-archive,
.cv-media-popup-header-right button.cv-media-popup-btn-delete {
    background: rgba(255,255,255,.08);
    border: 1px solid rgba(255,255,255,.15);
    color: #ccc;
    width: 34px;
    height: 34px;
    border-radius: 8px;
    cursor: pointer;
    font-size: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all .15s;
}
.cv-media-popup-header-right button.cv-media-popup-btn-edit:hover,
.cv-media-popup-header-right button.cv-media-popup-btn-archive:hover,
.cv-media-popup-header-right button.cv-media-popup-btn-delete:hover {
    background: rgba(255,255,255,.15);
    color: #fff;
}

.cv-media-popup-btn-comments {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 7px 14px;
    border: 1.5px solid rgba(255,255,255,.15);
    border-radius: 8px;
    background: rgba(255,255,255,.06);
    color: #ccc;
    font-size: 12px;
    font-weight: 500;
    cursor: pointer;
    transition: all .15s;
    white-space: nowrap;
}
.cv-media-popup-btn-comments:hover {
    background: rgba(255,255,255,.12);
    color: #fff;
    border-color: rgba(255,255,255,.3);
}
.cv-media-popup-btn-comments.cv-btn-active {
    background: var(--cvf-primary, #1e3a5f);
    border-color: var(--cvf-primary, #1e3a5f);
    color: #fff;
}
.cv-media-popup-btn-comments .dashicons {
    font-size: 15px;
    width: 15px;
    height: 15px;
    line-height: 15px;
}

.cv-media-popup-comments-close {
    background: none;
    border: none;
    font-size: 20px;
    color: var(--cvf-text-muted);
    cursor: pointer;
    padding: 0 4px;
    line-height: 1;
}
.cv-media-popup-comments-close:hover {
    color: var(--cvf-text);
}
.cv-media-popup-player {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
    overflow: auto;
    min-height: 300px;
}
.cv-media-popup-player video,
.cv-media-popup-player audio {
    max-width: 100%;
    max-height: 75vh;
    border-radius: 10px;
}
.cv-media-popup-player iframe {
    width: 100%;
    max-width: 100%;
    border: none;
    border-radius: 10px;
}
.cv-media-popup-player .cv-popup-iframe-wrap {
    position: relative;
    width: 100%;
    padding-bottom: 56.25%;
    height: 0;
}
.cv-media-popup-player .cv-popup-iframe-wrap iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.cv-media-popup-player .cv-popup-audio-wrap {
    width: 100%;
    max-width: 600px;
    padding: 40px;
    background: rgba(255,255,255,.05);
    border-radius: 14px;
}
.cv-media-popup-player .cv-popup-audio-wrap audio {
    width: 100%;
}
.cv-media-popup-player .cv-popup-audio-wrap iframe {
    width: 100% !important;
    min-height: 175px;
    border: none;
    border-radius: 12px;
    box-shadow: 0 8px 40px rgba(0,0,0,.4);
    display: block;
}

.cv-media-popup-comments {
    width: 340px;
    min-width: 340px;
    background: #fff;
    display: flex;
    flex-direction: column;
    border-left: 1px solid var(--cvf-border);
}
.cv-media-popup-comments.cv-panel-hidden {
    display: none;
}
.cv-media-popup-comments-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px 16px;
    border-bottom: 1px solid var(--cvf-border);
}
.cv-media-popup-comments-header h4 {
    margin: 0;
    font-size: 14px;
    font-weight: 600;
    color: var(--cvf-text);
}
.cv-media-popup-comments-list {
    flex: 1;
    overflow-y: auto;
    padding: 12px;
}
.cv-media-popup-comments-form {
    padding: 12px;
    border-top: 1px solid var(--cvf-border);
}
.cv-media-popup-comments-form textarea {
    width: 100%;
    border: 1.5px solid var(--cvf-border);
    border-radius: 8px;
    padding: 8px 12px;
    font-size: 13px;
    font-family: inherit;
    resize: none;
    min-height: 60px;
    outline: none;
    transition: border-color .2s;
    box-sizing: border-box;
}
.cv-media-popup-comments-form textarea:focus {
    border-color: var(--cvf-primary);
}

.cv-popup-comment-input-row {
    display: flex;
    align-items: flex-end;
    gap: 8px;
}
.cv-popup-comment-input-row textarea {
    flex: 1;
}

.cv-popup-comment-media-row {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-top: 8px;
    flex-wrap: wrap;
}
.cv-popup-media-row-label {
    font-size: 11px;
    color: var(--cvf-text-muted);
    font-weight: 500;
    white-space: nowrap;
}

.cv-popup-comment-media-row { flex-direction: column; align-items: stretch; }
.cv-popup-ireply-modes-host { width: 100%; }
.cv-popup-ireply-modes-host .cv-ireply-modes { margin-bottom: 0; }
.cv-popup-ireply-modes-host .cv-ireply-mode-btn { flex: 1 1 0; justify-content: center; }
.cv-popup-ireply-rec-host { margin-top: 8px; }
.cv-popup-ireply-rec-host:empty { display: none; margin-top: 0; }
.cv-popup-ireply-rec-host .cv-ireply-rec { margin-bottom: 0; }
.cv-popup-record-trigger {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 6px 10px;
    border: 1.5px solid var(--cvf-border);
    border-radius: 8px;
    background: var(--cvf-card, #fff);
    color: var(--cvf-text-muted);
    cursor: pointer;
    transition: all .15s;
    font-size: 11px;
    font-weight: 600;
    font-family: inherit;
    white-space: nowrap;
}
.cv-popup-record-trigger:hover {
    border-color: var(--cvf-primary);
    color: var(--cvf-primary);
    background: #f0f7ff;
}
.cv-popup-record-trigger[data-rec-mode="video"]:hover { border-color: #e53935; color: #e53935; background: #fef2f2; }
.cv-popup-record-trigger[data-rec-mode="audio"]:hover { border-color: var(--cvf-accent, #e8913a); color: var(--cvf-accent, #e8913a); background: #fff8f0; }
.cv-popup-record-trigger[data-rec-mode="screen"]:hover { border-color: var(--cvf-success, #27ae60); color: var(--cvf-success, #27ae60); background: #f0fdf4; }
.cv-popup-record-trigger .dashicons {
    font-size: 14px;
    width: 14px;
    height: 14px;
}
.cv-popup-send-text-btn {
    width: 36px;
    height: 36px;
    min-width: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--cvf-primary);
    color: #fff;
    border: none;
    border-radius: 50%;
    font-size: 16px;
    cursor: pointer;
    transition: background .15s, transform .15s;
    flex-shrink: 0;
}
.cv-popup-send-text-btn:hover {
    background: #152d4a;
    transform: scale(1.05);
}

.cv-popup-record-panel {
    padding: 12px;
    border-top: 1px solid var(--cvf-border);
    background: var(--cvf-bg-alt, #f8fafc);
}
.cv-popup-record-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 10px;
    font-size: 13px;
    font-weight: 600;
    color: var(--cvf-text);
}
.cv-popup-record-close {
    background: none;
    border: none;
    font-size: 18px;
    cursor: pointer;
    color: var(--cvf-text-muted);
}
.cv-popup-record-close:hover { color: var(--cvf-text); }
.cv-popup-record-modes {
    display: flex;
    gap: 6px;
    margin-bottom: 10px;
}
.cv-popup-rec-mode {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    padding: 8px 6px;
    border: 1.5px solid var(--cvf-border);
    border-radius: 8px;
    background: #fff;
    font-size: 12px;
    font-weight: 500;
    color: var(--cvf-text);
    cursor: pointer;
    transition: all .15s;
}
.cv-popup-rec-mode:hover {
    border-color: var(--cvf-primary);
    color: var(--cvf-primary);
}
.cv-popup-rec-mode.active {
    background: var(--cvf-primary);
    border-color: var(--cvf-primary);
    color: #fff;
}
.cv-popup-rec-mode .dashicons {
    font-size: 15px;
    width: 15px;
    height: 15px;
}
.cv-popup-rec-preview {
    border-radius: 10px;
    overflow: hidden;
    background: #0d1117;
    margin-bottom: 8px;
}
.cv-popup-rec-video {
    width: 100%;
    max-height: 200px;
    display: block;
}
.cv-popup-rec-audio-wave {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 80px;
}
.cv-popup-rec-audio-wave .cv-popup-audio-bars {
    height: 60px;
}
.cv-popup-rec-audio-wave .cv-popup-audio-bars span {
    width: 4px;
    animation-name: cvAudioBar;
}
.cv-popup-rec-playback {
    margin-bottom: 8px;
}
.cv-popup-rec-playback video {
    width: 100%;
    max-height: 200px;
    border-radius: 10px;
    background: #000;
}
.cv-popup-rec-timer {
    text-align: center;
    font-size: 14px;
    font-weight: 600;
    color: #e53e3e;
    margin-bottom: 8px;
}
.cv-popup-rec-controls {
    display: flex;
    gap: 8px;
    justify-content: center;
}
.cv-popup-rec-controls button {
    padding: 7px 16px;
    border-radius: 8px;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    transition: all .15s;
}
.cv-popup-rec-start {
    background: #e53e3e;
    color: #fff;
    border: none;
}
.cv-popup-rec-start:hover { opacity: .85; }
.cv-popup-rec-stop {
    background: #e53e3e;
    color: #fff;
    border: none;
    animation: cvRecPulse 1s infinite;
}
@keyframes cvRecPulse {
    0%, 100% { opacity: 1; }
    50% { opacity: .6; }
}
.cv-popup-rec-retry {
    background: #fff;
    color: var(--cvf-text);
    border: 1.5px solid var(--cvf-border);
}
.cv-popup-rec-retry:hover { border-color: var(--cvf-primary); }
.cv-popup-rec-send {
    background: var(--cvf-primary);
    color: #fff;
    border: none;
}
.cv-popup-rec-send:hover { opacity: .85; }
.cv-popup-rec-send:disabled { opacity: .5; cursor: not-allowed; }

.cv-media-popup-comment {
    padding: 10px 0;
    border-bottom: 1px solid var(--cvf-border);
}
.cv-media-popup-comment:last-child {
    border-bottom: none;
}

.cv-media-popup-comment.cv-popup-comment-admin {
    border-left: 3px solid var(--cvf-accent, #e8913a);
    background: linear-gradient(90deg, #fef8f0 0%, transparent 40%);
    padding: 10px 10px;
    margin: 4px 0;
    border-radius: 0 6px 6px 0;
}
.cv-popup-comment-admin-badge {
    display: inline-flex; align-items: center; gap: 2px;
    font-size: 9px; font-weight: 700; text-transform: uppercase; letter-spacing: .4px;
    color: #b06e1a; background: #fef3e2; padding: 1px 6px; border-radius: 3px;
    margin-left: 6px; vertical-align: middle;
}
.cv-popup-comment-admin-badge .dashicons {
    font-size: 10px; width: 10px; height: 10px; line-height: 10px;
}

.cv-media-popup-comment.cv-popup-comment-fc {
    border-left: 3px solid #6366f1;
    background: linear-gradient(90deg, #f0f0ff 0%, transparent 40%);
    padding-left: 12px;
    margin-left: -4px;
    border-radius: 0 6px 6px 0;
}
.cv-media-popup-comment-author {
    font-size: 13px;
    font-weight: 600;
    color: var(--cvf-text);
}

a.cv-comment-profile-link {
    color: var(--cvf-primary-light, #2a5298);
    text-decoration: none;
    transition: color .15s ease, opacity .15s ease;
    border-bottom: 1px dotted transparent;
}
a.cv-comment-profile-link:hover {
    color: var(--cvf-accent, #e8913a);
    border-bottom-color: var(--cvf-accent, #e8913a);
    opacity: .9;
}
.cv-media-popup-comment-date {
    font-size: 11px;
    color: var(--cvf-text-muted);
    margin-left: 8px;
}
.cv-media-popup-comment-body {
    font-size: 13px;
    color: var(--cvf-text);
    margin-top: 4px;
    line-height: 1.5;
}

.cv-media-popup-comment-body a {
    color: var(--cvf-primary-light, #2a5298);
    text-decoration: none;
    font-weight: 600;
    border-bottom: 1px dotted rgba(42, 82, 152, .3);
    transition: color .15s ease, border-color .15s ease;
}
.cv-media-popup-comment-body a:hover {
    color: var(--cvf-accent, #e8913a);
    border-bottom-color: var(--cvf-accent, #e8913a);
}

.cv-popup-audio-visualizer {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    flex: 1;
    width: 100%;
    height: 100%;
    min-height: 400px;
    padding: 60px 40px;
    gap: 48px;
}
.cv-popup-audio-bars {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    gap: 6px;
    height: 280px;
}
.cv-popup-audio-bars span {
    display: block;
    width: 10px;
    border-radius: 5px;
    background: linear-gradient(180deg, var(--cvf-accent, #e8913a) 0%, var(--cvf-primary, #1e3a5f) 100%);
    opacity: .55;
    

    animation: none;
}
.cv-popup-audio-visualizer.cv-audio-playing .cv-popup-audio-bars span {
    opacity: .7;
    animation: cvAudioBar 1.2s ease-in-out infinite;
}
.cv-popup-audio-bars span:nth-child(1)  { height: 46px;  animation-delay: 0s; }
.cv-popup-audio-bars span:nth-child(2)  { height: 92px;  animation-delay: .1s; }
.cv-popup-audio-bars span:nth-child(3)  { height: 140px; animation-delay: .15s; }
.cv-popup-audio-bars span:nth-child(4)  { height: 186px; animation-delay: .2s; }
.cv-popup-audio-bars span:nth-child(5)  { height: 232px; animation-delay: .25s; }
.cv-popup-audio-bars span:nth-child(6)  { height: 210px; animation-delay: .3s; }
.cv-popup-audio-bars span:nth-child(7)  { height: 256px; animation-delay: .35s; }
.cv-popup-audio-bars span:nth-child(8)  { height: 162px; animation-delay: .4s; }
.cv-popup-audio-bars span:nth-child(9)  { height: 232px; animation-delay: .45s; }
.cv-popup-audio-bars span:nth-child(10) { height: 116px; animation-delay: .5s; }
.cv-popup-audio-bars span:nth-child(11) { height: 186px; animation-delay: .55s; }
.cv-popup-audio-bars span:nth-child(12) { height: 256px; animation-delay: .6s; }
.cv-popup-audio-bars span:nth-child(13) { height: 140px; animation-delay: .65s; }
.cv-popup-audio-bars span:nth-child(14) { height: 210px; animation-delay: .7s; }
.cv-popup-audio-bars span:nth-child(15) { height: 92px;  animation-delay: .75s; }
.cv-popup-audio-bars span:nth-child(16) { height: 162px; animation-delay: .8s; }
.cv-popup-audio-bars span:nth-child(17) { height: 232px; animation-delay: .85s; }
.cv-popup-audio-bars span:nth-child(18) { height: 116px; animation-delay: .9s; }
.cv-popup-audio-bars span:nth-child(19) { height: 70px;  animation-delay: .95s; }
.cv-popup-audio-bars span:nth-child(20) { height: 46px;  animation-delay: 1s; }
@keyframes cvAudioBar {
    0%, 100% { transform: scaleY(.3); opacity: .4; }
    50% { transform: scaleY(1); opacity: .9; }
}
.cv-popup-audio-visualizer audio {
    width: 100%;
    max-width: 90%;
}

.cv-media-popup-player .cv-popup-shortcode-wrap {
    width: 100%;
    max-width: 100%;
}
.cv-media-popup-player .cv-popup-shortcode-wrap video,
.cv-media-popup-player .cv-popup-shortcode-wrap .fluent-player {
    max-width: 100%;
    max-height: 75vh;
    border-radius: 10px;
}

.cv-popup-reply-row {
    margin-top: 6px;
}
.cv-popup-comment-reply-btn {
    background: none; border: none;
    color: var(--cvf-primary, #1e3a5f);
    font-size: 12px; cursor: pointer;
    padding: 0; font-family: inherit;
    font-weight: 600;
    transition: opacity .15s;
}
.cv-popup-comment-reply-btn:hover { opacity: .7; }

.cv-popup-reply-choice {
    margin-top: 8px;
    padding: 10px 12px;
    background: var(--cvf-bg-alt, #f8fafc);
    border: 1.5px solid var(--cvf-border);
    border-radius: 10px;
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
}
.cv-reply-choice-label {
    font-size: 11px;
    color: var(--cvf-text-muted);
    font-weight: 600;
    margin-right: 2px;
    white-space: nowrap;
}
.cv-reply-choice-btn {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 5px 10px;
    border: 1.5px solid var(--cvf-border);
    border-radius: 8px;
    background: #fff;
    color: var(--cvf-text);
    cursor: pointer;
    font-size: 11px;
    font-weight: 600;
    font-family: inherit;
    transition: all .15s;
    white-space: nowrap;
}
.cv-reply-choice-btn:hover {
    border-color: var(--cvf-primary);
    color: var(--cvf-primary);
    background: #f0f7ff;
    transform: translateY(-1px);
}
.cv-reply-choice-btn[data-choice="video"]:hover { border-color: #e53935; color: #e53935; background: #fef2f2; }
.cv-reply-choice-btn[data-choice="audio"]:hover { border-color: var(--cvf-accent, #e8913a); color: var(--cvf-accent, #e8913a); background: #fff8f0; }
.cv-reply-choice-btn[data-choice="screen"]:hover { border-color: var(--cvf-success, #27ae60); color: var(--cvf-success, #27ae60); background: #f0fdf4; }
.cv-reply-choice-btn .dashicons {
    font-size: 14px; width: 14px; height: 14px;
}

.cv-popup-reply-cancel {
    background: none; border: none;
    cursor: pointer; font-size: 14px;
    color: #767676; line-height: 1;
    padding: 0 2px;
}
.cv-popup-reply-cancel:hover { color: var(--cvf-danger, #e53935); }

.cv-popup-reply-indicator {
    padding: 6px 10px;
    margin-bottom: 6px;
    background: var(--cvf-bg-alt, #f0f4f8);
    border-radius: 6px;
    font-size: 12px;
    color: var(--cvf-text-muted, #64748b);
    display: flex;
    align-items: center;
    gap: 6px;
}

.cv-media-popup-comments-list .cv-comment-replies {
    padding-left: 16px;
    border-left: 2px solid var(--cvf-border, #e2e8f0);
    margin-left: 8px;
}

.cv-media-popup-close {
    position: absolute;
    top: -48px;
    right: 0;
    background: none;
    border: none;
    color: #fff;
    font-size: 32px;
    cursor: pointer;
    z-index: 3;
    transition: transform .15s;
}
.cv-media-popup-close:hover {
    transform: scale(1.2);
}

@media (max-width: 800px) {
    .cv-media-popup-container {
        flex-direction: column;
        max-height: 96vh;
    }
    .cv-media-popup-comments {
        width: 100%;
        min-width: 100%;
        max-height: 40vh;
    }
    .cv-media-popup-player {
        min-height: 200px;
    }
}
@media (max-width: 600px) {
    .cv-media-grid { grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); }
    .cv-media-preview, .cv-media-card-thumb { height: 120px; }
}




.cv-notepad-filters {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 14px;
    flex-wrap: wrap;
}
.cv-notepad-search {
    padding: 8px 14px;
    border: 1px solid var(--cvf-border);
    border-radius: 8px;
    font-size: 13px;
    width: 240px;
    max-width: 100%;
    outline: none;
    transition: border-color .2s;
}
.cv-notepad-search:focus { border-color: var(--cvf-primary); }
@media (max-width: 600px) {
    .cv-notepad-filters { flex-direction: column; align-items: stretch; }
    .cv-notepad-search { width: 100%; }
}




.cv-preview-modal.cv-preview-with-comments {
    max-width: 1200px;
}
.cv-preview-header-actions {
    display: flex; align-items: center; gap: 10px;
}

.cv-preview-source-link {
    display: inline-flex; align-items: center; gap: 6px;
    margin-left: 14px; margin-right: auto;
    padding: 6px 12px; border: 1px solid var(--cvf-border, #e1e5eb); border-radius: 7px;
    background: transparent; color: var(--cvf-primary, #1e3a5f);
    font-size: 12px; font-weight: 600; cursor: pointer; white-space: nowrap;
    font-family: inherit; transition: all .15s;
}
.cv-preview-source-link:hover { background: var(--cvf-primary, #1e3a5f); color: #fff; border-color: var(--cvf-primary, #1e3a5f); }
.cv-preview-source-link .dashicons { font-size: 15px; width: 15px; height: 15px; }
.cv-preview-source-link-doc { opacity: .7; font-weight: 500; max-width: 220px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cv-preview-btn-reply {
    display: inline-flex; align-items: center; gap: 6px;
    padding: 7px 16px; border: 1.5px solid var(--cvf-primary); border-radius: 8px;
    background: transparent; color: var(--cvf-primary);
    font-size: 13px; font-weight: 600; cursor: pointer;
    transition: all 0.15s; white-space: nowrap;
}
.cv-preview-btn-reply:hover { background: var(--cvf-primary); color: #fff; }
.cv-preview-btn-reply .dashicons { font-size: 16px; width: 16px; height: 16px; }
.cv-preview-btn-edit,
.cv-preview-btn-download,
.cv-preview-btn-archive {
    display: inline-flex; align-items: center; justify-content: center;
    width: 36px; height: 36px; border: 1.5px solid var(--cvf-border); border-radius: 8px;
    background: transparent; color: var(--cvf-text-secondary);
    font-size: 16px; cursor: pointer; transition: all 0.15s;
    padding: 0;
}
.cv-preview-btn-edit:hover,
.cv-preview-btn-download:hover { background: var(--cvf-primary); color: #fff; border-color: var(--cvf-primary); }
.cv-preview-btn-archive:hover { background: #f3f4f6; }
.cv-preview-btn-edit .dashicons,
.cv-preview-btn-download .dashicons { font-size: 18px; width: 18px; height: 18px; }

.cv-preview-archived .cv-preview-btn-edit { display: none !important; }

.cv-front-preview-content {
    display: flex; flex: 1; overflow: hidden; min-height: 0;
}
.cv-front-preview-content .cv-preview-body {
    flex: 1; min-width: 0;
}

.cv-preview-comments-panel {
    width: 320px; min-width: 320px;
    border-left: 1px solid var(--cvf-border);
    display: flex; flex-direction: column;
    background: var(--cvf-bg);
}
.cv-preview-comments-panel.cv-panel-hidden { display: none; }
.cv-preview-comments-header {
    display: flex; align-items: center; justify-content: space-between;
    padding: 12px 16px; border-bottom: 1px solid var(--cvf-border);
}
.cv-preview-comments-header h4 { margin: 0; font-size: 14px; font-weight: 600; color: var(--cvf-text); }
.cv-preview-comments-count {
    display: inline-flex; align-items: center; justify-content: center;
    background: var(--cvf-primary); color: #fff; font-size: 11px; font-weight: 700;
    min-width: 22px; height: 22px; border-radius: 11px; padding: 0 6px;
}
.cv-preview-comments-list { flex: 1; overflow-y: auto; padding: 12px; }
.cv-preview-comments-empty { text-align: center; padding: 30px 16px; color: var(--cvf-text-muted); font-size: 13px; }

.cv-preview-comment {
    margin-bottom: 12px; padding: 10px 12px; border-radius: 10px;
    background: var(--cvf-card); border: 1px solid var(--cvf-border);
}
.cv-preview-comment.cv-comment-admin { border-left: 3px solid var(--cvf-accent, #e8913a); background: linear-gradient(90deg, #fef8f0 0%, transparent 40%); }
.cv-preview-comment.cv-comment-own { border-left: 3px solid #28a745; }
.cv-preview-comment-meta {
    display: flex; align-items: center; justify-content: space-between; margin-bottom: 6px;
}
.cv-preview-comment-author { font-weight: 600; font-size: 12px; color: var(--cvf-text); }
.cv-preview-comment-date { font-size: 11px; color: var(--cvf-text-muted); }
.cv-preview-comment-content { font-size: 13px; color: var(--cvf-text); line-height: 1.5; }
.cv-preview-comment-media { margin-top: 8px; border-radius: 8px; overflow: hidden; }
.cv-preview-comment-media video, .cv-preview-comment-media audio { width: 100%; max-height: 200px; border-radius: 8px; }
.cv-comment-media { margin-top: 6px; border-radius: 8px; overflow: hidden; }
.cv-comment-media video, .cv-comment-media audio { width: 100%; max-height: 200px; border-radius: 8px; display: block; }


.cv-preview-comment-media audio,
.cv-comment-media audio,
.cv-lb-comment-media audio,
.cv-media-popup-comments-list audio { height: 54px; }
.cv-preview-comment-type-badge {
    display: inline-flex; align-items: center; gap: 4px;
    font-size: 10px; padding: 2px 8px; border-radius: 4px;
    background: var(--cvf-bg); color: var(--cvf-text-muted); font-weight: 500; margin-bottom: 4px;
}
.cv-preview-comment-type-badge.cv-badge-video { background: #e8f0fe; color: #1967d2; }
.cv-preview-comment-type-badge.cv-badge-audio { background: #fef3e0; color: #e67700; }
.cv-preview-comment-type-badge.cv-badge-screen { background: #e6f9e6; color: #2e7d32; }
.cv-preview-comment-delete {
    background: none; border: none; cursor: pointer;
    color: var(--cvf-text-muted); font-size: 14px; padding: 0 2px; transition: color 0.15s;
}
.cv-preview-comment-delete:hover { color: var(--cvf-danger); }


.cv-comment-replies {
    margin-left: 20px;
    border-left: 2px solid var(--cvf-primary, #1e3a5f);
    padding-left: 12px;
}
.cv-comment-reply {
    background: #f8f9fb !important;
}
.cv-comment-reply-btn {
    display: inline-block;
    background: none;
    border: none;
    color: var(--cvf-primary, #1e3a5f);
    font-size: 12px;
    cursor: pointer;
    padding: 4px 0;
    margin-top: 4px;
    opacity: 0.7;
    transition: opacity 0.15s;
}
.cv-comment-reply-btn:hover {
    opacity: 1;
    text-decoration: underline;
}
.cv-reply-indicator {
    background: #eef3ff;
    border-left: 3px solid var(--cvf-primary, #1e3a5f);
    padding: 6px 10px;
    font-size: 12px;
    color: #555;
    margin-bottom: 8px;
    border-radius: 0 6px 6px 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.cv-reply-indicator strong {
    color: var(--cvf-primary, #1e3a5f);
}
.cv-reply-cancel {
    background: none;
    border: none;
    cursor: pointer;
    font-size: 16px;
    color: #767676;
    padding: 0 2px;
    line-height: 1;
}

.cv-reply-cancel:hover {
    color: #e53e3e;
}

.cv-preview-reply-form {
    border-top: 1px solid var(--cvf-border); padding: 12px;
    background: var(--cvf-card); flex-shrink: 0;
}
.cv-preview-reply-form textarea {
    width: 100%; border: 1.5px solid var(--cvf-border); border-radius: 8px;
    padding: 8px 12px; font-size: 13px; resize: none; box-sizing: border-box; font-family: inherit;
}
.cv-preview-reply-form textarea:focus { outline: none; border-color: var(--cvf-primary); }
.cv-preview-reply-actions { display: flex; align-items: center; justify-content: space-between; margin-top: 8px; }
.cv-preview-reply-record {
    display: inline-flex; align-items: center; justify-content: center;
    width: 36px; height: 36px; border: 1.5px solid var(--cvf-border); border-radius: 50%;
    background: var(--cvf-card); color: var(--cvf-text-muted); cursor: pointer; transition: all 0.15s;
}
.cv-preview-reply-record:hover { border-color: var(--cvf-primary); color: var(--cvf-primary); }
.cv-preview-reply-record .dashicons { font-size: 18px; width: 18px; height: 18px; }
.cv-preview-reply-send {
    padding: 7px 20px; border: none; border-radius: 8px;
    background: var(--cvf-primary); color: #fff; font-size: 13px; font-weight: 600;
    cursor: pointer; transition: background 0.15s;
}
.cv-preview-reply-send:hover { background: #152d4a; }
.cv-preview-reply-send:disabled { opacity: 0.5; cursor: not-allowed; }


.cv-ireply-modes { display: flex; gap: 8px; margin-bottom: 10px; }
.cv-ireply-mode-btn {
    flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 5px;
    padding: 10px 4px; border: 1.5px solid var(--cvf-border); border-radius: 10px;
    background: var(--cvf-bg); color: var(--cvf-text); font-size: 12px; font-weight: 600;
    cursor: pointer; transition: all 0.15s; line-height: 1.1;
}
.cv-ireply-mode-btn:hover { border-color: var(--cvf-primary); background: var(--cvf-card); color: var(--cvf-primary); transform: translateY(-1px); }
.cv-ireply-mode-btn.active { border-color: var(--cvf-primary); background: var(--cvf-card); color: var(--cvf-primary); }
.cv-ireply-mode-btn .dashicons { font-size: 21px; width: 21px; height: 21px; }

.cv-ireply-rec { border: 1px solid var(--cvf-border); border-radius: 12px; overflow: hidden; margin-bottom: 10px; background: var(--cvf-card); }
.cv-ireply-rec-head {
    display: flex; align-items: center; justify-content: space-between;
    padding: 8px 12px; background: var(--cvf-bg); border-bottom: 1px solid var(--cvf-border);
    font-size: 12px; font-weight: 700; color: var(--cvf-primary);
}
.cv-ireply-rec-cancel { border: none; background: none; font-size: 18px; line-height: 1; cursor: pointer; color: var(--cvf-text-muted); padding: 0 2px; }
.cv-ireply-rec-cancel:hover { color: var(--cvf-text); }
.cv-ireply-rec-stage {
    position: relative; aspect-ratio: 16 / 9; background: linear-gradient(135deg, #1f2937, #0b1d3a);
    display: flex; align-items: center; justify-content: center; overflow: hidden;
}
.cv-ireply-rec-video, .cv-ireply-rec-playback { width: 100%; height: 100%; object-fit: cover; display: block; }
.cv-ireply-rec-playback-audio { width: 92%; }
.cv-ireply-rec-wave { display: flex; flex-direction: column; align-items: center; gap: 10px; color: rgba(255,255,255,.85); }
.cv-ireply-rec-wave .dashicons { font-size: 40px; width: 40px; height: 40px; }
.cv-ireply-wave-bars { display: flex; align-items: flex-end; gap: 4px; height: 26px; }
.cv-ireply-wave-bars span { width: 4px; height: 100%; background: rgba(255,255,255,.6); border-radius: 2px; animation: cvIReplyWave 1s ease-in-out infinite; }
.cv-ireply-wave-bars span:nth-child(2) { animation-delay: .15s; }
.cv-ireply-wave-bars span:nth-child(3) { animation-delay: .3s; }
.cv-ireply-wave-bars span:nth-child(4) { animation-delay: .45s; }
.cv-ireply-wave-bars span:nth-child(5) { animation-delay: .6s; }
@keyframes cvIReplyWave { 0%, 100% { transform: scaleY(.4); } 50% { transform: scaleY(1); } }
.cv-ireply-rec-timer {
    position: absolute; top: 8px; right: 10px; display: inline-flex; align-items: center; gap: 5px;
    background: rgba(0,0,0,.55); color: #fff; font-size: 12px; font-weight: 700; padding: 3px 9px; border-radius: 20px;
}
.cv-ireply-rec-dot { display: inline-block; width: 8px; height: 8px; border-radius: 50%; background: #ef4444; }
.cv-ireply-rec-timer.recording .cv-ireply-rec-dot { animation: cvIReplyBlink 1s step-start infinite; }
@keyframes cvIReplyBlink { 50% { opacity: .25; } }
.cv-ireply-rec-square { display: inline-block; width: 9px; height: 9px; border-radius: 2px; background: currentColor; }
.cv-ireply-rec-note {
    width: 100%; border: none; border-top: 1px solid var(--cvf-border); padding: 8px 12px;
    font-size: 13px; resize: none; box-sizing: border-box; font-family: inherit; background: var(--cvf-card);
}
.cv-ireply-rec-note:focus { outline: none; }
.cv-ireply-rec-ctrls { display: flex; gap: 8px; padding: 10px 12px; }
.cv-ireply-btn {
    flex: 1; display: inline-flex; align-items: center; justify-content: center; gap: 5px;
    padding: 9px 6px; border: none; border-radius: 9px; font-size: 12.5px; font-weight: 700; cursor: pointer; transition: all 0.15s;
}
.cv-ireply-btn .dashicons { font-size: 16px; width: 16px; height: 16px; }
.cv-ireply-start { background: var(--cvf-primary); color: #fff; }
.cv-ireply-stop { background: #ef4444; color: #fff; }
.cv-ireply-retry { background: var(--cvf-bg); color: var(--cvf-text); border: 1px solid var(--cvf-border); }
.cv-ireply-send { background: var(--cvf-primary, #1e3a5f); color: #fff; }
.cv-ireply-btn:disabled { opacity: .55; cursor: not-allowed; }



.cv-record-overlay {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    background: rgba(0,0,0,0.7);
    z-index: var(--cvf-z-notification);
    display: flex;
    align-items: center;
    justify-content: center;
    transform: none !important;
}
.cv-record-modal {
    background: var(--cvf-card, #fff); border-radius: 14px;
    width: 560px; max-width: 95vw; max-height: 85vh;
    display: flex; flex-direction: column;
    box-shadow: 0 20px 60px rgba(0,0,0,0.35);
}
.cv-record-header {
    display: flex; justify-content: space-between; align-items: center;
    padding: 16px 20px; border-bottom: 1px solid var(--cvf-border);
}
.cv-record-header h4 { margin: 0; font-size: 16px; font-weight: 600; }
.cv-record-close { background: none; border: none; font-size: 24px; cursor: pointer; color: var(--cvf-text-muted); }
.cv-record-close:hover { color: var(--cvf-danger); }
.cv-record-body { padding: 20px; overflow-y: auto; }
.cv-record-modes { display: flex; gap: 12px; justify-content: center; }
.cv-record-mode-btn {
    display: flex; flex-direction: column; align-items: center; gap: 6px;
    padding: 20px 24px; border: 2px solid var(--cvf-border); border-radius: 12px;
    background: var(--cvf-bg); cursor: pointer; transition: all 0.15s; min-width: 120px;
}
.cv-record-mode-btn:hover { border-color: var(--cvf-primary); background: var(--cvf-bg); }
.cv-record-mode-btn.active { border-color: var(--cvf-primary); background: #e8f0fe; color: var(--cvf-primary); }
.cv-record-mode-btn .dashicons { font-size: 28px; width: 28px; height: 28px; }
.cv-record-mode-btn small { font-size: 11px; color: var(--cvf-text-muted); }
.cv-record-preview {
    margin-top: 16px; position: relative; border-radius: 10px; overflow: hidden;
    background: #111; min-height: 240px; display: flex; align-items: center; justify-content: center;
}
.cv-record-preview video { width: 100%; max-height: 360px; display: block; }
.cv-record-audio-wave {
    display: flex; flex-direction: column; align-items: center; gap: 16px;
    color: #fff; padding: 40px; width: 100%;
}
.cv-record-audio-wave .dashicons { font-size: 48px; width: 48px; height: 48px; opacity: 0.8; }

.cv-rec-audio-bars {
    display: flex; align-items: center; justify-content: center;
    gap: 3px; height: 50px;
}
.cv-rec-audio-bars span {
    display: inline-block; width: 4px; height: 8px;
    background: rgba(255,255,255,.3); border-radius: 2px;
    transition: height .3s, background .3s;
}

.cv-rec-audio-recording .cv-rec-audio-bars span {
    background: linear-gradient(180deg, #e53935, var(--cvf-accent, #e8913a));
    animation: cvRecBarPulse 0.6s ease-in-out infinite alternate;
}
.cv-rec-audio-recording .cv-rec-audio-bars span:nth-child(1)  { animation-delay: 0.00s; }
.cv-rec-audio-recording .cv-rec-audio-bars span:nth-child(2)  { animation-delay: 0.05s; }
.cv-rec-audio-recording .cv-rec-audio-bars span:nth-child(3)  { animation-delay: 0.10s; }
.cv-rec-audio-recording .cv-rec-audio-bars span:nth-child(4)  { animation-delay: 0.15s; }
.cv-rec-audio-recording .cv-rec-audio-bars span:nth-child(5)  { animation-delay: 0.20s; }
.cv-rec-audio-recording .cv-rec-audio-bars span:nth-child(6)  { animation-delay: 0.25s; }
.cv-rec-audio-recording .cv-rec-audio-bars span:nth-child(7)  { animation-delay: 0.30s; }
.cv-rec-audio-recording .cv-rec-audio-bars span:nth-child(8)  { animation-delay: 0.35s; }
.cv-rec-audio-recording .cv-rec-audio-bars span:nth-child(9)  { animation-delay: 0.30s; }
.cv-rec-audio-recording .cv-rec-audio-bars span:nth-child(10) { animation-delay: 0.25s; }
.cv-rec-audio-recording .cv-rec-audio-bars span:nth-child(11) { animation-delay: 0.20s; }
.cv-rec-audio-recording .cv-rec-audio-bars span:nth-child(12) { animation-delay: 0.15s; }
.cv-rec-audio-recording .cv-rec-audio-bars span:nth-child(13) { animation-delay: 0.10s; }
.cv-rec-audio-recording .cv-rec-audio-bars span:nth-child(14) { animation-delay: 0.05s; }
.cv-rec-audio-recording .cv-rec-audio-bars span:nth-child(15) { animation-delay: 0.00s; }
.cv-rec-audio-recording .cv-rec-audio-bars span:nth-child(16) { animation-delay: 0.05s; }
@keyframes cvRecBarPulse {
    0%   { height: 6px;  opacity: 0.4; }
    100% { height: 40px; opacity: 1; }
}

.cv-rec-audio-status {
    font-size: 13px; font-weight: 600; color: rgba(255,255,255,.7);
    margin-top: 4px;
}
.cv-rec-audio-recording .cv-rec-audio-status {
    color: #e53935;
    animation: cvRecStatusBlink 1s ease-in-out infinite;
}
@keyframes cvRecStatusBlink { 0%,100% { opacity:1; } 50% { opacity:.4; } }

.cv-record-wave-bars { display: flex; align-items: center; gap: 4px; height: 40px; }
.cv-record-wave-bars span {
    display: inline-block; width: 4px; height: 10px; background: #fff; border-radius: 2px; opacity: 0.6;
    animation: cvfWavePulse 0.8s ease-in-out infinite alternate;
}
.cv-record-wave-bars span:nth-child(2) { animation-delay: 0.1s; }
.cv-record-wave-bars span:nth-child(3) { animation-delay: 0.2s; }
.cv-record-wave-bars span:nth-child(4) { animation-delay: 0.3s; }
.cv-record-wave-bars span:nth-child(5) { animation-delay: 0.4s; }
@keyframes cvfWavePulse { from { height: 10px; opacity: 0.4; } to { height: 36px; opacity: 0.9; } }
.cv-record-timer {
    position: absolute; top: 12px; right: 14px;
    background: rgba(0,0,0,0.65); color: #fff; font-size: 13px; font-weight: 600;
    padding: 4px 10px; border-radius: 6px; font-variant-numeric: tabular-nums;
}
.cv-record-timer.recording { background: #e53935; animation: cvfBlink 1s infinite; }
@keyframes cvfBlink { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
.cv-record-playback { margin-top: 16px; border-radius: 10px; overflow: hidden; }
.cv-record-playback video { width: 100%; max-height: 340px; border-radius: 10px; }
.cv-record-playback audio { width: 100%; }
.cv-record-note { margin-top: 14px; }
.cv-record-note textarea {
    width: 100%; border: 1.5px solid var(--cvf-border); border-radius: 8px;
    padding: 8px 12px; font-size: 13px; resize: none; box-sizing: border-box; font-family: inherit;
}
.cv-record-note textarea:focus { outline: none; border-color: var(--cvf-primary); }
.cv-record-footer {
    display: flex; justify-content: center; gap: 12px;
    padding: 16px 20px; border-top: 1px solid var(--cvf-border);
}
.cv-record-btn {
    display: inline-flex; align-items: center; gap: 6px;
    padding: 10px 24px; border: none; border-radius: 8px;
    font-size: 14px; font-weight: 600; cursor: pointer; transition: all 0.15s;
}
.cv-record-btn-start { background: #e53935; color: #fff; }
.cv-record-btn-start:hover { background: #c62828; }
.cv-record-dot { display: inline-block; width: 10px; height: 10px; border-radius: 50%; background: #fff; }
.cv-record-btn-stop { background: #555; color: #fff; }
.cv-record-btn-stop:hover { background: #333; }
.cv-record-square { display: inline-block; width: 10px; height: 10px; border-radius: 2px; background: #fff; }
.cv-record-btn-retry { background: #f5f5f5; color: #555; border: 1.5px solid var(--cvf-border); }
.cv-record-btn-retry:hover { background: #eee; }
.cv-record-btn-send { background: var(--cvf-primary); color: #fff; }
.cv-record-btn-send:hover { background: #152d4a; }
.cv-record-btn-send:disabled { opacity: 0.5; cursor: not-allowed; }

@media (max-width: 860px) {
    .cv-preview-modal.cv-preview-with-comments { max-width: 95vw; height: 90vh; }
    .cv-front-preview-content { flex-direction: column; }
    .cv-preview-comments-panel { width: 100%; min-width: 0; max-height: 40vh; border-left: none; border-top: 1px solid var(--cvf-border); }
    .cv-record-modes { flex-direction: column; align-items: center; }
    .cv-record-mode-btn { min-width: 80%; flex-direction: row; padding: 14px 20px; }
}




.cv-media-select-check {
    position: absolute; top: 8px; left: 8px; z-index: 5;
    cursor: pointer; opacity: 0; transition: opacity 0.15s;
}
.cv-media-item { position: relative; }
.cv-media-item:hover .cv-media-select-check,
.cv-media-select-check:has(input:checked) { opacity: 1; }
.cv-media-item.cv-selected .cv-media-select-check { opacity: 1; }
.cv-media-select-cb { display: none; }
.cv-media-select-mark {
    display: flex; align-items: center; justify-content: center;
    width: 22px; height: 22px; border-radius: 6px;
    border: 2px solid rgba(255,255,255,0.8); background: rgba(0,0,0,0.3);
    transition: all 0.15s; box-shadow: 0 1px 4px rgba(0,0,0,0.2);
}
.cv-media-select-cb:checked + .cv-media-select-mark {
    background: var(--cvf-primary); border-color: var(--cvf-primary);
}
.cv-media-select-cb:checked + .cv-media-select-mark::after {
    content: '✓'; color: #fff; font-size: 13px; font-weight: 700;
}
.cv-media-item.cv-selected { outline: 2.5px solid var(--cvf-primary); outline-offset: -2px; border-radius: 10px; }

.cv-media-select-bar {
    position: fixed; top: 50%; left: 50%; transform: translate(-50%, -50%);
    z-index: var(--cvf-z-overlay); animation: cvfPopIn 0.3s ease-out;
}
@keyframes cvfPopIn {
    from { transform: translate(-50%, -50%) scale(0.85); opacity: 0; }
    to   { transform: translate(-50%, -50%) scale(1); opacity: 1; }
}
.cv-media-select-bar-inner {
    display: flex; flex-direction: column; align-items: center; gap: 20px;
    padding: 32px 48px; background: #1e293b; border-radius: 20px;
    box-shadow: 0 12px 48px rgba(0,0,0,0.45), 0 4px 16px rgba(0,0,0,0.25); color: #fff;
    min-width: 360px;
}
.cv-media-select-bar-count { font-size: 18px; white-space: nowrap; text-align: center; }
.cv-media-select-bar-count strong { font-size: 28px; color: #60a5fa; display: block; margin-bottom: 4px; }
.cv-media-select-bar-actions { display: flex; gap: 12px; flex-wrap: wrap; justify-content: center; }
.cv-media-select-bar-btn {
    display: inline-flex; align-items: center; gap: 8px;
    padding: 14px 28px; border: none; border-radius: 12px;
    font-size: 15px; font-weight: 600; cursor: pointer; transition: all 0.15s; white-space: nowrap;
}
.cv-media-select-bar-chips {
    display: flex; flex-wrap: wrap; gap: 6px; justify-content: center; max-width: 400px;
}
.cv-media-select-bar-chip {
    display: inline-block; padding: 3px 10px;
    background: rgba(96, 165, 250, 0.2); color: #93c5fd;
    font-size: 11px; font-weight: 500; border-radius: 20px;
}
.cv-media-select-bar-section {
    width: 100%; display: flex; flex-direction: column; align-items: center; gap: 10px;
}
.cv-media-select-bar-label {
    font-size: 13px; color: rgba(255,255,255,0.6);
    text-transform: uppercase; letter-spacing: 0.5px; font-weight: 600;
}
.cv-media-select-bar-modes { display: flex; gap: 10px; }
.cv-media-select-mode-btn {
    display: flex; flex-direction: column; align-items: center; gap: 6px;
    padding: 16px 24px; border: 2px solid rgba(255,255,255,0.15); border-radius: 14px;
    background: rgba(255,255,255,0.05); color: #fff; font-size: 13px; font-weight: 600;
    cursor: pointer; transition: all 0.2s; min-width: 90px;
}
.cv-media-select-mode-btn .dashicons { font-size: 28px; width: 28px; height: 28px; }
.cv-media-select-mode-btn:hover {
    background: rgba(255,255,255,0.12); border-color: rgba(255,255,255,0.3); transform: translateY(-2px);
}
.cv-media-select-mode-btn[data-mode="video"]:hover { border-color: #e53935; color: #ff8a80; }
.cv-media-select-mode-btn[data-mode="audio"]:hover { border-color: #ff9800; color: #ffcc80; }
.cv-media-select-mode-btn[data-mode="screen"]:hover { border-color: #4caf50; color: #a5d6a7; }
.cv-media-select-bar-divider { width: 80%; height: 1px; background: rgba(255,255,255,0.12); }
.cv-media-select-bar-section textarea {
    width: 100%; border: 1.5px solid rgba(255,255,255,0.2); border-radius: 10px;
    padding: 10px 14px; font-size: 14px; resize: none; box-sizing: border-box; font-family: inherit;
    background: rgba(255,255,255,0.08); color: #fff;
}
.cv-media-select-bar-section textarea::placeholder { color: rgba(255,255,255,0.4); }
.cv-media-select-bar-section textarea:focus { outline: none; border-color: rgba(96, 165, 250, 0.6); }
.cv-media-select-bar-comment { background: var(--cvf-primary); color: #fff; }
.cv-media-select-bar-comment:hover { background: #152d4a; }
.cv-media-select-bar-comment .dashicons { font-size: 16px; width: 16px; height: 16px; }
.cv-media-select-bar-cancel {
    background: rgba(255,255,255,0.08); color: rgba(255,255,255,0.6);
    border: 1px solid rgba(255,255,255,0.15); font-size: 13px; padding: 10px 24px;
}
.cv-media-select-bar-cancel:hover { background: rgba(255,255,255,0.15); color: #fff; }


.cv-multi-comment-overlay {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    background: rgba(0,0,0,0.6);
    z-index: var(--cvf-z-notification);
    display: flex;
    align-items: center;
    justify-content: center;
    transform: none !important;
}
.cv-multi-comment-modal {
    background: var(--cvf-card, #fff); border-radius: 14px;
    width: 520px; max-width: 95vw; box-shadow: 0 20px 60px rgba(0,0,0,0.3);
}
.cv-multi-comment-header {
    display: flex; justify-content: space-between; align-items: center;
    padding: 16px 20px; border-bottom: 1px solid var(--cvf-border);
}
.cv-multi-comment-header h4 { margin: 0; font-size: 15px; font-weight: 600; }
.cv-multi-comment-close { background: none; border: none; font-size: 24px; cursor: pointer; color: var(--cvf-text-muted); line-height: 1; }
.cv-multi-comment-close:hover { color: var(--cvf-danger); }
.cv-multi-comment-body { padding: 20px; }
.cv-multi-comment-chips { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 14px; }
.cv-multi-comment-chip {
    display: inline-flex; align-items: center; gap: 4px;
    padding: 4px 10px; background: #e8f0fe; color: var(--cvf-primary);
    font-size: 12px; font-weight: 500; border-radius: 6px;
}
.cv-multi-comment-body textarea {
    width: 100%; border: 1.5px solid var(--cvf-border); border-radius: 8px;
    padding: 10px 14px; font-size: 14px; resize: none; box-sizing: border-box; font-family: inherit;
}
.cv-multi-comment-body textarea:focus { outline: none; border-color: var(--cvf-primary); }
.cv-multi-comment-footer {
    display: flex; justify-content: flex-end; gap: 10px;
    padding: 14px 20px; border-top: 1px solid var(--cvf-border);
}
.cv-multi-comment-cancel {
    padding: 8px 20px; border: 1.5px solid var(--cvf-border); border-radius: 8px;
    background: var(--cvf-card, #fff); color: var(--cvf-text); font-size: 13px; font-weight: 500; cursor: pointer;
}
.cv-multi-comment-cancel:hover { background: var(--cvf-bg); }
.cv-multi-comment-send {
    padding: 8px 24px; border: none; border-radius: 8px;
    background: var(--cvf-primary); color: #fff; font-size: 13px; font-weight: 600; cursor: pointer;
}
.cv-multi-comment-send:hover { background: #152d4a; }
.cv-multi-comment-send:disabled { opacity: 0.5; cursor: not-allowed; }

@media (max-width: 700px) {
    .cv-media-select-bar-inner { flex-direction: column; gap: 10px; padding: 14px 18px; }
    .cv-media-select-bar-actions { flex-wrap: wrap; justify-content: center; }
}


.cv-media-admin-reply {
    border: 2px solid #e8913a !important;
    box-shadow: 0 0 8px rgba(232, 145, 58, 0.15);
}
.cv-media-admin-reply-badge {
    display: inline-block; margin-top: 4px; padding: 2px 8px;
    background: #fef3e2; color: #b06e1a; font-size: 10px; font-weight: 700;
    text-transform: uppercase; border-radius: 4px; letter-spacing: 0.5px;
}
.cv-admin-comment-admin.cv-admin-media-reply {
    border-left: 3px solid #e8913a;
    background: linear-gradient(90deg, #fef8f0 0%, #fff 40%);
}
.cv-media-filter-admin-reply {
    color: #e8913a !important; border-color: #e8913a !important;
}
.cv-media-filter-admin-reply.active,
.cv-media-filter-admin-reply:hover {
    background: #e8913a !important; color: #fff !important; border-color: #e8913a !important;
}




.cv-period-select {
    padding: 6px 14px;
    border: 1px solid #dcdfe4;
    border-radius: 20px;
    background: #fff;
    color: #3c434a;
    font-size: 13px;
    font-weight: 500;
    cursor: pointer;
    outline: none;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%23646970'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 12px center;
    background-size: 10px 6px;
    padding-right: 30px;
    line-height: normal;
    box-shadow: none;
    transition: border-color .2s, color .2s;
}
.cv-period-select:hover {
    border-color: var(--cv-accent, #1e3a5f);
    color: var(--cv-accent, #1e3a5f);
}
.cv-period-select:focus {
    border-color: var(--cv-accent, #1e3a5f);
    color: var(--cv-accent, #1e3a5f);
    box-shadow: 0 0 0 3px rgba(30, 58, 95, .08);
}




.cv-vault-wrap .dtool{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;flex-wrap:wrap}
.cv-vault-wrap .dtool-l{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.cv-vault-wrap .dsrch{padding:8px 14px 8px 34px;border:1.5px solid #d0d5dd;border-radius:8px;font-size:14px;width:220px;background:var(--cvf-card) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23999' stroke-width='2'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'/%3E%3C/svg%3E") 10px center no-repeat;font-family:inherit}
.cv-vault-wrap .dsrch:focus{outline:none;border-color:var(--cvf-primary);box-shadow:0 0 0 3px rgba(30,58,95,.1)}
.cv-vault-wrap .dflt{padding:6px 12px;border:1.5px solid #d0d5dd;border-radius:7px;font-size:12px;background:var(--cvf-card);color:#666;cursor:pointer;font-weight:500;font-family:inherit;transition:all .15s}
.cv-vault-wrap .dflt:hover{border-color:var(--cvf-primary);color:var(--cvf-primary)}
.cv-vault-wrap .dflt.on{border-color:var(--cvf-primary);background:#e8f0fe;color:var(--cvf-primary);font-weight:600}
.cv-vault-wrap .dbtn{padding:8px 16px;border:none;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;font-family:inherit;display:flex;align-items:center;gap:4px;transition:all .15s}
.cv-vault-wrap .dbtn-p{background:var(--cvf-primary);color:#fff}
.cv-vault-wrap .dbtn-p:hover{background:var(--cvf-primary-light)}
.cv-vault-wrap .dbtn-o{background:var(--cvf-card);color:var(--cvf-primary);border:1.5px solid #d0d5dd}
.cv-vault-wrap .dbtn-o:hover{border-color:var(--cvf-primary);background:#f0f7ff}

.cv-vault-wrap .dcard{background:var(--cvf-card);border-radius:14px;box-shadow:0 1px 8px rgba(0,0,0,.04);overflow:hidden}
.cv-vault-wrap .dtbl{width:100%;border-collapse:collapse}
.cv-vault-wrap .dtbl th{padding:10px 14px;text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.4px;color:#888;background:#f8fafc;border-bottom:1px solid #e8ecf0;white-space:nowrap}
.cv-vault-wrap .dtbl td{padding:12px 14px;border-bottom:1px solid #f0f2f5;font-size:14px;vertical-align:middle}
.cv-vault-wrap .dtbl tbody tr{transition:all .15s}
.cv-vault-wrap .dtbl tbody tr:hover td{background:#f8fafc}
.cv-vault-wrap .dname{display:flex;align-items:center;gap:10px}
.cv-vault-wrap .dicon{width:34px;height:34px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:17px;flex-shrink:0}
.cv-vault-wrap .di-pdf{background:#fce4ec}.cv-vault-wrap .di-img{background:#e8f5e9}
.cv-vault-wrap .di-doc{background:#e3f2fd}.cv-vault-wrap .di-zip{background:#fff3e0}
.cv-vault-wrap .di-xls{background:#e8f5e9}.cv-vault-wrap .di-vid{background:#f3e8ff}
.cv-vault-wrap .di-audio{background:#fce4ec}
.cv-vault-wrap .dname-t{font-weight:600;color:var(--cvf-primary);font-size:14px}
.cv-vault-wrap .dname-s{font-size:12px;color:#767676;margin-top:2px}
.cv-vault-wrap .dfrom{display:inline-flex;align-items:center;gap:3px;font-size:13px}
.cv-vault-wrap .dfrom-c{color:var(--cvf-link)}.cv-vault-wrap .dfrom-cl{color:#6b21a8}
.cv-vault-wrap .dact{display:flex;gap:3px}
.cv-vault-wrap .dact-btn{width:28px;height:28px;border-radius:6px;border:1.5px solid #e0e4e8;background:var(--cvf-card);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:13px;transition:all .15s}
.cv-vault-wrap .dact-btn:hover{border-color:var(--cvf-primary);background:#f0f7ff}
.cv-vault-wrap .dfooter{display:flex;align-items:center;justify-content:space-between;padding:12px 18px;border-top:1px solid #e8ecf0;font-size:13px;color:#767676}




.cv-vault-wrap .fiches-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}
.cv-vault-wrap .fiche{background:var(--cvf-card);border-radius:12px;box-shadow:0 1px 6px rgba(0,0,0,.04);overflow:hidden;border:1px solid #e8ecf0;transition:all .15s}
.cv-vault-wrap .fiche:hover{transform:translateY(-2px);box-shadow:0 4px 16px rgba(0,0,0,.08)}
.cv-vault-wrap .fiche-color{height:5px}
.cv-vault-wrap .fiche-body{padding:16px 18px}
.cv-vault-wrap .fiche-title{font-size:15px;font-weight:700;color:var(--cvf-primary);margin-bottom:5px;display:flex;align-items:center;gap:5px}
.cv-vault-wrap .fiche-pin{font-size:14px}
.cv-vault-wrap .fiche-text{font-size:13px;color:#666;line-height:1.6;margin-bottom:8px}
.cv-vault-wrap .fiche-meta{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:#767676}
.cv-vault-wrap .fiche-actions{display:flex;gap:4px;margin-top:8px}
.cv-vault-wrap .fiche-linked{font-size:11px;color:var(--cvf-link);font-weight:600;background:#e8f0fe;padding:3px 8px;border-radius:5px;margin-top:8px;display:inline-block;cursor:pointer}




.cv-vault-wrap .link-item{display:flex;align-items:center;gap:14px;padding:14px 18px;background:var(--cvf-card);border-radius:12px;box-shadow:0 1px 6px rgba(0,0,0,.04);margin-bottom:10px;border:1px solid #e8ecf0;transition:border-color .15s}
.cv-vault-wrap .link-item:hover{border-color:var(--cvf-primary)}
.cv-vault-wrap .link-icon{width:40px;height:40px;border-radius:10px;background:#e0f2f1;display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0}
.cv-vault-wrap .link-body{flex:1;min-width:0}
.cv-vault-wrap .link-title{font-size:14px;font-weight:600;color:var(--cvf-link);cursor:pointer}
.cv-vault-wrap .link-title:hover{text-decoration:underline}
.cv-vault-wrap .link-url{font-size:12px;color:#767676;margin-top:2px}
.cv-vault-wrap .link-desc{font-size:13px;color:#666;margin-top:3px}
.cv-vault-wrap .link-meta{font-size:12px;color:#bbb;margin-top:4px}
.cv-vault-wrap .link-actions{display:flex;gap:4px;flex-shrink:0}




.cv-vault-wrap .media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}
.cv-vault-wrap .media-item{background:var(--cvf-card);border-radius:12px;box-shadow:0 1px 6px rgba(0,0,0,.04);overflow:hidden;border:1px solid #e8ecf0;transition:all .15s}
.cv-vault-wrap .media-item:hover{transform:translateY(-2px);box-shadow:0 4px 16px rgba(0,0,0,.08)}
.cv-vault-wrap .media-preview{background:#1a1a2e;height:160px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:40px;position:relative}
.cv-vault-wrap .media-play{width:50px;height:50px;background:rgba(255,255,255,.2);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:20px;cursor:pointer;transition:background .2s}
.cv-vault-wrap .media-play:hover{background:rgba(255,255,255,.35)}
.cv-vault-wrap .media-type-badge{position:absolute;top:8px;left:8px;padding:3px 10px;border-radius:6px;font-size:11px;font-weight:600;background:rgba(0,0,0,.5);color:#fff}
.cv-vault-wrap .media-readonly{position:absolute;top:8px;right:8px;padding:3px 10px;border-radius:6px;font-size:11px;font-weight:600;background:rgba(255,255,255,.2);color:#fff}
.cv-vault-wrap .media-body{padding:14px 18px}
.cv-vault-wrap .media-title{font-size:14px;font-weight:600;color:var(--cvf-primary);margin-bottom:3px}
.cv-vault-wrap .media-desc{font-size:13px;color:#666;margin-top:3px}
.cv-vault-wrap .media-meta{font-size:12px;color:#bbb;margin-top:5px}
.cv-vault-wrap .media-actions{display:flex;gap:4px;margin-top:8px}




.cv-vault-wrap .note-thread{background:var(--cvf-card);border-radius:14px;box-shadow:0 2px 12px rgba(0,0,0,.05);overflow:hidden}
.cv-vault-wrap .note-msg{display:flex;gap:12px;padding:16px 20px;border-bottom:1px solid #f0f2f5}
.cv-vault-wrap .note-msg:last-of-type{border-bottom:none}
.cv-vault-wrap .note-av{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#fff;flex-shrink:0}
.cv-vault-wrap .note-av-coach{background:var(--cvf-primary)}
.cv-vault-wrap .note-av-client{background:#6b21a8}
.cv-vault-wrap .note-body{flex:1}
.cv-vault-wrap .note-who{font-size:13px;font-weight:600;margin-bottom:2px}
.cv-vault-wrap .note-who-c{color:var(--cvf-primary)}
.cv-vault-wrap .note-who-cl{color:#6b21a8}
.cv-vault-wrap .note-txt{font-size:14px;color:#444;line-height:1.6}
.cv-vault-wrap .note-time{font-size:12px;color:#bbb;margin-top:3px}
.cv-vault-wrap .note-actions{display:flex;gap:4px;margin-top:6px}
.cv-vault-wrap .note-input{display:flex;gap:8px;padding:14px 20px;border-top:1px solid #e8ecf0;align-items:center}
.cv-vault-wrap .note-field{flex:1;padding:10px 14px;border:1.5px solid #e0e4e8;border-radius:8px;font-size:14px;font-family:inherit;resize:none;height:40px;transition:border-color .2s}
.cv-vault-wrap .note-field:focus{outline:none;border-color:var(--cvf-primary);box-shadow:0 0 0 3px rgba(30,58,95,.1)}
.cv-vault-wrap .note-send{padding:10px 20px;background:var(--cvf-primary);color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:background .15s}
.cv-vault-wrap .note-send:hover{background:var(--cvf-primary-light)}
.cv-vault-wrap .note-filters{display:flex;align-items:center;gap:8px;padding:12px 20px;border-bottom:1px solid #e8ecf0;flex-wrap:wrap}




.cv-vault-wrap .dtags{display:flex;gap:4px;flex-wrap:wrap;margin-top:4px}
.cv-vault-wrap .dtag{display:inline-flex;align-items:center;gap:3px;padding:2px 8px;border-radius:10px;font-size:11px;font-weight:600;cursor:default}
.cv-vault-wrap .dtag-blue{background:#e8f0fe;color:var(--cvf-link)}
.cv-vault-wrap .dtag-green{background:#d4edda;color:#155724}
.cv-vault-wrap .dtag-orange{background:#fff3e0;color:#e65100}
.cv-vault-wrap .dtag-purple{background:#f3e8ff;color:#6b21a8}
.cv-vault-wrap .dtag-red{background:#f8d7da;color:#721c24}
.cv-vault-wrap .dtag-teal{background:#e0f2f1;color:#00695c}




.cv-vault-wrap .settings-card{background:var(--cvf-card);border-radius:14px;box-shadow:0 2px 12px rgba(0,0,0,.05);padding:22px;margin-bottom:18px}
.cv-vault-wrap .settings-card h3{font-size:16px;color:var(--cvf-primary);margin-bottom:14px;display:flex;align-items:center;gap:8px}
.cv-vault-wrap .setting-row{display:flex;align-items:center;gap:14px;padding:12px 0;border-bottom:1px solid #f5f5f5}
.cv-vault-wrap .setting-row:last-child{border-bottom:none}
.cv-vault-wrap .setting-toggle{width:40px;height:22px;border-radius:11px;cursor:pointer;position:relative;flex-shrink:0;transition:background .2s}
.cv-vault-wrap .setting-toggle::after{content:'';position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:var(--cvf-card);transition:transform .2s;box-shadow:0 1px 3px rgba(0,0,0,.2)}
.cv-vault-wrap .toggle-on{background:#27ae60}
.cv-vault-wrap .toggle-on::after{transform:translateX(18px)}
.cv-vault-wrap .toggle-off{background:#d0d5dd}

.cv-vault-wrap .cv-notif-toolbar {
    display: flex; justify-content: flex-end; margin-bottom: 8px;
}
.cv-vault-wrap .cv-notif-select-toggle {
    background: none; border: none; color: var(--cvf-primary-light, #2a5298); font-size: 13px;
    cursor: pointer; padding: 4px 0; font-weight: 500;
}
.cv-vault-wrap .cv-notif-select-toggle:hover { text-decoration: underline; }

.cv-vault-wrap .cv-notif-grid {
    display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 10px;
}
.cv-vault-wrap .cv-notif-card {
    position: relative; border-radius: 10px; padding: 14px 12px 12px;
    cursor: pointer; user-select: none; transition: all 0.2s ease;
    border: 2px solid transparent; background: var(--cvf-hover-bg, #f8f9fb);
}
.cv-vault-wrap .cv-notif-card-on {
    border-color: #27ae60; background: rgba(39,174,96,0.04);
}
.cv-vault-wrap .cv-notif-card:hover { box-shadow: 0 2px 8px rgba(0,0,0,0.06); }
.cv-vault-wrap .cv-notif-card-header {
    display: flex; align-items: center; justify-content: space-between; margin-bottom: 10px;
}
.cv-vault-wrap .cv-notif-card-icon { font-size: 22px; line-height: 1; }
.cv-vault-wrap .cv-notif-card-toggle {
    width: 36px; height: 20px; border-radius: 10px; position: relative;
    flex-shrink: 0; transition: background 0.2s;
}
.cv-vault-wrap .cv-notif-card-toggle::after {
    content: ''; position: absolute; top: 2px; left: 2px; width: 16px; height: 16px;
    border-radius: 50%; background: #fff; transition: transform 0.2s; box-shadow: 0 1px 3px rgba(0,0,0,0.18);
}
.cv-vault-wrap .cv-notif-card-toggle.toggle-on { background: #27ae60; }
.cv-vault-wrap .cv-notif-card-toggle.toggle-on::after { transform: translateX(16px); }
.cv-vault-wrap .cv-notif-card-toggle.toggle-off { background: #d0d5dd; }
.cv-vault-wrap .cv-notif-card-body { display: flex; flex-direction: column; gap: 2px; }
.cv-vault-wrap .cv-notif-card-title {
    font-size: 13px; font-weight: 600; color: var(--cvf-text, #2c3e50); line-height: 1.3;
}
.cv-vault-wrap .cv-notif-card-desc {
    font-size: 11px; color: var(--cvf-text-muted, #5a6c7d); line-height: 1.3;
}
@media (max-width: 480px) {
    .cv-vault-wrap .cv-notif-grid { grid-template-columns: repeat(2, 1fr); }
}
.cv-vault-wrap .setting-info{flex:1;min-width:0}
.cv-vault-wrap .setting-title{font-size:14px;font-weight:600;color:var(--cvf-primary);margin-bottom:2px}
.cv-vault-wrap .setting-desc{font-size:13px;color:#888}
.cv-vault-wrap .setting-select{padding:6px 10px;border:1.5px solid #d0d5dd;border-radius:7px;font-size:13px;font-family:inherit;color:#555;background:var(--cvf-card);cursor:pointer}




.cv-vault-wrap .cv-form-dropzone{border:2px dashed #c7d2e0;border-radius:12px;padding:28px 20px;text-align:center;cursor:pointer;transition:all .2s;background:#f8fafc}
.cv-vault-wrap .cv-form-dropzone:hover{border-color:var(--cvf-primary);background:#f0f7ff}
.cv-vault-wrap .cv-form-label{display:block;font-size:12px;font-weight:600;color:#555;margin-bottom:6px}
.cv-vault-wrap .cv-form-input{width:100%;padding:10px 14px;border:1.5px solid #d0d5dd;border-radius:8px;font-size:14px;font-family:inherit;box-sizing:border-box;transition:border-color .2s}
.cv-vault-wrap .cv-form-input:focus{outline:none;border-color:var(--cvf-primary);box-shadow:0 0 0 3px rgba(30,58,95,.1)}
.cv-vault-wrap .cv-form-select{width:100%;padding:10px 14px;border:1.5px solid #d0d5dd;border-radius:8px;font-size:13px;font-family:inherit;background:var(--cvf-card);color:#555;cursor:pointer;box-sizing:border-box}
.cv-vault-wrap .cv-form-select:focus{outline:none;border-color:var(--cvf-primary)}
.cv-vault-wrap .cv-form-textarea{width:100%;padding:10px 14px;border:1.5px solid #d0d5dd;border-radius:8px;font-size:14px;font-family:inherit;resize:vertical;min-height:70px;box-sizing:border-box;transition:border-color .2s}
.cv-vault-wrap .cv-form-textarea:focus{outline:none;border-color:var(--cvf-primary);box-shadow:0 0 0 3px rgba(30,58,95,.1)}
.cv-vault-wrap .cv-form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}
.cv-vault-wrap .cv-form-cancel{padding:10px 20px;background:none;border:1.5px solid #d0d5dd;border-radius:8px;font-size:13px;font-weight:600;color:#666;cursor:pointer;font-family:inherit;transition:all .15s}
.cv-vault-wrap .cv-form-cancel:hover{border-color:var(--cvf-danger);color:var(--cvf-danger)}
.cv-vault-wrap .cv-form-submit{padding:10px 20px;background:var(--cvf-primary);color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;font-family:inherit;transition:background .15s}
.cv-vault-wrap .cv-form-submit:hover{background:var(--cvf-primary-light)}




.cv-vault-wrap .cv-tag-group{background:var(--cvf-card);border-radius:12px;border:1px solid #e8ecf0;margin-bottom:16px;overflow:hidden}
.cv-vault-wrap .cv-tag-group-hdr{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid #e8ecf0}
.cv-vault-wrap .cv-tag-group-hdr-left{display:flex;align-items:center;gap:10px}
.cv-vault-wrap .cv-tag-group-count{font-size:12px;color:#6b7280}
.cv-vault-wrap .cv-tag-group-actions{display:flex;gap:6px}
.cv-vault-wrap .cv-tag-group-btn{font-size:11px;padding:4px 10px;border:1px solid #d0d5dd;border-radius:5px;background:var(--cvf-card);cursor:pointer;font-family:inherit;transition:all .15s}
.cv-vault-wrap .cv-tag-group-btn:hover{border-color:var(--cvf-primary);background:#f0f7ff}
.cv-vault-wrap .cv-tag-group-btn-danger{color:var(--cvf-danger)}
.cv-vault-wrap .cv-tag-group-btn-danger:hover{border-color:var(--cvf-danger);background:#fff5f5}
.cv-vault-wrap .cv-tag-timeline{position:relative;padding:12px 18px 12px 42px}
.cv-vault-wrap .cv-tag-timeline::before{content:'';position:absolute;left:26px;top:16px;bottom:16px;width:2px;background:#e0e7ef}
.cv-vault-wrap .cv-tag-timeline-item{position:relative;margin-bottom:12px}
.cv-vault-wrap .cv-tag-timeline-item:last-child{margin-bottom:0}
.cv-vault-wrap .cv-tag-timeline-dot{position:absolute;left:-20px;top:4px;width:10px;height:10px;border-radius:50%}
.cv-vault-wrap .cv-tag-timeline-text{font-size:13px;color:#333}
.cv-vault-wrap .cv-tag-timeline-text strong{color:var(--cvf-primary)}
.cv-vault-wrap .cv-tag-timeline-date{font-size:11px;color:#6b7280;margin-top:2px}




.cv-vault-wrap .cv-activity-log{background:#fff;border-radius:12px;border:1px solid #e8ecf0;overflow:hidden}
.cv-vault-wrap .cv-activity-log-day{padding:10px 18px;background:#f8fafc;border-bottom:1px solid #e8ecf0;font-size:12px;font-weight:700;color:var(--cvf-primary)}
.cv-vault-wrap .cv-activity-log-entries{padding:8px 18px}
.cv-vault-wrap .cv-activity-log-entry{display:flex;align-items:flex-start;gap:12px;padding:10px 0;border-bottom:1px solid #f0f2f5}
.cv-vault-wrap .cv-activity-log-entry:last-child{border-bottom:none}
.cv-vault-wrap .cv-activity-log-icon{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;flex-shrink:0}
.cv-vault-wrap .cv-activity-log-body{flex:1;min-width:0}
.cv-vault-wrap .cv-activity-log-body strong{color:var(--cvf-primary)}
.cv-vault-wrap .cv-activity-log-body em{color:#555}
.cv-vault-wrap .cv-activity-log-text{font-size:13px;color:#333}
.cv-vault-wrap .cv-activity-log-time{font-size:11px;color:#6b7280;margin-top:2px}
.cv-vault-wrap .cv-activity-log-actions{display:flex;gap:4px;flex-shrink:0;align-self:center}




.cv-vault-wrap .cv-active-filters{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}
.cv-vault-wrap .cv-active-filter{display:inline-flex;align-items:center;gap:4px;font-size:11px;padding:4px 10px;border-radius:20px;cursor:pointer;font-weight:600;transition:opacity .15s}
.cv-vault-wrap .cv-active-filter:hover{opacity:.7}
.cv-vault-wrap .cv-active-filter-clear{font-size:11px;padding:4px 10px;color:#6b7280;cursor:pointer;text-decoration:underline}




.cv-vault-wrap .cv-filter-bar{display:flex;gap:8px;flex-wrap:wrap;align-items:center;padding:10px 16px;background:#f8fafc;border:1px solid #e8ecf0;border-radius:10px;margin-bottom:14px}
.cv-vault-wrap .cv-filter-bar-label{font-size:12px;color:#6b7280;font-weight:600}
.cv-vault-wrap .cv-filter-select{font-size:12px;padding:5px 10px;border:1.5px solid #d0d5dd;border-radius:6px;background:#fff;color:#333;cursor:pointer;font-family:inherit}
.cv-vault-wrap .cv-filter-select:focus{outline:none;border-color:var(--cvf-primary)}







.cv-vault-wrap .cli-welcome-banner {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 14px 18px;
    margin-bottom: 18px;
    background: linear-gradient(135deg, #eff6ff 0%, #e0f2fe 100%);
    border: 1.5px solid #bfdbfe;
    border-left: 4px solid #3b82f6;
    border-radius: var(--cvf-radius, 12px);
    font-size: 13px;
    color: #1e3a5f;
    line-height: 1.5;
}
.cv-vault-wrap .cli-welcome-banner svg { flex-shrink: 0; margin-top: 2px; color: #3b82f6; }
.cv-vault-wrap .cli-welcome-text { flex: 1; }
.cv-vault-wrap .cli-welcome-from {
    display: block;
    font-weight: 700;
    font-size: 12px;
    color: #3b82f6;
    margin-bottom: 2px;
}

.cv-vault-wrap .cli-msg-alert {
    display: flex; align-items: center; gap: 14px; width: 100%; text-align: left;
    padding: 14px 18px; margin-bottom: 18px;
    background: linear-gradient(135deg, #eef2f8 0%, #e6edf6 100%);
    border: 1.5px solid #cdd9e8; border-left: 4px solid #1e3a5f;
    border-radius: var(--cvf-radius, 12px); cursor: pointer;
    transition: box-shadow .14s ease, transform .08s ease, border-color .14s ease;
}
.cv-vault-wrap .cli-msg-alert:hover { box-shadow: 0 8px 24px rgba(30,58,95,.12); transform: translateY(-1px); border-color: #1e3a5f; }
.cv-vault-wrap .cli-msg-alert-ico { position: relative; flex: 0 0 auto; width: 40px; height: 40px; border-radius: 10px; display: flex; align-items: center; justify-content: center; background: #1e3a5f; color: #fff; }
.cv-vault-wrap .cli-msg-alert-badge { position: absolute; top: -6px; right: -6px; min-width: 19px; height: 19px; padding: 0 5px; border-radius: 999px; background: #ef4444; color: #fff; font-size: 11px; font-weight: 800; line-height: 19px; text-align: center; box-shadow: 0 0 0 2px #eef2f8; }
.cv-vault-wrap .cli-msg-alert-txt { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; gap: 1px; }
.cv-vault-wrap .cli-msg-alert-txt strong { font-size: 14px; font-weight: 700; color: #1e3a5f; }
.cv-vault-wrap .cli-msg-alert-sub { font-size: 12px; color: #64748b; }
.cv-vault-wrap .cli-msg-alert-arrow { flex: 0 0 auto; color: #1e3a5f; font-size: 22px; width: 22px; height: 22px; }

.cv-vault-wrap .cv-msg-new-pill { display: inline-block; background: #1e3a5f; color: #fff; font-size: 10px; font-weight: 800; letter-spacing: .02em; text-transform: uppercase; padding: 1px 7px; border-radius: 999px; vertical-align: 1px; }




.cv-vault-wrap .cv-zone {
    position: relative;
    margin-top: 32px;
    padding-top: 24px;
}
.cv-vault-wrap .cv-zone:first-child {
    margin-top: 8px;
    padding-top: 0;
}

.cv-vault-wrap .cv-zone + .cv-zone::before {
    content: '';
    position: absolute;
    top: 0;
    left: 10%;
    right: 10%;
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--cvf-border) 20%, var(--cvf-border) 80%, transparent);
}


.cv-vault-wrap .cv-zone-header {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 16px;
    

    background: var(--cvf-card, #fff);
    padding: 14px 18px;
    border-radius: 12px;
    box-shadow: 0 4px 16px rgba(15, 23, 42, 0.08), 0 1px 3px rgba(15, 23, 42, 0.04);
    border: 1px solid rgba(15, 23, 42, 0.08);
}
.cv-vault-wrap .cv-zone-accent {
    flex-shrink: 0;
    width: 4px;
    height: 34px;
    border-radius: 4px;
}
.cv-vault-wrap .cv-zone--requests .cv-zone-accent {
    background: linear-gradient(180deg, #f59e0b, #d97706);
}
.cv-vault-wrap .cv-zone--parcours .cv-zone-accent {
    background: linear-gradient(180deg, #22c55e, #16a34a);
}
.cv-vault-wrap .cv-zone--vault .cv-zone-accent {
    background: linear-gradient(180deg, var(--cvf-primary-light), var(--cvf-primary));
}
.cv-vault-wrap .cv-zone-text {
    flex: 1;
    min-width: 0;
}
.cv-vault-wrap .cv-zone-title {
    font-size: 17px;
    font-weight: 700;
    color: var(--cvf-text);
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.15;
    letter-spacing: -0.02em;
    border: none !important;
}
.cv-vault-wrap .cv-zone-desc {
    font-size: 10.5px;
    color: var(--cvf-text-muted);
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.3;
    font-weight: 400;
    opacity: 0.75;
}

.cv-vault-wrap .cv-zone-count {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 24px;
    height: 24px;
    padding: 0 8px;
    border-radius: 12px;
    font-size: 11.5px;
    font-weight: 700;
    line-height: 1;
}
.cv-vault-wrap .cv-zone--requests .cv-zone-count {
    background: #fef3c7;
    color: #92400e;
}
.cv-vault-wrap .cv-zone--parcours .cv-zone-count {
    background: #dcfce7;
    color: #166534;
}

@media (max-width: 540px) {
    .cv-vault-wrap .cv-zone { margin-top: 24px; padding-top: 18px; }
    .cv-vault-wrap .cv-zone-header { margin-bottom: 12px; }
    .cv-vault-wrap .cv-zone-accent { height: 28px; }
    .cv-vault-wrap .cv-zone-title { font-size: 15px; }
    .cv-vault-wrap .cv-zone-desc { font-size: 10px; }
}


.cv-vault-wrap .cli-parcours-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 14px;
    margin-bottom: 20px;
}
@media (max-width: 900px) {
    .cv-vault-wrap .cli-parcours-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 540px) {
    .cv-vault-wrap .cli-parcours-grid { grid-template-columns: 1fr; }
}
.cv-vault-wrap .cli-parcours-summary {
    position: relative;
    padding: 18px 18px 14px;
    border-radius: var(--cvf-radius, 12px);
    color: #fff !important;
    cursor: pointer;
    overflow: hidden;
    transition: transform .18s ease, box-shadow .18s ease;
}
.cv-vault-wrap .cli-parcours-summary * { color: #fff !important; }
.cv-vault-wrap .cli-parcours-summary:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(0,0,0,.18);
}
.cv-vault-wrap .cli-parcours-summary-content {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}
.cv-vault-wrap .cli-parcours-summary-left { flex: 1; min-width: 0; }
.cv-vault-wrap .cli-parcours-summary-badge {
    display: inline-block;
    padding: 2px 10px;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .5px;
    background: rgba(255,255,255,.18);
    border-radius: 20px;
    margin-bottom: 8px;
}
.cv-vault-wrap .cli-parcours-summary-title {
    margin: 0 0 6px;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.3;
    color: #fff !important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.cv-vault-wrap .cli-parcours-summary-meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px 10px;
    font-size: 11.5px;
    opacity: .85;
}
.cv-vault-wrap .cli-parcours-summary-right { flex-shrink: 0; }
.cv-vault-wrap .cli-parcours-summary-circle {
    position: relative;
    width: 68px;
    height: 68px;
}
.cv-vault-wrap .cli-parcours-summary-circle svg {
    transform: rotate(-90deg);
    display: block;
    width: 68px;
    height: 68px;
}
.cv-vault-wrap .cli-parcours-summary-pct {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 16px;
    font-weight: 800;
    color: #fff !important;
}
.cv-vault-wrap .cli-parcours-summary-bar {
    height: 7px;
    background: rgba(255,255,255,.18);
    border-radius: 7px;
    margin: 12px 0 8px;
    overflow: hidden;
}
.cv-vault-wrap .cli-parcours-summary-bar-fill {
    height: 100%;
    border-radius: 7px;
    background: rgba(255,255,255,.85);
    transition: width .6s ease;
}
.cv-vault-wrap .cli-parcours-summary-cta {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    font-weight: 600;
    opacity: .9;
}
.cv-vault-wrap .cli-parcours-summary-cta svg { transition: transform .15s ease; }
.cv-vault-wrap .cli-parcours-summary:hover .cli-parcours-summary-cta svg { transform: translateX(3px); }
@media (max-width: 540px) {
    .cv-vault-wrap .cli-parcours-summary { padding: 16px 14px 12px; }
    .cv-vault-wrap .cli-parcours-summary-title { font-size: 15px; }
    .cv-vault-wrap .cli-parcours-summary-circle { width: 60px; height: 60px; }
    .cv-vault-wrap .cli-parcours-summary-circle svg { width: 60px; height: 60px; }
    .cv-vault-wrap .cli-parcours-summary-pct { font-size: 14px; }
}


.cv-vault-wrap .cli-progress-card {
    padding: 18px 20px;
    margin-bottom: 18px;
    background: var(--cvf-card);
    border: 1.5px solid var(--cvf-border);
    border-radius: var(--cvf-radius, 12px);
    box-shadow: var(--cvf-shadow);
}


.cv-vault-wrap .cv-requests-alert {
    display: flex;
    align-items: center;
    gap: 14px;
    width: 100%;
    text-align: left;
    margin: 0 0 20px;
    padding: 15px 18px;
    border: none;
    border-left: 5px solid #f59e0b;
    border-radius: 14px;
    cursor: pointer;
    color: #7c2d12;
    background: linear-gradient(135deg, #fff7ed 0%, #ffedd5 100%);
    box-shadow: 0 6px 20px rgba(245, 158, 11, 0.18);
    transition: transform .15s ease, box-shadow .15s ease;
}
.cv-vault-wrap .cv-requests-alert:hover { transform: translateY(-2px); box-shadow: 0 10px 26px rgba(245, 158, 11, 0.26); }
.cv-vault-wrap .cv-requests-alert-icon {
    flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center;
    width: 42px; height: 42px; border-radius: 12px; background: #f59e0b; color: #fff;
}
.cv-vault-wrap .cv-requests-alert-text { flex: 1 1 auto; display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.cv-vault-wrap .cv-requests-alert-text strong { font-size: 14px; font-weight: 700; color: #92400e; }
.cv-vault-wrap .cv-requests-alert-count { display: inline-flex; align-items: center; justify-content: center; min-width: 20px; height: 18px; padding: 0 6px; margin-left: 4px; background: #f59e0b; color: #fff; border-radius: 20px; font-size: 11px; font-weight: 700; }
.cv-vault-wrap .cv-requests-alert-text > span { font-size: 12.5px; color: #b45309; }
.cv-vault-wrap .cv-requests-alert-arrow { flex: 0 0 auto; color: #d97706; font-size: 22px; width: 22px; height: 22px; }


.cv-vault-wrap .cv-tab--requests .cv-tab-count { background: #f59e0b; color: #fff; }


.cv-vault-wrap .cv-requests-section {
    background: #ffffff;
    border: 1px solid var(--cvf-border, #e4e8ee);
    border-radius: 10px;
    padding: 0;
    overflow: hidden;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
}

.cv-vault-wrap .cv-requests-section > .cvf-section-header {
    background: linear-gradient(135deg, #fff7ed 0%, #ffedd5 100%);
    border-left: 4px solid #f59e0b;
    min-height: 64px;
    align-items: center;
}
.cv-vault-wrap .cv-requests-section .cvf-section-header h2 svg { color: #f59e0b; }

.cv-vault-wrap #cv-panel-requests .cv-filter-bar { margin: 0 0 14px 0; }

.cv-vault-wrap .cv-req-filter-bar .cv-doc-ftype-btn {
    padding: 6px 14px; border: 1px solid var(--cvf-border, #e8ecf0); border-radius: 8px;
    background: #fff; font-size: 12px; font-weight: 600; color: var(--cvf-text-muted, #64748b);
    cursor: pointer; transition: all .15s; white-space: nowrap;
}
.cv-vault-wrap .cv-req-filter-bar .cv-doc-ftype-btn:hover { border-color: #f59e0b; color: #b45309; }
.cv-vault-wrap .cv-req-filter-bar .cv-doc-ftype-btn.active { background: #f59e0b; color: #fff; border-color: #f59e0b; }
.cv-vault-wrap .cv-req-filter-bar .cv-req-ftype-retard.active { background: #dc2626; border-color: #dc2626; }

.cv-vault-wrap .cv-req-list { display: flex; flex-direction: column; gap: 12px; padding: 14px 16px 18px; }
.cv-vault-wrap #cv-req-list .cli-progress-card { margin: 0; border-left: 4px solid #f59e0b; }
.cv-vault-wrap #cv-req-list .cli-progress-header { display: flex; align-items: center; gap: 10px; }
.cv-vault-wrap .cv-req-card-icon {
    flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center;
    width: 34px; height: 34px; border-radius: 9px; background: #fff3e0; color: #f59e0b;
}
.cv-vault-wrap #cv-req-list .cli-progress-title { flex: 1 1 auto; min-width: 0; }
.cv-vault-wrap .cv-req-badge {
    flex: 0 0 auto; display: inline-flex; align-items: center; padding: 3px 10px;
    border-radius: 20px; font-size: 11px; font-weight: 700; white-space: nowrap;
}
.cv-vault-wrap .cv-req-badge-encours { background: #fef3c7; color: #92400e; }
.cv-vault-wrap .cv-req-badge-retard { background: #fee2e2; color: #991b1b; }
.cv-vault-wrap .cv-req-badge-terminee { background: #dcfce7; color: #166534; }
.cv-vault-wrap .cv-req-noresults { text-align: center; padding: 24px; color: var(--cvf-text-muted, #6b7280); }

.cv-vault-wrap .cli-progress-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 10px;
    
    cursor: pointer;
    user-select: none;
    padding: 4px 6px;
    margin-left: -6px;
    margin-right: -6px;
    border-radius: 8px;
    transition: background .15s ease;
}
.cv-vault-wrap .cli-progress-header:hover {
    background: rgba(var(--cvf-primary-rgb), 0.04);
}
.cv-vault-wrap .cli-progress-title {
    font-size: 14px;
    font-weight: 700;
    color: var(--cvf-text);
}
.cv-vault-wrap .cli-progress-count {
    font-size: 13px;
    font-weight: 600;
    color: var(--cvf-primary);
}

.cv-vault-wrap .cli-project-toggle {
    background: none;
    border: none;
    cursor: pointer;
    padding: 4px;
    margin-left: 8px;
    border-radius: 4px;
    color: var(--cvf-text-muted, #8a94a6);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: color .2s, background .2s, transform .2s;
    flex-shrink: 0;
}
.cv-vault-wrap .cli-project-toggle:hover {
    color: var(--cvf-primary);
    background: rgba(var(--cvf-primary-rgb), 0.08);
}
.cv-vault-wrap .cli-project-toggle .cli-project-toggle-icon {
    transition: transform .25s ease;
}
.cv-vault-wrap .cli-project-card.cli-project-collapsed .cli-project-toggle .cli-project-toggle-icon {
    transform: rotate(-90deg);
}
.cv-vault-wrap .cli-project-card .cli-project-collapsible {
    overflow: hidden;
    transition: max-height .3s ease, opacity .25s ease, margin-top .25s ease;
    opacity: 1;
}
.cv-vault-wrap .cli-project-card.cli-project-collapsed .cli-project-collapsible {
    max-height: 0 !important;
    opacity: 0;
    margin-top: 0 !important;
    pointer-events: none;
}
.cv-vault-wrap .cli-progress-bar {
    height: 8px;
    background: rgba(var(--cvf-primary-rgb), 0.08);
    border-radius: 10px;
    overflow: hidden;
}
.cv-vault-wrap .cli-progress-fill {
    height: 100%;
    background: linear-gradient(90deg, var(--cvf-primary), var(--cvf-accent, #e8913a));
    border-radius: 10px;
    transition: width .6s ease;
    min-width: 4px;
}
.cv-vault-wrap .cli-progress-pending {
    margin-top: 14px;
    padding-top: 12px;
    border-top: 1px solid var(--cvf-border);
}
.cv-vault-wrap .cli-progress-pending-label {
    display: block;
    font-size: 12px;
    font-weight: 600;
    color: var(--cvf-text-muted);
    margin-bottom: 8px;
}
.cv-vault-wrap .cli-req-item {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    padding: 10px 0;
    font-size: 13px;
    color: var(--cvf-text);
    border-bottom: 1px solid rgba(0,0,0,.05);
}
.cv-vault-wrap .cli-req-item:last-child { border-bottom: none; }
.cv-vault-wrap .cli-req-item svg { color: var(--cvf-text-muted); flex-shrink: 0; }
.cv-vault-wrap .cli-req-label { flex: 1; min-width: 0; font-weight: 500; }
.cv-vault-wrap .cli-req-desc {
    width: 100%;
    padding-left: 20px;
    font-size: 12px;
    color: var(--cvf-text-muted);
    margin-top: -4px;
}
.cv-vault-wrap .cli-req-urgent svg { color: #e74c3c; }
.cv-vault-wrap .cli-req-badge-urgent {
    font-size: 9px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .5px;
    padding: 2px 8px;
    border-radius: 10px;
    background: #fef2f2;
    color: #dc2626;
}


.cv-vault-wrap .cli-req-completed {
    opacity: 0.7;
}
.cv-vault-wrap .cli-req-completed .cli-req-label {
    text-decoration: line-through;
    text-decoration-color: rgba(0,0,0,.25);
}
.cv-vault-wrap .cli-req-check { color: #22c55e !important; }
.cv-vault-wrap .cli-req-badge-done {
    font-size: 9px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .5px;
    padding: 2px 8px;
    border-radius: 10px;
    background: #f0fdf4;
    color: #16a34a;
}


.cv-vault-wrap .cli-req-provide-btn {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 5px 14px;
    border: 1.5px solid var(--cvf-primary, #3b82f6);
    border-radius: 8px;
    background: transparent;
    color: var(--cvf-primary, #3b82f6);
    font-size: 11px;
    font-weight: 600;
    cursor: pointer;
    transition: background .2s, color .2s;
    white-space: nowrap;
    margin-left: auto;
}
.cv-vault-wrap .cli-req-provide-btn:hover {
    background: var(--cvf-primary, #3b82f6);
    color: #fff;
}
.cv-vault-wrap .cli-req-provide-btn:hover svg { stroke: #fff; }


.cv-vault-wrap .cli-req-upload-zone {
    width: 100%;
    padding: 12px 0 4px;
}
.cv-vault-wrap .cli-req-dropzone {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 16px;
    border: 2px dashed var(--cvf-border, #e0e0e0);
    border-radius: 10px;
    background: rgba(var(--cvf-primary-rgb, 59,130,246), 0.03);
    font-size: 12px;
    color: var(--cvf-text-muted);
    transition: border-color .2s, background .2s;
    cursor: pointer;
}
.cv-vault-wrap .cli-req-dropzone.cli-req-dragover {
    border-color: var(--cvf-primary, #3b82f6);
    background: rgba(var(--cvf-primary-rgb, 59,130,246), 0.08);
}
.cv-vault-wrap .cli-req-browse {
    color: var(--cvf-primary, #3b82f6);
    font-weight: 600;
    cursor: pointer;
    text-decoration: underline;
}
.cv-vault-wrap .cli-req-cancel-btn {
    display: block;
    margin: 8px 0 0;
    padding: 0;
    border: none;
    background: none;
    color: var(--cvf-text-muted);
    font-size: 11px;
    cursor: pointer;
    text-decoration: underline;
}
.cv-vault-wrap .cli-req-upload-progress {
    padding: 10px 0;
}
.cv-vault-wrap .cli-req-upload-bar {
    height: 6px;
    background: var(--cvf-border, #e0e0e0);
    border-radius: 4px;
    overflow: hidden;
}
.cv-vault-wrap .cli-req-upload-fill {
    height: 100%;
    background: linear-gradient(90deg, var(--cvf-primary, #3b82f6), var(--cvf-accent, #e8913a));
    border-radius: 4px;
    transition: width .3s ease;
    min-width: 4px;
}
.cv-vault-wrap .cli-req-upload-text {
    display: block;
    margin-top: 4px;
    font-size: 11px;
    color: var(--cvf-text-muted);
}


.cv-vault-wrap .cli-req-file-list {
    padding: 6px 0 4px;
}
.cv-vault-wrap .cli-req-file-item {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 4px 8px;
    font-size: 12px;
    color: var(--cvf-text, #1a1a1a);
    border-radius: 6px;
    margin-bottom: 3px;
    background: var(--cvf-bg-alt, #f8f9fa);
}
.cv-vault-wrap .cli-req-file-item small {
    color: var(--cvf-text-muted, #666);
}
.cv-vault-wrap .cli-req-file-item.cli-req-file-done {
    color: #22c55e;
}
.cv-vault-wrap .cli-req-file-item .cli-req-file-icon {
    flex-shrink: 0;
    width: 16px;
    text-align: center;
}


.cv-vault-wrap .cli-req-type-tabs {
    display: flex;
    gap: 0;
    margin-bottom: 10px;
    border: 1.5px solid var(--cvf-border, #e0e0e0);
    border-radius: 8px;
    overflow: hidden;
}
.cv-vault-wrap .cli-req-type-tab {
    flex: 1;
    padding: 7px 10px;
    border: none;
    background: transparent;
    font-size: 11px;
    font-weight: 600;
    color: var(--cvf-text-muted);
    cursor: pointer;
    transition: background .15s, color .15s;
    text-align: center;
}
.cv-vault-wrap .cli-req-type-tab.active {
    background: var(--cvf-primary, #3b82f6);
    color: #fff;
}
.cv-vault-wrap .cli-req-type-tab:not(.active):hover {
    background: rgba(var(--cvf-primary-rgb, 59,130,246), 0.06);
}

.cv-vault-wrap .cli-req-link-form {
    display: flex;
    gap: 8px;
    align-items: center;
}
.cv-vault-wrap .cli-req-link-input {
    flex: 1;
    padding: 10px 12px;
    border: 1.5px solid var(--cvf-border, #e0e0e0);
    border-radius: 8px;
    font-size: 12px;
    font-family: inherit;
    transition: border-color .15s;
}
.cv-vault-wrap .cli-req-link-input:focus {
    border-color: var(--cvf-primary, #3b82f6);
    outline: none;
}
.cv-vault-wrap .cli-req-link-submit {
    padding: 10px 16px;
    border: none;
    border-radius: 8px;
    background: var(--cvf-primary, #3b82f6);
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    white-space: nowrap;
    transition: background .15s;
}
.cv-vault-wrap .cli-req-link-submit:hover {
    opacity: 0.9;
}

.cv-vault-wrap .cli-project-submitted-msg {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 14px 16px;
    margin-top: 14px;
    background: linear-gradient(135deg, #fefce8 0%, #fef9c3 100%);
    border: 1.5px solid #fde68a;
    border-left: 4px solid #f59e0b;
    border-radius: var(--cvf-radius, 10px);
    font-size: 13px;
    color: var(--cvf-text);
    line-height: 1.5;
}
.cv-vault-wrap .cli-project-submitted-msg svg {
    flex-shrink: 0;
    color: #f59e0b;
}


.cv-vault-wrap .cli-project-deadline {
    display: flex;
    align-items: center;
    gap: 6px;
    margin: 6px 0 2px;
    font-size: 12px;
    color: var(--cvf-text-muted, #666);
    line-height: 1;
}
.cv-vault-wrap .cli-project-deadline svg {
    flex-shrink: 0;
}
.cv-vault-wrap .cli-deadline-soon {
    color: #f59e0b;
    font-weight: 600;
}
.cv-vault-wrap .cli-deadline-urgent {
    color: #ef4444;
    font-weight: 700;
}
.cv-vault-wrap .cli-deadline-overdue {
    color: #dc2626;
    font-weight: 700;
    background: #fef2f2;
    padding: 4px 10px;
    border-radius: 8px;
    border: 1px solid #fecaca;
}


.cv-vault-wrap .cli-progress-empty {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 14px;
    padding-top: 12px;
    border-top: 1px solid var(--cvf-border);
    font-size: 13px;
    color: var(--cvf-text-muted);
}
.cv-vault-wrap .cli-progress-empty svg {
    flex-shrink: 0;
    color: #22c55e;
}


.cv-vault-wrap .cli-requests-message {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    padding: 12px 14px;
    margin-top: 14px;
    background: linear-gradient(135deg, #fefce8 0%, #fef9c3 100%);
    border: 1.5px solid #fde68a;
    border-left: 4px solid #f59e0b;
    border-radius: var(--cvf-radius, 10px);
    font-size: 13px;
    line-height: 1.5;
    color: var(--cvf-text);
    transition: opacity .4s, max-height .4s;
}
.cv-vault-wrap .cli-requests-message svg {
    flex-shrink: 0;
    margin-top: 2px;
    color: #f59e0b;
}
.cv-vault-wrap .cli-requests-message-content {
    display: flex;
    flex-direction: column;
    gap: 2px;
}
.cv-vault-wrap .cli-requests-message-from {
    font-size: 11px;
    font-weight: 700;
    color: var(--cvf-text-muted);
    text-transform: uppercase;
    letter-spacing: .3px;
}
.cv-vault-wrap .cli-requests-message.cli-fade-out {
    opacity: 0;
    max-height: 0;
    padding: 0;
    margin: 0;
    border: none;
    overflow: hidden;
}


.cv-vault-wrap .cli-unread-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    border-radius: 10px;
    background: #ef4444;
    color: #fff !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    line-height: 1;
    margin-left: 6px;
    vertical-align: middle;
}





.cv-vault-wrap .cli-dashboard-sortable {
    display: flex;
    flex-wrap: wrap;
    gap: 20px; 
    align-items: stretch;
}
.cv-vault-wrap .cli-dashboard-sortable > .cli-block {
    flex: 1 1 calc(33.333% - 14px); 
    min-width: 260px;
    min-height: 0;
}

.cv-vault-wrap .cli-dashboard-sortable > .cvf-home-todo { flex: 1 1 100%; }

.cv-vault-wrap .cli-dashboard-sortable > .cvf-home-parcours-zone { flex: 1 1 100%; }
.cv-vault-wrap .cli-dashboard-sortable > .cvf-home-news,
.cv-vault-wrap .cli-dashboard-sortable > .cvf-home-parcours { flex: 1 1 calc(50% - 10px); min-width: 320px; }

.cv-vault-wrap .cli-block-activity-pinned {
    margin-top: 18px;
}

.cv-vault-wrap .cli-grid-2 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    margin-bottom: 20px;
}
@media (max-width: 768px) {
    .cv-vault-wrap .cli-grid-2 { grid-template-columns: 1fr; }
}


.cv-vault-wrap .cli-block {
    background: var(--cvf-card);
    border: 1.5px solid var(--cvf-border);
    border-radius: var(--cvf-radius);
    box-shadow: var(--cvf-shadow);
    overflow: hidden;
    transition: border-color .2s;
}
.cv-vault-wrap .cli-block:hover {
    border-color: rgba(var(--cvf-primary-rgb), 0.15);
}


.cv-vault-wrap .cli-grid-1 {
    display: grid;
    grid-template-columns: 1fr;
    gap: 18px;
    margin-bottom: 18px;
}


.cv-vault-wrap .cli-block-hdr {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 14px 16px;
    border-bottom: 1px solid var(--cvf-border);
    cursor: default;
}
.cv-vault-wrap .cli-block-hdr h4 {
    font-size: 14px !important;
    font-weight: 700 !important;
    margin: 0 !important;
    padding: 0 !important;
    letter-spacing: -0.2px;
    line-height: 1.3 !important;
    white-space: nowrap;
    flex: 1;
    min-width: 0;
    
    overflow: hidden;
    text-overflow: ellipsis;
}

.cv-vault-wrap .cli-hdr-actions {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
    flex-wrap: nowrap;
}

.cv-vault-wrap .cli-drag-handle {
    cursor: grab;
    opacity: 0.3;
    color: inherit;
    flex-shrink: 0;
    transition: opacity .15s;
    display: flex;
    align-items: center;
}
.cv-vault-wrap .cli-drag-handle:hover { opacity: 0.8; }
.cv-vault-wrap .cli-drag-handle:active { cursor: grabbing; }
.cv-vault-wrap .cli-grip { display: block; }

.cv-vault-wrap .cli-collapse-toggle {
    cursor: pointer;
    display: flex;
    align-items: center;
    opacity: 0.4;
    transition: opacity .15s, transform .2s;
    flex-shrink: 0;
}
.cv-vault-wrap .cli-collapse-toggle:hover { opacity: 0.8; }
.cv-vault-wrap .cli-chevron { transition: transform .2s; }
.cv-vault-wrap .cli-block.cli-collapsed .cli-chevron { transform: rotate(-90deg); }

.cv-vault-wrap .cli-block.cli-collapsed .cli-block-body,
.cv-vault-wrap .cli-block.cli-collapsed .cli-block-footer {
    display: none;
}
.cv-vault-wrap .cli-block.cli-collapsed {
    border-bottom: none;
}
.cv-vault-wrap .cli-block.cli-collapsed .cli-block-hdr {
    border-bottom: none;
}

.cv-vault-wrap .cli-block.cli-dragging {
    opacity: 0.4;
}
.cv-vault-wrap .cli-block.cli-drag-over {
    box-shadow: 0 -3px 0 0 var(--cvf-primary) !important;
}


.cv-vault-wrap .cli-hdr-documents {
    background: linear-gradient(135deg, #eff6ff 0%, #dbeafe 100%) !important;
    border-left: 4px solid #3b82f6;
}
.cv-vault-wrap .cli-hdr-documents h4 { color: #1e40af !important; }


.cv-vault-wrap .cli-hdr-cards {
    background: linear-gradient(135deg, #fefce8 0%, #fef9c3 100%) !important;
    border-left: 4px solid #eab308;
}
.cv-vault-wrap .cli-hdr-cards h4 { color: #854d0e !important; }


.cv-vault-wrap .cli-hdr-links {
    background: linear-gradient(135deg, #f0fdf4 0%, #dcfce7 100%) !important;
    border-left: 4px solid #22c55e;
}
.cv-vault-wrap .cli-hdr-links h4 { color: #166534 !important; }


.cv-vault-wrap .cli-hdr-notepad {
    background: linear-gradient(135deg, #fff7ed 0%, #ffedd5 100%) !important;
    border-left: 4px solid #f97316;
}
.cv-vault-wrap .cli-hdr-notepad h4 { color: #9a3412 !important; }


.cv-vault-wrap .cli-hdr-embeds {
    background: linear-gradient(135deg, #faf5ff 0%, #f3e8ff 100%) !important;
    border-left: 4px solid #a855f7;
}
.cv-vault-wrap .cli-hdr-embeds h4 { color: #6b21a8 !important; }


.cv-vault-wrap .cli-hdr-activity {
    background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%) !important;
    border-left: 4px solid #64748b;
}
.cv-vault-wrap .cli-hdr-activity h4 { color: #334155 !important; }


.cv-vault-wrap .cli-hdr-admin {
    background: linear-gradient(135deg, #f0fdfa 0%, #ccfbf1 100%) !important;
    border-left: 4px solid #14b8a6;
}
.cv-vault-wrap .cli-hdr-admin h4 { color: #115e59 !important; }


.cv-vault-wrap .cli-block-link {
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    text-decoration: none !important;
    white-space: nowrap;
    padding: 4px 12px;
    border-radius: 6px;
    background: rgba(255,255,255,.7);
    border: 1px solid rgba(0,0,0,.08);
    transition: all .15s;
    flex-shrink: 0;
}
.cv-vault-wrap .cli-hdr-documents .cli-block-link { color: #1e40af !important; }
.cv-vault-wrap .cli-hdr-cards .cli-block-link { color: #854d0e !important; }
.cv-vault-wrap .cli-hdr-links .cli-block-link { color: #166534 !important; }
.cv-vault-wrap .cli-hdr-notepad .cli-block-link { color: #9a3412 !important; }
.cv-vault-wrap .cli-hdr-embeds .cli-block-link { color: #6b21a8 !important; }
.cv-vault-wrap .cli-hdr-activity .cli-block-link { color: #334155 !important; }
.cv-vault-wrap .cli-hdr-admin .cli-block-link { color: #115e59 !important; }
.cv-vault-wrap .cli-block-link:hover {
    background: rgba(255,255,255,.9);
}


.cv-vault-wrap .cli-block-body {
    overflow: hidden;
}


.cv-vault-wrap .cli-item-hidden {
    display: none !important;
}
.cv-vault-wrap .cli-block.cli-expanded .cli-item-hidden {
    display: flex !important;
}

.cv-vault-wrap .cli-block.cli-expanded .cli-block-body {
    max-height: 400px;
    overflow-y: auto;
}


.cv-vault-wrap .cv-period-hidden {
    display: none !important;
}


.cv-vault-wrap .cli-block.cli-expanded .cli-block-body::-webkit-scrollbar {
    width: 6px;
}
.cv-vault-wrap .cli-block.cli-expanded .cli-block-body::-webkit-scrollbar-track {
    background: transparent;
    margin: 4px 0;
}
.cv-vault-wrap .cli-block.cli-expanded .cli-block-body::-webkit-scrollbar-thumb {
    background: rgba(var(--cvf-primary-rgb), 0.15);
    border-radius: 10px;
}
.cv-vault-wrap .cli-block.cli-expanded .cli-block-body::-webkit-scrollbar-thumb:hover {
    background: rgba(var(--cvf-primary-rgb), 0.3);
}

.cv-vault-wrap .cli-block.cli-expanded .cli-block-body {
    scrollbar-width: thin;
    scrollbar-color: rgba(var(--cvf-primary-rgb), 0.15) transparent;
}


.cv-vault-wrap .cli-block-footer {
    padding: 10px 20px;
    border-top: 1px solid var(--cvf-border);
    text-align: center;
    background: rgba(var(--cvf-primary-rgb), 0.015);
}
.cv-vault-wrap .cli-voir-plus {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 20px;
    border: 1.5px solid var(--cvf-border);
    border-radius: 8px;
    background: var(--cvf-card);
    color: var(--cvf-primary);
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    transition: background .2s, border-color .2s;
    font-family: inherit;
}
.cv-vault-wrap .cli-voir-plus:hover {
    background: rgba(var(--cvf-primary-rgb), 0.04);
    border-color: rgba(var(--cvf-primary-rgb), 0.2);
}


.cv-vault-wrap .cli-empty {
    padding: 24px 20px;
    text-align: center;
    color: var(--cvf-text-muted);
    font-size: 13px;
}


.cv-vault-wrap .cli-item {
    display: flex;
    align-items: center !important;
    gap: 12px !important;
    padding: 10px 16px !important;
    margin: 0 !important;
    border-bottom: 1px solid var(--cvf-border) !important;
    border-top: none !important;
    border-left: none !important;
    border-right: none !important;
    border-radius: 0 !important;
    cursor: pointer;
    transform: none !important;
    box-shadow: none !important;
    line-height: 1.4 !important;
}

.cv-vault-wrap .cli-item.cli-item-hidden,
.cv-vault-wrap .cli-act-item.cli-item-hidden {
    display: none !important;
}
.cv-vault-wrap .cli-block.cli-expanded .cli-item.cli-item-hidden {
    display: flex !important;
}
.cv-vault-wrap .cli-block.cli-expanded .cli-act-item.cli-item-hidden {
    display: flex !important;
}
.cv-vault-wrap .cli-item:last-child { border-bottom: none; }
.cv-vault-wrap .cli-item-icon {
    width: 28px; height: 28px; border-radius: 6px;
    display: flex; align-items: center; justify-content: center;
    flex-shrink: 0;
    color: var(--cvf-text-muted);
    opacity: 0.75;
}
.cv-vault-wrap .cli-item-icon svg {
    width: 14px; height: 14px;
    stroke-width: 1.5;
}
.cv-vault-wrap .cli-item-body { flex: 1; min-width: 0; }
.cv-vault-wrap .cli-item-name {
    font-size: 13px !important; font-weight: 600 !important; color: var(--cvf-text) !important;
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
    transform: none !important; letter-spacing: normal !important;
    padding: 0 !important; margin: 0 !important;
}
.cv-vault-wrap .cli-item-meta {
    font-size: 11px !important; color: var(--cvf-text-muted) !important; margin-top: 2px !important;
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
    transform: none !important; letter-spacing: normal !important;
    padding: 0 !important; margin-bottom: 0 !important; margin-left: 0 !important; margin-right: 0 !important;
}


.cv-vault-wrap .cli-badge {
    padding: 3px 10px; border-radius: 20px; font-size: 10px; font-weight: 700;
    flex-shrink: 0; text-transform: uppercase; letter-spacing: 0.3px;
}
.cv-vault-wrap .cli-badge-new { background: rgba(39,174,96,.12); color: var(--cvf-success); }


.cv-vault-wrap .cli-act-item {
    display: flex; gap: 10px !important; padding: 10px 16px !important;
    margin: 0 !important;
    border-bottom: 1px solid var(--cvf-border) !important;
    border-top: none !important; border-left: none !important; border-right: none !important;
    border-radius: 0 !important;
    transform: none !important; box-shadow: none !important;
    line-height: 1.4 !important;
}
.cv-vault-wrap .cli-act-item:last-child { border-bottom: none; }
.cv-vault-wrap .cli-act-item.cv-dashboard-clickable { cursor: pointer; }

.cv-vault-wrap .cli-item,
.cv-vault-wrap .cli-act-item {
    transition: background .2s ease !important;
}
.cv-vault-wrap .cli-item:hover {
    background: rgba(var(--cvf-primary-rgb), 0.04) !important;
}
.cv-vault-wrap .cli-act-item.cv-dashboard-clickable:hover {
    background: rgba(var(--cvf-primary-rgb), 0.04) !important;
}

.cv-vault-wrap .cli-item,
.cv-vault-wrap .cli-item *,
.cv-vault-wrap .cli-act-item,
.cv-vault-wrap .cli-act-item * {
    transition-property: background-color, background !important;
    transition-duration: .2s !important;
}
.cv-vault-wrap .cli-act-dot {
    width: 8px; height: 8px; border-radius: 50%; flex-shrink: 0; margin-top: 5px;
    box-shadow: 0 0 0 2px rgba(var(--cvf-primary-rgb), 0.06);
}
.cv-vault-wrap .cli-act-text { font-size: 13px !important; color: var(--cvf-text) !important; line-height: 1.5 !important; font-weight: 500 !important; transform: none !important; padding: 0 !important; margin: 0 !important; }
.cv-vault-wrap .cli-act-snippet { font-size: 12px !important; color: var(--cvf-text-muted) !important; margin-top: 2px !important; transform: none !important; padding: 0 !important; margin-bottom: 0 !important; }
.cv-vault-wrap .cli-act-time { font-size: 11px !important; color: var(--cvf-text-muted) !important; margin-top: 2px !important; font-variant-numeric: tabular-nums; transform: none !important; padding: 0 !important; margin-bottom: 0 !important; }


.cv-vault-wrap .cli-act-item-rich {
    align-items: center !important;
    gap: 12px !important;
    padding: 12px 16px !important;
}
.cv-vault-wrap .cli-act-type-icon {
    width: 36px; height: 36px; border-radius: 10px;
    display: flex; align-items: center; justify-content: center;
    font-size: 18px; flex-shrink: 0;
}
.cv-vault-wrap .cli-act-content {
    flex: 1; min-width: 0;
}
.cv-vault-wrap .cli-act-top-row {
    display: flex; align-items: center; gap: 8px;
    flex-wrap: wrap; margin-bottom: 3px;
}
.cv-vault-wrap .cli-act-badge {
    font-size: 10px !important; font-weight: 600; text-transform: uppercase;
    letter-spacing: 0.03em; padding: 2px 7px; border-radius: 4px;
    line-height: 1.4; white-space: nowrap;
}
.cv-vault-wrap .cli-act-action {
    font-size: 11px !important; color: var(--cvf-text) !important;
    font-weight: 600;
}
.cv-vault-wrap .cli-act-author {
    font-size: 11px !important; color: var(--cvf-text-muted) !important;
    font-weight: 500;
}
.cv-vault-wrap .cli-act-date {
    font-size: 11px !important; color: var(--cvf-text-muted) !important;
    margin-left: auto; white-space: nowrap;
    font-variant-numeric: tabular-nums;
}
.cv-vault-wrap .cli-act-item-rich .cli-act-text {
    font-size: 13px !important; font-weight: 500 !important;
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.cv-vault-wrap .cli-act-item-rich .cli-act-snippet {
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.cv-vault-wrap .cli-act-arrow {
    font-size: 18px; color: var(--cvf-text-muted); flex-shrink: 0;
    opacity: 0; transition: opacity .2s;
}
.cv-vault-wrap .cli-act-item-rich.cv-dashboard-clickable:hover .cli-act-arrow {
    opacity: 1;
}


.cv-vault-wrap .cli-act-filter-wrap {
    display: inline-flex; gap: 0; margin-right: 6px;
    background: rgba(var(--cvf-primary-rgb), 0.06);
    border-radius: 6px; padding: 2px;
    flex-shrink: 0;
}
.cv-vault-wrap .cli-act-filter-btn {
    font-size: 11px !important; font-weight: 600;
    padding: 3px 9px; border: none; border-radius: 5px;
    background: transparent; color: var(--cvf-text-muted);
    cursor: pointer; transition: background .2s, color .2s;
    white-space: nowrap; line-height: 1.4;
    font-family: inherit;
}
.cv-vault-wrap .cli-act-filter-btn.active {
    background: var(--cvf-primary); color: #fff;
}
.cv-vault-wrap .cli-act-filter-btn:not(.active):hover {
    background: rgba(var(--cvf-primary-rgb), 0.1);
    color: var(--cvf-text);
}
.cv-vault-wrap .cli-act-item-rich.cli-act-filtered-out {
    display: none !important;
}


.cv-vault-wrap .cli-settings-card {
    background: var(--cvf-card); border: 1.5px solid var(--cvf-border);
    border-radius: var(--cvf-radius); box-shadow: var(--cvf-shadow);
    padding: 22px; margin-bottom: 18px; transition: border-color .2s, box-shadow .2s;
}
.cv-vault-wrap .cli-settings-card:hover { border-color: rgba(var(--cvf-primary-rgb), 0.2); box-shadow: 0 4px 16px rgba(0,0,0,.06); }
.cv-vault-wrap .cli-settings-card h3 {
    font-size: 16px !important; color: var(--cvf-primary) !important;
    margin: 0 0 14px !important; display: flex; align-items: center; gap: 8px;
}


.cv-vault-wrap .cv-settings-hint {
    font-size: 12px; color: var(--cvf-text-muted); margin: 0 0 14px;
}


.cv-vault-wrap .cv-tag-item {
    display: flex; align-items: center; gap: 6px;
    padding: 8px 14px; background: var(--cvf-hover-bg, #f8fafc);
    border: 1px solid var(--cvf-border); border-radius: 8px; margin-bottom: 8px;
}
.cv-vault-wrap .cv-tag-item-count {
    font-size: 11px; color: var(--cvf-text-muted);
}
.cv-vault-wrap .cv-tag-item-actions {
    display: flex; gap: 4px; margin-left: auto;
}
.cv-vault-wrap .cv-tag-rename,
.cv-vault-wrap .cv-tag-delete {
    background: none; border: none; cursor: pointer;
    font-size: 12px; padding: 2px 4px; border-radius: 4px;
    transition: background var(--cvf-transition, 0.15s ease);
    line-height: 1;
}
.cv-vault-wrap .cv-tag-rename:hover { background: rgba(var(--cvf-primary-rgb), 0.08); }
.cv-vault-wrap .cv-tag-delete:hover { background: rgba(231, 76, 60, 0.08); }


.cv-vault-wrap .cv-export-sections {
    margin-bottom: 16px;
}
.cv-vault-wrap .cv-export-select-all {
    display: flex; align-items: center; gap: 8px;
    padding: 10px 14px; margin-bottom: 10px;
    font-size: 13px; font-weight: 600; color: var(--cvf-text);
    cursor: pointer; user-select: none;
    border-bottom: 1px solid var(--cvf-separator, #f0f1f3);
}

.cv-vault-wrap .cv-export-toolbar {
    display: flex; justify-content: flex-end; margin-bottom: 12px;
}
.cv-vault-wrap .cv-export-select-toggle {
    background: none; border: none; color: var(--cvf-primary-light, #2a5298); font-size: 13px;
    cursor: pointer; padding: 4px 0; font-weight: 500;
}
.cv-vault-wrap .cv-export-select-toggle:hover { text-decoration: underline; }
.cv-vault-wrap .cv-export-grid {
    display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 10px;
    align-items: stretch;
}
.cv-vault-wrap .cv-export-card {
    position: relative; border-radius: 10px; padding: 14px 12px 12px;
    cursor: pointer; user-select: none; transition: all 0.2s ease;
    border: 2px solid transparent; background: var(--cvf-hover-bg, #f8f9fb);
    
    display: flex; flex-direction: column; min-height: 102px; height: 100%;
}
.cv-vault-wrap .cv-export-card-on {
    border-color: var(--cvf-primary, #1e3a5f);
    background: rgba(var(--cvf-primary-rgb, 30,58,95), 0.04);
}
.cv-vault-wrap .cv-export-card:hover { box-shadow: 0 2px 8px rgba(0,0,0,0.06); }
.cv-vault-wrap .cv-export-card-input { position: absolute; opacity: 0; pointer-events: none; }
.cv-vault-wrap .cv-export-card-header {
    display: flex; align-items: center; justify-content: space-between; margin-bottom: 10px;
}
.cv-vault-wrap .cv-export-card-icon { font-size: 22px; line-height: 1; }
.cv-vault-wrap .cv-export-card-toggle {
    width: 36px; height: 20px; border-radius: 10px; position: relative;
    flex-shrink: 0; transition: background 0.2s;
}
.cv-vault-wrap .cv-export-card-toggle::after {
    content: ''; position: absolute; top: 2px; left: 2px; width: 16px; height: 16px;
    border-radius: 50%; background: #fff; transition: transform 0.2s; box-shadow: 0 1px 3px rgba(0,0,0,0.18);
}
.cv-vault-wrap .cv-export-card-toggle.toggle-on { background: #27ae60; }
.cv-vault-wrap .cv-export-card-toggle.toggle-on::after { transform: translateX(16px); }
.cv-vault-wrap .cv-export-card-toggle.toggle-off { background: #d0d5dd; }
.cv-vault-wrap .cv-export-card-body { display: flex; flex-direction: column; gap: 2px; flex: 1 1 auto; justify-content: center; }
.cv-vault-wrap .cv-export-card-title {
    font-size: 13px; font-weight: 600; color: var(--cvf-text, #2c3e50); line-height: 1.3;
}
.cv-vault-wrap .cv-export-card-count {
    font-size: 12px; color: var(--cvf-text-muted, #5a6c7d); font-weight: 500;
}
.cv-vault-wrap .cv-export-card-breakdown {
    font-size: 10.5px; color: var(--cvf-text-muted, #5a6c7d); opacity: 0.7; line-height: 1.4;
}
.cv-vault-wrap .cv-export-bd-sep { margin: 0 3px; }
@media (max-width: 480px) {
    .cv-vault-wrap .cv-export-grid { grid-template-columns: repeat(2, 1fr); }
}
.cv-vault-wrap .cv-export-actions {
    display: flex; gap: 10px; flex-wrap: wrap;
}




.cv-vault-wrap .cv-profile-section {
    display: grid; grid-template-columns: 150px minmax(0, 1fr); gap: 6px 26px; align-items: start;
}
.cv-vault-wrap .cv-profile-avatar-wrap {
    grid-row: 1 / span 2;
    display: flex; flex-direction: column; align-items: center; gap: 8px;
    padding-bottom: 0; border-bottom: none;
}
.cv-vault-wrap .cv-profile-section > .cv-btn-export {
    grid-column: 2; justify-self: end; width: auto; padding: 10px 24px; margin-top: 4px;
}


.cv-vault-wrap .cv-profile-section > .cv-inline-confirm { grid-column: 1 / -1; justify-self: stretch; width: 100%; box-sizing: border-box; margin: 6px 0 0; }
@media (max-width: 760px) {
    .cv-vault-wrap .cv-profile-section { grid-template-columns: 1fr; }
    .cv-vault-wrap .cv-profile-avatar-wrap { grid-row: auto; }
    .cv-vault-wrap .cv-profile-section > .cv-btn-export { grid-column: 1; justify-self: stretch; }
}
.cv-vault-wrap .cv-profile-avatar {
    position: relative; width: 80px; height: 80px; border-radius: 50%;
    overflow: hidden; cursor: pointer;
    box-shadow: 0 2px 12px rgba(0,0,0,0.1);
}
.cv-vault-wrap .cv-profile-avatar img {
    position: absolute !important; top: 0 !important; left: 0 !important;
    width: 80px !important; height: 80px !important;
    object-fit: cover !important; border-radius: 50% !important;
}

.cv-vault-wrap .cv-profile-avatar-initials {
    position: absolute; top: 0; left: 0;
    width: 100%; height: 100%;
    display: flex; align-items: center; justify-content: center;
    border-radius: 50%;
    color: #fff; font-size: 28px; font-weight: 700;
    letter-spacing: 1px; line-height: 1;
    user-select: none;
    z-index: 1;
}
.cv-vault-wrap .cv-profile-avatar .cv-profile-avatar-img {
    z-index: 2;
    opacity: 0;
    transition: opacity 0.18s ease;
}
.cv-vault-wrap .cv-profile-avatar .cv-profile-avatar-img.cv-avatar-loaded {
    opacity: 1;
}
.cv-vault-wrap .cv-profile-avatar-overlay { z-index: 3; }
.cv-vault-wrap .cv-profile-avatar-overlay {
    position: absolute; inset: 0;
    background: rgba(0,0,0,0.5); color: #fff;
    display: flex; flex-direction: column; align-items: center; justify-content: center;
    gap: 2px; opacity: 0; transition: opacity 0.2s; font-size: 11px; font-weight: 600;
}
.cv-vault-wrap .cv-profile-avatar:hover .cv-profile-avatar-overlay { opacity: 1; }
.cv-vault-wrap .cv-profile-avatar-hint {
    font-size: 11px; color: var(--cvf-text-muted);
}
.cv-vault-wrap .cv-profile-fields {
    
    display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px 16px;
}
@media (max-width: 760px) { .cv-vault-wrap .cv-profile-fields { grid-template-columns: 1fr; } }
.cv-vault-wrap .cv-profile-field {
    display: flex; flex-direction: column; gap: 4px;
}
.cv-vault-wrap .cv-profile-label {
    font-size: 12px; font-weight: 600; color: var(--cvf-text-muted);
    text-transform: uppercase; letter-spacing: 0.3px;
}
.cv-vault-wrap .cv-profile-input {
    padding: 10px 14px; border: 1.5px solid var(--cvf-border);
    border-radius: 8px; font-size: 14px; background: #fff;
    color: var(--cvf-text); transition: border-color 0.15s;
    font-family: inherit;
}
.cv-vault-wrap .cv-profile-input:focus {
    border-color: var(--cvf-primary); outline: none;
    box-shadow: 0 0 0 3px rgba(var(--cvf-primary-rgb), 0.1);
}
.cv-vault-wrap .cv-profile-value {
    font-size: 14px; color: var(--cvf-text); padding: 10px 0;
}
.cv-vault-wrap .cv-profile-hint {
    font-size: 11px; color: var(--cvf-text-muted); font-style: italic;
}



.cv-vault-wrap .cv-theme-picker {
    display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 14px; margin: 4px 0 20px;
}
.cv-vault-wrap .cv-theme-swatch {
    display: flex; flex-direction: column; align-items: center; gap: 10px;
    padding: 22px 16px; border: 2px solid var(--cvf-border);
    border-radius: 16px; background: #fff; cursor: pointer;
    transition: all 0.15s; min-width: 0;
}
.cv-vault-wrap .cv-theme-swatch:hover {
    border-color: var(--cvf-primary-light); transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0,0,0,0.08);
}
.cv-vault-wrap .cv-theme-swatch.active {
    border-color: var(--cvf-primary); background: rgba(var(--cvf-primary-rgb), 0.04);
    box-shadow: 0 0 0 3px rgba(var(--cvf-primary-rgb), 0.12);
}
.cv-vault-wrap .cv-theme-swatch-color {
    width: 54px; height: 54px; border-radius: 50%;
    box-shadow: 0 3px 10px rgba(0,0,0,0.18);
}
.cv-vault-wrap .cv-theme-swatch-label {
    font-size: 13px; font-weight: 700; color: var(--cvf-text);
}
.cv-vault-wrap .cv-theme-swatch.active .cv-theme-swatch-label {
    color: var(--cvf-primary);
}


@media (max-width: 600px) {
    .cv-vault-wrap .cv-theme-picker { gap: 8px; }
    .cv-vault-wrap .cv-theme-swatch { min-width: 60px; padding: 8px 10px; }
    .cv-vault-wrap .cv-export-actions { flex-direction: column; }
    .cv-vault-wrap .cv-export-actions .cv-btn-export,
    .cv-vault-wrap .cv-export-actions .cv-btn-secondary { width: 100%; justify-content: center; }
}




@media(max-width:768px){
    .cv-vault-wrap .dtool{flex-direction:column;align-items:flex-start}
    .cv-vault-wrap .dsrch{width:100%}
    .cv-vault-wrap .fiches-grid,.cv-vault-wrap .media-grid{grid-template-columns:1fr}
    .cv-vault-wrap .cli-dash{grid-template-columns:repeat(2,1fr)}
    .cv-vault-wrap .note-input{flex-direction:column}
    .cv-vault-wrap .note-field{width:100%}
    .cv-vault-wrap .note-send{width:100%}
    .cv-vault-wrap .cv-form-row{flex-direction:column}
    .cv-vault-wrap .cv-form-row>*{min-width:0}
    .cv-vault-wrap .link-item{flex-direction:column;align-items:flex-start;gap:10px}
    .cv-vault-wrap .link-actions{width:100%;justify-content:flex-end}
    .cv-vault-wrap .cv-filter-bar{flex-direction:column;align-items:flex-start}
    .cv-vault-wrap .dtbl{font-size:12px}
    .cv-vault-wrap .dtbl th,.cv-vault-wrap .dtbl td{padding:8px 10px}
}

@media(max-width:480px){
    .cv-vault-wrap .cli-welcome-row{flex-direction:column;gap:8px}
    .cv-vault-wrap .cli-welcome-chip{width:100%;justify-content:center}
    .cv-vault-wrap .dact-btn{width:24px;height:24px;font-size:11px}
    .cv-vault-wrap .media-preview{height:120px}
}






.cv-media-header-btns {
    display: flex !important; gap: 8px; flex-wrap: wrap;
}
.cv-media-header-btns .cv-add-btn {
    display: inline-flex; align-items: center; gap: 5px;
    padding: 7px 14px; border-radius: 8px; font-size: 12px; font-weight: 600;
    cursor: pointer; transition: all .15s; border: 1.5px solid var(--cvf-border);
    background: var(--cvf-card); color: var(--cvf-text); font-family: inherit;
    white-space: nowrap;
}
.cv-media-header-btns .cv-add-btn:hover {
    border-color: var(--cvf-primary); color: var(--cvf-primary); background: #f0f7ff;
}
.cv-media-header-btns .cv-add-btn.cv-header-record-btn {
    background: linear-gradient(135deg, #e53935 0%, #b91c1c 100%) !important;
    color: #fff !important; border-color: transparent !important;
    box-shadow: 0 2px 8px rgba(220,38,38,.25);
    text-shadow: 0 1px 2px rgba(0,0,0,.2);
}
.cv-media-header-btns .cv-add-btn.cv-header-record-btn:hover {
    background: linear-gradient(135deg, #ef4444 0%, #e53935 100%) !important;
    box-shadow: 0 4px 12px rgba(220,38,38,.35);
    transform: translateY(-1px); color: #fff !important; border-color: transparent !important;
}
.cv-media-header-btns .cv-header-embed-btn { border-color: var(--cvf-accent); color: var(--cvf-accent); }
.cv-media-header-btns .cv-header-embed-btn:hover { background: #fff8f0; }
@media (max-width: 600px) {
    .cv-media-header-btns { gap: 4px; }
    .cv-media-header-btns .cv-add-btn { padding: 5px 10px; font-size: 11px; }
}


.cv-front-upload-zone {
    border: 2px dashed var(--cvf-border); border-radius: 12px;
    padding: 24px; margin-bottom: 16px; background: var(--cvf-bg);
    transition: border-color .2s, background .2s;
}
.cv-front-upload-zone.dragover { border-color: var(--cvf-primary); background: #f0f7ff; }
.cv-upload-dropzone {
    text-align: center; padding: 32px 20px; cursor: pointer;
    color: var(--cvf-text-muted); font-size: 14px;
    display: flex; flex-direction: column; align-items: center; gap: 8px;
}
.cv-upload-dropzone:hover { color: var(--cvf-primary); }
.cv-upload-dropzone-icon {
    font-size: 40px; display: block; margin-bottom: 4px;
    filter: grayscale(0.3);
}
.cv-upload-dropzone p {
    margin: 0; font-size: 14px; color: var(--cvf-text); font-weight: 500;
}
.cv-upload-dropzone-browse {
    display: inline-flex; align-items: center; padding: 8px 20px;
    background: var(--cvf-primary); color: #fff; border-radius: 8px;
    font-weight: 600; font-size: 13px; cursor: pointer;
    transition: background .15s, transform .15s;
    box-shadow: 0 2px 6px rgba(30,58,95,.2);
}
.cv-upload-dropzone-browse:hover {
    background: #152d4a; transform: translateY(-1px);
}
.cv-upload-dropzone-hint {
    display: block; font-size: 11px; color: var(--cvf-text-muted);
    margin-top: 4px; font-style: italic;
}

.cv-upload-error-msg {
    padding: 10px 14px; margin: 10px 0 0;
    background: #fef2f2; color: #991b1b;
    border: 1.5px solid #fecaca; border-radius: 10px;
    font-size: 12px; font-weight: 500; line-height: 1.5;
}

.cv-upload-file-list { display: flex; flex-direction: column; gap: 12px; margin: 16px 0 0; }

.cv-mu-counter {
    font-size: 12px; font-weight: 600; color: var(--cvf-text-muted);
    padding: 4px 12px; background: var(--cvf-bg-alt, #f8fafc);
    border-radius: 6px; display: inline-block; margin-bottom: 4px;
}



.cv-mu-card {
    background: var(--cvf-card); border: 1.5px solid var(--cvf-border);
    border-radius: 12px; overflow: visible; transition: border-color .15s;
}
.cv-mu-card:hover { border-color: var(--cvf-primary); }
.cv-mu-card-top {
    display: flex; align-items: center; justify-content: space-between;
    padding: 12px 14px; background: var(--cvf-bg-alt, #f8fafc);
    border-bottom: 1px solid var(--cvf-border);
}
.cv-mu-card-info { display: flex; align-items: center; gap: 10px; min-width: 0; flex: 1; }
.cv-mu-card-icon { font-size: 22px; flex-shrink: 0; }
.cv-mu-card-meta { min-width: 0; }
.cv-mu-card-filename {
    display: block; font-weight: 600; font-size: 13px;
    color: var(--cvf-text); white-space: nowrap;
    overflow: hidden; text-overflow: ellipsis; max-width: 220px;
}
.cv-mu-card-details {
    display: block; font-size: 11px; color: var(--cvf-text-muted); margin-top: 1px;
}
.cv-mu-card-remove {
    background: none; border: none; font-size: 20px; cursor: pointer;
    color: var(--cvf-text-muted); padding: 0 4px; line-height: 1;
    flex-shrink: 0; transition: color .15s;
}
.cv-mu-card-remove:hover { color: var(--cvf-danger); }

.cv-mu-card-fields {
    padding: 12px 14px; display: flex; flex-direction: column; gap: 8px;
}
.cv-mu-input {
    width: 100%; padding: 8px 12px;
    border: 1.5px solid var(--cvf-border); border-radius: 8px;
    font-size: 13px; font-family: inherit; box-sizing: border-box;
    transition: border-color .15s; background: #fff;
}
.cv-mu-input:focus { outline: none; border-color: var(--cvf-primary); }

.cv-mu-tags-row {
    display: flex; align-items: center; gap: 6px; flex-wrap: wrap;
    padding-top: 4px;
}
.cv-mu-tags-label { font-size: 11px; font-weight: 600; color: var(--cvf-text-muted); }
.cv-mu-tag-btn {
    padding: 3px 10px; border-radius: 20px;
    font-size: 11px; font-weight: 600; cursor: pointer;
    border: 1.5px solid var(--cvf-border); background: #fff;
    color: var(--cvf-text); transition: all .15s; font-family: inherit;
}
.cv-mu-tag-btn:hover { border-color: var(--cvf-primary); }
.cv-mu-tag-btn.cv-mu-tag-active {
    background: var(--cvf-primary); color: #fff;
    border-color: var(--cvf-primary);
}

.cv-upload-actions { display: flex; gap: 10px; margin-top: 14px; }

.cv-upload-progress-bar {
    height: 8px; background: var(--cvf-border); border-radius: 4px;
    overflow: hidden; margin: 12px 0;
}
.cv-upload-progress-bar .cv-progress-fill {
    height: 100%; background: var(--cvf-primary); border-radius: 4px;
    transition: width .3s; width: 0%;
}
.cv-progress-text {
    display: block; text-align: center; font-size: 12px;
    color: var(--cvf-text-muted); margin-top: 4px; font-weight: 500;
}


.cv-front-recording-zone {
    border: 2px solid var(--cvf-border); border-radius: 14px;
    padding: 24px; margin-bottom: 16px; background: var(--cvf-card);
    transition: border-color .2s;
}

.cv-rec-zone-header {
    display: flex; align-items: center; justify-content: space-between;
    margin-bottom: 16px;
}
.cv-rec-zone-title {
    font-size: 15px; font-weight: 700; color: var(--cvf-text);
    display: flex; align-items: center; gap: 6px;
}
.cv-rec-pulse { animation: cvRecPulse 1.5s ease-in-out infinite; }
@keyframes cvRecPulse { 0%,100% { opacity:1; } 50% { opacity:.5; } }

.cv-front-recording-zone .cv-record-modes {
    display: flex; gap: 12px; justify-content: center; margin-bottom: 0;
}
.cv-front-recording-zone .cv-record-mode-btn {
    display: flex; flex-direction: column; align-items: center; gap: 6px;
    padding: 20px 28px; border: 2px solid var(--cvf-border); border-radius: 14px;
    background: #fff; cursor: pointer; transition: all 0.2s; min-width: 120px;
    font-family: inherit;
}
.cv-front-recording-zone .cv-record-mode-btn:hover {
    border-color: var(--cvf-primary); background: #f0f7ff;
    transform: translateY(-2px); box-shadow: 0 4px 12px rgba(30,58,95,.1);
}
.cv-front-recording-zone .cv-record-mode-btn.active {
    border-color: var(--cvf-primary); background: #e8f0fe;
    color: var(--cvf-primary); box-shadow: 0 4px 12px rgba(30,58,95,.15);
}
.cv-rec-mode-icon { font-size: 28px; }
.cv-rec-mode-label { font-size: 14px; font-weight: 700; }
.cv-front-recording-zone .cv-record-mode-btn small {
    font-size: 11px; color: var(--cvf-text-muted);
}

.cv-front-recording-zone .cv-record-actions {
    display: flex; gap: 10px; justify-content: center; margin-top: 18px;
    flex-wrap: wrap;
}
.cv-rec-btn {
    display: inline-flex; align-items: center; gap: 6px;
    padding: 12px 24px; border-radius: 10px; font-size: 14px;
    font-weight: 700; cursor: pointer; transition: all 0.2s;
    border: none; font-family: inherit;
}
.cv-rec-btn-start {
    background: linear-gradient(135deg, #e53935 0%, #b91c1c 100%);
    color: #fff; box-shadow: 0 4px 14px rgba(229,57,53,.35);
    font-size: 15px; padding: 14px 32px;
}
.cv-rec-btn-start:hover {
    background: linear-gradient(135deg, #ef4444 0%, #e53935 100%);
    box-shadow: 0 6px 20px rgba(229,57,53,.45); transform: translateY(-1px);
}
.cv-rec-btn-dot {
    width: 12px; height: 12px; border-radius: 50%;
    background: #fff; display: inline-block;
    animation: cvRecDotPulse 1s ease-in-out infinite;
}
@keyframes cvRecDotPulse { 0%,100% { opacity:1; } 50% { opacity:.5; } }
.cv-rec-btn-stop {
    background: #333; color: #fff;
    box-shadow: 0 2px 8px rgba(0,0,0,.2);
}
.cv-rec-btn-stop:hover { background: #555; }
.cv-rec-btn-retry {
    background: #f5f5f5; color: #555; border: 1.5px solid var(--cvf-border);
}
.cv-rec-btn-retry:hover { background: #eee; }
.cv-rec-btn-cancel {
    background: none; color: var(--cvf-text-muted); border: 1.5px solid var(--cvf-border);
}
.cv-rec-btn-cancel:hover { border-color: var(--cvf-danger); color: var(--cvf-danger); }
.cv-rec-btn-save {
    background: linear-gradient(135deg, var(--cvf-primary) 0%, #152d4a 100%);
    color: #fff; box-shadow: 0 4px 14px rgba(30,58,95,.3);
    font-size: 15px; padding: 14px 32px;
}
.cv-rec-btn-save:hover {
    box-shadow: 0 6px 20px rgba(30,58,95,.4); transform: translateY(-1px);
}
.cv-rec-btn-save:disabled { opacity: 0.5; cursor: not-allowed; transform: none; }

.cv-front-recording-zone .cv-record-note { margin-top: 16px; }
.cv-rec-note-fields { display: flex; flex-direction: column; gap: 10px; }
.cv-rec-note-field label {
    display: block; font-size: 12px; font-weight: 600;
    color: var(--cvf-text-muted); margin-bottom: 4px;
}
.cv-rec-note-field input,
.cv-rec-note-field textarea {
    width: 100%; padding: 9px 12px; border: 1.5px solid var(--cvf-border);
    border-radius: 8px; font-size: 13px; font-family: inherit;
    box-sizing: border-box; background: #fff; transition: border-color .15s;
}
.cv-rec-note-field input:focus,
.cv-rec-note-field textarea:focus { outline: none; border-color: var(--cvf-primary); }
.cv-rec-tags-row {
    display: flex; align-items: center; gap: 6px; flex-wrap: wrap;
    margin-top: 10px; padding-top: 10px;
    border-top: 1px solid var(--cvf-border);
}
.cv-rec-tag-btn { font-family: inherit; }

@media (max-width: 600px) {
    .cv-front-recording-zone .cv-record-modes { flex-direction: column; gap: 8px; }
    .cv-front-recording-zone .cv-record-mode-btn { min-width: auto; flex-direction: row; padding: 14px 18px; }
    .cv-rec-btn { padding: 10px 18px; font-size: 13px; }
    .cv-rec-btn-start, .cv-rec-btn-save { padding: 12px 24px; font-size: 14px; }
}


.cv-embed-form {
    border: 1.5px solid var(--cvf-border); border-radius: 12px;
    padding: 12px; margin-bottom: 16px; background: var(--cvf-card);
}
.cv-embed-form .cv-card-form-row {
    margin-bottom: 12px;
}
.cv-embed-form .cv-card-form-row label {
    display: block; font-size: 12px; font-weight: 600; color: var(--cvf-text-muted); margin-bottom: 4px;
}
.cv-embed-form .cv-card-form-row input,
.cv-embed-form .cv-card-form-row textarea,
.cv-embed-form .cv-card-form-row select {
    width: 100%; padding: 9px 12px; border: 1.5px solid var(--cvf-border); border-radius: 8px;
    font-size: 13px; font-family: inherit; box-sizing: border-box; background: #fff;
}
.cv-embed-form .cv-card-form-row input:focus,
.cv-embed-form .cv-card-form-row textarea:focus,
.cv-embed-form .cv-card-form-row select:focus { outline: none; border-color: var(--cvf-primary); }

.cv-select-wrapper {
    position: relative; display: block;
}
.cv-select-wrapper select {
    appearance: none; -webkit-appearance: none; -moz-appearance: none;
    padding-right: 36px !important; cursor: pointer;
}
.cv-select-arrow {
    position: absolute; right: 10px; top: 50%; transform: translateY(-50%);
    pointer-events: none; font-size: 16px; color: var(--cvf-text-muted);
}

.cv-lang-prefs .cv-select-wrapper { display: block; }
.cv-lang-select {
    width: 100%;
    padding: 11px 40px 11px 14px;
    border: 1.5px solid var(--cvf-border);
    border-radius: 10px;
    font-size: 14px;
    font-family: inherit;
    line-height: 1.3;
    color: var(--cvf-text);
    background: #fff;
    cursor: pointer;
    box-sizing: border-box;
    appearance: none; -webkit-appearance: none; -moz-appearance: none;
    transition: border-color .15s ease, box-shadow .15s ease;
}
.cv-lang-select:hover { border-color: var(--cvf-primary); }
.cv-lang-select:focus {
    outline: none;
    border-color: var(--cvf-primary);
    box-shadow: 0 0 0 3px rgba(var(--cvf-primary-rgb), .14);
}

.cv-embed-url-hint {
    display: block; font-size: 11px; color: var(--cvf-text-muted); margin-top: 4px;
    font-style: italic;
}
.cv-embed-form .cv-form-tags-row {
    display: flex; align-items: center; gap: 8px; flex-wrap: wrap; margin-bottom: 12px;
}
.cv-embed-form .cv-form-tags-row label { font-size: 12px; font-weight: 600; color: var(--cvf-text-muted); }
.cv-embed-form .cv-embed-form-message {
    padding: 8px 14px; border-radius: 8px; font-size: 13px; margin-bottom: 10px;
    background: #f8d7da; color: #721c24;
}
.cv-embed-form .cv-embed-form-message.cv-embed-form-success {
    background: #d4edda; color: #155724; border: 1px solid #c3e6cb;
}
.cv-embed-form .cv-embed-form-message.cv-embed-form-error {
    background: #f8d7da; color: #721c24; border: 1px solid #f5c6cb;
}

.cv-vault-wrap .cv-field-readonly,
.cv-vault-wrap textarea.cv-field-readonly,
.cv-vault-wrap input.cv-field-readonly {
    background: #e9ecef !important; color: #6c757d !important;
    cursor: not-allowed; opacity: 0.7;
}



.cv-lightbox {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    z-index: var(--cvf-z-overlay);
    display: flex;
    align-items: center;
    justify-content: center;
    transform: none !important;
}
.cv-lightbox-overlay {
    position: absolute; top: 0; left: 0; right: 0; bottom: 0;
    background: rgba(0,0,0,.85); cursor: pointer;
}
.cv-lightbox-content {
    position: relative; z-index: 2; width: 90%; max-width: 1100px;
    max-height: 90vh; display: flex; flex-direction: column;
    background: #111; border-radius: 14px; overflow: hidden;
}
.cv-lightbox-topbar {
    display: flex; align-items: center; justify-content: flex-end; gap: 10px;
    padding: 10px 16px; background: rgba(0,0,0,.5);
}
.cv-lightbox-comment-btn {
    background: none; border: 1.5px solid rgba(255,255,255,.3); border-radius: 8px;
    padding: 6px 12px; color: #fff; cursor: pointer; font-size: 16px; transition: all .15s;
}
.cv-lightbox-comment-btn:hover { background: rgba(255,255,255,.1); border-color: rgba(255,255,255,.5); }
.cv-lightbox-close {
    background: none; border: none; color: #fff; font-size: 28px; cursor: pointer;
    padding: 4px 8px; line-height: 1; transition: color .15s;
}
.cv-lightbox-close:hover { color: #ff6b6b; }
.cv-lightbox-player {
    flex: 1; display: flex; align-items: center; justify-content: center;
    overflow: auto; min-height: 300px; padding: 20px;
}
.cv-lightbox-player video { max-width: 100%; max-height: 70vh; border-radius: 8px; }
.cv-lightbox-player audio { width: 80%; max-width: 500px; }
.cv-lightbox-player iframe { width: 100%; height: 60vh; border: none; border-radius: 8px; }
.cv-lightbox-comments-sidebar {
    width: 100%; max-height: 300px; border-top: 1px solid rgba(255,255,255,.1);
    background: var(--cvf-card); display: flex; flex-direction: column; overflow: hidden;
}
.cv-lightbox-comments-sidebar .cv-comments-list {
    flex: 1; overflow-y: auto; padding: 12px; font-size: 13px;
}
.cv-lightbox-comments-sidebar .cv-comment-reply-form {
    border-top: 1px solid var(--cvf-border); padding: 10px 12px;
    display: flex; align-items: center; gap: 8px;
}
.cv-lightbox-comments-sidebar .cv-comment-reply-form textarea {
    flex: 1; padding: 8px 12px; border: 1.5px solid var(--cvf-border); border-radius: 8px;
    font-size: 13px; resize: none; box-sizing: border-box; font-family: inherit;
}
.cv-lightbox-comments-sidebar .cv-comment-reply-form textarea:focus { outline: none; border-color: var(--cvf-primary); }
.cv-lightbox-record-btn {
    background: none; border: 1.5px solid var(--cvf-border); border-radius: 50%;
    width: 36px; height: 36px; display: flex; align-items: center; justify-content: center;
    cursor: pointer; font-size: 16px; color: var(--cvf-text-muted); transition: all .15s;
}
.cv-lightbox-record-btn:hover { border-color: #e53935; color: #e53935; }


.cv-vault-wrap .cv-select-bar-content {
    display: flex; flex-direction: column; align-items: center; gap: 14px;
    padding: 24px 32px; background: #1e293b; border-radius: 16px;
    box-shadow: 0 12px 48px rgba(0,0,0,0.4); color: #fff; min-width: 320px;
}
.cv-select-bar-count { font-size: 16px; font-weight: 600; }
.cv-select-bar-chips { display: flex; flex-wrap: wrap; gap: 6px; justify-content: center; }
.cv-select-bar-reply {
    display: flex; align-items: center; gap: 8px; flex-wrap: wrap; justify-content: center;
}
.cv-select-bar-label { font-size: 12px; color: rgba(255,255,255,.6); text-transform: uppercase; font-weight: 600; }
.cv-record-reply-btn {
    padding: 8px 14px; border: 1.5px solid rgba(255,255,255,.2); border-radius: 8px;
    background: rgba(255,255,255,.05); color: #fff; cursor: pointer; font-size: 14px;
    transition: all .15s;
}
.cv-record-reply-btn:hover { background: rgba(255,255,255,.15); border-color: rgba(255,255,255,.4); }


#cv-front-load-more-embeds {
    display: block; margin: 16px auto; padding: 10px 28px;
    border: 1.5px solid var(--cvf-border); border-radius: 8px;
    background: var(--cvf-card); color: var(--cvf-text); font-size: 13px;
    font-weight: 600; cursor: pointer; transition: all .15s;
}
#cv-front-load-more-embeds:hover { border-color: var(--cvf-primary); color: var(--cvf-primary); }


.cv-lb-comment {
    padding: 8px 10px; margin-bottom: 8px; border-radius: 8px;
    background: var(--cvf-bg); border: 1px solid var(--cvf-border);
}
.cv-lb-comment-admin { border-left: 3px solid var(--cvf-primary); }
.cv-lb-comment-meta { display: flex; justify-content: space-between; margin-bottom: 4px; }
.cv-lb-comment-author { font-weight: 600; font-size: 12px; color: var(--cvf-text); }
.cv-lb-comment-date { font-size: 11px; color: var(--cvf-text-muted); }
.cv-lb-comment-text { font-size: 13px; color: var(--cvf-text); line-height: 1.5; }
.cv-lb-comment-media { margin-top: 6px; }
.cv-lb-comment-media video, .cv-lb-comment-media audio { width: 100%; max-height: 180px; border-radius: 6px; }
.cv-lb-comments-empty { text-align: center; padding: 20px; color: var(--cvf-text-muted); font-size: 13px; }

@media (min-width: 860px) {
    .cv-lightbox-content { flex-direction: row; max-width: 1200px; }
    .cv-lightbox-player { flex: 1; min-height: 400px; }
    .cv-lightbox-comments-sidebar {
        width: 320px; min-width: 320px; max-height: none;
        border-top: none; border-left: 1px solid rgba(255,255,255,.1);
    }
}


@media (max-width: 768px) {
    input[type="text"],
    input[type="search"],
    input[type="email"],
    input[type="url"],
    input[type="date"],
    input[type="number"],
    input[type="password"],
    input[type="tel"],
    textarea,
    select,
    .cv-modal-input {
        font-size: 16px !important;
    }
}


.cv-inline-confirm {
    display: flex; align-items: center; gap: 8px;
    padding: 10px 16px; margin: 12px 0; border-radius: 8px;
    font-size: 13px; font-weight: 500; line-height: 1.4;
}
.cv-inline-confirm-success {
    background: #ecfdf5; color: #065f46; border: 1px solid #a7f3d0;
}
.cv-inline-confirm-error {
    background: #fef2f2; color: #991b1b; border: 1px solid #fecaca;
}


.cv-front-color-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
    gap: 10px;
}
.cv-front-color-field {
    background: var(--cvf-card, #fff);
    border: 1px solid var(--cvf-border, #e4e8ee);
    border-radius: 8px;
    padding: 8px 10px;
}
.cv-front-color-field label {
    display: block;
    font-size: 11px;
    font-weight: 600;
    color: var(--cvf-text-muted, #5a6c7d);
    margin-bottom: 4px;
}
.cv-front-color-input-wrap {
    display: flex;
    align-items: center;
    gap: 6px;
}
.cv-front-color-input {
    width: 32px;
    height: 32px;
    border: 2px solid var(--cvf-border, #e4e8ee);
    border-radius: 6px;
    padding: 0;
    cursor: pointer;
    background: none;
}
.cv-front-color-input::-webkit-color-swatch-wrapper { padding: 2px; }
.cv-front-color-input::-webkit-color-swatch { border-radius: 3px; border: none; }
.cv-front-color-hex {
    font-size: 11px;
    font-family: monospace;
    color: var(--cvf-text-muted, #5a6c7d);
}




.cvf-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 11px 24px;
    font-size: 13px;
    font-weight: 600;
    border: none;
    border-radius: var(--cvf-radius, 12px);
    cursor: pointer;
    transition: all 0.2s ease;
    letter-spacing: 0.2px;
    position: relative;
    overflow: hidden;
    line-height: 1.4;
    font-family: inherit;
    text-decoration: none;
}
.cvf-btn::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, transparent 0%, rgba(255,255,255,0.08) 100%);
    pointer-events: none;
}
.cvf-btn .dashicons {
    font-size: 16px;
    width: 16px;
    height: 16px;
    line-height: 16px;
}
.cvf-btn:focus {
    outline: 2px solid var(--cvf-primary-light);
    outline-offset: 2px;
}


.cvf-btn-sm {
    padding: 8px 18px;
    font-size: 12.5px;
    border-radius: 8px;
}


.cvf-btn-primary {
    color: #fff;
    background: var(--cvf-primary);
    border: none;
    box-shadow: var(--cvf-shadow), 0 4px 12px rgba(var(--cvf-primary-rgb, 30,58,95), 0.18);
}
.cvf-btn-primary:hover {
    background: var(--cvf-primary-light);
    box-shadow: var(--cvf-shadow), 0 6px 20px rgba(var(--cvf-primary-rgb, 30,58,95), 0.28);
    transform: translateY(-1px);
}
.cvf-btn-primary:active {
    transform: translateY(0);
    box-shadow: 0 2px 6px rgba(var(--cvf-primary-rgb, 30,58,95), 0.15);
}


.cvf-btn-outline {
    color: var(--cvf-primary);
    background: transparent;
    border: 2px solid var(--cvf-primary);
    box-shadow: 0 2px 6px rgba(var(--cvf-primary-rgb, 30,58,95), 0.08);
}
.cvf-btn-outline:hover {
    color: #fff;
    background: var(--cvf-primary);
    box-shadow: 0 4px 14px rgba(var(--cvf-primary-rgb, 30,58,95), 0.22);
    transform: translateY(-1px);
}
.cvf-btn-outline:active {
    transform: translateY(0);
    box-shadow: 0 2px 6px rgba(var(--cvf-primary-rgb, 30,58,95), 0.12);
}


.cvf-btn-danger {
    color: #b91c1c;
    background: #fef2f2;
    border: 1px solid #fecaca;
    box-shadow: 0 1px 4px rgba(185, 28, 28, 0.06);
}
.cvf-btn-danger:hover {
    color: #fff;
    background: #dc2626;
    border-color: #dc2626;
    box-shadow: 0 4px 14px rgba(220, 38, 38, 0.25);
    transform: translateY(-1px);
}
.cvf-btn-danger:active {
    transform: translateY(0);
    background: #b91c1c;
    box-shadow: 0 2px 6px rgba(185, 28, 28, 0.15);
}
.cvf-btn-danger:focus {
    outline: 2px solid #f87171;
    outline-offset: 2px;
}


.cv-settings-toggle-arrow {
    display: inline-block;
    transition: transform 0.3s ease;
    font-size: 11px;
}
.cv-front-colors-open .cv-settings-toggle-arrow {
    transform: rotate(180deg);
}




@media (max-width: 480px) {
    .cvf-vault-container { padding: 8px !important; }
    .cvf-vault-header { flex-direction: column !important; gap: 8px !important; padding: 12px !important; }
    .cvf-vault-header-info { text-align: center; }
    .cvf-vault-title { font-size: 18px !important; }

    
    .cvf-tabs { overflow-x: auto; -webkit-overflow-scrolling: touch; flex-wrap: nowrap !important; gap: 2px !important; padding-bottom: 4px; }
    .cvf-tab { white-space: nowrap; font-size: 11px !important; padding: 8px 10px !important; flex-shrink: 0; }

    
    .cv-vault-wrap .cvf-tab, .cv-vault-wrap .cvf-btn, .cv-vault-wrap button, .cv-vault-wrap input[type="submit"], .cv-vault-wrap input[type="button"], .cv-vault-wrap .cvf-file-action {
        min-height: 44px;
    }
    


    .cv-vault-wrap .cv-agency-scope-mini,
    .cv-vault-wrap .cv-agency-scope-toggle,
    .cv-vault-wrap .cv-hero-info-btn,
    .cv-vault-wrap .cvf-home-msg-filter,
    .cv-vault-wrap .cv-home-msg-filter,
    .cv-vault-wrap .cv-tag-pill,
    .cv-vault-wrap .cv-fmsg-sender,
    .cv-vault-wrap .cv-bomv-sender,
    .cv-vault-wrap .cv-fmsg-status,
    .cv-vault-wrap .cv-fmsg-view,
    .cv-vault-wrap .cv-bomv-view,
    .cv-vault-wrap .cv-clview-btn,
    .cv-vault-wrap .cv-tab-count,
    .cv-vault-wrap .cv-tab-unread {
        min-height: 0 !important;
    }

    
    .cvf-tab-content { padding: 10px !important; }

    
    .cvf-file-card { padding: 10px !important; }
    .cvf-file-actions { flex-direction: column !important; gap: 6px !important; }
    .cvf-file-actions .cvf-btn { width: 100%; text-align: center; }

    
    .cvf-cards-grid,
    .cvf-links-grid,
    .cvf-embeds-grid { grid-template-columns: 1fr !important; gap: 8px !important; }

    
    .cvf-modal-content { width: 95vw !important; max-width: 95vw !important; margin: 10px auto !important; padding: 12px !important; max-height: 85vh !important; }
    .cvf-modal-header { flex-direction: column !important; gap: 8px !important; }
    .cvf-modal-close { position: absolute; top: 8px; right: 8px; }

    
    .cvf-upload-area { padding: 16px !important; }
    .cvf-upload-area p { font-size: 12px !important; }

    
    .cvf-settings-section { padding: 10px !important; }

    
    .cvf-notepad-message { padding: 10px !important; }

    
    .cvf-comment-form textarea { min-height: 60px !important; }

    
    .cvf-stats-row { flex-direction: column !important; gap: 6px !important; }

    
    .cvf-profile-card { flex-direction: column !important; text-align: center; gap: 10px !important; }
    .cvf-avatar-upload { margin: 0 auto; }

    
    .cvf-project-card { padding: 10px !important; }
    .cvf-request-item { padding: 8px !important; }
}


@media (min-width: 481px) and (max-width: 782px) {
    .cvf-cards-grid,
    .cvf-links-grid { grid-template-columns: repeat(2, 1fr) !important; }
    .cvf-embeds-grid { grid-template-columns: repeat(2, 1fr) !important; }
    .cvf-modal-content { width: 80vw !important; max-width: 80vw !important; }
}





.cv-front-folders-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 14px;
    padding: 10px 16px;
    margin-left: 0;
    margin-right: 0;
}
.cv-front-folder-card {
    background: var(--cv-card-bg, #fff);
    border: 1px solid var(--cv-border, rgba(255,255,255,.08));
    border-radius: 10px;
    padding: 16px 18px;
    cursor: pointer;
    transition: all .15s;
}
.cv-front-folder-card:hover {
    box-shadow: 0 4px 16px rgba(0,0,0,.08);
    transform: translateY(-1px);
}
.cv-front-folder-card .cv-folder-card-header {
    display: flex;
    align-items: center;
    gap: 12px;
}
.cv-front-folder-card .cv-folder-icon {
    width: 38px;
    height: 38px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
.cv-front-folder-card .cv-folder-card-info { flex: 1; min-width: 0; }
.cv-front-folder-card .cv-folder-card-name {
    display: block;
    font-size: 14px;
    font-weight: 600;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.cv-front-folder-card .cv-folder-card-desc {
    display: block;
    font-size: 12px;
    opacity: .6;
    margin-top: 2px;
}
.cv-front-folder-open-btn {
    width: 32px;
    height: 32px;
    border: none;
    background: transparent;
    border-radius: 6px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: .5;
    transition: all .12s;
}
.cv-front-folder-open-btn:hover { opacity: 1; background: rgba(255,255,255,.1); }
.cv-front-folder-card .cv-folder-card-meta {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 12px;
    padding-top: 10px;
    border-top: 1px solid rgba(128,128,128,.1);
    font-size: 12px;
}
.cv-front-folder-card .cv-folder-badge {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 5px 14px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .3px;
    text-transform: uppercase;
}
.cv-front-folder-card .cv-folder-status-active { background: #16a34a; color: #fff; box-shadow: 0 2px 6px rgba(22,163,74,.35); }
.cv-front-folder-card .cv-folder-status-closed { background: #2563eb; color: #fff; box-shadow: 0 2px 6px rgba(37,99,235,.35); }
.cv-front-folder-card .cv-folder-status-archived { background: #64748b; color: #fff; box-shadow: 0 2px 6px rgba(100,116,139,.25); }
.cv-front-folder-card .cv-folder-status-overdue { background: #dc2626; color: #fff; box-shadow: 0 2px 6px rgba(220,38,38,.35); animation: cv-pulse-overdue 2s ease-in-out infinite; }
@keyframes cv-pulse-overdue { 0%,100% { opacity:1; } 50% { opacity:.75; } }
.cv-front-folder-card .cv-folder-deadline {
    display: flex;
    align-items: center;
    gap: 4px;
    opacity: .5;
}
.cv-front-folder-card .cv-folder-deadline.cv-deadline-overdue {
    color: #dc2626;
    opacity: 1;
    font-weight: 700;
}
.cv-front-folder-card[data-overdue="1"] {
    border-left-color: #dc2626 !important;
    box-shadow: 0 0 0 1px rgba(220,38,38,.15), 0 2px 8px rgba(220,38,38,.1);
}
.cv-front-folder-card .cv-folder-items-count { opacity: .5; margin-left: auto; }


.cv-front-folder-detail { padding: 16px; margin-left: 0; margin-right: 0; }
.cv-front-folder-detail .cv-folder-detail-top { margin-bottom: 16px; }
.cv-front-folder-detail .cv-folder-back-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 16px;
    border: 1px solid #d1d5db;
    border-radius: 8px;
    background: #fff;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    color: #475569;
    transition: all .15s;
}
.cv-front-folder-detail .cv-folder-back-btn:hover { background: #f1f5f9; border-color: #94a3b8; color: #1e293b; }
.cv-front-folder-detail .cv-folder-detail-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 8px;
    padding-bottom: 16px;
    border-bottom: 2px solid #e8ecf0;
}
.cv-front-folder-detail .cv-folder-detail-title-wrap {
    display: flex;
    align-items: center;
    gap: 10px;
    flex: 1;
}
.cv-front-folder-detail .cv-folder-detail-icon {
    font-size: 24px;
    width: 24px;
    height: 24px;
    color: #3b82f6;
}
.cv-front-folder-detail .cv-folder-detail-header h3 {
    font-size: 22px;
    font-weight: 800;
    color: #0f172a;
    margin: 0;
    line-height: 1.3;
}
.cv-front-folder-detail .cv-folder-detail-status {
    flex-shrink: 0;
    margin-right: 4px;
}
.cv-front-folder-detail .cv-folder-detail-status .cv-folder-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 14px;
    padding: 8px 20px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .5px;
    border-radius: 24px;
}
.cv-front-folder-detail .cv-folder-status-active { background: #16a34a; color: #fff; box-shadow: 0 3px 10px rgba(22,163,74,.35); }
.cv-front-folder-detail .cv-folder-status-closed { background: #2563eb; color: #fff; box-shadow: 0 3px 10px rgba(37,99,235,.35); }
.cv-front-folder-detail .cv-folder-status-archived { background: #64748b; color: #fff; box-shadow: 0 3px 10px rgba(100,116,139,.25); }
.cv-front-folder-detail .cv-folder-detail-desc {
    font-size: 14px;
    color: #64748b;
    margin-bottom: 20px;
    padding: 12px 16px;
    background: #f8fafc;
    border-radius: 8px;
    border-left: 3px solid #93c5fd;
    line-height: 1.5;
}
.cv-front-folder-detail .cv-folder-detail-content { min-height: 100px; }
.cv-folder-content-empty {
    text-align: center;
    padding: 32px 16px;
    opacity: .4;
    font-size: 13px;
}


.cv-front-folders-grid .cv-folders-empty {
    grid-column: 1 / -1;
    text-align: center;
    padding: 48px 24px;
    opacity: .5;
}
.cv-front-folders-grid .cv-folders-empty p { margin: 10px 0 0; font-size: 14px; }

@media (max-width: 600px) {
    .cv-front-folders-grid { grid-template-columns: 1fr; }
}




.cv-folder-select {
    width: 100%;
    padding: 8px 12px;
    border: 1px solid #d1d5db;
    border-radius: 8px;
    font-size: 13px;
    color: #374151;
    background: #fff;
    cursor: pointer;
    transition: border-color 0.2s;
}
.cv-folder-select:focus {
    outline: none;
    border-color: #3b82f6;
    box-shadow: 0 0 0 3px rgba(59,130,246,0.12);
}
.cv-folder-select-inline {
    width: auto;
    min-width: 120px;
    max-width: 180px;
    padding: 6px 10px;
    font-size: 12px;
    flex-shrink: 0;
}


.cv-folder-section { margin-bottom: 20px; border: 1px solid #e8ecf0; border-radius: 10px; overflow: hidden; }
.cv-folder-section-header { display: flex; align-items: center; gap: 8px; padding: 12px 20px; background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%); font-size: 14px; font-weight: 700; color: #334155; border-bottom: 1px solid #e8ecf0; }
.cv-folder-section-body { padding: 16px 20px; }


.cv-vault-wrap .cv-folder-secbar { margin-bottom: 14px; }
.cv-vault-wrap .cv-folder-secbar .cv-fsec-count { font-size: 12.5px; color: var(--cvf-text-muted, #94a3b8); font-weight: 600; margin-left: 4px; white-space: nowrap; }
.cv-vault-wrap .cv-folder-item.cv-fmini-hidden { display: none !important; }
.cv-vault-wrap .cv-fmini-empty { padding: 14px; text-align: center; color: var(--cvf-text-muted, #94a3b8); font-size: 13px; }

.cv-vault-wrap .cv-folder-cards-grid.cv-fsec-list { grid-template-columns: 1fr; }
.cv-vault-wrap .cv-folder-links-list.cv-fsec-grid,
.cv-vault-wrap .cv-folder-notes-list.cv-fsec-grid,
.cv-vault-wrap .cv-folder-msg-list.cv-fsec-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 12px; }

.cv-vault-wrap .cv-folder-msg-list.cv-fsec-grid .cv-folder-msg-item { flex-direction: column; align-items: flex-start; }

.cv-vault-wrap .cv-folder-card-item[role="button"],
.cv-vault-wrap .cv-folder-link-item[role="button"],
.cv-vault-wrap .cv-folder-note-item[role="button"] { cursor: pointer; transition: box-shadow .12s, transform .08s, border-color .12s; }
.cv-vault-wrap .cv-folder-card-item[role="button"]:hover,
.cv-vault-wrap .cv-folder-link-item[role="button"]:hover,
.cv-vault-wrap .cv-folder-note-item[role="button"]:hover { box-shadow: 0 4px 14px rgba(15,23,42,.08); transform: translateY(-1px); }
.cv-vault-wrap .cv-folder-item .cv-fiche-tags { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 8px; }
.cv-vault-wrap .cv-folder-link-item .cv-link-title a { text-decoration: none; color: inherit; }





#cv-front-folder-detail .cv-folder-section,
#cv-front-folder-detail .cv-folder-section-body,
#cv-front-folder-detail .cv-docs-wrap { overflow: visible; }
#cv-front-folder-detail .cv-mbar { position: relative; }
#cv-front-folder-detail .cv-mbar-popover,
#cv-front-folder-detail .cv-amf-popover,
#cv-front-folder-detail .cv-mmf-popover,
#cv-front-folder-detail .cv-dmf-popover,
#cv-front-folder-detail .cv-fsec-pop {
    position: absolute !important;
    top: calc(100% + 8px) !important;
    left: auto !important; right: 0 !important; bottom: auto !important;
    z-index: 100060 !important;
}
@media (max-width: 680px) {
    #cv-front-folder-detail .cv-mbar-popover,
    #cv-front-folder-detail .cv-amf-popover,
    #cv-front-folder-detail .cv-mmf-popover,
    #cv-front-folder-detail .cv-dmf-popover,
    #cv-front-folder-detail .cv-fsec-pop { left: 0 !important; right: 0 !important; width: auto !important; }
}

.cv-vault-wrap .cv-exch-item { cursor: pointer; }
.cv-folder-cards-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 12px; }
.cv-folder-card-item { background: #fff; border: 1px solid #e8ecf0; border-radius: 8px; padding: 14px 16px; }
.cv-folder-card-title { font-weight: 700; font-size: 14px; color: #1e293b; margin-bottom: 6px; }
.cv-folder-card-content { font-size: 13px; color: #64748b; line-height: 1.5; margin-bottom: 8px; }
.cv-folder-card-meta { font-size: 11px; color: #94a3b8; }
.cv-folder-links-list { display: flex; flex-direction: column; gap: 8px; }
.cv-folder-link-item { display: flex; flex-direction: column; gap: 2px; padding: 12px 14px; border: 1px solid #f1f5f9; border-radius: 8px; }
.cv-folder-link-item:hover { border-color: #93c5fd; }
.cv-folder-link-title { font-size: 14px; font-weight: 700; color: #1e40af; text-decoration: none; }
.cv-folder-link-title:hover { text-decoration: underline; }
.cv-folder-link-desc { font-size: 13px; color: #64748b; }
.cv-folder-link-url { font-size: 11px; color: #94a3b8; word-break: break-all; }
.cv-folder-embeds-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 12px; }
.cv-folder-embed-item { background: #f8fafc; border: 1px solid #e8ecf0; border-radius: 8px; padding: 0; overflow: hidden; display: flex; flex-direction: column; }
.cv-folder-embed-thumb { position: relative; width: 100%; height: 140px; background: linear-gradient(135deg, #0f172a 0%, #1e293b 100%); display: flex; align-items: center; justify-content: center; overflow: hidden; }
.cv-folder-embed-thumb img { width: 100%; height: 100%; object-fit: cover; }
.cv-folder-embed-thumb-icon { font-size: 40px; opacity: .6; }
.cv-folder-embed-thumb-play { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 48px; height: 48px; background: rgba(255,255,255,.9); border-radius: 50%; display: flex; align-items: center; justify-content: center; box-shadow: 0 2px 12px rgba(0,0,0,.3); pointer-events: none; }
.cv-folder-embed-thumb-play::after { content: ''; display: block; width: 0; height: 0; border-style: solid; border-width: 10px 0 10px 18px; border-color: transparent transparent transparent #1e293b; margin-left: 3px; }
.cv-folder-embed-info { padding: 12px 14px; flex: 1; }
.cv-folder-embed-header strong { font-size: 14px; color: #1e293b; }
.cv-folder-embed-desc { font-size: 13px; color: #64748b; margin-top: 4px; }
.cv-folder-embed-meta { font-size: 11px; color: #94a3b8; margin-top: 6px; text-transform: capitalize; }
.cv-folder-notes-list { display: flex; flex-direction: column; gap: 8px; }
.cv-folder-note-item { padding: 12px 16px; background: #fffbeb; border: 1px solid #fde68a; border-radius: 8px; }
.cv-folder-note-text { font-size: 13px; color: #1e293b; line-height: 1.6; white-space: pre-wrap; }
.cv-folder-note-meta { font-size: 11px; color: #94a3b8; margin-top: 6px; }

.cv-folder-msg-list { display: flex; flex-direction: column; gap: 8px; }
.cv-vault-wrap .cv-folder-msg-item { display: flex; align-items: flex-start; gap: 12px; padding: 12px 16px; background: #fff; border: 1px solid #e2e8f0; border-radius: 8px; cursor: pointer; transition: box-shadow .12s, transform .08s, border-color .12s; }
.cv-vault-wrap .cv-folder-msg-item:hover { box-shadow: 0 4px 14px rgba(15,23,42,.08); transform: translateY(-1px); border-color: var(--cvf-primary, #2563eb); }
.cv-folder-msg-ico { flex: 0 0 auto; width: 34px; height: 34px; border-radius: 8px; display: flex; align-items: center; justify-content: center; background: rgba(37,99,235,.08); color: var(--cvf-primary, #2563eb); }
.cv-folder-msg-ico .dashicons { font-size: 18px; width: 18px; height: 18px; }
.cv-folder-msg-main { flex: 1 1 auto; min-width: 0; }
.cv-folder-msg-subj { font-size: 14.5px; font-weight: 600; color: #1e293b; line-height: 1.35; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cv-folder-msg-snip { font-size: 12px; color: #64748b; line-height: 1.5; margin-top: 2px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cv-folder-msg-meta { flex: 0 0 auto; font-size: 11px; color: #94a3b8; padding-top: 3px; }

.cv-folder-files-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 13px;
}
.cv-folder-files-table th {
    text-align: left;
    font-weight: 600;
    color: #64748b;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .5px;
    padding: 6px 10px 10px;
    border-bottom: 1px solid #f1f5f9;
}
.cv-folder-files-table td { padding: 10px; border-bottom: 1px solid #f8fafc; vertical-align: middle; }
.cv-folder-files-table tr:hover td { background: #fafbfd; }
.cv-folder-file-name {
    display: flex;
    align-items: center;
    gap: 8px;
    font-weight: 600;
    color: #1e293b;
}
.cv-folder-file-name .dashicons { color: #94a3b8; font-size: 16px; width: 16px; height: 16px; }
.cv-folder-file-desc { display: block; font-weight: 400; color: #94a3b8; font-size: 12px; margin-top: 2px; }
.cv-folder-file-size { color: #94a3b8; font-size: 12px; }
.cv-folder-file-date { color: #94a3b8; font-size: 12px; white-space: nowrap; }
.cv-folder-file-actions { display: flex; gap: 7px; }
.cv-folder-file-actions .cv-dact-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    border: 1px solid #e8ecf0;
    border-radius: 6px;
    background: #fff;
    cursor: pointer;
    font-size: 14px;
    text-decoration: none;
    transition: all .12s;
}
.cv-folder-file-actions .cv-dact-btn:hover { background: #f1f5f9; border-color: #93c5fd; }


.cv-folder-file-link {
    color: #1e40af;
    text-decoration: none;
    font-weight: 600;
    cursor: pointer;
}
.cv-folder-file-link:hover { text-decoration: underline; color: #1d4ed8; }


.cv-folder-embed-type-badge {
    display: inline-block;
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .5px;
    padding: 2px 8px;
    border-radius: 4px;
    background: #e0f2fe;
    color: #0369a1;
    margin-bottom: 8px;
}
.cv-folder-embed-clickable:hover {
    box-shadow: 0 4px 12px rgba(0,0,0,.08);
    transform: translateY(-1px);
    transition: all .15s;
}
.cv-folder-embed-type-icon { font-size: 18px; }


@keyframes cv-highlight-pulse {
    0%, 100% { box-shadow: none; }
    50% { box-shadow: 0 0 0 4px rgba(59,130,246,.3); }
}
.cv-highlight-pulse { animation: cv-highlight-pulse .6s ease 3; }


.cv-folder-front-toolbar {
    display: flex;
    justify-content: flex-end;
    padding: 8px 16px 0;
}



.cv-folder-suggest-modal { position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: var(--cvf-z-overlay); display: flex; align-items: center; justify-content: center; }
.cv-folder-suggest-modal-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,.5); }
.cv-folder-suggest-modal-box {
    position: relative;
    background: #fff;
    border-radius: 12px;
    padding: 28px;
    width: 90%;
    max-width: 460px;
    box-shadow: 0 20px 60px rgba(0,0,0,.2);
    

    max-height: calc(100vh - 48px);
    overflow-y: auto;
    overscroll-behavior: contain;
}
.cv-folder-suggest-modal-box h3 {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 18px;
    font-weight: 800;
    color: #0f172a;
    margin: 0 0 6px;
}
.cv-folder-suggest-modal-box h3 .dashicons { color: #f59e0b; }
.cv-folder-suggest-modal-box .description { font-size: 13px; color: #64748b; margin-bottom: 16px; }
.cv-folder-suggest-modal-box .cv-form-row { margin-bottom: 14px; }
.cv-folder-suggest-modal-box label { display: block; font-size: 13px; font-weight: 600; color: #334155; margin-bottom: 4px; }
.cv-folder-suggest-modal-box input,
.cv-folder-suggest-modal-box textarea {
    width: 100%;
    padding: 10px 12px;
    border: 1px solid #d1d5db;
    border-radius: 8px;
    font-size: 14px;
    color: #1e293b;
    box-sizing: border-box;
    transition: border-color .15s;
}
.cv-folder-suggest-modal-box input:focus,
.cv-folder-suggest-modal-box textarea:focus { outline: none; border-color: #f59e0b; box-shadow: 0 0 0 3px rgba(245,158,11,.12); }
.cv-folder-suggest-modal-box .cv-form-actions { display: flex; justify-content: flex-end; gap: 10px; margin-top: 18px; }


.cv-vault-wrap select.cv-folder-move-select {
    padding: 3px 18px 3px 6px !important;
    border: 1px solid #e8ecf0 !important;
    border-radius: 0 6px 6px 0 !important;
    font-size: 12px !important;
    color: #475569 !important;
    background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='4' viewBox='0 0 6 4'%3E%3Cpath d='M0 0l3 4 3-4z' fill='%2394a3b8'/%3E%3C/svg%3E") no-repeat right 6px center !important;
    background-size: 6px 4px !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    appearance: none !important;
    cursor: pointer !important;
    min-width: 85px !important;
    max-width: 145px !important;
    flex-shrink: 1;
    flex-grow: 0;
    margin-left: 4px !important;
    border-left: 2px solid #e2e8f0 !important;
    height: auto !important;
    line-height: 1.4 !important;
}
.cv-folder-move-select:focus { border-color: #3b82f6; outline: none; }




.cv-folder-detail-hero {
    background: linear-gradient(135deg, #f8fafc 0%, #eef2f7 100%);
    border: 1px solid var(--cvf-border, #e8ecf0);
    border-radius: var(--cvf-radius, 12px);
    padding: 20px 24px;
    margin-bottom: 20px;
}
.cv-folder-detail-hero-top {
    margin-bottom: 16px;
}
.cv-folder-detail-hero-top .cv-folder-back-btn {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 7px 16px;
    border: 1px solid var(--cvf-border, #e8ecf0);
    border-radius: 8px;
    background: #fff;
    color: var(--cvf-text-muted, #7f8c9b);
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    transition: all .15s;
    white-space: nowrap;
}
.cv-folder-detail-hero-top .cv-folder-back-btn:hover {
    border-color: var(--cvf-primary, #1e3a5f);
    color: var(--cvf-primary, #1e3a5f);
    background: #fff;
}
.cv-folder-detail-hero-main {
    display: flex;
    align-items: center;
    gap: 14px;
}
.cv-folder-detail-hero-icon {
    width: 52px;
    height: 52px;
    border-radius: 12px;
    background: #fff;
    border: 1px solid var(--cvf-border, #e8ecf0);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    color: var(--cvf-primary, #1e3a5f);
    box-shadow: 0 2px 8px rgba(0,0,0,.04);
}
.cv-folder-detail-hero-icon svg { width: 28px; height: 28px; }
.cv-folder-detail-hero-info {
    flex: 1;
    min-width: 0;
}
.cv-folder-detail-hero-info h3 {
    font-size: 20px;
    font-weight: 800;
    color: var(--cvf-text, #0f172a);
    margin: 0 0 6px;
    line-height: 1.3;
}
.cv-folder-detail-hero-meta {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}
.cv-folder-detail-hero-meta .cv-folder-detail-status { flex-shrink: 0; }
.cv-folder-detail-deadline {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 13px;
    font-weight: 600;
    color: #92400e;
    background: #fef3c7;
    padding: 4px 12px;
    border-radius: 20px;
}
.cv-folder-detail-deadline svg { width: 14px; height: 14px; flex-shrink: 0; }
.cv-folder-detail-desc {
    font-size: 14px;
    color: var(--cvf-text-muted, #64748b);
    line-height: 1.6;
    margin-top: 14px;
    padding: 12px 16px;
    background: #fff;
    border-radius: 8px;
    border-left: 3px solid var(--cvf-primary-light, #93c5fd);
}
.cv-folder-detail-hero .cv-folder-search-bar {
    margin-top: 14px;
    margin-bottom: 0;
}





.cv-vault-wrap .cv-folder-detail-hero {
    padding: 14px 18px; margin-bottom: 16px; position: relative;
    background: linear-gradient(135deg, #ffffff 0%, #f4f7fb 100%);
    border: 1px solid var(--cvf-border, #e8ecf0);
    box-shadow: 0 1px 3px rgba(16,42,76,.05);
}
.cv-vault-wrap .cv-folder-detail-hero::before {
    content: ""; position: absolute; left: 0; top: 14px; bottom: 14px; width: 3px; border-radius: 3px;
    background: var(--cvf-primary, #1e3a5f);
}


.cv-vault-wrap .cv-folder-detail-hero { text-align: center; padding: 16px 20px 18px; }
.cv-vault-wrap .cv-folder-detail-hero::before { display: none; }
.cv-vault-wrap .cv-folder-detail-hero-top { margin-bottom: 6px; text-align: left; }
.cv-vault-wrap .cv-folder-detail-hero-top .cv-folder-back-btn { padding: 5px 12px; font-size: 12.5px; }
.cv-vault-wrap .cv-folder-detail-hero-center { max-width: 660px; margin: 0 auto; }
.cv-vault-wrap .cv-folder-detail-hero-titleline { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 10px; line-height: 1; }
.cv-vault-wrap .cv-folder-detail-hero-titleline h3 { font-size: 24px; margin: 0; line-height: 1.15 !important; font-weight: 700; color: var(--cvf-text, #1f2937); }
.cv-vault-wrap .cv-folder-detail-hero-titleline .cv-folder-detail-status { display: inline-flex; align-items: center; line-height: 1; }
.cv-vault-wrap .cv-folder-detail-hero-titleline .cv-folder-badge { display: inline-flex; align-items: center; line-height: 1; font-size: 13px; padding: 5px 13px; position: relative; top: -4px; }

.cv-vault-wrap .cv-folder-detail-hero-center .cv-folder-detail-desc {
    margin-top: 4px; padding: 0; background: none; border: none;
    font-size: 13px; line-height: 1.45; color: var(--cvf-text-muted, #64748b);
}
.cv-vault-wrap .cv-folder-detail-hero-center .cv-folder-search-bar { margin: 12px auto 0; max-width: 480px; }



.cv-vault-wrap .cv-folder-exchanges { padding: 4px 2px; }
.cv-vault-wrap .cv-exch-tabs { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 14px; border-bottom: 1px solid var(--cvf-border, #eef1f5); padding-bottom: 10px; }
.cv-vault-wrap .cv-exch-tab {
    display: inline-flex; align-items: center; gap: 5px; height: 30px; padding: 0 12px;
    border: 1px solid var(--cvf-border, #e8ecf0); background: #fff; color: var(--cvf-text-muted, #64748b);
    border-radius: 8px; font-size: 12.5px; font-weight: 600; cursor: pointer; transition: all .12s;
}
.cv-vault-wrap .cv-exch-tab .dashicons { font-size: 15px; width: 15px; height: 15px; }
.cv-vault-wrap .cv-exch-tab:hover { border-color: var(--cvf-primary); color: var(--cvf-primary); }
.cv-vault-wrap .cv-exch-tab.active { background: var(--cvf-primary); border-color: var(--cvf-primary); color: #fff; }
.cv-vault-wrap .cv-folder-exchanges-client .cv-exch-tab.active { background: var(--cvf-accent); border-color: var(--cvf-accent); }
.cv-vault-wrap .cv-exch-tab-cnt { font-size: 11px; opacity: .85; }
.cv-vault-wrap .cv-exch-panel { display: none; }
.cv-vault-wrap .cv-exch-panel.active { display: block; }


.cv-vault-wrap .cv-exch-text-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); gap: 10px; align-items: start; }
.cv-vault-wrap .cv-exch-hidden { display: none !important; }
.cv-vault-wrap .cv-exch-load-more { margin-top: 12px; }
.cv-vault-wrap .cv-exch-item { background: #fff; border: 1px solid var(--cvf-border, #eef1f5); border-radius: 10px; padding: 10px 12px; margin-bottom: 8px; }
.cv-vault-wrap .cv-exch-text-grid .cv-exch-item { margin-bottom: 0; }
.cv-vault-wrap .cv-folder-exchanges-admin .cv-exch-item,
.cv-vault-wrap .cv-folder-exchanges-admin .cv-exch-audio-card { border-left: 3px solid var(--cvf-primary, #1e3a5f); }
.cv-vault-wrap .cv-folder-exchanges-client .cv-exch-item,
.cv-vault-wrap .cv-folder-exchanges-client .cv-exch-audio-card { border-left: 3px solid var(--cvf-accent, #e8913a); }
.cv-vault-wrap .cv-exch-meta { font-size: 12px; color: var(--cvf-text-muted, #64748b); margin-bottom: 6px; }
.cv-vault-wrap .cv-exch-meta strong { color: var(--cvf-text, #1f2937); }

.cv-vault-wrap .cv-exch-text {
    font-size: 13.5px; color: var(--cvf-text, #1f2937); line-height: 1.45;
    display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;
    overflow: hidden; text-overflow: ellipsis;
    min-height: 2.9em;
}


.cv-vault-wrap .cv-exch-audio-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 10px; }
.cv-vault-wrap .cv-exch-audio-card { background: #fff; border: 1px solid var(--cvf-border, #eef1f5); border-radius: 10px; padding: 10px 12px; }
.cv-vault-wrap .cv-exch-audio-card .cv-exch-meta { display: flex; flex-direction: column; gap: 1px; margin-bottom: 8px; }
.cv-vault-wrap .cv-exch-audio-card .cv-exch-meta span { font-size: 11px; color: var(--cvf-text-muted, #64748b); }
.cv-vault-wrap .cv-exch-audio { width: 100%; height: 38px; display: block; }


.cv-vault-wrap .cv-exch-media-card { cursor: pointer; }
.cv-vault-wrap .cv-exch-media-card .cv-folder-embed-thumb video { width: 100%; height: 100%; object-fit: cover; }
.cv-vault-wrap .cv-exch-thumb-audio { background: linear-gradient(135deg, var(--cvf-primary, #1e3a5f) 0%, #2d4a6b 100%); display: flex; align-items: center; justify-content: center; }
.cv-vault-wrap .cv-exch-thumb-audio .cv-folder-embed-thumb-icon { font-size: 30px; }



.cv-vault-wrap .cv-exch-src {
    display: inline-flex; align-items: center; gap: 9px; margin-top: 9px; max-width: 100%;
    padding: 6px 10px; border-radius: 12px; background: var(--cvf-card, #fff); border: 1px solid var(--cvf-border, #e8ecf0);
    cursor: pointer; font-family: inherit; text-align: left; transition: border-color .12s, box-shadow .12s, transform .08s;
    --es: #2563eb; --esb: #e8f0fe;
}
.cv-vault-wrap .cv-exch-src:hover { border-color: var(--es); box-shadow: 0 4px 14px rgba(15,23,42,.08); transform: translateY(-1px); }
.cv-vault-wrap .cv-exch-src-ico { flex: 0 0 auto; width: 30px; height: 30px; border-radius: 9px; display: inline-flex; align-items: center; justify-content: center; background: var(--esb); color: var(--es); }
.cv-vault-wrap .cv-exch-src-ico .dashicons { font-size: 17px; width: 17px; height: 17px; color: var(--es); }
.cv-vault-wrap .cv-exch-src-body { display: flex; flex-direction: column; min-width: 0; line-height: 1.25; }
.cv-vault-wrap .cv-exch-src-type { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .03em; color: var(--es); }
.cv-vault-wrap .cv-exch-src-name { font-size: 12.5px !important; font-weight: 600; color: var(--cvf-text, #1f2937); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 220px; }
.cv-vault-wrap .cv-exch-src-go { flex: 0 0 auto; margin-left: auto; font-size: 15px; width: 15px; height: 15px; color: var(--cvf-text-hint, #cbd5e1); }
.cv-vault-wrap .cv-exch-src:hover .cv-exch-src-go { color: var(--es); }
.cv-vault-wrap .cv-exch-src-file  { --es:#2563eb; --esb:#e8f0fe; }
.cv-vault-wrap .cv-exch-src-embed { --es:#7c3aed; --esb:#f1ebfc; }
.cv-vault-wrap .cv-exch-src-card  { --es:#0e9f6e; --esb:#e3f6ee; }
.cv-vault-wrap .cv-exch-src-link  { --es:#4f46e5; --esb:#eaeafc; }
.cv-vault-wrap .cv-exch-src-note  { --es:#d97706; --esb:#fdf0dc; }

.cv-vault-wrap .cv-exch-fmt { display: inline-flex; align-items: center; gap: 4px; margin-right: 8px; padding: 2px 8px; border-radius: 999px; font-size: 10.5px; font-weight: 700; text-transform: uppercase; letter-spacing: .02em; background: var(--ef-b,#eef2f7); color: var(--ef,#475569); vertical-align: middle; }
.cv-vault-wrap .cv-exch-fmt .dashicons { font-size: 13px; width: 13px; height: 13px; }
.cv-vault-wrap .cv-exch-fmt-text   { --ef:#2563eb; --ef-b:#e8f0fe; }
.cv-vault-wrap .cv-exch-fmt-audio  { --ef:#0e9f6e; --ef-b:#e3f6ee; }
.cv-vault-wrap .cv-exch-fmt-video  { --ef:#7c3aed; --ef-b:#f1ebfc; }
.cv-vault-wrap .cv-exch-fmt-screen { --ef:#d97706; --ef-b:#fdf0dc; }




.cv-folder-section-header.cv-folder-section-toggle {
    cursor: pointer;
    user-select: none;
    transition: background .15s;
}
.cv-folder-section-header.cv-folder-section-toggle:hover {
    background: linear-gradient(135deg, #eef2f7 0%, #e8ecf0 100%);
}

.cv-folder-section-title { flex: 1 1 auto; display: inline-flex; align-items: center; gap: 8px; min-width: 0; }
.cv-folder-section-header .cv-view-switch {
    display: inline-flex; gap: 1px; padding: 2px; border: 1px solid var(--cvf-border, #e1e5eb);
    border-radius: 8px; background: rgba(255,255,255,.7); flex: 0 0 auto;
}
.cv-folder-section-header .cv-view-btn { width: 28px; height: 24px; border-radius: 5px; }
.cv-folder-section-header .cv-view-btn .dashicons { font-size: 15px; width: 15px; height: 15px; }
.cv-folder-section-arrow-btn {
    flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center;
    width: 30px; height: 26px; margin-left: 6px; padding: 0;
    border: none; background: transparent; border-radius: 6px; cursor: pointer;
    color: var(--cvf-text-muted, #94a3b8); transition: background .15s;
}
.cv-folder-section-arrow-btn:hover { background: rgba(0,0,0,.06); color: var(--cvf-text, #334155); }
.cv-folder-section-arrow {
    font-size: 16px;
    color: inherit;
    transition: transform .2s;
}
.cv-folder-section-count {
    font-size: 12px;
    font-weight: 600;
    color: var(--cvf-text-muted, #94a3b8);
    background: rgba(0,0,0,.04);
    padding: 2px 10px;
    border-radius: 20px;
    margin-left: 4px;
}




.cv-folder-hidden { display: none !important; }

.cv-folder-load-more, .cv-load-more-wrap, .cv-front-load-more-embeds, .cv-exch-load-more, .cv-week-load-more { grid-column: 1 / -1; }
.cv-folder-load-more {
    display: block;
    width: 100%;
    padding: 10px 16px;
    margin-top: 12px;
    background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);
    border: 1px dashed var(--cvf-border, #e8ecf0);
    border-radius: 8px;
    color: var(--cvf-primary, #1e3a5f);
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    text-align: center;
    transition: all .15s;
}
.cv-folder-load-more:hover {
    background: #eef2f7;
    border-color: var(--cvf-primary-light, #2a5298);
    color: var(--cvf-primary-light, #2a5298);
}


.cv-folder-search-bar {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 14px;
    border: 1px solid var(--cvf-border, #e8ecf0);
    border-radius: 10px;
    background: var(--cvf-bg-alt, #f8fafc);
    margin-bottom: 16px;
    transition: border-color .15s;
}
.cv-folder-search-bar:focus-within {
    border-color: var(--cvf-primary, #1e3a5f);
    box-shadow: 0 0 0 3px rgba(30,58,95,0.08);
}
.cv-folder-search-bar svg { flex-shrink: 0; color: var(--cvf-text-muted, #94a3b8); }
.cv-folder-search-bar input {
    flex: 1;
    border: none;
    background: transparent;
    font-size: 14px;
    color: var(--cvf-text, #1e293b);
    outline: none;
    padding: 0;
}
.cv-folder-search-bar input::placeholder { color: var(--cvf-text-muted, #94a3b8); }


.cv-folder-suggestion-card { cursor: default !important; }
.cv-folder-suggestion-card:hover { transform: none !important; }
.cv-folder-status-pending {
    background: #fbbf24;
    color: #78350f;
    font-size: 11px;
    font-weight: 700;
    padding: 3px 10px;
    border-radius: 20px;
}
.cv-folder-status-rejected {
    background: #ef4444;
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    padding: 3px 10px;
    border-radius: 20px;
}


.cv-front-folder-card[data-status="rejected"] {
    opacity: 0.5 !important;
    filter: grayscale(0.65);
    pointer-events: auto;
}
.cv-front-folder-card[data-status="rejected"] .cv-folder-card-name {
    text-decoration: line-through;
    text-decoration-color: rgba(0,0,0,.3);
}
.cv-front-folder-card[data-status="rejected"]:hover {
    opacity: 0.65 !important;
    transform: none !important;
}


.cv-folder-filter-bar {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    align-items: center;
    padding: 10px 16px;
    background: var(--cvf-bg, #f8fafc);
    border: 1px solid var(--cvf-border, #e8ecf0);
    border-radius: 10px;
    margin-bottom: 14px;
}
.cv-folder-filter-bar .cv-doc-ftype-btn {
    padding: 6px 14px;
    border: 1px solid var(--cvf-border, #e8ecf0);
    border-radius: 8px;
    background: #fff;
    font-size: 12px;
    font-weight: 600;
    color: var(--cvf-text-muted, #64748b);
    cursor: pointer;
    transition: all .15s;
    white-space: nowrap;
}
.cv-folder-filter-bar .cv-doc-ftype-btn:hover {
    border-color: var(--cvf-primary, #1e3a5f);
    color: var(--cvf-primary, #1e3a5f);
}
.cv-folder-filter-bar .cv-doc-ftype-btn.active {
    background: var(--cvf-primary, #1e3a5f);
    color: #fff;
    border-color: var(--cvf-primary, #1e3a5f);
}
.cv-folder-filter-search {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-left: auto;
    padding: 7px 14px;
    border: 1.5px solid var(--cvf-border, #e8ecf0);
    border-radius: 10px;
    background: #fff;
    transition: all .2s;
    min-width: 200px;
}
.cv-folder-filter-search:focus-within {
    border-color: var(--cvf-primary, #1e3a5f);
    box-shadow: 0 0 0 3px rgba(30,58,95,0.1);
    background: #fafbfd;
}
.cv-folder-filter-search svg {
    color: var(--cvf-text-muted, #94a3b8);
    flex-shrink: 0;
    transition: color .2s;
}
.cv-folder-filter-search:focus-within svg { color: var(--cvf-primary, #1e3a5f); }
.cv-folder-filter-search input {
    border: none;
    background: transparent;
    font-size: 13px;
    font-weight: 500;
    color: var(--cvf-text, #1e293b);
    outline: none;
    padding: 0;
    flex: 1;
    min-width: 0;
}
.cv-folder-filter-search input::placeholder {
    color: var(--cvf-text-muted, #94a3b8);
    font-weight: 400;
}
@media (max-width: 600px) {
    .cv-folder-filter-bar { flex-direction: column; align-items: stretch; }
    .cv-folder-filter-search { margin-left: 0; min-width: 0; }
}


.cv-toast-success-front {
    position: fixed;
    top: 40px;
    left: 50%;
    transform: translateX(-50%) translateY(-20px);
    padding: 14px 32px;
    background: #059669;
    color: #fff;
    font-size: 15px;
    font-weight: 600;
    border-radius: 10px;
    box-shadow: 0 8px 30px rgba(5,150,105,.35);
    z-index: 100010;
    opacity: 0;
    transition: opacity .3s, transform .3s;
}
.cv-toast-success-front.cv-toast-visible {
    opacity: 1;
    transform: translateX(-50%) translateY(0);
}

.cv-table-toast {
    padding: 12px 20px;
    margin: 10px 0 12px 0;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 8px;
    opacity: 0;
    transform: translateY(-8px);
    transition: opacity .3s ease, transform .3s ease;
}
.cv-table-toast.cv-table-toast-visible {
    opacity: 1;
    transform: translateY(0);
}
.cv-table-toast-success {
    background: #ecfdf5;
    color: #065f46;
    border: 1px solid #a7f3d0;
}
.cv-table-toast-error {
    background: #fef2f2;
    color: #991b1b;
    border: 1px solid #fecaca;
}
.cv-table-toast-icon {
    font-size: 16px;
    flex-shrink: 0;
}

tr.cv-doc-row.cv-row-flash-success {
    animation: cvRowFlash 2s ease;
}
@keyframes cvRowFlash {
    0%   { background-color: #d1fae5; }
    100% { background-color: transparent; }
}


tr.cv-doc-row.cv-doc-archived td {
    opacity: 0.55;
    background: #fffbeb;
}
tr.cv-doc-row.cv-doc-archived:hover td {
    opacity: 0.75;
    background: #fef3c7;
}
tr.cv-doc-row.cv-doc-archived td:first-child {
    border-left: 3px solid #d97706;
}

tr.cv-doc-row.cv-doc-archived .cv-doc-name-t::after,
.cv-content-archived .cv-fiche-title::after,
.cv-content-archived .cv-link-title::after,
.cv-content-archived .cv-note-who::after {
    content: var(--cvlbl-archived-badge);
    display: inline-block;
    margin-left: 10px;
    padding: 3px 10px;
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
    color: #fff;
    font-size: 10px;
    font-weight: 700;
    border-radius: 4px;
    vertical-align: middle;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    line-height: 1.4;
    box-shadow: 0 1px 3px rgba(217, 119, 6, 0.3);
}

.cv-content-archived.cv-media-item .cv-media-preview {
    position: relative;
}
.cv-content-archived.cv-media-item .cv-media-preview::after {
    content: var(--cvlbl-archived-badge);
    position: absolute;
    bottom: 6px;
    left: 6px;
    padding: 3px 10px;
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
    color: #fff;
    font-size: 10px;
    font-weight: 700;
    border-radius: 4px;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    line-height: 1.4;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);
    z-index: 2;
}

.cv-archive-filter-btn {
    
}
.cv-archive-filter-btn .cv-archive-count {
    display: inline-block;
    background: rgba(107, 114, 128, 0.15);
    color: #6b7280;
    font-size: 10px;
    font-weight: 700;
    padding: 1px 6px;
    border-radius: 10px;
    margin-left: 3px;
}
.cv-archive-filter-btn.active .cv-archive-count {
    background: rgba(255, 255, 255, 0.3);
    color: inherit;
}

.cv-archive-file-btn { font-size: 13px; }


.cv-content-archived {
    background: #fffbeb !important;
    border-left: 3px solid #d97706 !important;
    position: relative;
}
.cv-content-archived:hover {
    background: #fef3c7 !important;
}


.cv-content-archived .cv-fiche-title, .cv-content-archived .cv-fiche-text, .cv-content-archived .cv-fiche-tags,
.cv-content-archived .cv-fiche-meta, .cv-content-archived .cv-link-title, .cv-content-archived .cv-link-url,
.cv-content-archived .cv-link-desc, .cv-content-archived .cv-note-txt, .cv-content-archived .cv-note-who,
.cv-content-archived .cv-note-time, .cv-content-archived .cv-note-av { opacity: 0.6; }


.cv-archived-notice {
    display: none;
}

.cv-content-archived .cv-edit-card,
.cv-content-archived .cv-edit-link-btn,
.cv-content-archived .cv-admin-edit-card,
.cv-content-archived .cv-admin-edit-link,
.cv-content-archived .cv-admin-edit-embed,
.cv-content-archived .cv-admin-edit-note {
    display: none !important;
}
tr.cv-doc-row.cv-doc-archived .cv-front-edit-file-btn {
    display: none !important;
}

.cv-content-archived .cv-comment-form,
.cv-content-archived .cv-comment-reply-btn,
.cv-content-archived .cv-comment-delete,
.cv-content-archived .cv-reply-indicator {
    display: none !important;
}
tr.cv-doc-row.cv-doc-archived .cv-comment-form,
tr.cv-doc-row.cv-doc-archived .cv-comment-reply-btn,
tr.cv-doc-row.cv-doc-archived .cv-comment-delete {
    display: none !important;
}

.cv-preview-archived #cv-front-reply-form,
.cv-preview-archived .cv-preview-reply-form,
.cv-preview-archived .cv-comment-reply-btn,
.cv-preview-archived .cv-front-comment-delete,
.cv-preview-archived .cv-preview-comment-delete,
.cv-preview-archived .cv-reply-indicator {
    display: none !important;
}


.cv-popup-archived-badge {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 4px 14px;
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    border-radius: 4px;
    letter-spacing: 0.3px;
    text-transform: uppercase;
    box-shadow: 0 1px 3px rgba(217, 119, 6, 0.3);
    white-space: nowrap;
    flex-shrink: 0;
}

.cv-content-archived .cv-tag-menu-btn,
tr.cv-doc-row.cv-doc-archived .cv-tag-menu-btn {
    display: none !important;
}

.cv-vault-wrap .cv-vault-delete-btn,
.cv-vault-wrap .cv-delete-card,
.cv-vault-wrap .cv-delete-link-btn,
.cv-vault-wrap .cv-msg-delete,
.cv-vault-wrap .cv-front-delete-embed {
    display: none !important;
}

.cv-vault-wrap #cv-delete-confirm-overlay .cv-confirm-delete-btn {
    
}


#cv-parcours-archive-modal {
    position: fixed;
    inset: 0;
    z-index: 100010;
    background: rgba(0,0,0,0.45);
    display: flex;
    align-items: center;
    justify-content: center;
}
#cv-parcours-archive-modal .cv-modal-box {
    position: relative;
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 12px 40px rgba(0,0,0,0.2);
}


.cv-folder-move-toast {
    padding: 6px 14px;
    background: #059669;
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    border-radius: 6px;
    margin-top: 6px;
    display: inline-block;
    opacity: 0;
    transform: translateY(-4px);
    transition: opacity .25s, transform .25s;
}
.cv-folder-move-toast.cv-toast-visible {
    opacity: 1;
    transform: translateY(0);
}


.cv-folder-suggest-modal-box .cv-modal-btn-save {
    padding: 10px 22px;
    background: var(--cvf-primary, #1e3a5f);
    color: #fff;
    border: none;
    border-radius: 10px;
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
    transition: background .2s, transform .15s;
    font-family: inherit;
}
.cv-folder-suggest-modal-box .cv-modal-btn-save:hover { background: #152d4a; transform: translateY(-1px); }
.cv-folder-suggest-modal-box .cv-modal-btn-save:disabled { opacity: 0.5; cursor: not-allowed; transform: none; }
.cv-folder-suggest-modal-box .cv-modal-btn-cancel {
    padding: 10px 18px;
    background: none;
    border: 1px solid var(--cvf-border, #e8ecf0);
    border-radius: 10px;
    font-size: 13px;
    font-weight: 600;
    color: var(--cvf-text-muted, #7f8c9b);
    cursor: pointer;
    font-family: inherit;
    transition: all .15s;
}
.cv-folder-suggest-modal-box .cv-modal-btn-cancel:hover { border-color: var(--cvf-danger, #e74c3c); color: var(--cvf-danger, #e74c3c); }

.cv-folder-content-empty { text-align: center; padding: 48px 24px; color: #94a3b8; }
.cv-folder-content-empty p { font-size: 15px; margin: 12px 0 4px; font-weight: 600; color: #64748b; }

@media (max-width: 600px) {
    .cv-folder-files-table th:nth-child(2),
    .cv-folder-files-table td:nth-child(2) { display: none; }
    .cv-folder-detail-hero { padding: 14px 16px; }
    .cv-folder-detail-hero-main { gap: 10px; }
    .cv-folder-detail-hero-icon { width: 40px; height: 40px; }
    .cv-folder-detail-hero-icon svg { width: 22px; height: 22px; }
    .cv-folder-detail-hero-info h3 { font-size: 17px; }
    .cv-folder-detail-hero-meta { gap: 6px; }
}






@media (max-width: 600px) {
    
    .cv-vault-wrap .cv-export-grid,
    .cv-vault-wrap .cv-notif-grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 8px !important;
    }
    
    .cv-vault-wrap .cv-export-card,
    .cv-vault-wrap .cv-notif-card {
        padding: 10px 8px 8px !important;
    }
    .cv-vault-wrap .cv-export-card-breakdown {
        font-size: 10px !important;
    }
    
    .cv-vault-wrap .cv-modal,
    .cv-vault-wrap .cv-modal-overlay .cv-modal {
        width: 95vw !important;
        max-width: 95vw !important;
        padding: 16px !important;
        margin: 8px !important;
    }
    .cv-vault-wrap .cv-modal h3 {
        font-size: 16px !important;
    }
    
    .cv-vault-wrap .cv-vault-actions-bar {
        flex-direction: column !important;
        gap: 8px !important;
    }
    .cv-vault-wrap .cv-vault-actions-bar > * {
        width: 100% !important;
    }
    
    .cv-vault-wrap .cv-settings-card-body {
        padding: 12px !important;
    }
    
    .cv-vault-wrap .cv-vault-tabs {
        flex-wrap: wrap !important;
        gap: 4px !important;
    }
    .cv-vault-wrap .cv-vault-tab {
        font-size: 12px !important;
        padding: 6px 10px !important;
    }
    
    .cv-vault-wrap h2, .cv-vault-wrap h3 {
        font-size: 15px !important;
    }
    
    .cv-vault-wrap .cv-folder-breadcrumb {
        font-size: 12px !important;
        flex-wrap: wrap !important;
    }
}


@media (max-width: 480px) {
    
    .cv-vault-wrap .cv-export-grid,
    .cv-vault-wrap .cv-notif-grid {
        grid-template-columns: 1fr !important;
    }
    
    .cv-vault-wrap .cv-media-grid {
        grid-template-columns: 1fr !important;
    }
    
    .cv-vault-wrap .cv-vault-header {
        flex-direction: column !important;
        text-align: center !important;
        gap: 8px !important;
    }
    
    .cv-vault-wrap .cv-doc-table .cv-col-category,
    .cv-vault-wrap .cv-doc-table .cv-col-size {
        display: none !important;
    }
    
    .cv-vault-wrap .dbtn {
        width: 100% !important;
        text-align: center !important;
    }
    .cv-vault-wrap .cv-form-actions {
        flex-direction: column !important;
        gap: 8px !important;
    }
    
    .cv-vault-wrap .cv-settings-storage-bar {
        margin: 0 !important;
    }
    
    .cv-vault-wrap .cv-vault-stat-value {
        font-size: 20px !important;
    }
}


@media (max-width: 375px) {
    .cv-vault-wrap .cv-vault-tab {
        font-size: 11px !important;
        padding: 5px 6px !important;
    }
    .cv-vault-wrap .cv-modal {
        padding: 12px !important;
    }
    .cv-vault-wrap .cv-export-card-icon,
    .cv-vault-wrap .cv-notif-card-icon {
        font-size: 18px !important;
    }
    .cv-vault-wrap .cv-export-card-title,
    .cv-vault-wrap .cv-notif-card-title {
        font-size: 11px !important;
    }
}









.cv-ga-banner {
    padding: 18px 22px 18px 24px;
    border-radius: 12px;
    margin-bottom: 14px;
    display: flex;
    align-items: flex-start;
    gap: 16px;
    position: relative;
    animation: cvGaSlide .35s cubic-bezier(0.16, 1, 0.3, 1);
    background: #fff;
    box-shadow: 0 6px 24px rgba(15, 23, 42, 0.10), 0 1px 3px rgba(15, 23, 42, 0.06);
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-left-width: 5px;
    border-left-style: solid;
    transition: transform .18s ease, box-shadow .18s ease;
}
.cv-ga-banner:hover {
    transform: translateY(-1px);
    box-shadow: 0 10px 32px rgba(15, 23, 42, 0.14), 0 2px 6px rgba(15, 23, 42, 0.08);
}
@keyframes cvGaSlide { from { opacity: 0; transform: translateY(-10px); } to { opacity: 1; transform: translateY(0); } }



.cv-ga-banner { border-left-width: 6px; }
.cv-ga-banner-normal {
    background: linear-gradient(135deg, #dbeafe 0%, #bfdbfe 100%);
    border: 1px solid rgba(37, 99, 235, 0.28);
    border-left: 6px solid #2563eb;
    color: #1e3a8a;
}
.cv-ga-banner-important {
    background: linear-gradient(135deg, #fed7aa 0%, #fdba74 100%);
    border: 1px solid rgba(234, 88, 12, 0.32);
    border-left: 6px solid #ea580c;
    color: #7c2d12;
}
.cv-ga-banner-urgent {
    background: linear-gradient(135deg, #fecaca 0%, #fca5a5 100%);
    border: 1px solid rgba(220, 38, 38, 0.36);
    border-left: 6px solid #dc2626;
    color: #7f1d1d;
}


.cv-ga-banner-icon {
    font-size: 20px;
    flex-shrink: 0;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(37, 99, 235, 0.22);
    color: #1e40af;
    line-height: 1;
}
.cv-ga-banner-important .cv-ga-banner-icon { background: rgba(234, 88, 12, 0.24); color: #9a3412; }
.cv-ga-banner-urgent .cv-ga-banner-icon    { background: rgba(220, 38, 38, 0.26); color: #991b1b; }

.cv-ga-banner-body { flex: 1; min-width: 0; padding-right: 28px; }
.cv-ga-banner-title {
    font-size: 15px;
    font-weight: 700;
    line-height: 1.3;
    margin: 0 0 4px;
    letter-spacing: -0.01em;
}
.cv-ga-banner-text {
    font-size: 13.5px;
    line-height: 1.55;
    font-weight: 500;
    margin: 0;
    opacity: 0.92;
}
.cv-ga-banner-link {
    display: inline-block;
    margin-top: 10px;
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
    padding: 6px 14px;
    background: currentColor;
    color: #fff !important;
    border-radius: 6px;
    line-height: 1.3;
    transition: opacity .18s ease, transform .18s ease;
}
.cv-ga-banner-normal .cv-ga-banner-link    { background: #2563eb; }
.cv-ga-banner-important .cv-ga-banner-link { background: #b45309; }
.cv-ga-banner-urgent .cv-ga-banner-link    { background: #b91c1c; }
.cv-ga-banner-link:hover { transform: translateY(-1px); opacity: 0.92; }


.cv-ga-banner-dismiss {
    position: absolute;
    top: 12px;
    right: 12px;
    width: 26px;
    height: 26px;
    background: rgba(15, 23, 42, 0.04);
    border: none;
    font-size: 16px;
    cursor: pointer;
    color: inherit;
    opacity: 0.55;
    padding: 0;
    border-radius: 50%;
    line-height: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: opacity .15s ease, background .15s ease;
}
.cv-ga-banner-dismiss:hover { opacity: 1; background: rgba(15, 23, 42, 0.12); }


.cv-ga-banner-img { width: 88px; height: 64px; object-fit: cover; border-radius: 10px; flex-shrink: 0; }
.cv-ga-banner-has-img { align-items: center; }
@media (max-width: 480px) {
    .cv-ga-banner { padding: 16px 18px 16px 20px; gap: 12px; }
    .cv-ga-banner-icon { width: 34px; height: 34px; font-size: 16px; }
    .cv-ga-banner-img { width: 60px; height: 44px; border-radius: 8px; }
}


.cv-ga-banner-targeted {
    background: linear-gradient(135deg, #f5f3ff 0%, #ede9fe 100%);
    border: 1px solid rgba(124, 58, 237, 0.22);
    border-left: 5px solid #7c3aed;
    color: #4c1d95;
}
.cv-ga-banner-targeted .cv-ga-banner-icon { background: rgba(124, 58, 237, 0.18); color: #6d28d9; }
.cv-ga-banner-targeted .cv-ga-banner-link { background: #7c3aed; }
.cv-ga-banner-targeted .cv-ga-banner-coach {
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #6d28d9;
    margin: 0 0 6px;
    display: flex;
    align-items: center;
    gap: 5px;
}
.cv-ga-banner-targeted .cv-ga-banner-coach .dashicons { font-size: 13px; width: 13px; height: 13px; }





.cv-fc-sidebar-widgets {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin: 10px 0;
}
.cv-fc-sidebar-widgets .cv-fc-w {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    padding: 12px;
    box-shadow: 0 1px 2px rgba(17,24,39,.04);
    font-size: 13px;
    line-height: 1.5;
    color: #111827;
}
.cv-fc-sidebar-widgets .cv-fc-w--cvp { border-color: #fde68a; background: linear-gradient(180deg, #fffbeb 0%, #fff 100%); }
.cv-fc-sidebar-widgets .cv-fc-w__head {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .5px;
    color: #6b7280;
    margin-bottom: 8px;
}
.cv-fc-sidebar-widgets .cv-fc-w--cvp .cv-fc-w__head { color: #92400e; }
.cv-fc-sidebar-widgets .cv-fc-w__emoji { font-size: 16px; }
.cv-fc-sidebar-widgets .cv-fc-w__body { font-size: 13px; }
.cv-fc-sidebar-widgets .cv-fc-w-btn {
    display: inline-block;
    margin-top: 8px;
    padding: 6px 12px;
    background: #2563eb;
    color: #fff !important;
    border-radius: 6px;
    font-size: 12px;
    font-weight: 600;
    text-decoration: none;
    transition: background .15s ease;
}
.cv-fc-sidebar-widgets .cv-fc-w-btn:hover { background: #1d4ed8; color: #fff; }
.cv-fc-sidebar-widgets .cv-fc-w-profile { text-align: center; }
.cv-fc-sidebar-widgets .cv-fc-w-profile-avatar img { border-radius: 50%; }
.cv-fc-sidebar-widgets .cv-fc-w-profile-name { font-weight: 700; margin-top: 6px; }
.cv-fc-sidebar-widgets .cv-fc-w-empty { color: #6b7280; font-size: 12px; font-style: italic; }
.cv-fc-sidebar-widgets .cv-fc-w-parcours-bar,
.cv-fc-sidebar-widgets .cv-fc-w-xp-bar {
    height: 6px; background: #e5e7eb; border-radius: 99px; overflow: hidden; margin: 6px 0 4px;
}
.cv-fc-sidebar-widgets .cv-fc-w-parcours-bar > span,
.cv-fc-sidebar-widgets .cv-fc-w-xp-bar > span {
    display: block; height: 100%; background: linear-gradient(90deg, #2563eb, #f59e0b); border-radius: 99px;
}
.cv-fc-sidebar-widgets .cv-fc-w-parcours-meta,
.cv-fc-sidebar-widgets .cv-fc-w-xp-meta,
.cv-fc-sidebar-widgets .cv-fc-w-next-deadline,
.cv-fc-sidebar-widgets .cv-fc-w-streak-best,
.cv-fc-sidebar-widgets .cv-fc-w-help-status { font-size: 11px; color: #6b7280; }
.cv-fc-sidebar-widgets .cv-fc-w-parcours-title,
.cv-fc-sidebar-widgets .cv-fc-w-next-title { font-weight: 700; }
.cv-fc-sidebar-widgets .cv-fc-w-docs.is-critical {
    background: #fee2e2; border-color: #fca5a5; border-radius: 8px; padding: 8px; margin: -4px; margin-bottom: 0;
}
.cv-fc-sidebar-widgets .cv-fc-w-docs.is-critical .cv-fc-w-docs-count { color: #991b1b; font-weight: 700; }
.cv-fc-sidebar-widgets .cv-fc-w-docs-list { margin: 6px 0 0; padding: 0; list-style: none; font-size: 12px; }
.cv-fc-sidebar-widgets .cv-fc-w-docs-list li { padding: 3px 0; border-bottom: 1px dashed #e5e7eb; }
.cv-fc-sidebar-widgets .cv-fc-w-docs-list em { color: #dc2626; font-style: normal; font-weight: 600; font-size: 11px; }
.cv-fc-sidebar-widgets .cv-fc-w-streak-flame { font-size: 16px; font-weight: 700; color: #d97706; }
.cv-fc-sidebar-widgets .cv-fc-w-goals { margin: 0; padding: 0; list-style: none; font-size: 12px; }
.cv-fc-sidebar-widgets .cv-fc-w-goals li { padding: 3px 0; }
.cv-fc-sidebar-widgets .cv-fc-w-goals li.is-done { color: #059669; text-decoration: line-through; }
.cv-fc-sidebar-widgets .cv-fc-w-tip { background: #fef3c7; border-left: 3px solid #f59e0b; padding: 8px 10px; border-radius: 6px; font-size: 12px; color: #78350f; }
.cv-fc-sidebar-widgets .cv-fc-w-leaderboard { margin: 0; padding-left: 20px; font-size: 12px; }
.cv-fc-sidebar-widgets .cv-fc-w-leaderboard li { display: flex; justify-content: space-between; padding: 2px 0; }
.cv-fc-sidebar-widgets .cv-fc-w-online { display: flex; flex-wrap: wrap; gap: 4px; }
.cv-fc-sidebar-widgets .cv-fc-w-online-avatar img { border-radius: 50%; }
.cv-fc-sidebar-widgets .cv-fc-w-search input { width: 100%; padding: 6px 10px; border: 1px solid #d1d5db; border-radius: 6px; font-size: 12px; }
.cv-fc-sidebar-widgets .cv-fc-w-ann { margin: 0; padding-left: 16px; font-size: 12px; }
.cv-fc-sidebar-widgets .cv-fc-w-ann li { padding: 2px 0; }
.cv-fc-sidebar-widgets .cv-fc-w-ann a { color: #2563eb; text-decoration: none; }
.cv-fc-sidebar-widgets .cv-fc-w-ann a:hover { text-decoration: underline; }
















html body .cv-app.cv-vault-wrap .cv-vault-header .cv-vault-header-top,
html body .cv-vault-wrap .cv-vault-header .cv-vault-header-top {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 24px !important;
    width: 100% !important;
    box-sizing: border-box !important;
    visibility: visible !important;
    opacity: 1 !important;
    max-height: none !important;
    height: auto !important;
    overflow: visible !important;
    position: relative !important;
    z-index: 2 !important;
}




html body .cv-app.cv-vault-wrap .cv-vault-header .cv-vault-header-identity,
html body .cv-vault-wrap .cv-vault-header .cv-vault-header-identity {
    display: grid !important;
    grid-template-columns: 76px minmax(0, 1fr) !important;
    grid-template-rows: auto !important;
    column-gap: 22px !important;
    row-gap: 0 !important;
    align-items: center !important;
    width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    overflow: visible !important;
    visibility: visible !important;
    opacity: 1 !important;
    max-height: none !important;
    height: auto !important;
    position: relative !important;
    z-index: 2 !important;
}
html body .cv-app.cv-vault-wrap .cv-vault-header .cv-vault-header-identity > .cv-vault-avatar,
html body .cv-vault-wrap .cv-vault-header .cv-vault-header-identity > .cv-vault-avatar {
    grid-column: 1 !important;
    grid-row: 1 !important;
    justify-self: start !important;
    align-self: center !important;
}

html body .cv-app.cv-vault-wrap .cv-vault-header .cv-vault-header-text,
html body .cv-vault-wrap .cv-vault-header .cv-vault-header-text {
    grid-column: 2 !important;
    grid-row: 1 !important;
    min-width: 0 !important;
    max-width: 100% !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    overflow: visible !important;
    max-height: none !important;
    min-height: 72px !important; 
    height: auto !important;
    position: relative !important;
    z-index: 3 !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #fff !important;
    background: transparent !important;
    transform: none !important;
    clip: auto !important;
    clip-path: none !important;
}



html body .cv-app.cv-vault-wrap .cv-vault-header .cv-vault-header-text h2,
html body .cv-vault-wrap .cv-vault-header .cv-vault-header-text h2,
html body .cv-app.cv-vault-wrap .cv-vault-header .cv-vault-header-text .cv-vault-header-greeting,
html body .cv-vault-wrap .cv-vault-header .cv-vault-header-text .cv-vault-header-greeting {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    max-height: none !important;
    min-height: 30px !important;
    height: auto !important;
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: normal !important;
    word-break: break-word !important;
    font-size: 26px !important;
    line-height: 1.25 !important;
    font-weight: 700 !important;
    color: #fff !important;
    margin: 0 0 4px !important;
    padding: 0 !important;
    letter-spacing: -0.3px !important;
    text-transform: none !important;
    border: none !important;
    background: transparent !important;
    clip: auto !important;
    clip-path: none !important;
    transform: none !important;
    position: static !important;
    width: auto !important;
    max-width: 100% !important;
}

html body .cv-app.cv-vault-wrap .cv-vault-header .cv-vault-header-text .cv-vault-header-subtitle,
html body .cv-vault-wrap .cv-vault-header .cv-vault-header-text .cv-vault-header-subtitle {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    max-height: none !important;
    min-height: 20px !important; 
    height: auto !important;
    overflow: visible !important;
    font-size: 14px !important;
    line-height: 1.45 !important;
    font-weight: 400 !important;
    color: rgba(255,255,255,0.88) !important;
    margin: 0 0 10px !important;
    padding: 0 !important;
    letter-spacing: 0.1px !important;
    text-transform: none !important;
    border: none !important;
    background: transparent !important;
    clip: auto !important;
    clip-path: none !important;
    transform: none !important;
    position: static !important;
    width: auto !important;
    word-break: break-word !important;
}

html body .cv-app.cv-vault-wrap .cv-vault-header .cv-vault-header-text .cv-vault-header-meta,
html body .cv-vault-wrap .cv-vault-header .cv-vault-header-text .cv-vault-header-meta {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 6px !important;
    visibility: visible !important;
    opacity: 0.75 !important;
    max-height: none !important;
    height: auto !important;
    overflow: visible !important;
    font-size: 12px !important;
    line-height: 1.3 !important;
    color: #fff !important;
    margin: 0 !important;
    padding: 0 !important;
    clip: auto !important;
    clip-path: none !important;
    transform: none !important;
    position: static !important;
    width: auto !important;
}

html body .cv-app.cv-vault-wrap .cv-vault-header .cv-vault-header-meta .cv-vault-meta-item,
html body .cv-vault-wrap .cv-vault-header .cv-vault-header-meta .cv-vault-meta-item {
    display: inline-flex !important;
    align-items: center !important;
    gap: 3px !important;
    color: #fff !important;
    visibility: visible !important;
    opacity: 1 !important;
}

html body .cv-app.cv-vault-wrap .cv-vault-header .cv-vault-header-meta .cv-vault-meta-sep,
html body .cv-vault-wrap .cv-vault-header .cv-vault-header-meta .cv-vault-meta-sep {
    display: inline-block !important;
    width: 3px !important;
    height: 3px !important;
    border-radius: 50% !important;
    background: rgba(255,255,255,0.5) !important;
    margin: 0 4px !important;
    visibility: visible !important;
    opacity: 1 !important;
}















html body .cv-app.cv-vault-wrap .cv-vault-header-v2 .cv-vault-header-identity-v2,
html body .cv-vault-wrap .cv-vault-header-v2 .cv-vault-header-identity-v2,
html body .cv-vault-header-v2 .cv-vault-header-identity-v2 {
    display: block !important;
    position: relative !important;
    min-height: 90px !important;
    padding: 0 0 0 100px !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    width: 100% !important;
    z-index: 2 !important;
    overflow: visible !important;
    visibility: visible !important;
    opacity: 1 !important;
    clip: auto !important;
    clip-path: none !important;
    transform: none !important;
    max-height: none !important;
    height: auto !important;
}

html body .cv-app.cv-vault-wrap .cv-vault-header-v2 .cv-vault-avatar-v2,
html body .cv-vault-wrap .cv-vault-header-v2 .cv-vault-avatar-v2,
html body .cv-vault-header-v2 .cv-vault-avatar-v2 {
    position: absolute !important;
    left: 0 !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: clamp(40px, 11vw, 76px) !important;
    height: clamp(40px, 11vw, 76px) !important;
    min-width: clamp(40px, 11vw, 76px) !important;
    min-height: clamp(40px, 11vw, 76px) !important;
    aspect-ratio: 1 / 1 !important; 
    flex: 0 0 auto !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
    border-radius: 50% !important;
    background: rgba(255,255,255,.18) !important;
    border: 3px solid rgba(255,255,255,.45) !important;
    box-shadow: 0 4px 16px rgba(0,0,0,.12) !important;
    z-index: 2 !important;
}

html body .cv-vault-header-v2 .cv-vault-avatar-v2 img,
html body .cv-vault-header-v2 .cv-vault-avatar-v2 .cv-vault-avatar-img {
    width: 100% !important;
    height: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
}

html body .cv-app.cv-vault-wrap .cv-vault-header-v2 .cv-vault-header-text-v2,
html body .cv-vault-wrap .cv-vault-header-v2 .cv-vault-header-text-v2,
html body .cv-vault-header-v2 .cv-vault-header-text-v2 {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    min-height: 72px !important;
    height: auto !important;
    color: #fff !important;
    padding: 6px 0 4px !important;
    margin: 0 !important;
    position: relative !important;
    z-index: 3 !important;
    box-sizing: border-box !important;
    overflow: visible !important;
    visibility: visible !important;
    opacity: 1 !important;
    clip: auto !important;
    clip-path: none !important;
    transform: none !important;
    max-height: none !important;
    background: transparent !important;
}

html body .cv-app.cv-vault-wrap .cv-vault-header-v2 .cv-vault-header-greeting-v2,
html body .cv-vault-wrap .cv-vault-header-v2 .cv-vault-header-greeting-v2,
html body .cv-vault-header-v2 .cv-vault-header-greeting-v2 {
    display: block !important;
    color: #fff !important;
    margin: 0 0 1px !important;
    padding: 0 !important;
    font-size: clamp(15px, 3.6vw, 26px) !important;
    line-height: 1.18 !important;
    font-weight: 700 !important;
    letter-spacing: -0.3px !important;
    word-break: break-word !important;
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    max-width: 100% !important;
    visibility: visible !important;
    opacity: 1 !important;
    text-transform: none !important;
    border: none !important;
    background: transparent !important;
    clip: auto !important;
    clip-path: none !important;
    transform: none !important;
    position: static !important;
    width: auto !important;
    max-height: none !important;
    height: auto !important;
    text-align: left !important;
    font-family: inherit !important;
    text-shadow: none !important;
}

html body .cv-app.cv-vault-wrap .cv-vault-header-v2 .cv-vault-header-subtitle-v2,
html body .cv-vault-wrap .cv-vault-header-v2 .cv-vault-header-subtitle-v2,
html body .cv-vault-header-v2 .cv-vault-header-subtitle-v2 {
    display: block !important;
    color: rgba(255,255,255,0.88) !important;
    margin: 0 0 8px !important;
    padding: 0 !important;
    font-size: clamp(11px, 2.9vw, 13px) !important; 
    line-height: 1.4 !important;
    font-weight: 400 !important;
    letter-spacing: 0.1px !important;
    word-break: break-word !important;
    overflow: visible !important;
    visibility: visible !important;
    opacity: 1 !important;
    max-height: none !important;
    min-height: 20px !important;
    height: auto !important;
    text-transform: none !important;
    border: none !important;
    background: transparent !important;
    clip: auto !important;
    clip-path: none !important;
    transform: none !important;
    position: static !important;
    width: auto !important;
    max-width: 100% !important;
    text-align: left !important;
}

html body .cv-app.cv-vault-wrap .cv-vault-header-v2 .cv-vault-header-meta-v2,
html body .cv-vault-wrap .cv-vault-header-v2 .cv-vault-header-meta-v2,
html body .cv-vault-header-v2 .cv-vault-header-meta-v2 {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 6px !important;
    font-size: 12px !important;
    line-height: 1.3 !important;
    color: rgba(255,255,255,0.75) !important;
    margin: 0 !important;
    padding: 0 !important;
    visibility: visible !important;
    opacity: 1 !important;
    max-height: none !important;
    height: auto !important;
    overflow: visible !important;
    position: static !important;
    width: auto !important;
    clip: auto !important;
    clip-path: none !important;
    transform: none !important;
}

html body .cv-app.cv-vault-wrap .cv-vault-header-v2 .cv-vault-meta-item-v2,
html body .cv-vault-wrap .cv-vault-header-v2 .cv-vault-meta-item-v2,
html body .cv-vault-header-v2 .cv-vault-meta-item-v2 {
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
    color: rgba(255,255,255,0.85) !important;
    visibility: visible !important;
    opacity: 1 !important;
}

html body .cv-app.cv-vault-wrap .cv-vault-header-v2 .cv-vault-meta-sep-v2,
html body .cv-vault-wrap .cv-vault-header-v2 .cv-vault-meta-sep-v2,
html body .cv-vault-header-v2 .cv-vault-meta-sep-v2 {
    display: inline-block !important;
    width: 3px !important;
    height: 3px !important;
    border-radius: 50% !important;
    background: rgba(255,255,255,0.5) !important;
    margin: 0 2px !important;
    visibility: visible !important;
    opacity: 1 !important;
}





@media (max-width: 680px) {
    html body .cv-app.cv-vault-wrap .cv-vault-header-v2 .cv-vault-header-identity-v2 {
        min-height: 0 !important;
        padding: 0 60px 0 clamp(50px, 14vw, 84px) !important; 
        text-align: left !important;
    }
    html body .cv-app.cv-vault-wrap .cv-vault-header-v2 .cv-vault-avatar-v2 {
        left: 0 !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
        width: clamp(38px, 10.5vw, 56px) !important;
        height: clamp(38px, 10.5vw, 56px) !important;
        min-width: clamp(38px, 10.5vw, 56px) !important;
        min-height: clamp(38px, 10.5vw, 56px) !important;
        border-width: 2px !important;
    }
    html body .cv-app.cv-vault-wrap .cv-vault-header-v2 .cv-vault-header-greeting-v2 { font-size: clamp(15px, 3.7vw, 21px) !important; margin: 0 0 1px !important; line-height: 1.15 !important; }
    html body .cv-app.cv-vault-wrap .cv-vault-header-v2 .cv-vault-header-subtitle-v2 { margin: 0 !important; }
    html body .cv-app.cv-vault-wrap .cv-vault-header-v2 .cv-hero-info-wrap { position: relative !important; }
    
    html body .cv-app.cv-vault-wrap .cv-vault-header-v2 .cv-hero-info-wrap .cv-vault-header-meta-v2 {
        position: absolute !important;
        top: 100% !important; left: 0 !important;
        width: auto !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        justify-content: flex-start !important;
        text-align: left !important;
        gap: 7px !important;
        margin: 6px 0 0 !important;
        min-width: 200px; max-width: 250px;
        background: rgba(13,27,52,.97) !important;
        border: 1px solid rgba(255,255,255,.18) !important;
        border-radius: 10px !important;
        padding: 11px 13px !important;
        box-shadow: 0 10px 30px rgba(0,0,0,.4) !important;
        z-index: 30 !important;
    }
    html body .cv-app.cv-vault-wrap .cv-vault-header-v2 .cv-hero-info-wrap .cv-vault-meta-item-v2 { align-self: flex-start !important; }
    html body .cv-app.cv-vault-wrap .cv-vault-header-v2 .cv-hero-info-wrap .cv-vault-meta-sep-v2 { display: none !important; }
}







   cv-premium-select — Dropdown premium stylé (remplace <select>)
   ═══════════════════════════════════════════════════════════════ */
.cv-premium-select-host { display: none; }
.cv-premium-select {
    position: relative;
    display: inline-flex;
    width: 100%;
    max-width: 100%;
    font-size: 13px;
    font-family: inherit;
    user-select: none;
}
.cv-premium-select-trigger {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 9px 38px 9px 14px;
    background: #fff;
    border: 1.5px solid #e2e8f0;
    border-radius: 8px;
    color: #1e293b;
    font-size: 13px;
    line-height: 1.4;
    text-align: left;
    cursor: pointer;
    transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
    box-shadow: 0 1px 2px rgba(15, 23, 42, .04);
}
.cv-premium-select-trigger:hover {
    border-color: #cbd5e1;
    background: #fafbfc;
}
.cv-premium-select.is-open .cv-premium-select-trigger,
.cv-premium-select-trigger:focus-visible {
    border-color: #1e3a5f;
    outline: none;
    box-shadow: 0 0 0 3px rgba(30, 58, 95, .14);
    background: #fff;
}
.cv-premium-select-value {
    flex: 1;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: #0f172a;
    font-weight: 500;
}
.cv-premium-select-value.is-placeholder { color: #94a3b8; font-weight: 400; }
.cv-premium-select-caret {
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    width: 18px;
    height: 18px;
    color: #64748b;
    transition: transform .22s cubic-bezier(.4,0,.2,1), color .18s ease;
    flex-shrink: 0;
    pointer-events: none;
}
.cv-premium-select.is-open .cv-premium-select-caret {
    transform: translateY(-50%) rotate(180deg);
    color: #1e3a5f;
}

.cv-premium-select-menu {
    



    position: fixed;
    top: 0;
    left: 0;
    min-width: 180px;
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 10px;
    box-shadow:
        0 12px 32px rgba(15, 23, 42, .12),
        0 4px 10px rgba(15, 23, 42, .06),
        0 0 0 1px rgba(15, 23, 42, .02);
    padding: 6px;
    max-height: 280px;
    overflow-y: auto;
    






    overflow-x: hidden;
    opacity: 0;
    transform: translateY(-6px) scale(.98);
    pointer-events: none;
    transition: opacity .16s ease, transform .2s cubic-bezier(.4,0,.2,1);
    z-index: 100030;
}




.cv-premium-select.is-open .cv-premium-select-menu,
.cv-premium-select-menu.is-open {
    opacity: 1;
    transform: translateY(0) scale(1);
    pointer-events: auto;
}
.cv-premium-select-menu::-webkit-scrollbar { width: 8px; }
.cv-premium-select-menu::-webkit-scrollbar-track { background: transparent; }
.cv-premium-select-menu::-webkit-scrollbar-thumb { background: #cbd5e1; border-radius: 4px; }
.cv-premium-select-menu::-webkit-scrollbar-thumb:hover { background: #94a3b8; }

.cv-premium-select-option {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
    padding: 9px 12px;
    border-radius: 6px;
    font-size: 13px;
    color: #1e293b;
    cursor: pointer;
    transition: background-color .12s ease, color .12s ease;
    line-height: 1.35;
    


    white-space: normal;
    overflow-wrap: anywhere;
    word-break: break-word;
    text-align: left;
}
.cv-premium-select-option + .cv-premium-select-option { margin-top: 2px; }
.cv-premium-select-option:hover,
.cv-premium-select-option.is-focus {
    background: #f1f5f9;
    color: #0f172a;
}
.cv-premium-select-option.is-selected {
    background: linear-gradient(135deg, rgba(30, 58, 95, .08) 0%, rgba(42, 82, 152, .08) 100%);
    color: #1e3a5f;
    font-weight: 600;
}
.cv-premium-select-option.is-selected::after {
    content: '✓';
    margin-left: auto;
    color: #1e3a5f;
    font-weight: 700;
    font-size: 13px;
}
.cv-premium-select-option.is-disabled {
    opacity: .5;
    cursor: not-allowed;
    pointer-events: none;
}


.cv-notif-cell .cv-premium-select { max-width: 240px; }
.cv-notif-cell[colspan="2"] .cv-premium-select { margin: 0 auto; display: flex; }


.cv-premium-select.is-disabled .cv-premium-select-trigger {
    background: #f8fafc;
    color: #94a3b8;
    cursor: not-allowed;
    border-color: #e2e8f0;
}
.cv-premium-select.is-disabled .cv-premium-select-caret { color: #cbd5e1; }



.cv-switch {
    position: relative;
    display: inline-block;
    width: 44px;
    height: 24px;
    flex-shrink: 0;
}
.cv-switch input {
    opacity: 0;
    width: 0;
    height: 0;
    position: absolute;
}
.cv-switch-slider {
    position: absolute;
    cursor: pointer;
    inset: 0;
    background: linear-gradient(135deg, #d1d5db 0%, #c4c9d1 100%);
    border-radius: 24px;
    transition: background 0.3s ease, box-shadow 0.3s ease;
    box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1);
}
.cv-switch-slider::before {
    content: '';
    position: absolute;
    height: 18px;
    width: 18px;
    left: 3px;
    bottom: 3px;
    background: linear-gradient(180deg, #fff 0%, #f3f4f6 100%);
    border-radius: 50%;
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.3s ease;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.18), 0 0 1px rgba(0, 0, 0, 0.08);
}
.cv-switch:hover .cv-switch-slider {
    background: linear-gradient(135deg, #bfc4cc 0%, #b0b6bf 100%);
}
.cv-switch:hover .cv-switch-slider::before {
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.22), 0 0 1px rgba(0, 0, 0, 0.1);
}
.cv-switch input:checked + .cv-switch-slider {
    background: linear-gradient(135deg, #22c55e 0%, #16a34a 100%);
    box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.08), 0 0 8px rgba(34, 197, 94, 0.25);
}
.cv-switch input:checked + .cv-switch-slider::before {
    transform: translateX(20px);
}
.cv-switch:hover input:checked + .cv-switch-slider {
    background: linear-gradient(135deg, #16a34a 0%, #15803d 100%);
    box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.08), 0 0 12px rgba(34, 197, 94, 0.35);
}
.cv-switch input:focus-visible + .cv-switch-slider {
    outline: 2px solid var(--cvf-primary, #1e3a5f);
    outline-offset: 2px;
}


.cv-theme-preview-wrap { max-width: 600px; }
.cv-theme-preview { border: 1px solid #e2e8f0; border-radius: 12px; overflow: hidden; box-shadow: 0 2px 10px rgba(0,0,0,.08); background: #f7f8fc; }
.cv-tp-header { background: linear-gradient(135deg, #1e3a5f, #2a5298); color: #fff; padding: 18px 20px 14px; }
.cv-tp-greeting { font-size: 16px; font-weight: 700; }
.cv-tp-subtitle { font-size: 11px; opacity: .75; margin-top: 2px; }
.cv-tp-stats { display: flex; gap: 12px; margin-top: 10px; font-size: 11px; }
.cv-tp-stat { background: rgba(255,255,255,.15); padding: 3px 8px; border-radius: 6px; }
.cv-tp-stat-storage { margin-left: auto; opacity: .8; }
.cv-tp-tabs { display: flex; gap: 0; background: #fff; border-bottom: 1px solid #e2e8f0; }
.cv-tp-tab { padding: 8px 14px; font-size: 11px; color: #64748b; border-bottom: 2px solid transparent; }
.cv-tp-tab-active { color: #1e3a5f; font-weight: 600; border-bottom-color: #2a5298; }
.cv-tp-body { padding: 16px; }
.cv-tp-card { background: #fff; border: 1px solid #e2e8f0; border-radius: 8px; height: 40px; margin-bottom: 8px; }
.cv-tp-card-sm { height: 28px; width: 70%; }


.cv-settings-page-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 24px;
    padding: 24px 28px;
    background: linear-gradient(135deg, var(--cvf-primary, #1e3a5f) 0%, #2a5298 100%);
    border-radius: 16px;
    color: #fff;
    box-shadow: 0 4px 20px rgba(30,58,95,.2);
}
.cv-settings-page-header-left {
    flex: 1;
    min-width: 0;
}
.cv-settings-page-title {
    font-size: 28px;
    font-weight: 700;
    color: #fff;
    margin: 0 0 8px;
    display: flex;
    align-items: center;
    gap: 10px;
    letter-spacing: -0.5px;
}
.cv-settings-page-subtitle {
    font-size: 13px;
    color: rgba(255,255,255,.75);
    margin: 0;
    line-height: 1.5;
    max-width: 550px;
}
.cv-settings-header-version {
    display:flex;align-items:center;gap:10px;flex-wrap:wrap;
    font-size: 11px;
    font-weight: 500;
}
.cv-settings-header-version .cv-settings-version-tag{
    background: rgba(255,255,255,.15);
    padding: 4px 10px;
    border-radius: 20px;
    font-weight: 600;
}
.cv-settings-header-version .button{
    display:inline-flex;align-items:center;gap:5px;
    font-size:12px;padding:4px 10px;height:auto;line-height:1.4;
}


.cv-settings-inline-notice {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 6px 16px;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 600;
    margin-top: 4px;
    animation: cv-notice-slide-in 0.5s ease forwards;
}
.cv-settings-inline-notice .dashicons {
    font-size: 18px;
    width: 18px;
    height: 18px;
    line-height: 18px;
}
.cv-settings-inline-notice-success {
    background: rgba(39, 174, 96, 0.2);
    color: #d4edda;
    border: 1px solid rgba(39, 174, 96, 0.3);
}
@keyframes cv-notice-slide-in {
    from {
        opacity: 0;
        transform: translateY(8px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}









.cv-vault-wrap select.cv-premium-select-host,
.cv-app select.cv-premium-select-host,
select.cv-premium-select-host {
    display: none !important;
}
.cv-vault-wrap .cv-premium-select { font-size: 14px; }
.cv-vault-wrap button.cv-premium-select-trigger {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    width: 100% !important;
    height: 40px;
    padding: 9px 38px 9px 14px !important;
    background: #fff !important;
    border: 1.5px solid var(--cvf-border, #e2e8f0) !important;
    border-radius: 10px !important;
    color: var(--cvf-text, #1e293b) !important;
    font-size: 14px !important;
    box-shadow: 0 1px 2px rgba(15, 23, 42, .04) !important;
}
.cv-vault-wrap button.cv-premium-select-trigger:hover {
    border-color: var(--cvf-primary, #cbd5e1) !important;
    background: #fafbfc !important;
}
.cv-vault-wrap .cv-premium-select.is-open .cv-premium-select-trigger,
.cv-vault-wrap button.cv-premium-select-trigger:focus,
.cv-vault-wrap button.cv-premium-select-trigger:focus-visible {
    border-color: var(--cvf-primary, #1e3a5f) !important;
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(var(--cvf-primary-rgb, 30, 58, 95), 0.12) !important;
    background: #fff !important;
}





.cv-docs-wrap { position: relative; }
.cv-docs-wrap > .cv-view-switch {
    display: flex; justify-content: flex-end; margin: 0 0 14px auto; width: fit-content;
    gap: 2px; padding: 3px; border: 1px solid var(--cvf-border, #e1e5eb);
    border-radius: 9px; background: var(--cvf-bg, #f6f8fb);
}
.cv-view-btn {
    display: inline-flex; align-items: center; justify-content: center;
    width: 34px; height: 30px; border: none; border-radius: 6px;
    background: transparent; color: var(--cvf-text-muted, #64748b);
    cursor: pointer; transition: all .15s; font-family: inherit;
}
.cv-view-btn:hover { background: var(--cvf-card, #fff); color: var(--cvf-primary, #1e3a5f); }
.cv-view-btn.active { background: var(--cvf-primary, #1e3a5f); color: #fff; }
.cv-view-btn .dashicons { font-size: 18px; width: 18px; height: 18px; }

.cv-docs-view { display: none; }
.cv-docs-wrap[data-view="list"]    .cv-docs-list    { display: block; }
.cv-docs-wrap[data-view="grid"]    .cv-docs-grid    { display: block; }
.cv-docs-wrap[data-view="gallery"] .cv-docs-gallery { display: flex; }


.cv-docs-list-hidden, .cv-docs-grid-hidden { display: none !important; }
.cv-docs-more {
    display: block; margin: 14px auto 2px; padding: 8px 18px;
    border: 1px solid var(--cvf-border, #e1e5eb); border-radius: 8px; background: var(--cvf-bg, #f6f8fb);
    color: var(--cvf-primary, #1e3a5f); font-size: 13px; font-weight: 600; cursor: pointer; font-family: inherit; transition: all .15s;
}
.cv-docs-more:hover { background: var(--cvf-primary, #1e3a5f); color: #fff; border-color: var(--cvf-primary, #1e3a5f); }


.cv-docs-grid-items { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 14px; }
.cv-doc-tile {
    display: flex; flex-direction: column; align-items: center;
    border: 1px solid var(--cvf-border, #e1e5eb); border-radius: 12px;
    background: var(--cvf-card, #fff); padding: 14px 12px 10px;
    position: relative; transition: box-shadow .15s, transform .15s, border-color .15s;
}
.cv-doc-tile:hover { box-shadow: 0 6px 18px rgba(0,0,0,.08); transform: translateY(-2px); border-color: var(--cvf-primary, #1e3a5f); }
.cv-doc-tile-thumb {
    width: 100%; height: 92px; display: flex; flex-direction: column;
    align-items: center; justify-content: center; gap: 6px;
    border-radius: 8px; background: var(--cvf-bg, #f6f8fb); margin-bottom: 10px; position: relative;
}
.cv-doc-tile-thumb.cv-preview-btn { cursor: pointer; }
.cv-doc-tile-thumb .dashicons { font-size: 40px; width: 40px; height: 40px; color: var(--cvf-text-muted, #64748b); }
.cv-doc-type-pdf .dashicons { color: #e0413a; }
.cv-doc-type-img .dashicons { color: #2f9e44; }
.cv-doc-tile-ext { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; color: var(--cvf-text-muted, #64748b); }
.cv-doc-tile-name { font-size: 12.5px; font-weight: 600; color: var(--cvf-text, #1e293b); text-align: center; line-height: 1.3; max-height: 2.6em; overflow: hidden; width: 100%; word-break: break-word; }
.cv-doc-tile-meta { font-size: 11px; color: var(--cvf-text-muted, #64748b); margin: 4px 0 8px; text-align: center; }
.cv-doc-tile-actions { display: flex; flex-wrap: wrap; gap: 4px; justify-content: center; opacity: 0; transition: opacity .15s; }
.cv-doc-tile:hover .cv-doc-tile-actions { opacity: 1; }


.cv-docs-gallery { gap: 14px; flex-direction: column; }
.cv-docs-gallery-main { width: 100%; }
.cv-docs-gallery-stage {
    width: 100%; min-height: 360px; max-height: 60vh; display: flex; align-items: center; justify-content: center;
    background: #f0f0f0; border-radius: 12px; overflow: hidden;
}
.cv-docs-gallery-stage img { max-width: 100%; max-height: 60vh; object-fit: contain; display: block; }
.cv-docs-gallery-stage iframe { width: 100%; height: 60vh; border: none; }
.cv-docs-gallery-noprev { display: flex; flex-direction: column; align-items: center; gap: 8px; color: var(--cvf-text-muted, #64748b); padding: 40px; text-align: center; }
.cv-docs-gallery-noprev .dashicons { font-size: 56px; width: 56px; height: 56px; }
.cv-docs-gallery-strip { display: flex; gap: 8px; overflow-x: auto; padding: 4px 2px 8px; }
.cv-docs-gallery-thumb {
    flex: 0 0 auto; width: 92px; height: 88px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 5px;
    border: 1.5px solid var(--cvf-border, #e1e5eb); border-radius: 9px; background: var(--cvf-card, #fff); cursor: pointer; padding: 6px; transition: all .15s;
}
.cv-docs-gallery-thumb:hover { border-color: var(--cvf-primary, #1e3a5f); }
.cv-docs-gallery-thumb.active { border-color: var(--cvf-primary, #1e3a5f); box-shadow: 0 0 0 2px var(--cvf-primary, #1e3a5f) inset; }
.cv-docs-gallery-thumb .dashicons { font-size: 30px; width: 30px; height: 30px; color: var(--cvf-text-muted, #64748b); }
.cv-docs-gallery-thumb-name { font-size: 10px; line-height: 1.2; text-align: center; max-height: 2.4em; overflow: hidden; width: 100%; word-break: break-word; color: var(--cvf-text-muted, #64748b); }


.cv-docs-gallery-main { width: 100%; display: flex; flex-direction: column; gap: 10px; }
.cv-docs-gallery-info { display: flex; flex-direction: column; gap: 4px; padding: 4px 2px; }
.cv-docs-gallery-name { font-size: 14px; font-weight: 700; color: var(--cvf-text, #1e293b); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cv-docs-gallery-meta { font-size: 12px; color: var(--cvf-text-muted, #64748b); }
.cv-docs-gallery-actions { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 4px; }


.cv-docs-gallery-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.cv-docs-gallery-head .cv-docs-gallery-name { flex: 1 1 auto; min-width: 0; }
.cv-docs-gallery-actions { flex: 0 0 auto; display: flex; flex-wrap: wrap; gap: 5px; opacity: 1; }
.cv-docs-gallery-desc { font-size: 13px; color: var(--cvf-text, #334155); line-height: 1.5; margin-top: 2px; }

.cv-doc-navitem:focus, .cv-doc-navitem:focus-visible { outline: 2px solid var(--cvf-primary, #1e3a5f); outline-offset: 2px; }
.cv-docs-list .cv-doc-navitem:focus { background: rgba(30,58,95,.06); }
.cv-doc-tile.cv-doc-navitem:focus { box-shadow: 0 0 0 2px var(--cvf-primary, #1e3a5f); border-color: var(--cvf-primary, #1e3a5f); }


.cv-docs-gallery-thumb:focus { outline: none; }
.cv-docs-gallery-thumb:focus-visible { outline: 2px solid rgba(var(--cvf-primary-rgb, 30,58,95), .4); outline-offset: 1px; }


.cv-docs-gallery-stage-wrap { position: relative; width: 100%; }
.cv-docs-gallery-overlay {
    position: absolute; top: 10px; right: 10px; z-index: 4;
    display: flex; flex-wrap: wrap; gap: 5px; justify-content: flex-end;
    max-width: 60%;
    background: rgba(255,255,255,.94); padding: 5px 6px; border-radius: 9px;
    box-shadow: 0 2px 10px rgba(0,0,0,.16);
}
.cv-docs-gallery-overlay:empty { display: none; }
.cv-docs-gallery-overlay .cv-dact-btn { background: #fff; }
.cv-docs-gallery-head .cv-docs-gallery-meta { flex: 0 0 auto; white-space: nowrap; }


.cv-force-hidden { display: none !important; }

#cv-folder-suggest-btn.cv-force-hidden { display: none !important; }


.cv-docs-mbar { margin: 0 0 14px; }
.cv-docs-mbar .cv-mbar-btn.active { background: var(--cvf-primary, #1e3a5f); color: #fff; border-color: var(--cvf-primary, #1e3a5f); }
.cv-docs-empty { text-align: center; padding: 24px; color: var(--cvf-text-muted, #64748b); font-size: 13px; }


.cv-docs-mbar { margin: 0 0 12px; }
.cv-docs-mbar .cv-mbar-main { gap: 8px; }
.cv-docs-mbar .cv-mbar-search { flex: 1 1 200px; min-width: 150px; }
.cv-vault-wrap .cv-docs-mbar .cv-mbar-search input { height: 36px; border-radius: 9px; font-size: 13px; padding-left: 34px; background: #fff; }
.cv-docs-mbar .cv-mbar-search .dashicons { font-size: 16px; width: 16px; height: 16px; left: 10px; }
.cv-docs-mbar .cv-mbar-types { background: #fff; padding: 3px; border-radius: 10px; border: 1px solid var(--cvf-border, #e8ecf0); gap: 1px; }
.cv-vault-wrap .cv-docs-mbar .cv-mbar-types .cv-mtype-btn { height: 30px; padding: 0 11px; font-size: 12.5px; }
.cv-vault-wrap .cv-docs-mbar .cv-mbar-types .cv-mtype-icon { width: 32px; padding: 0; }
.cv-vault-wrap .cv-docs-mbar .cv-mbar-types .cv-mtype-btn .dashicons { font-size: 16px; width: 16px; height: 16px; }
.cv-vault-wrap .cv-docs-mbar .cv-mbar-btn { height: 36px; border-radius: 9px; font-size: 13px; padding: 0 12px; background: #fff; }
.cv-docs-mbar .cv-mbar-btn .dashicons { font-size: 16px; width: 16px; height: 16px; }
.cv-docs-mbar .cv-mbar-iconbtn { width: 36px; padding: 0; justify-content: center; }
.cv-docs-mbar .cv-docs-comments-toggle.active,
.cv-docs-mbar .cv-media-comments-toggle.active { background: var(--cvf-primary, #1e3a5f) !important; color: #fff !important; border-color: var(--cvf-primary, #1e3a5f) !important; }
.cv-docs-mbar .cv-media-comments-toggle.active .dashicons { color: #fff !important; }
.cv-docs-mbar .cv-docs-count,
.cv-docs-mbar .cv-media-count { font-size: 12px; color: var(--cvf-text-muted, #64748b); margin-left: auto; white-space: nowrap; }


.cv-vault-wrap .cv-docs-mbar .cv-mbar-types .cv-mtype-btn.active {
    background: var(--cvf-primary, #1e3a5f) !important; color: #fff !important;
    box-shadow: 0 2px 8px rgba(124,58,237,.25);
}
.cv-vault-wrap .cv-docs-mbar .cv-mbar-types .cv-mtype-btn.active .dashicons { color: #fff !important; }


.cv-vault-wrap .cv-folder-files-table thead th {
    font-size: 10px !important; font-weight: 600; text-transform: uppercase; letter-spacing: .04em;
    color: var(--cvf-text-muted, #94a3b8) !important; padding-top: 7px; padding-bottom: 7px;
}


.cv-docs-gallery-info {
    background: linear-gradient(180deg, #fbfdff, #f4f7fb);
    border: 1px solid var(--cvf-border, #e8edf3);
    border-radius: 14px; padding: 16px 18px;
}
.cv-docs-gallery-head { align-items: flex-start; gap: 14px; }
.cv-docs-gallery-name { display: flex; align-items: center; gap: 9px; font-size: 16px; font-weight: 700; color: var(--cvf-text, #1e293b); min-width: 0; }
.cv-docs-gallery-name .dashicons { font-size: 22px; width: 22px; height: 22px; color: var(--cvf-primary, #1e3a5f); flex: 0 0 auto; }
.cv-docs-gallery-nm { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cv-docs-gallery-chips { display: flex; gap: 7px; flex-wrap: wrap; flex: 0 0 auto; }
.cv-docs-gchip { display: inline-flex; align-items: center; gap: 5px; background: #fff; border: 1px solid var(--cvf-border, #e6ebf1); border-radius: 999px; padding: 4px 11px; font-size: 11.5px; font-weight: 600; color: #475569; }
.cv-docs-gchip .dashicons { font-size: 14px; width: 14px; height: 14px; color: var(--cvf-text-muted, #94a3b8); }
.cv-docs-gchip-ext { background: var(--cvf-primary, #1e3a5f); color: #fff; border-color: var(--cvf-primary, #1e3a5f); letter-spacing: .03em; }
.cv-docs-gallery-desc { margin-top: 11px; font-size: 13.5px; line-height: 1.6; color: #475569; border-top: 1px dashed #e3e9f0; padding-top: 11px; }
.cv-docs-gallery-strip { gap: 10px; }
.cv-docs-gallery-thumb { width: 118px; height: 104px; gap: 8px; border-width: 1.5px; border-radius: 13px; padding: 10px; }
.cv-docs-gallery-thumb:hover { transform: translateY(-2px); box-shadow: 0 6px 16px rgba(0,0,0,.08); }
.cv-docs-gallery-thumb.active { box-shadow: 0 0 0 3px rgba(30,58,95,.15); }
.cv-docs-gallery-thumb .dashicons { font-size: 40px; width: 40px; height: 40px; }
.cv-docs-gallery-thumb-name { font-size: 10.5px; max-height: 2.5em; }


.cv-docs-gallery-thumb-ico { position: relative; display: flex; align-items: center; justify-content: center; width: 58px; height: 58px; border-radius: 13px; }
.cv-docs-gallery-thumb .cv-docs-gallery-thumb-ico .dashicons { font-size: 32px; width: 32px; height: 32px; }
.cv-docs-gallery-thumb-ext { position: absolute; bottom: -7px; right: -9px; font-size: 8.5px; font-weight: 800; letter-spacing: .02em; color: #fff; padding: 1px 5px; border-radius: 5px; box-shadow: 0 1px 3px rgba(0,0,0,.18); }
.cv-docs-gallery-thumb.cv-doc-type-pdf  .cv-docs-gallery-thumb-ico { background: #fdecea; }
.cv-docs-gallery-thumb.cv-doc-type-pdf  .dashicons { color: #e0413a; }
.cv-docs-gallery-thumb.cv-doc-type-pdf  .cv-docs-gallery-thumb-ext { background: #e0413a; }
.cv-docs-gallery-thumb.cv-doc-type-img  .cv-docs-gallery-thumb-ico { background: #e9f7ee; }
.cv-docs-gallery-thumb.cv-doc-type-img  .dashicons { color: #2f9e44; }
.cv-docs-gallery-thumb.cv-doc-type-img  .cv-docs-gallery-thumb-ext { background: #2f9e44; }
.cv-docs-gallery-thumb.cv-doc-type-file .cv-docs-gallery-thumb-ico { background: #eef2f7; }
.cv-docs-gallery-thumb.cv-doc-type-file .dashicons { color: #5b6b7f; }
.cv-docs-gallery-thumb.cv-doc-type-file .cv-docs-gallery-thumb-ext { background: #5b6b7f; }


.cv-media-strip .cv-media-gthumb { display: flex; flex-direction: column; align-items: center; }
.cv-media-gthumb-pv { width: 100%; height: 72px; border-radius: 8px; overflow: hidden; display: flex; align-items: center; justify-content: center; background: #0f172a; }
.cv-media-gthumb-pv video,
.cv-media-gthumb-pv img { width: 100%; height: 100%; object-fit: cover; display: block; }
.cv-media-gthumb-ico { width: 100%; height: 72px; border-radius: 8px; display: flex; align-items: center; justify-content: center; }
.cv-media-gthumb-ico .dashicons { font-size: 30px; width: 30px; height: 30px; }

.cv-media-gthumb.cv-doc-type-vid .cv-media-gthumb-ico { background: #eef2ff; }
.cv-media-gthumb.cv-doc-type-vid .cv-media-gthumb-ico .dashicons { color: #6d28d9; }
.cv-media-gthumb.cv-doc-type-aud .cv-media-gthumb-ico { background: #fff1f2; }
.cv-media-gthumb.cv-doc-type-aud .cv-media-gthumb-ico .dashicons { color: #e11d48; }
.cv-media-gthumb.cv-doc-type-emb .cv-media-gthumb-ico { background: #ecfeff; }
.cv-media-gthumb.cv-doc-type-emb .cv-media-gthumb-ico .dashicons { color: #0e7490; }

#cv-media-gallery-stage { width: 100%; display: flex; align-items: center; justify-content: center; }
#cv-media-gallery-stage video,
#cv-media-gallery-stage iframe { max-width: 100%; }

#cv-media-gallery-stage .cv-preview-embed-content { width: 100%; min-height: 0; }
#cv-media-gallery-stage .cv-embed-player-video video,
#cv-media-gallery-stage .cv-embed-player-video iframe { width: 100%; max-height: 50vh; border-radius: 12px; }
#cv-media-gallery-stage .cv-popup-audio-visualizer { min-height: 0; height: auto; flex: none; }
#cv-media-gallery-stage audio { height: 54px !important; width: 100%; }

.cv-preview-embed-desc {
  margin: 6px 16px 0; padding: 8px 12px;
  background: #f6f7fb; border-left: 3px solid var(--cv-primary, #7c3aed);
  border-radius: 8px; color: #44485a; font-size: 13px; line-height: 1.5;
}


.cv-media-edit-modal { position: fixed; inset: 0; z-index: 9999999; display: flex; align-items: center; justify-content: center; }
.cv-media-edit-backdrop { position: absolute; inset: 0; background: rgba(0,0,0,.45); }
.cv-media-edit-card { position: relative; background: var(--cv-card, #fff); border-radius: 14px; padding: 22px 24px; width: 92%; max-width: 440px; box-shadow: 0 20px 60px rgba(0,0,0,.25); }
.cv-media-edit-head { display: flex; align-items: center; gap: 8px; font-size: 16px; font-weight: 800; color: var(--cv-text-dark, #1e293b); margin-bottom: 16px; }
.cv-media-edit-lbl { display: block; font-size: 12px; font-weight: 600; color: var(--cv-text-muted, #64748b); margin: 10px 0 5px; }
.cv-media-edit-card input[type="text"], .cv-media-edit-card textarea { width: 100%; box-sizing: border-box; border: 1px solid var(--cv-border-focus, #cbd5e1); border-radius: 9px; padding: 9px 11px; font-size: 14px; font-family: inherit; color: var(--cv-text-dark, #1e293b); background: #fff; }
.cv-media-edit-card textarea { resize: vertical; }
.cv-media-edit-actions { display: flex; gap: 10px; justify-content: flex-end; margin-top: 18px; }
.cv-media-edit-cancel { padding: 9px 18px; border: 1px solid var(--cv-border-focus, #cbd5e1); border-radius: 9px; background: none; font-size: 13px; font-weight: 600; color: var(--cv-text-muted, #64748b); cursor: pointer; }
.cv-media-edit-save { padding: 9px 20px; border: none; border-radius: 9px; background: var(--cvf-primary, #7c3aed); color: #fff; font-size: 13px; font-weight: 700; cursor: pointer; }
.cv-media-edit-save:disabled { opacity: .6; cursor: default; }


.cv-media-confirm-card { text-align: center; max-width: 420px; }
.cv-media-confirm-icon { font-size: 44px; margin-bottom: 8px; }
.cv-media-confirm-title { font-size: 18px; font-weight: 800; color: var(--cv-text-dark, #1e293b); margin-bottom: 6px; }
.cv-media-confirm-msg { font-size: 14px; color: var(--cv-text-muted, #64748b); line-height: 1.5; margin-bottom: 4px; }
.cv-media-confirm-card .cv-media-edit-actions { justify-content: center; }
.cv-media-confirm-del { background: var(--cvf-danger, #e74c3c) !important; }


.cv-folder-file-name .cv-folder-file-desc { display: block; margin-top: 2px; color: var(--cvf-text-muted, #64748b); font-size: 11.5px; line-height: 1.35; }

@keyframes cvJustEdited { 0% { background: rgba(124,58,237,.18); } 100% { background: transparent; } }
.cv-just-edited { animation: cvJustEdited 2.4s ease-out; }
tr.cv-just-edited > td { animation: cvJustEdited 2.4s ease-out; }
.cv-doc-tile.cv-just-edited, .cv-folder-embed-item.cv-just-edited { box-shadow: 0 0 0 2px var(--cvf-primary, #7c3aed); border-radius: 10px; }


.cv-inline-edit-row > td { padding: 0 !important; }
.cv-inline-edit { padding: 14px 16px; background: var(--cvf-bg, #f7f8fc); border-left: 3px solid var(--cvf-primary, #7c3aed); border-radius: 0 8px 8px 0; }
.cv-inline-edit-panel { margin: 8px 0 14px; }
.cv-ie-row { margin-bottom: 10px; }
.cv-ie-lbl { display: block; font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .03em; color: var(--cvf-text-muted, #64748b); margin-bottom: 4px; }
.cv-inline-edit input[type=text], .cv-inline-edit textarea { width: 100%; box-sizing: border-box; border: 1px solid var(--cvf-border, #e4e8ee); border-radius: 8px; padding: 8px 10px; font-size: 13.5px; font-family: inherit; background: #fff; color: var(--cvf-text, #2c3e50); }
.cv-inline-edit input[readonly] { background: #eef1f6; color: var(--cvf-text-muted, #64748b); }
.cv-ie-folders, .cv-ie-tags { display: flex; flex-wrap: wrap; gap: 6px; }
.cv-ie-fold { display: inline-flex; align-items: center; gap: 6px; padding: 5px 11px; border: 1px solid var(--cvf-border, #e4e8ee); border-radius: 20px; font-size: 12.5px; cursor: pointer; background: #fff; }
.cv-ie-fold.on { border-color: var(--cvf-primary, #7c3aed); background: rgba(124,58,237,.08); color: var(--cvf-primary, #7c3aed); font-weight: 600; }
.cv-ie-fold input { margin: 0; }
.cv-ie-tag { padding: 5px 12px; border-radius: 20px; border: 1px solid var(--cvf-border, #e4e8ee); background: #fff; font-size: 12.5px; cursor: pointer; }
.cv-ie-tag.on { outline: 2px solid var(--cvf-primary, #7c3aed); outline-offset: 0; font-weight: 600; }
.cv-ie-tag.locked { opacity: .55; cursor: not-allowed; }
.cv-ie-actions { display: flex; justify-content: flex-end; gap: 8px; margin-top: 8px; }
.cv-ie-cancel { padding: 7px 16px; border: 1px solid var(--cvf-border, #e4e8ee); border-radius: 8px; background: none; font-size: 13px; font-weight: 600; color: var(--cvf-text-muted, #64748b); cursor: pointer; }
.cv-ie-save { padding: 7px 18px; border: none; border-radius: 8px; background: var(--cvf-primary, #7c3aed); color: #fff; font-size: 13px; font-weight: 700; cursor: pointer; }
.cv-ie-save:disabled { opacity: .6; cursor: default; }


.cv-inline-edit .cv-ie-tag { outline: none !important; background: #fff !important; border: 1px solid #d9dee6 !important; color: #6b7280 !important; font-weight: 500; box-shadow: none !important; }
.cv-inline-edit .cv-ie-tag.on { background: var(--cvf-primary, #7c3aed) !important; border-color: var(--cvf-primary, #7c3aed) !important; color: #fff !important; font-weight: 700; }
.cv-inline-edit .cv-ie-tag.on::before { content: "\2713 "; }
.cv-inline-edit .cv-ie-tag.locked { opacity: .5 !important; cursor: not-allowed; }
.cv-inline-edit .cv-ie-fold.on::after { content: " \2713"; color: var(--cvf-primary, #7c3aed); }


.cv-folder-files-table { table-layout: fixed; width: 100%; }
.cv-folder-files-table th:nth-child(2), .cv-folder-files-table td:nth-child(2) { width: 92px; }
.cv-folder-files-table th:nth-child(3), .cv-folder-files-table td:nth-child(3) { width: 128px; }
.cv-folder-files-table th:nth-child(4), .cv-folder-files-table td:nth-child(4) { width: 300px; }
.cv-folder-files-table td.cv-folder-file-name { overflow: hidden; }
.cv-folder-file-name .cv-folder-file-desc { display: block !important; width: 100%; white-space: normal; }


.cv-edit-saved-badge { display: inline-flex; align-items: center; gap: 4px; margin-left: 8px; padding: 2px 9px; border-radius: 12px; background: var(--cvf-success, #27ae60); color: #fff; font-size: 11px; font-weight: 700; vertical-align: middle; }


.cv-dact-btn.cv-tag-menu-btn { position: relative; }
.cv-tag-count-badge { position: absolute; top: -5px; right: -5px; min-width: 15px; height: 15px; padding: 0 3px; border-radius: 8px; background: var(--cvf-primary, #7c3aed); color: #fff; font-size: 9px; font-weight: 700; line-height: 15px; text-align: center; box-sizing: border-box; }


.cv-folder-file-name .cv-ff-main { display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 100%; }
.cv-folder-file-name .cv-folder-file-desc { display: block !important; width: 100%; white-space: normal; margin-top: 2px; }

.cv-dact-btn.cv-dact-disabled { opacity: .35; cursor: not-allowed; pointer-events: none; }


.cv-folder-file-name .cv-ff-main { white-space: normal !important; overflow: visible !important; text-overflow: clip !important; max-width: none !important; }



.cv-docs-gallery-main { display: flex; flex-direction: column; gap: 10px; }
.cv-dg-line1 { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.cv-dg-line1 .cv-docs-gallery-name { display: flex; align-items: center; gap: 6px; font-weight: 700; min-width: 0; }
.cv-dg-line1 .cv-docs-gallery-chips { display: flex; gap: 6px; flex-wrap: wrap; margin-left: auto; }
.cv-dg-line2 { display: flex; align-items: flex-start; gap: 12px; margin-top: 8px; padding-top: 8px; border-top: 1px solid rgba(0,0,0,.06); }
.cv-dg-line2 .cv-docs-gallery-desc { flex: 1; min-width: 0; color: var(--cvf-text-muted, #64748b); font-size: 13px; line-height: 1.45; }
.cv-dg-line2 .cv-dg-actions { margin-left: auto; display: flex; gap: 7px; flex-shrink: 0; flex-wrap: wrap; justify-content: flex-end; }


.cv-folder-files-table td.cv-folder-file-name { display: flex !important; flex-direction: column !important; align-items: flex-start !important; gap: 1px; }
.cv-folder-file-name .cv-ff-main { width: 100%; }
.cv-folder-file-name .cv-folder-file-desc { width: 100%; }


.cv-dg-line2 { align-items: center !important; }
.cv-dg-line2 .cv-docs-gallery-desc:empty { display: none; }

.cv-docs-gallery-main { display: flex; flex-direction: column; gap: 12px; }
.cv-docs-gallery-main .cv-docs-gallery-info { order: 1; }
.cv-docs-gallery-main .cv-docs-gallery-strip { order: 2; }
.cv-docs-gallery-main .cv-docs-gallery-stage-wrap { order: 3; }



.cv-docs-gallery-main .cv-docs-gallery-strip { order: 1 !important; }
.cv-docs-gallery-main .cv-docs-gallery-stage-wrap { order: 2 !important; }
.cv-docs-gallery-main .cv-docs-gallery-info { order: 3 !important; }

.cv-docs-gallery-main { background: var(--cvf-bg, #f7f8fc); border: 1px solid var(--cvf-border, #e4e8ee); border-radius: 16px; padding: 16px; gap: 12px; }

.cv-docs-gallery-main .cv-docs-gallery-strip { background: #fff; border: 1px solid var(--cvf-border, #e4e8ee); border-radius: 12px; padding: 8px; }
.cv-docs-gallery-stage-wrap { background: #fff; border: 1px solid var(--cvf-border, #e4e8ee); border-radius: 12px; padding: 14px; display: flex; align-items: center; justify-content: center; min-height: 240px; box-shadow: 0 2px 12px rgba(15,23,42,.05); }

#cv-docs-gallery-info, #cv-media-gallery-info { background: transparent !important; box-shadow: none !important; border: none !important; padding: 0 2px !important; }
.cv-dg-line2 { border-top: none !important; padding-top: 0 !important; margin-top: 6px !important; align-items: center !important; }


.cv-folder-section-header[data-sec-type] {
  --sec: var(--cvf-primary, #1e3a5f); --secbg: transparent;
  border-left: 4px solid var(--sec);
  background: var(--secbg);
  border-top-left-radius: 10px; border-bottom-left-radius: 10px;
}
.cv-folder-section-header[data-sec-type="documents"] { --sec: #2563eb; --secbg: #eff4ff; }
.cv-folder-section-header[data-sec-type="media"]     { --sec: #7c3aed; --secbg: #f5f0ff; }
.cv-folder-section-header[data-sec-type="cards"]     { --sec: #0d9488; --secbg: #ecfdf8; }
.cv-folder-section-header[data-sec-type="links"]     { --sec: #ea580c; --secbg: #fff4ec; }
.cv-folder-section-header[data-sec-type="notes"]     { --sec: #ca8a04; --secbg: #fefae8; }
.cv-folder-section-header[data-sec-type="messages"]  { --sec: #1e3a5f; --secbg: #eef2f8; } 
.cv-folder-section-header[data-sec-type="exchanges"] { --sec: #4f46e5; --secbg: #eef0ff; }
.cv-folder-section-header[data-sec-type] .cv-folder-section-title { color: var(--sec); }
.cv-folder-section-header[data-sec-type] .cv-folder-section-title .dashicons { color: var(--sec); }


.cv-docs-gallery-thumb.active { border-color: var(--cvf-primary, #1e3a5f) !important; box-shadow: 0 0 0 2px var(--cvf-primary, #1e3a5f) !important; }


.cv-docs-gallery-thumb.active {
  border: 1.5px solid var(--cvf-primary, #1e3a5f) !important;
  box-shadow: 0 0 0 3px rgba(var(--cvf-primary-rgb, 30,58,95), .13), 0 2px 10px rgba(15,23,42,.06) !important;
}


.cv-docs-gallery-thumb.active {
  border: 1px solid rgba(var(--cvf-primary-rgb, 30,58,95), .4) !important;
  box-shadow: 0 0 0 4px rgba(var(--cvf-primary-rgb, 30,58,95), .07) !important;
}


.cv-docs-gallery-thumb.active {
  border: 2.5px solid rgba(var(--cvf-primary-rgb, 30,58,95), .5) !important;
  box-shadow: none !important;
}


.cv-strip-scroll { position: relative; background: #fff; border: 1px solid var(--cvf-border, #e4e8ee); border-radius: 12px; }
.cv-docs-gallery-main .cv-strip-scroll { order: 1; }
.cv-strip-scroll .cv-docs-gallery-strip { background: transparent !important; border: none !important; border-radius: 0 !important; overflow-x: auto; flex-wrap: nowrap; scroll-behavior: smooth; padding: 8px 10px; scrollbar-width: thin; }

.cv-strip-scroll::before, .cv-strip-scroll::after { content: ""; position: absolute; top: 1px; bottom: 1px; width: 52px; pointer-events: none; opacity: 0; transition: opacity .16s ease; z-index: 1; border-radius: 12px; }
.cv-strip-scroll::before { left: 1px; background: linear-gradient(90deg, #fff 28%, rgba(255,255,255,0)); }
.cv-strip-scroll::after  { right: 1px; background: linear-gradient(270deg, #fff 28%, rgba(255,255,255,0)); }
.cv-strip-scroll.can-left::before { opacity: 1; }
.cv-strip-scroll.can-right::after { opacity: 1; }

.cv-strip-arrow { position: absolute; top: 50%; transform: translateY(-50%); z-index: 2; width: 30px; height: 30px; border-radius: 50%; border: 1px solid var(--cvf-border, #e4e8ee); background: #fff; color: var(--cvf-text, #2c3e50); display: none; align-items: center; justify-content: center; cursor: pointer; box-shadow: 0 2px 8px rgba(15,23,42,.14); padding: 0; }
.cv-strip-arrow:hover { background: var(--cvf-bg, #f7f8fc); }
.cv-strip-arrow .dashicons { font-size: 18px; width: 18px; height: 18px; }
.cv-strip-prev { left: 6px; } .cv-strip-next { right: 6px; }
.cv-strip-scroll.can-left .cv-strip-prev { display: inline-flex; }
.cv-strip-scroll.can-right .cv-strip-next { display: inline-flex; }


.cv-docs-gallery-thumb.active { box-shadow: 0 0 0 4px rgba(var(--cvf-primary-rgb, 30,58,95), .09) !important; }


.cv-inline-edit-panel { position: relative; z-index: 6; }








.cv-act-row { display: flex; align-items: center; gap: 2px; justify-content: flex-start; }
.cv-act-row .cv-dact-btn {
    border: none !important; background: transparent !important; box-shadow: none !important;
    width: 30px; height: 30px; min-width: 30px; padding: 0 !important;
    display: inline-flex; align-items: center; justify-content: center;
    

    color: #64748b !important; opacity: 1; position: relative;
    transition: background .15s, color .15s, opacity .15s;
}
.cv-act-row .cv-dact-btn .dashicons { color: inherit !important; font-size: 18px; width: 18px; height: 18px; }

.cv-folder-files-table tr:hover .cv-act-row .cv-dact-btn,
.cv-folder-files-table tr:focus-within .cv-act-row .cv-dact-btn { opacity: 1; color: #334155 !important; }
.cv-act-row .cv-dact-btn:hover { background: rgba(100, 116, 139, .14) !important; color: #1e293b !important; }
.cv-act-row .cv-dact-disabled { opacity: .35 !important; cursor: not-allowed; }

@media (hover: none) { .cv-act-row .cv-dact-btn { opacity: 1; color: #475569 !important; } }


.cv-act-more { position: relative; display: inline-flex; }
.cv-act-dots { font-size: 20px; font-weight: 700; line-height: 1; letter-spacing: 1px; }
.cv-act-more-dot {
    position: absolute; top: 3px; right: 3px; width: 7px; height: 7px; border-radius: 50%;
    background: var(--cvf-primary, #7c3aed); box-shadow: 0 0 0 2px #fff;
}



.cv-act-menu {
    position: fixed; min-width: 200px; z-index: 100000; display: none;
    background: #fff; border: 1px solid #e8edf3; border-radius: 12px; padding: 6px;
    box-shadow: 0 14px 36px rgba(15, 23, 42, .18);
}
.cv-act-menu.open { display: block; }
.cv-act-menu .cv-dact-btn {
    display: flex !important; width: 100% !important; height: auto !important; min-width: 0;
    align-items: center; justify-content: flex-start !important; gap: 12px;
    padding: 9px 12px !important; opacity: 1 !important; border: none !important;
    background: transparent !important; box-shadow: none !important; border-radius: 9px !important;
    color: #334155 !important;
}
.cv-act-menu .cv-dact-btn .dashicons { color: #64748b !important; font-size: 18px; width: 18px; height: 18px; flex: 0 0 auto; }
.cv-act-menu .cv-dact-btn:hover { background: #f1f5f9 !important; }
.cv-act-menu-lbl { order: 1; font-size: 13px; font-weight: 600; white-space: nowrap; }
.cv-act-menu .cv-comment-badge,
.cv-act-menu .cv-tag-count-badge { order: 2; position: static !important; margin-left: auto !important; transform: none !important; }

.cv-act-menu .cv-act-del { color: #dc2626 !important; border-top: 1px solid #f1f5f9; margin-top: 4px; padding-top: 10px !important; }
.cv-act-menu .cv-act-del .dashicons { color: #dc2626 !important; }
.cv-act-menu .cv-act-del:hover { background: #fef2f2 !important; }





.cv-docs-list table.cv-folder-files-table th,
.cv-docs-list table.cv-folder-files-table td { text-align: left !important; }



.cv-docs-list table.cv-folder-files-table tbody td {
    vertical-align: middle !important; padding-top: 14px !important; padding-bottom: 14px !important;
}


.cv-docs-list table.cv-folder-files-table td.cv-folder-file-name { display: table-cell !important; }
.cv-docs-list table.cv-folder-files-table td.cv-folder-file-actions { display: table-cell !important; }
.cv-docs-list table.cv-folder-files-table td.cv-folder-file-name .cv-ff-main { display: block; }
.cv-docs-list table.cv-folder-files-table td.cv-folder-file-name .cv-folder-file-desc { display: block; margin-top: 3px; }

.cv-docs-list table.cv-folder-files-table .cv-act-row { align-items: center; }

.cv-docs-list table.cv-folder-files-table .cv-folder-embed-type-badge { vertical-align: middle; }


.cv-docs-list table.cv-folder-files-table tbody td { border-bottom: 1px solid #f1f5f9 !important; }
.cv-docs-list table.cv-folder-files-table tbody tr:last-child td { border-bottom: 0 !important; }



.cv-docs-list table.cv-folder-files-table th.cv-mb-th,
.cv-docs-list table.cv-folder-files-table td.cv-mb-td { width: 44px !important; }
.cv-docs-list table.cv-folder-files-table th:nth-child(2),
.cv-docs-list table.cv-folder-files-table td:nth-child(2) { width: auto; }
.cv-docs-list table.cv-folder-files-table th:nth-child(3),
.cv-docs-list table.cv-folder-files-table td:nth-child(3) { width: 100px; padding-left: 18px; }
.cv-docs-list table.cv-folder-files-table th:nth-child(4),
.cv-docs-list table.cv-folder-files-table td:nth-child(4) { width: 132px; padding-left: 18px; }
.cv-docs-list table.cv-folder-files-table th:last-child,
.cv-docs-list table.cv-folder-files-table td:last-child { width: 160px; padding-left: 18px; }




.cv-docs-list table.cv-folder-files-table thead th {
    font-size: 11px !important; font-weight: 600 !important; text-transform: uppercase;
    letter-spacing: .05em; color: #94a3b8 !important;
}

.cv-docs-list table.cv-folder-files-table td.cv-folder-file-name .cv-ff-main,
.cv-docs-list table.cv-folder-files-table td.cv-folder-file-name a,
.cv-docs-list table.cv-folder-files-table td.cv-folder-file-name .cv-doc-name-t {
    font-size: 14px !important; font-weight: 600 !important; color: #1e293b !important;
}

.cv-docs-list table.cv-folder-files-table .cv-folder-file-desc {
    font-size: 12px !important; font-weight: 400 !important; color: #94a3b8 !important;
}

.cv-docs-list table.cv-folder-files-table td.cv-folder-file-size,
.cv-docs-list table.cv-folder-files-table td.cv-folder-file-date {
    font-size: 13px !important; font-weight: 500 !important; color: #64748b !important;
    font-variant-numeric: tabular-nums; letter-spacing: .01em;
}





@media (max-width: 680px) {
    .cv-docs-list table.cv-folder-files-table { table-layout: auto !important; width: 100% !important; }
    .cv-docs-list table.cv-folder-files-table thead { display: none !important; }
    .cv-docs-list table.cv-folder-files-table tbody { display: block !important; }
    .cv-docs-list table.cv-folder-files-table tr {
        display: block !important;
        position: relative !important;
        padding: 12px 12px 12px 46px !important;
        border-bottom: 1px solid #eef2f7 !important;
    }
    .cv-docs-list table.cv-folder-files-table td {
        display: block !important;
        width: auto !important;
        max-width: 100% !important;
        min-width: 0 !important;
        border: none !important;
        padding: 1px 0 !important;
        text-align: left !important;
        white-space: normal !important;
    }
    
    .cv-docs-list table.cv-folder-files-table td.cv-mb-td {
        position: absolute !important; left: 10px !important; top: 12px !important;
        width: 28px !important; padding: 0 !important; margin: 0 !important;
    }
    
    .cv-docs-list table.cv-folder-files-table td.cv-folder-file-name { display: block !important; width: auto !important; }
    .cv-docs-list table.cv-folder-files-table td.cv-folder-file-name .cv-ff-main,
    .cv-docs-list table.cv-folder-files-table td.cv-folder-file-name .cv-folder-file-desc { display: block !important; white-space: normal !important; }
    
    .cv-docs-list table.cv-folder-files-table td.cv-folder-file-size,
    .cv-docs-list table.cv-folder-files-table td.cv-folder-file-date,
    .cv-docs-list table.cv-folder-files-table td:nth-child(3),
    .cv-docs-list table.cv-folder-files-table td:nth-child(4) {
        display: inline-block !important; width: auto !important;
        font-size: 11.5px !important; color: #94a3b8 !important;
        margin: 3px 12px 0 0 !important; padding-left: 0 !important;
    }
    
    .cv-docs-list table.cv-folder-files-table td.cv-folder-file-actions,
    .cv-docs-list table.cv-folder-files-table td:last-child {
        display: block !important; width: auto !important;
        margin-top: 8px !important; padding-left: 0 !important;
    }
    .cv-docs-list table.cv-folder-files-table td:last-child .cv-act-row {
        display: flex !important; flex-wrap: wrap !important;
        justify-content: flex-start !important; gap: 6px !important; opacity: 1 !important;
    }
}


.cv-docs-list .cv-folder-file-expire {
    display: block; margin-top: 3px; font-size: 11.5px; font-weight: 500;
    color: #ea580c; font-variant-numeric: tabular-nums;
}
.cv-docs-list .cv-folder-file-expire .dashicons { font-size: 13px; width: 13px; height: 13px; vertical-align: -2px; }
.cv-docs-list .cv-folder-file-name a.cv-folder-file-link { cursor: pointer; }
.cv-docs-list .cv-folder-file-name a.cv-folder-file-link:hover { text-decoration: underline; }


.cv-front-modern-views .cv-front-modern-head { display:flex; justify-content:flex-end; align-items:center; margin-bottom:10px; }
.cv-front-modern-views .cv-folder-section-body { padding:0; }


.cv-front-modern-views { padding: 0 18px 16px; }
.cv-front-modern-views .cv-folder-section-body { padding: 0; }
.cv-front-modern-views .cv-mbar { margin-bottom: 14px; }
.cv-front-modern-views .cv-mbar-main .cv-view-switch { flex: 0 0 auto; margin-left: 2px; }
.cv-vault-wrap .cv-front-modern-views .cv-mbar-search { flex: 1 1 180px; min-width: 150px; }




.cv-front-modern-views { padding: 18px 20px 20px; }
.cv-front-modern-views .cv-mbar {
    background: var(--cvf-card, #fff);
    border: 1px solid var(--cvf-border, #e8edf3);
    border-radius: 16px;
    padding: 12px 14px;
    margin: 0 0 18px;
    box-shadow: 0 1px 2px rgba(15, 23, 42, .04), 0 6px 20px rgba(15, 23, 42, .05);
}

.cv-vault-wrap .cv-front-modern-views .cv-mbar-search { flex: 0 1 300px; min-width: 190px; }
.cv-front-modern-views .cv-mbar-main { gap: 12px; row-gap: 10px; }
.cv-front-modern-views .cv-mbar-main .cv-view-switch { margin-left: auto; }

.cv-front-modern-views .cv-mbar-main .cv-view-switch::before {
    content: ""; align-self: stretch; width: 1px; margin: 2px 8px 2px 0;
    background: var(--cvf-border, #e8edf3);
}
.cv-front-modern-views .cv-mbar-main .cv-view-switch { display: inline-flex; align-items: center; }

.cv-front-modern-views .cv-docs-wrap { margin-top: 2px; }

.cv-front-modern-views .cv-folder-embeds-grid { grid-template-columns: repeat(4, 1fr); }

.cv-folder-embed-item { position: relative; }
.cv-folder-embed-actions { position:absolute; top:8px; right:8px; display:flex; gap:4px; opacity:0; transform:translateY(-4px); transition:opacity .15s, transform .15s; background:rgba(255,255,255,.96); border:1px solid var(--cvf-border,#e2e8f0); border-radius:9px; padding:3px; box-shadow:0 6px 16px rgba(15,23,42,.16); z-index:5; }
.cv-folder-embed-item:hover .cv-folder-embed-actions, .cv-folder-embed-item:focus-within .cv-folder-embed-actions { opacity:1; transform:translateY(0); }
.cv-folder-embed-actions .cv-act-row { gap:2px; }

.cv-media-strip .cv-docs-gallery-thumb.cv-media-gthumb { width:128px; flex:0 0 128px; height:auto; }
.cv-media-gthumb .cv-media-gthumb-pv { width:100%; height:72px; border-radius:8px; overflow:hidden; display:block; background:#0f172a; }
.cv-media-gthumb .cv-media-gthumb-pv img, .cv-media-gthumb .cv-media-gthumb-pv video { width:100%; height:100%; object-fit:cover; display:block; }
.cv-media-gthumb .cv-media-gthumb-ico { width:100%; height:72px; border-radius:8px; display:flex; align-items:center; justify-content:center; background:#f1f5f9; }
.cv-media-gthumb .cv-media-gthumb-ico .dashicons { font-size:30px; width:30px; height:30px; color:var(--cvf-primary,#7c3aed); }
.cv-media-gthumb .cv-docs-gallery-thumb-name { font-size:11px; line-height:1.25; max-height:2.5em; overflow:hidden; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; text-align:center; width:100%; margin-top:5px; white-space:normal; }







.cv-docs-list table.cv-folder-files-table tr.cv-folder-embed-clickable:hover { transform: none !important; }




.cv-front-modern-views .cv-mbar-count { margin-left: 8px !important; }


.cv-tbadge-video  { background:#ede9fe !important; color:#6d28d9 !important; } 
.cv-tbadge-audio  { background:#dcfce7 !important; color:#15803d !important; } 
.cv-tbadge-screen { background:#cffafe !important; color:#0e7490 !important; } 
.cv-tbadge-embed  { background:#fef3c7 !important; color:#b45309 !important; } 



.cv-mmf-popover, .cv-dmf-popover, .cv-amf-popover {
    position: fixed !important; right: auto !important; bottom: auto !important;
    z-index: 100001 !important; width: 360px; max-width: calc(100vw - 16px);
    overflow-y: auto; overscroll-behavior: contain;
}



.cv-amf-popover { width: 420px; }

.cv-card-item { cursor: pointer; }
.cv-clv-overlay { position: fixed; inset: 0; background: rgba(15,23,42,.55); z-index: 100070; display: none; align-items: center; justify-content: center; padding: 20px; box-sizing: border-box; }
.cv-clv-box { position: relative; background: var(--cvf-card, #fff); border-radius: 16px; box-shadow: 0 24px 70px rgba(0,0,0,.3); width: 100%; max-width: 560px; max-height: 85vh; overflow-y: auto; padding: 28px 28px 22px; box-sizing: border-box; }
.cv-clv-accent { position: absolute; top: 0; left: 0; right: 0; height: 5px; border-radius: 16px 16px 0 0; background: var(--cvf-primary, #2563eb); }
.cv-clv-close { position: absolute; top: 12px; right: 12px; background: transparent; border: none; color: var(--cvf-text-soft, #64748b); cursor: pointer; width: 34px; height: 34px; border-radius: 8px; display: inline-flex; align-items: center; justify-content: center; }
.cv-clv-close:hover { background: var(--cvf-bg-soft, #f1f5f9); color: var(--cvf-text, #1f2733); }
.cv-clv-head { margin: 4px 36px 14px 0; }
.cv-clv-title { margin: 0; font-size: 20px; font-weight: 700; line-height: 1.3; color: var(--cvf-text, #1f2733); }
.cv-clv-author-badge { display: inline-block; margin-top: 6px; font-size: 12px; color: var(--cvf-text-soft, #64748b); }
.cv-clv-body { font-size: 14.5px; line-height: 1.7; color: var(--cvf-text, #1f2733); word-break: break-word; }
.cv-clv-body p { margin: 0 0 10px; }
.cv-clv-body a { color: var(--cvf-primary, #2563eb); }
.cv-clv-tags { margin-top: 14px; display: flex; flex-wrap: wrap; gap: 6px; }
.cv-clv-tags:empty { display: none; }
.cv-clv-meta { margin-top: 16px; padding-top: 12px; border-top: 1px solid var(--cvf-border, #e5e9f0); font-size: 12.5px; color: var(--cvf-text-soft, #64748b); }
.cv-clv-meta:empty { display: none; }

.cv-clv-overlay { backdrop-filter: blur(2px); }
.cv-clv-box { max-width: 600px; padding: 30px 32px 24px; }
.cv-clv-accent { height: 6px; border-radius: 16px 16px 0 0; }
.cv-clv-title { font-size: 22px; letter-spacing: -.01em; }
.cv-clv-body { font-size: 15px; line-height: 1.75; }
.cv-clv-author-badge { background: var(--cvf-bg-soft, #f1f5f9); padding: 2px 10px; border-radius: 999px; }

.cv-vault-wrap .cv-card-item, .cv-vault-wrap .cv-link-card { position: relative; }
.cv-card-item > .cv-mb-wrap-grid, .cv-link-card > .cv-mb-wrap-grid { position: absolute; top: 9px; left: 9px; z-index: 4; }
.cv-card-item > .cv-mb-wrap-grid { top: 12px; }

.cv-cards-grid { grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); }
.cv-cards-grid.cv-clview-grid .cv-fiche-text { display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden; }
.cv-cards-grid .cv-fiche-body { padding-left: 34px; }

.cv-clview-switch { display: inline-flex; gap: 2px; border: 1px solid var(--cvf-border, #dfe4ea); border-radius: 9px; padding: 2px; background: var(--cvf-card, #fff); flex: 0 0 auto; }
.cv-clview-btn { display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 30px; border: none; background: transparent; color: var(--cvf-text-soft, #64748b); border-radius: 7px; cursor: pointer; }
.cv-clview-btn:hover { background: var(--cvf-bg-soft, #f1f5f9); }
.cv-clview-btn.active { background: var(--cvf-primary, #2563eb); color: #fff; }
.cv-clview-btn .dashicons { font-size: 18px; width: 18px; height: 18px; }

.cv-cards-grid.cv-clview-list { grid-template-columns: 1fr; }
.cv-cards-grid.cv-clview-list .cv-fiche-text { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.cv-links-list.cv-clview-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 12px; }
.cv-link-card > .cv-mb-wrap-grid { top: 14px; left: 12px; }
.cv-vault-wrap .cv-link-card { padding-left: 40px; }

.cv-card-item > .cv-mb-wrap-grid, .cv-link-card > .cv-mb-wrap-grid { opacity: 1 !important; }

.cv-vault-wrap .cv-card-item .cv-hover-actions, .cv-vault-wrap .cv-link-card .cv-hover-actions { opacity: .55; gap: 4px; }
.cv-vault-wrap .cv-card-item:hover .cv-hover-actions, .cv-vault-wrap .cv-link-card:hover .cv-hover-actions { opacity: 1; }
.cv-vault-wrap .cv-card-item .cv-hover-action-btn, .cv-vault-wrap .cv-link-card .cv-hover-action-btn {
    display: inline-flex; align-items: center; justify-content: center; width: 30px; height: 30px;
    border-radius: 8px; background: var(--cvf-bg-soft, #f1f5f9); border: 1px solid var(--cvf-border, #e3e8ef);
    font-size: 14px; line-height: 1; cursor: pointer; padding: 0;
    transition: background .12s, transform .12s, box-shadow .12s, border-color .12s;
}
.cv-vault-wrap .cv-card-item .cv-hover-action-btn:hover, .cv-vault-wrap .cv-link-card .cv-hover-action-btn:hover {
    background: #e2e8f0; border-color: var(--cvf-primary, #2563eb); transform: translateY(-1px); box-shadow: 0 3px 10px rgba(15,23,42,.16);
}
.cv-vault-wrap .cv-card-item .cv-hover-action-delete:hover, .cv-vault-wrap .cv-link-card .cv-hover-action-delete:hover {
    background: #fee2e2; border-color: #dc2626; box-shadow: 0 3px 10px rgba(220,38,38,.18);
}

.cv-vault-wrap .cv-fiche-meta { flex-wrap: wrap; row-gap: 8px; }
.cv-vault-wrap .cv-card-item .cv-hover-actions { width: 100%; flex-wrap: wrap; justify-content: flex-start; margin-top: 4px; }
.cv-vault-wrap .cv-link-card .cv-hover-actions { flex-wrap: wrap; }
.cv-vault-wrap .cv-card-item.cv-card-admin .cv-fiche-meta, .cv-vault-wrap .cv-card-item.cv-content-archived .cv-fiche-meta { align-items: flex-start; }

.cv-cl-selectall-wrap { position: relative; width: auto !important; height: auto !important; gap: 7px; padding: 6px 10px; border: 1px solid var(--cvf-border, #dfe4ea); border-radius: 9px; background: var(--cvf-card, #fff); font-size: 13px; color: var(--cvf-text-soft, #64748b); white-space: nowrap; flex: 0 0 auto; }
.cv-cl-selectall-wrap .cv-cl-selectall-lbl { line-height: 1; }
.cv-cl-selectall-wrap:hover { border-color: var(--cvf-primary, #2563eb); }
.cv-cl-selectall-wrap .cv-mb-box { flex: 0 0 auto; }

.cv-clv-desc { font-size: 14.5px; color: var(--cvf-text, #1f2733); margin: 0 0 14px; line-height: 1.6; }
.cv-clv-linkrow { display: flex; align-items: center; gap: 8px; padding: 10px 12px; background: var(--cvf-bg-soft, #f1f5f9); border-radius: 10px; margin-bottom: 16px; word-break: break-all; }
.cv-clv-linkrow .dashicons { color: var(--cvf-primary, #2563eb); flex: 0 0 auto; }
.cv-clv-url { color: var(--cvf-primary, #2563eb); font-size: 13.5px; text-decoration: none; }
.cv-clv-url:hover { text-decoration: underline; }
.cv-clv-body a.cv-clv-openlink, .cv-clv-openlink { display: inline-flex; align-items: center; gap: 6px; background: var(--cvf-primary, #2563eb); color: #fff !important; font-weight: 600; font-size: 14px; padding: 11px 20px; border-radius: 10px; text-decoration: none; }
.cv-clv-openlink:hover { filter: brightness(1.1); color: #fff !important; }
.cv-clv-openlink .dashicons { font-size: 16px; width: 16px; height: 16px; }

.cv-vault-wrap .cv-notepad-msg { position: relative; }
.cv-note-check.cv-mb-chk { flex: 0 0 auto; align-self: flex-start; margin-top: 4px; margin-right: 4px; opacity: 1; }
.cv-notepad-messages.cv-clview-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 12px; align-items: start; }
.cv-notepad-messages.cv-clview-grid .cv-notepad-msg { margin: 0; background: var(--cvf-card, #fff); border: 1px solid var(--cvf-border, #e8ecf0); border-radius: 12px; padding: 14px; align-items: flex-start; box-shadow: 0 1px 3px rgba(15,23,42,.05); }
.cv-notepad-messages.cv-clview-grid .cv-note-body { flex: 1 1 auto; min-width: 0; }

.cv-notepad-messages.cv-clview-grid .cv-note-month-sep,
.cv-notepad-messages.cv-clview-grid .cv-note-day-sep,
.cv-notepad-messages.cv-clview-grid .cv-note-sep { grid-column: 1 / -1; margin: 8px 0 2px; }
.cv-vault-wrap .cv-note-msg-actions { display: inline-flex; gap: 4px; flex-wrap: wrap; }

.cvf-skip-link, .skip-link, a.skip-link, .screen-reader-text.skip-link { display: none !important; }


.cv-content-archived > .cv-mb-wrap-grid, .cv-content-archived .cv-note-check.cv-mb-chk,
.cv-content-archived .cv-hover-actions, .cv-content-archived .cv-note-msg-actions,
.cv-content-archived .cv-arch-badge { opacity: 1 !important; }
.cv-content-archived .cv-hover-action-btn, .cv-content-archived .cv-note-msg-actions .cv-hover-action-btn { opacity: 1; }

.cv-vault-wrap .cv-card-item.cv-content-archived .cv-hover-actions, .cv-vault-wrap .cv-card-item.cv-card-admin .cv-hover-actions { margin-top: 6px; }
.cv-mmf-folder-msel, .cv-dmf-folder-msel { position: relative; }
.cv-mmf-folder-panel, .cv-dmf-folder-panel { max-height: 200px; overflow-y: auto; }

.cv-mmf-popover .cv-mbar-dates, .cv-dmf-popover .cv-mbar-dates { display: flex; flex-wrap: nowrap; align-items: center; gap: 6px; }
.cv-mmf-popover .cv-mbar-dates label, .cv-dmf-popover .cv-mbar-dates label { flex: 0 0 auto; white-space: nowrap; }
.cv-mmf-popover .cv-mbar-dates .cvf-toolbar-sep, .cv-dmf-popover .cv-mbar-dates .cvf-toolbar-sep { flex: 0 0 auto; }
.cv-mmf-popover .cv-mbar-dates .cvf-date-input, .cv-dmf-popover .cv-mbar-dates .cvf-date-input { flex: 1 1 0; min-width: 0; }


.cv-modern-success-bar { display: flex; align-items: center; gap: 8px; background: #dcfce7; color: #15803d; border: 1px solid #86efac; border-radius: 10px; padding: 10px 14px; margin: 0 0 14px; font-size: 13.5px; font-weight: 600; opacity: 0; transform: translateY(-6px); transition: opacity .25s ease, transform .25s ease; }
.cv-modern-success-bar.cv-msb-show { opacity: 1; transform: translateY(0); }
.cv-modern-success-bar .dashicons { color: #16a34a; font-size: 18px; width: 18px; height: 18px; }

.cv-modern-success-bar.cv-msb-err { background: #fee2e2; color: #b91c1c; border-color: #fca5a5; }
.cv-modern-success-bar.cv-msb-err .dashicons { color: #dc2626; }

.cv-vault-wrap .cv-fmsg-relrow { display: flex; gap: 8px; flex-wrap: wrap; margin: 12px 0 16px; }
.cv-vault-wrap .cv-fmsg-relrow .cv-fmsg-msel { position: relative; }

.cv-vault-wrap .cv-fmsg-attach-grp { font-size: 10.5px; font-weight: 800; text-transform: uppercase; letter-spacing: .04em; color: #94a3b8; padding: 6px 4px 2px; }
.cv-vault-wrap .cv-fmsg-attach-panel .cv-note-msel-opt .dashicons { font-size: 15px; width: 15px; height: 15px; color: #64748b; flex: 0 0 auto; }
.cv-vault-wrap .cv-fmsg-attach-loading { padding: 10px; color: #94a3b8; font-size: 12px; }
.cv-vault-wrap .cv-fmsg-attach-chips { display: flex; flex-wrap: wrap; gap: 6px; margin: 0 0 10px; }
.cv-vault-wrap .cv-fmsg-att-chip { display: inline-flex; align-items: center; gap: 5px; background: #eef2f8; color: #1e3a5f; border: 1px solid #cdd9e8; border-radius: 999px; padding: 3px 6px 3px 9px; font-size: 12px; font-weight: 600; }
.cv-vault-wrap .cv-fmsg-att-chip .dashicons { font-size: 14px; width: 14px; height: 14px; }
.cv-vault-wrap .cv-fmsg-att-x { cursor: pointer; font-weight: 800; color: #64748b; padding: 0 3px; border-radius: 50%; }
.cv-vault-wrap .cv-fmsg-att-x:hover { background: #dbe3ee; color: #1e3a5f; }
.cv-vault-wrap .cv-fmsg-att { display: inline-flex; align-items: center; gap: 4px; background: #eef2f8; color: #1e3a5f; border-radius: 999px; padding: 1px 8px; font-size: 11px; font-weight: 600; cursor: pointer; }
.cv-vault-wrap .cv-fmsg-att:hover { background: #dbe3ee; }
.cv-vault-wrap .cv-fmsg-att .dashicons { font-size: 13px; width: 13px; height: 13px; }


.cv-fmatt-ov { position: fixed; inset: 0; background: rgba(15,23,42,.55); z-index: 100070; display: none; align-items: center; justify-content: center; padding: 24px; }
.cv-fmatt-box { position: relative; background: #fff; border-radius: 16px; width: 1040px; max-width: 100%; height: 86vh; max-height: 860px; display: flex; flex-direction: column; overflow: hidden; box-shadow: 0 28px 70px rgba(15,23,42,.34); }
.cv-fmatt-head { display: flex; align-items: center; justify-content: space-between; padding: 16px 22px; border-bottom: 1px solid #e8edf3; }
.cv-fmatt-head h3 { margin: 0; font-size: 16px; color: #1e3a5f; display: inline-flex; align-items: center; gap: 8px; }
.cv-fmatt-head h3 .dashicons { color: #1e3a5f; }
.cv-fmatt-close { background: none; border: none; cursor: pointer; color: #64748b; padding: 4px; border-radius: 8px; }
.cv-fmatt-close:hover { background: #f1f5f9; color: #1e293b; }
.cv-fmatt-tabs { display: flex; gap: 2px; padding: 6px 18px 0; flex-wrap: wrap; border-bottom: 1px solid #e8edf3; }
.cv-fmatt-tab { display: inline-flex; align-items: center; gap: 6px; background: none; border: none; border-bottom: 2px solid transparent; padding: 10px 12px; font-size: 13px; font-weight: 600; color: #64748b; cursor: pointer; }
.cv-fmatt-tab:hover { color: #1e3a5f; }
.cv-fmatt-tab.active { color: #1e3a5f; border-bottom-color: #1e3a5f; }
.cv-fmatt-tab .dashicons { font-size: 16px; width: 16px; height: 16px; }
.cv-fmatt-tab-n { font-size: 11px; font-weight: 700; min-width: 18px; text-align: center; padding: 1px 5px; border-radius: 999px; background: #eef2f7; color: #64748b; }
.cv-fmatt-tab.active .cv-fmatt-tab-n.has { background: #1e3a5f; color: #fff; }
.cv-fmatt-toolbar { display: flex; align-items: center; gap: 12px; padding: 12px 18px; border-bottom: 1px solid #e8edf3; }
.cv-fmatt-search { flex: 1; display: flex; align-items: center; gap: 8px; padding: 8px 12px; background: #f5f8fb; border: 1px solid #e2e8f0; border-radius: 10px; color: #94a3b8; }
.cv-fmatt-search input { flex: 1; border: none; outline: none; font-size: 13.5px; background: transparent; color: #1e293b; }
.cv-fmatt-views { display: inline-flex; gap: 2px; background: #f1f5f9; border-radius: 10px; padding: 3px; }
.cv-fmatt-vw { background: none; border: none; cursor: pointer; color: #64748b; padding: 6px 9px; border-radius: 8px; display: inline-flex; }
.cv-fmatt-vw .dashicons { font-size: 17px; width: 17px; height: 17px; }
.cv-fmatt-vw:hover { color: #1e3a5f; }
.cv-fmatt-vw.active { background: #fff; color: #1e3a5f; box-shadow: 0 1px 3px rgba(15,23,42,.12); }

.cv-fmatt-toolbar { position: relative; }
.cv-fmatt-filterbtn { display: inline-flex; align-items: center; gap: 6px; background: #f5f8fb; border: 1px solid #e2e8f0; border-radius: 10px; padding: 8px 13px; font-size: 13px; font-weight: 600; color: #475569; cursor: pointer; white-space: nowrap; }
.cv-fmatt-filterbtn:hover { background: #eef3f8; color: #1e3a5f; }
.cv-fmatt-filterbtn.has { background: #1e3a5f; color: #fff; border-color: #1e3a5f; }
.cv-fmatt-filterbtn .dashicons { font-size: 16px; width: 16px; height: 16px; }
.cv-fmatt-filterbtn-n:empty { display: none; }
.cv-fmatt-filterbtn-n { background: rgba(255,255,255,.25); border-radius: 999px; padding: 0 6px; font-size: 11px; font-weight: 700; }

.cv-fmatt-filterpop { position: absolute; z-index: 40; width: 340px; max-width: calc(100% - 20px); max-height: 64vh; overflow-y: auto; background: #fff; border: 1px solid #e4e8ee; border-radius: 14px; box-shadow: 0 18px 48px rgba(15,23,42,.22); padding: 16px 18px; }
.cv-fmatt-filterpop .cv-mbar-pop-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 12px; }
.cv-fmatt-filterpop .cv-mbar-pop-head span:first-child { font-size: 14px; font-weight: 700; color: #1e3a5f; }
.cv-fmatt-filterpop .cv-mbar-pop-head .dashicons { cursor: pointer; color: #64748b; }
.cv-fmatt-filterpop .cv-mbar-group { margin-bottom: 14px; }
.cv-fmatt-filterpop .cv-mbar-group-label { font-size: 11px; font-weight: 700; color: #64748b; text-transform: uppercase; letter-spacing: .4px; margin-bottom: 8px; }
.cv-fmatt-filterpop .cv-tag-filter-pills, .cv-fmatt-filterpop .cvf-period-pills { display: flex; flex-wrap: wrap; gap: 6px; }

.cv-fmatt-filterpop .cv-msel-toggle { display: flex; align-items: center; justify-content: space-between; gap: 8px; width: 100%; height: 38px; padding: 0 12px; border: 1px solid #e4e8ee; border-radius: 10px; background: #fff; color: #1e293b; font-size: 13px; font-weight: 500; cursor: pointer; }
.cv-fmatt-filterpop .cv-msel-toggle:hover { border-color: #cbd5e1; }
.cv-fmatt-filterpop .cv-msel-toggle .dashicons { color: #94a3b8; font-size: 16px; width: 16px; height: 16px; }
.cv-fmatt-filterpop .cv-msel-panel { margin-top: 6px; max-height: 190px; overflow-y: auto; border: 1px solid #e4e8ee; border-radius: 10px; background: #fff; box-shadow: 0 6px 18px rgba(15,23,42,.1); padding: 5px; }
.cv-fmatt-filterpop .cv-msel-opt { display: flex; align-items: center; gap: 9px; padding: 8px 9px; border-radius: 8px; cursor: pointer; font-size: 13px; color: #1e293b; }
.cv-fmatt-filterpop .cv-msel-opt:hover { background: #f5f8fb; }
.cv-fmatt-filterpop .cv-msel-opt input { margin: 0; accent-color: var(--cvf-primary, #1e3a5f); }

.cv-fmatt-filterpop .cv-tag-pill, .cv-fmatt-filterpop .cvf-period-btn { height: 32px; padding: 0 13px; border: 1px solid #e4e8ee; border-radius: 999px; background: #fff; color: #475569; font-size: 12.5px; font-weight: 600; cursor: pointer; display: inline-flex; align-items: center; transition: background .12s, border-color .12s, color .12s; }
.cv-fmatt-filterpop .cv-tag-pill:hover, .cv-fmatt-filterpop .cvf-period-btn:hover { border-color: #cbd5e1; background: #f8fafc; }
.cv-fmatt-filterpop .cv-tag-pill.active, .cv-fmatt-filterpop .cvf-period-btn.active { background: var(--cvf-primary, #1e3a5f); border-color: var(--cvf-primary, #1e3a5f); color: #fff; }

.cv-fmatt-filterpop .cv-mbar-dates { display: flex; align-items: center; gap: 8px; margin-top: 12px; }
.cv-fmatt-filterpop .cv-mbar-dates label { font-size: 12px; color: #94a3b8; flex: 0 0 auto; }
.cv-fmatt-filterpop .cvf-toolbar-sep { color: #cbd5e1; }
.cv-fmatt-filterpop .cvf-date-input { flex: 1; min-width: 0; height: 36px; border: 1px solid #e4e8ee; border-radius: 9px; padding: 0 9px; font-size: 12px; color: #475569; background: #fff; }
.cv-fmatt-filterpop .cvf-date-input:focus { outline: none; border-color: var(--cvf-primary, #1e3a5f); }
.cv-fmatt-filterpop .cv-mbar-pop-foot { display: flex; justify-content: flex-end; margin-top: 8px; border-top: 1px solid #eef2f7; padding-top: 12px; }
.cv-fmatt-filterpop .cv-mbar-reset { font-size: 13px; color: var(--cvf-primary, #1e3a5f); font-weight: 600; cursor: pointer; }
.cv-fmatt-filterpop .cv-mbar-reset:hover { text-decoration: underline; }

.cv-msgview-atts { margin-top: 18px; padding-top: 16px; border-top: 1px solid var(--cvf-border, #e4e8ee); text-align: left; }
.cv-msgview-atts-label { display: flex; align-items: center; gap: 6px; font-size: 11.5px; font-weight: 700; text-transform: uppercase; letter-spacing: .03em; color: var(--cvf-text-muted, #5a6c7d); margin-bottom: 10px; }
.cv-msgview-atts-label .dashicons { font-size: 15px; width: 15px; height: 15px; }
.cv-msgview-atts-list { display: flex; flex-wrap: wrap; gap: 8px; }
.cv-msgview-att { display: inline-flex; align-items: center; gap: 7px; max-width: 100%; padding: 8px 13px; border: 1px solid var(--cvf-border, #e4e8ee); border-radius: 10px; background: var(--cvf-card, #fff); color: var(--cvf-text, #2c3e50); font-size: 13px; font-weight: 500; cursor: pointer; transition: border-color .12s, box-shadow .12s; }
.cv-msgview-att:hover { border-color: var(--cvf-primary, #1e3a5f); box-shadow: 0 2px 8px rgba(15,23,42,.08); }
.cv-msgview-att .dashicons { font-size: 16px; width: 16px; height: 16px; color: var(--cvf-primary, #1e3a5f); flex: 0 0 auto; }



.cv-msgatt-fullwidth .cv-preview-comments-panel { display: none !important; }
.cv-msgatt-fullwidth #cv-front-btn-reply { display: none !important; }

.cv-msgatt-gallery { width: 100%; height: 100%; box-sizing: border-box; display: flex; flex-direction: column; gap: 12px; padding: 16px 20px; background: var(--cvf-card, #fff); text-align: left; overflow: hidden; }
.cv-msgatt-galtop { flex: 0 0 auto; display: flex; align-items: center; gap: 14px; }
.cv-msgatt-galcount { font-size: 12.5px; color: var(--cvf-text-muted, #5a6c7d); display: inline-flex; align-items: center; gap: 6px; }
.cv-msgatt-galtitle { flex: 0 0 auto; display: flex; align-items: center; gap: 8px; font-size: 15px; font-weight: 700; color: var(--cvf-text, #2c3e50); min-width: 0; }
.cv-msgatt-galtitle .dashicons { color: var(--cvf-primary, #1e3a5f); flex: 0 0 auto; }
.cv-msgatt-gallery .cv-strip-scroll { flex: 0 0 auto; }
.cv-msgatt-back { display: inline-flex; align-items: center; gap: 6px; background: var(--cvf-primary, #1e3a5f); border: none; color: #fff; font-size: 13.5px; font-weight: 600; cursor: pointer; padding: 9px 16px; border-radius: 10px; flex: 0 0 auto; }
.cv-msgatt-back:hover { filter: brightness(1.1); }
.cv-msgatt-back .dashicons { font-size: 16px; width: 16px; height: 16px; }

.cv-msgatt-stage { width: 100%; flex: 1 1 auto; min-height: 300px; display: flex; align-items: center; justify-content: center; background: #f0f0f0; border-radius: 12px; overflow: hidden; }
.cv-msgatt-stage .cv-preview-loading, .cv-msgatt-err { display: flex; align-items: center; gap: 8px; color: var(--cvf-text-muted, #5a6c7d); font-size: 14px; }
img.cv-msgatt-media { max-width: 100%; max-height: 100%; object-fit: contain; display: block; }
iframe.cv-msgatt-media { width: 100%; height: 100%; border: 0; background: #fff; }
.cv-msgatt-embedwrap { width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; background: #000; }

.cv-msgatt-embedwrap > * { width: 100% !important; height: 100% !important; max-width: 100% !important; padding: 0 !important; margin: 0 !important; }
.cv-msgatt-embedwrap iframe, .cv-msgatt-embedwrap video { width: 100% !important; height: 100% !important; border: 0; object-fit: contain; background: #000; }
.cv-msgatt-embedwrap audio { width: 80%; height: auto !important; }
.cv-msgatt-inner { width: 100%; height: 100%; box-sizing: border-box; padding: 24px; }
.cv-msgatt-inner.cv-msgatt-center { display: flex; align-items: center; justify-content: center; }
.cv-msgatt-inner.cv-msgatt-scroll { overflow-y: auto; background: #fff; }
.cv-msgatt-inner .cv-msgatt-fileblock, .cv-msgatt-inner .cv-msgatt-linkcard, .cv-msgatt-inner .cv-msgatt-card, .cv-msgatt-inner .cv-msgatt-note { width: 100%; max-width: 620px; }
.cv-msgatt-fileblock, .cv-msgatt-linkcard { display: flex; align-items: center; gap: 14px; padding: 18px; border: 1px solid var(--cvf-border, #e4e8ee); border-radius: 12px; background: var(--cvf-bg, #f7f8fc); }
.cv-msgatt-fileico, .cv-msgatt-linkico { font-size: 32px; width: 32px; height: 32px; color: var(--cvf-primary, #1e3a5f); flex: 0 0 auto; }
.cv-msgatt-filemeta, .cv-msgatt-linkbody { flex: 1; display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.cv-msgatt-filemeta strong, .cv-msgatt-linkbody strong { font-size: 14px; color: var(--cvf-text, #2c3e50); word-break: break-word; }
.cv-msgatt-filemeta span, .cv-msgatt-linkbody span { font-size: 12px; color: var(--cvf-text-muted, #5a6c7d); }
.cv-msgatt-dl, .cv-msgatt-linkbtn { display: inline-flex; align-items: center; gap: 6px; background: var(--cvf-primary, #1e3a5f); color: #fff; border: none; border-radius: 9px; padding: 9px 15px; font-size: 13px; font-weight: 600; cursor: pointer; text-decoration: none; white-space: nowrap; }
.cv-msgatt-card { padding: 18px; border-radius: 12px; border: 1px solid var(--cvf-border, #e4e8ee); border-left: 4px solid var(--cvf-primary, #1e3a5f); background: var(--cvf-card, #fff); }
.cv-msgatt-card h3 { margin: 0 0 10px; font-size: 16px; color: var(--cvf-text, #2c3e50); }
.cv-msgatt-cardbody, .cv-msgatt-notebody { font-size: 14px; line-height: 1.6; color: var(--cvf-text, #2c3e50); }
.cv-msgatt-note { padding: 18px; border-radius: 12px; background: #fefce8; border: 1px solid #fde68a; }
.cv-fmatt-flt-none { font-size: 12.5px; color: #94a3b8; padding: 4px 9px; }
.cv-fmatt-facets { display: flex; flex-wrap: wrap; gap: 6px; padding: 10px 18px; border-bottom: 1px solid #eef2f7; background: #fff; }
.cv-fmatt-facet { display: inline-flex; align-items: center; gap: 6px; background: #f1f5f9; border: 1px solid transparent; border-radius: 999px; padding: 5px 11px; font-size: 12px; font-weight: 600; color: #475569; cursor: pointer; }
.cv-fmatt-facet:hover { background: #e8eef5; }
.cv-fmatt-facet.active { background: #1e3a5f; color: #fff; }
.cv-fmatt-facet-n { font-size: 10.5px; font-weight: 700; opacity: .75; }
.cv-fmatt-facet-dot { width: 9px; height: 9px; border-radius: 999px; display: inline-block; }
.cv-fmatt-card-blue.cv-fmatt-facet-dot { background: #2563eb; } .cv-fmatt-card-green.cv-fmatt-facet-dot { background: #16a34a; }
.cv-fmatt-card-orange.cv-fmatt-facet-dot { background: #ea580c; } .cv-fmatt-card-red.cv-fmatt-facet-dot { background: #dc2626; }
.cv-fmatt-card-purple.cv-fmatt-facet-dot { background: #7c3aed; } .cv-fmatt-card-yellow.cv-fmatt-facet-dot { background: #ca8a04; }
.cv-fmatt-body { flex: 1 1 auto; overflow-y: auto; padding: 16px 18px; min-height: 200px; background: #fbfcfe; }

.cv-fmatt-item { position: relative; cursor: pointer; border: 1.5px solid #e6ebf2; border-radius: 12px; background: #fff; transition: border-color .12s, box-shadow .12s; }
.cv-fmatt-item:hover { border-color: #c3d2e6; box-shadow: 0 4px 14px rgba(15,23,42,.07); }
.cv-fmatt-item.is-sel { border-color: #1e3a5f; box-shadow: 0 0 0 2px rgba(30,58,95,.18); }
.cv-fmatt-check { position: absolute; top: 8px; right: 8px; width: 22px; height: 22px; border-radius: 999px; background: #fff; border: 1.5px solid #cbd5e1; display: flex; align-items: center; justify-content: center; color: transparent; z-index: 2; }
.cv-fmatt-check .dashicons { font-size: 15px; width: 15px; height: 15px; }
.cv-fmatt-item.is-sel .cv-fmatt-check { background: #1e3a5f; border-color: #1e3a5f; color: #fff; }
.cv-fmatt-ico { display: inline-flex; align-items: center; justify-content: center; color: #64748b; background: #eef2f7; flex: 0 0 auto; }
.cv-fmatt-ico .dashicons { font-size: 22px; width: 22px; height: 22px; }
.cv-fmatt-ico-link { color: #0891b2; background: #ecfeff; }
.cv-fmatt-ico-note { color: #ca8a04; background: #fefce8; }

.cv-fmatt-ico.cv-doc-type-img { background: #e9f7ee; }
.cv-fmatt-ico.cv-doc-type-img .dashicons { color: #2f9e44; }
.cv-fmatt-ico.cv-doc-type-pdf { background: #fdecea; }
.cv-fmatt-ico.cv-doc-type-pdf .dashicons { color: #e0413a; }
.cv-fmatt-ico.cv-doc-type-file { background: #eef2f7; }
.cv-fmatt-ico.cv-doc-type-file .dashicons { color: #5b6b7f; }

.cv-fmatt-docimg { background-size: cover !important; background-position: center !important; }
.cv-fmatt-docimg.cv-fmatt-docimg-on .dashicons { display: none; }

.cv-fmatt-ext.cv-doc-type-pdf { background: #e0413a; }
.cv-fmatt-ext.cv-doc-type-img { background: #2f9e44; }
.cv-fmatt-ext.cv-doc-type-file { background: #5b6b7f; }
.cv-fmatt-card-blue { color: #2563eb; background: #eff5ff; } .cv-fmatt-card-green { color: #16a34a; background: #f0fdf4; }
.cv-fmatt-card-orange { color: #ea580c; background: #fff7ed; } .cv-fmatt-card-red { color: #dc2626; background: #fef2f2; }
.cv-fmatt-card-purple { color: #7c3aed; background: #f5f3ff; } .cv-fmatt-card-yellow { color: #ca8a04; background: #fefce8; }
.cv-fmatt-thumb { background-size: cover; background-position: center; background-color: #1e293b; background-image: linear-gradient(135deg, #1a2332 0%, #2d3748 100%); flex: 0 0 auto; }
.cv-fmatt-ext { position: absolute; font-size: 9.5px; font-weight: 800; letter-spacing: .03em; color: #fff; background: #2563eb; padding: 1px 5px; border-radius: 5px; }
.cv-fmatt-i-name { font-weight: 600; color: #1e293b; overflow: hidden; text-overflow: ellipsis; }
.cv-fmatt-i-sub { color: #64748b; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cv-fmatt-i-date { color: #94a3b8; font-size: 11.5px; }

.cv-fmatt-vw-list { display: flex; flex-direction: column; gap: 6px; }
.cv-fmatt-vw-list .cv-fmatt-item { display: flex; align-items: center; gap: 12px; padding: 10px 14px; }
.cv-fmatt-vw-list .cv-fmatt-check { position: static; }
.cv-fmatt-vw-list .cv-fmatt-ico, .cv-fmatt-vw-list .cv-fmatt-thumb { width: 40px; height: 40px; border-radius: 9px; }
.cv-fmatt-vw-list .cv-fmatt-ext { position: static; margin-left: 2px; }
.cv-fmatt-vw-list .cv-fmatt-i-body { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 1px; }
.cv-fmatt-vw-list .cv-fmatt-i-name { font-size: 13.5px; white-space: nowrap; }
.cv-fmatt-vw-list .cv-fmatt-i-sub { font-size: 12px; display: inline; }
.cv-fmatt-vw-list .cv-fmatt-i-date { margin-left: auto; flex: 0 0 auto; }


.cv-fmatt-vw-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 14px; }
.cv-fmatt-vw-grid .cv-fmatt-item { display: flex; flex-direction: column; align-items: stretch; padding: 0; overflow: hidden; }
.cv-fmatt-vw-grid .cv-fmatt-ico, .cv-fmatt-vw-grid .cv-fmatt-thumb { width: 100%; height: 124px; border-radius: 0; }
.cv-fmatt-vw-grid .cv-fmatt-ico { position: relative; }
.cv-fmatt-vw-grid .cv-fmatt-ico::after { content: ""; position: absolute; inset: 0; background: linear-gradient(160deg, rgba(255,255,255,.30), rgba(255,255,255,0) 55%); pointer-events: none; }
.cv-fmatt-vw-grid .cv-fmatt-ico .dashicons { font-size: 46px; width: 46px; height: 46px; opacity: .92; }
.cv-fmatt-vw-grid .cv-fmatt-ext { top: 10px; left: 10px; }
.cv-fmatt-vw-grid .cv-fmatt-i-body { display: flex; flex-direction: column; gap: 3px; width: 100%; min-width: 0; padding: 11px 13px 13px; box-sizing: border-box; }
.cv-fmatt-vw-grid .cv-fmatt-i-name { font-size: 13.5px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; white-space: normal; }
.cv-fmatt-vw-grid .cv-fmatt-i-sub { font-size: 12px; }

.cv-fmatt-vw-gallery { display: grid; grid-template-columns: repeat(auto-fill, minmax(208px, 1fr)); gap: 16px; }
.cv-fmatt-vw-gallery .cv-fmatt-item { display: flex; flex-direction: column; overflow: hidden; padding: 0; }
.cv-fmatt-vw-gallery .cv-fmatt-ico, .cv-fmatt-vw-gallery .cv-fmatt-thumb { width: 100%; height: 152px; border-radius: 0; }
.cv-fmatt-vw-gallery .cv-fmatt-ico { position: relative; }
.cv-fmatt-vw-gallery .cv-fmatt-ico::after { content: ""; position: absolute; inset: 0; background: linear-gradient(160deg, rgba(255,255,255,.35), rgba(255,255,255,0) 55%); pointer-events: none; }
.cv-fmatt-vw-gallery .cv-fmatt-ico .dashicons { font-size: 52px; width: 52px; height: 52px; opacity: .92; }
.cv-fmatt-vw-gallery .cv-fmatt-ext { top: 12px; left: 12px; font-size: 11.5px; padding: 2px 8px; }
.cv-fmatt-vw-gallery .cv-fmatt-i-body { display: flex; flex-direction: column; gap: 3px; padding: 12px 14px 14px; width: 100%; min-width: 0; }
.cv-fmatt-vw-gallery .cv-fmatt-i-name { font-size: 13.5px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; white-space: normal; }
.cv-fmatt-vw-gallery .cv-fmatt-i-sub { font-size: 12px; }

.cv-fmatt-play { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; }
.cv-fmatt-play .dashicons { font-size: 30px; width: 44px; height: 44px; line-height: 44px; color: #fff; background: rgba(15,23,42,.55); border-radius: 999px; }
.cv-fmatt-vw-list .cv-fmatt-play { display: none; }
.cv-fmatt-thumb { position: relative; }

.cv-fmatt-galwrap { display: flex; flex-direction: column; gap: 14px; height: 100%; min-height: 0; }
.cv-fmatt-galwrap .cv-strip-scroll { flex: 0 0 auto; position: relative; }
.cv-fmatt-galstrip { display: flex; gap: 10px; overflow-x: auto; padding: 4px 2px 10px; }
.cv-fmatt-galstrip .cv-fmatt-item { width: 132px; flex: 0 0 132px; display: flex; flex-direction: column; align-items: flex-start; gap: 8px; padding: 10px; }
.cv-fmatt-galstrip .cv-fmatt-item .cv-fmatt-ico, .cv-fmatt-galstrip .cv-fmatt-item .cv-fmatt-thumb { width: 100%; height: 78px; border-radius: 9px; }
.cv-fmatt-galstrip .cv-fmatt-item .cv-fmatt-ico .dashicons { font-size: 30px; width: 30px; height: 30px; }
.cv-fmatt-galstrip .cv-fmatt-item .cv-fmatt-ext { top: 14px; left: 14px; }
.cv-fmatt-galstrip .cv-fmatt-item .cv-fmatt-i-body { width: 100%; min-width: 0; }
.cv-fmatt-galstrip .cv-fmatt-item .cv-fmatt-i-name { font-size: 12px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; white-space: normal; }
.cv-fmatt-galstrip .cv-fmatt-item .cv-fmatt-i-sub, .cv-fmatt-galstrip .cv-fmatt-item .cv-fmatt-i-date { display: none; }
.cv-fmatt-galstrip .cv-fmatt-item .cv-fmatt-play .dashicons { display: none; }
.cv-fmatt-galstrip .cv-fmatt-item.cv-fmatt-gactive { border-color: var(--cvf-primary, #1e3a5f); box-shadow: 0 0 0 2px var(--cvf-primary, #1e3a5f); }
.cv-fmatt-galstage { flex: 1 1 auto; min-height: 240px; }
.cv-fmatt-empty { padding: 50px 24px; text-align: center; color: #94a3b8; }
.cv-fmatt-empty .dashicons { font-size: 40px; width: 40px; height: 40px; opacity: .4; }
.cv-fmatt-empty p { margin: 10px 0 0; font-size: 13.5px; }
.cv-fmatt-loading { padding: 40px 24px; text-align: center; color: #94a3b8; font-size: 13.5px; }
.cv-fmatt-loading .dashicons { animation: cv-spin 1s linear infinite; }
@keyframes cv-spin { to { transform: rotate(360deg); } }
.cv-fmatt-foot { display: flex; align-items: center; justify-content: space-between; padding: 14px 20px; border-top: 1px solid #e8edf3; }
.cv-fmatt-count { font-size: 12.5px; color: #1e3a5f; font-weight: 600; display: inline-flex; align-items: center; gap: 5px; }
.cv-fmatt-foot-btns { display: inline-flex; gap: 10px; }
.cv-fmatt-cancel { background: #f1f5f9; color: #475569; border: none; border-radius: 9px; padding: 10px 18px; font-weight: 600; font-size: 13px; cursor: pointer; }
.cv-fmatt-cancel:hover { background: #e2e8f0; }
.cv-fmatt-apply { background: #1e3a5f; color: #fff; border: none; border-radius: 9px; padding: 10px 22px; font-weight: 600; font-size: 13px; cursor: pointer; }
.cv-fmatt-apply:hover { filter: brightness(1.12); }
@media (max-width: 720px) { .cv-fmatt-box { height: 92vh; } .cv-fmatt-tab-lbl { display: none; } }

.cv-fmsg-item.cv-fmsg-item-archived { background: #fafafa; }
.cv-fmsg-item.cv-fmsg-item-archived .cv-msglist-subject,
.cv-fmsg-item.cv-fmsg-item-archived .cv-msglist-snippet { opacity: .72; }
.cv-fmsg-item.cv-fmsg-item-archived .cv-msglist-ico { background: #e2e8f0; color: #64748b; }


.cv-mb-chk { display: inline-flex; align-items: center; justify-content: center; cursor: pointer; position: relative; width: 18px; height: 18px; }
.cv-mb-chk input { position: absolute; inset: 0; opacity: 0; width: 100%; height: 100%; margin: 0; cursor: pointer; }
.cv-mb-box { width: 18px; height: 18px; border-radius: 6px; border: 2px solid #cbd5e1; background: #fff; display: inline-flex; align-items: center; justify-content: center; transition: background .12s ease, border-color .12s ease; box-sizing: border-box; }
.cv-mb-box::after { content: ''; width: 5px; height: 9px; border: solid #fff; border-width: 0 2px 2px 0; transform: rotate(45deg) scale(0); transition: transform .12s ease; margin-top: -1px; }
.cv-mb-chk input:checked + .cv-mb-box { background: var(--cvf-primary, #7c3aed); border-color: var(--cvf-primary, #7c3aed); }
.cv-mb-chk input:checked + .cv-mb-box::after { transform: rotate(45deg) scale(1); }
.cv-mb-chk input:indeterminate + .cv-mb-box { background: var(--cvf-primary, #7c3aed); border-color: var(--cvf-primary, #7c3aed); }
.cv-mb-chk input:indeterminate + .cv-mb-box::after { content: ''; width: 9px; height: 2px; border: none; background: #fff; transform: none; border-radius: 1px; margin: 0; }
.cv-mb-chk:hover .cv-mb-box { border-color: var(--cvf-primary, #7c3aed); }

.cv-docs-list table.cv-folder-files-table th.cv-mb-th, .cv-docs-list table.cv-folder-files-table td.cv-mb-td { width: 44px; text-align: center !important; padding-left: 12px !important; padding-right: 2px !important; vertical-align: middle !important; }

.cv-doc-tile, .cv-folder-embed-item { position: relative; }
.cv-mb-wrap-grid { position: absolute; top: 8px; left: 8px; z-index: 6; opacity: 0; transition: opacity .15s ease; }
.cv-doc-tile:hover .cv-mb-wrap-grid, .cv-folder-embed-item:hover .cv-mb-wrap-grid { opacity: 1; }
.cv-mb-wrap-grid:has(input:checked) { opacity: 1; }
.cv-mb-wrap-grid .cv-mb-box { box-shadow: 0 1px 4px rgba(15,23,42,.2); }

.cv-mb-folders-head { font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; color: #94a3b8; padding: 4px 10px 6px; }

.cv-mb-bar { position: fixed; left: 50%; bottom: 24px; transform: translateX(-50%) translateY(20px); z-index: 100002; display: flex; align-items: center; gap: 12px; background: #1e293b; color: #fff; border-radius: 999px; padding: 8px 12px; box-shadow: 0 12px 40px rgba(0,0,0,.4), 0 2px 10px rgba(0,0,0,.25); opacity: 0; pointer-events: none; transition: opacity .2s ease, transform .2s ease; max-width: calc(100vw - 32px); flex-wrap: wrap; justify-content: center; }

.cv-mb-sep { width: 1px; height: 22px; background: rgba(255,255,255,.18); flex: 0 0 auto; }
.cv-mb-act-primary { background: var(--cvf-primary, #2563eb); color: #fff; }
.cv-mb-act-primary:hover { background: var(--cvf-primary, #2563eb); filter: brightness(1.12); }
.cv-mb-commentwrap { position: relative; }
.cv-mb-comment-pop { position: absolute; bottom: calc(100% + 10px); left: 50%; transform: translateX(-50%); width: 260px; background: #fff; border-radius: 12px; box-shadow: 0 12px 40px rgba(0,0,0,.28); padding: 10px; display: flex; flex-direction: column; gap: 8px; z-index: 5; }
.cv-mb-comment-pop textarea { width: 100%; box-sizing: border-box; border: 1px solid var(--cvf-border, #d7dde6); border-radius: 8px; padding: 8px 10px; font-size: 13px; resize: vertical; color: var(--cvf-text, #1f2733); }
.cv-mb-comment-send { align-self: flex-end; background: var(--cvf-primary, #2563eb); color: #fff; border: none; border-radius: 8px; padding: 7px 16px; font-size: 13px; font-weight: 600; cursor: pointer; }
.cv-mb-comment-send:hover { filter: brightness(1.1); }
.cv-mb-comment-send:disabled { opacity: .6; cursor: default; }
.cv-mb-bar.cv-mb-show { opacity: 1; transform: translateX(-50%) translateY(0); pointer-events: auto; }

.cv-mb-count { display: inline-flex; align-items: center; gap: 8px; font-size: 13px; font-weight: 500; color: #e2e8f0; white-space: nowrap; padding-left: 4px; }
.cv-mb-count b { display: inline-flex; align-items: center; justify-content: center; min-width: 24px; height: 24px; padding: 0 7px; border-radius: 999px; background: var(--cvf-primary, #2563eb); color: #fff; font-size: 13px; font-weight: 700; }
.cv-mb-actions { display: flex; align-items: center; gap: 4px; flex-wrap: wrap; justify-content: center; }
.cv-mb-act { display: inline-flex; align-items: center; gap: 6px; background: transparent; color: #e2e8f0; border: none; border-radius: 9px; padding: 8px 13px; font-size: 13px; font-weight: 500; cursor: pointer; white-space: nowrap; transition: background .15s, color .15s; }
.cv-mb-act:hover { background: rgba(255,255,255,.12); color: #fff; }
.cv-mb-act-primary { background: var(--cvf-primary, #2563eb); color: #fff; font-weight: 600; }
.cv-mb-act-primary:hover { background: var(--cvf-primary, #2563eb); filter: brightness(1.14); color: #fff; }
.cv-mb-delete { color: #fca5a5; }
.cv-mb-delete:hover { background: rgba(220,38,38,.2); color: #fecaca; }
.cv-mb-act .dashicons { font-size: 17px; width: 17px; height: 17px; }
.cv-mb-clear { background: transparent; border: none; color: #94a3b8; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; width: 30px; height: 30px; border-radius: 8px; margin-left: 2px; }
.cv-mb-clear:hover { color: #fff; background: rgba(255,255,255,.1); }

.cv-arch-badge { display: inline-flex; align-items: center; gap: 4px; margin-left: 8px; padding: 1px 8px 1px 6px; border-radius: 999px; background: #fef3c7; color: #92400e; font-size: 11px; font-weight: 600; vertical-align: middle; white-space: nowrap; }
.cv-arch-badge .dashicons { font-size: 13px; width: 13px; height: 13px; }
.cv-folder-item.cv-doc-archived > td, tr.cv-media-row.cv-doc-archived > td { background: #fffbeb; }
.cv-folder-item.cv-doc-archived > td:first-child, tr.cv-media-row.cv-doc-archived > td:first-child { box-shadow: inset 3px 0 0 #f59e0b; }
.cv-doc-tile.cv-doc-archived, .cv-folder-embed-item.cv-doc-archived { background: #fffbeb; box-shadow: inset 0 0 0 1px #fde68a, inset 3px 0 0 #f59e0b; }
.cv-doc-tile.cv-doc-archived .cv-arch-badge, .cv-folder-embed-item.cv-doc-archived .cv-arch-badge { position: absolute; top: 8px; left: 8px; margin: 0; z-index: 2; }
.cv-doc-tile.cv-doc-archived, .cv-folder-embed-item.cv-doc-archived { position: relative; }
.cv-mb-movewrap { position: relative; }
.cv-mb-folders { position: absolute; bottom: calc(100% + 8px); left: 0; background: #fff; color: #1e293b; border-radius: 10px; box-shadow: 0 14px 44px rgba(15,23,42,.28); padding: 6px; min-width: 210px; max-height: 260px; overflow-y: auto; }
.cv-mb-folder-opt { display: block; width: 100%; text-align: left; background: transparent; border: none; padding: 8px 10px; border-radius: 7px; font-size: 13px; color: #1e293b; cursor: pointer; }
.cv-mb-folder-opt:hover { background: #f1f5f9; }
.cv-mb-folder-empty { padding: 10px; font-size: 12.5px; color: #94a3b8; }

.cv-mb-folder-optc { display: flex; align-items: center; gap: 9px; padding: 7px 10px; border-radius: 7px; font-size: 13px; color: #1e293b; cursor: pointer; }
.cv-mb-folder-optc:hover { background: #f1f5f9; }
.cv-mb-folder-optc .cv-mb-box { width: 16px; height: 16px; }
.cv-mb-folder-optc-name { flex: 1 1 auto; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cv-mb-folder-apply { width: 100%; margin-top: 6px; background: var(--cvf-primary, #7c3aed); color: #fff; border: none; border-radius: 8px; padding: 9px 12px; font-size: 13px; font-weight: 700; cursor: pointer; }
.cv-mb-folder-apply:hover { filter: brightness(1.06); }
.cv-mb-folder-apply:disabled { opacity: .6; cursor: default; }




.cv-folder-detail-hero-top { display: flex; align-items: center; justify-content: flex-start; gap: 8px; }
.cv-folder-detail-hero-titleline { display: flex; align-items: center; gap: 10px; flex-wrap: nowrap; }


.cv-folder-detail-statusgroup { display: inline-flex; align-items: center; gap: 8px; flex: 0 0 auto; }
.cv-vault-wrap .cv-folder-detail-hero-titleline .cv-folder-detail-statusgroup .cv-folder-detail-status { margin-right: 0; }


.cv-vault-wrap .cv-folder-detail-hero-titleline .cv-folder-detail-statusgroup .cv-folder-badge { top: 0; }

.cv-folder-export-btn {
    display: inline-flex; align-items: center; justify-content: center; gap: 4px;
    padding: 3px 6px; border: 0; border-radius: 6px;
    background: transparent; color: var(--cvf-text-muted, #94a3b8);
    font-size: 11.5px; font-weight: 600; cursor: pointer; white-space: nowrap; flex: 0 0 auto;
    transition: color .15s, background .15s;
}
.cv-folder-export-btn:hover { color: var(--cvf-primary, #1e3a5f); background: rgba(30,58,95,.08); }
.cv-folder-export-btn .cv-folder-export-btn-label { line-height: 1; }
.cv-folder-export-btn[disabled] { opacity: .6; cursor: default; }


.cv-folder-export-btn--icon { padding: 5px; border-radius: 8px; gap: 0; line-height: 0; color: var(--cvf-text-muted, #8a98a8); }
.cv-folder-export-btn--icon svg { width: 20px; height: 20px; display: block; }
.cv-folder-export-btn--icon .cv-spinner-sm { width: 16px; height: 16px; }


.cv-front-confirm-ov {
    position: fixed; inset: 0; z-index: 2147483600;
    display: flex; align-items: center; justify-content: center; padding: 20px;
    background: rgba(15, 23, 42, .55); opacity: 0; transition: opacity .18s ease;
}
.cv-front-confirm-ov.cv-front-confirm-show { opacity: 1; }
.cv-front-confirm-box {
    background: var(--cvf-card, #ffffff); color: var(--cvf-text, #1f2937);
    border-radius: 16px; padding: 26px 28px; width: 100%; max-width: 400px;
    box-shadow: 0 24px 70px rgba(15, 23, 42, .28);
    text-align: center; transform: translateY(8px) scale(.98); transition: transform .18s ease;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}
.cv-front-confirm-show .cv-front-confirm-box { transform: none; }
.cv-front-confirm-icon { font-size: 42px; line-height: 1; margin-bottom: 10px; }
.cv-front-confirm-title { font-size: 17px; font-weight: 800; margin: 0 0 8px; color: var(--cvf-text, #1f2937); }
.cv-front-confirm-msg { font-size: 13.5px; line-height: 1.55; color: var(--cvf-text-muted, #64748b); margin: 0 0 22px; }
.cv-front-confirm-actions { display: flex; gap: 10px; justify-content: center; }
.cv-front-confirm-btn { padding: 10px 20px; border-radius: 10px; font-size: 13px; font-weight: 700; cursor: pointer; border: none; transition: filter .15s, background .15s; }
.cv-front-confirm-cancel { background: var(--cvf-bg, #f1f5f9); color: var(--cvf-text-muted, #64748b); border: 1px solid var(--cvf-border, #e2e8f0); }
.cv-front-confirm-cancel:hover { background: #e9eef5; }
.cv-front-confirm-ok { background: var(--cvf-primary, #1e3a5f); color: #fff; }
.cv-front-confirm-ok:hover { filter: brightness(1.10); }



.cv-act-fab { position: fixed; right: 26px; bottom: 26px; z-index: 99988; width: 72px; height: 72px;
  border-radius: 50%; background: linear-gradient(135deg, var(--cvf-primary, #1e3a5f), var(--cvf-primary-light, #2a5298));
  color: #fff; border: 0; cursor: pointer; box-shadow: 0 14px 34px rgba(30,58,95,.45);
  display: flex; align-items: center; justify-content: center; transition: transform .15s ease, box-shadow .15s ease; }
.cv-act-fab:hover { transform: translateY(-2px) scale(1.05); box-shadow: 0 18px 42px rgba(30,58,95,.55); }
.cv-act-fab:focus-visible { outline: 3px solid var(--cvf-accent, #e8913a); outline-offset: 3px; }
.cv-act-fab svg { width: 30px; height: 30px; }
.cv-act-fab-badge { position: absolute; top: -2px; right: -2px; min-width: 21px; height: 21px; padding: 0 5px; box-sizing: border-box;
  border-radius: 999px; background: var(--cvf-accent, #e8913a); color: #fff; font-size: 11.5px; font-weight: 800; line-height: 1;
  display: flex; align-items: center; justify-content: center; border: 2.5px solid #fff; box-shadow: 0 2px 6px rgba(0,0,0,.25); }

.cv-actd-ov { position: fixed; inset: 0; z-index: 99990; visibility: hidden; }
.cv-actd-ov.cv-show { visibility: visible; }
.cv-actd-bd { position: absolute; inset: 0; background: rgba(15,23,42,.45); opacity: 0; transition: opacity .22s ease; }
.cv-actd-ov.cv-show .cv-actd-bd { opacity: 1; }
.cv-actd { position: absolute; top: 0; right: 0; bottom: 0; width: 440px; max-width: 94vw; background: var(--cvf-card, #fff);
  box-shadow: -14px 0 44px rgba(15,23,42,.22); transform: translateX(100%); transition: transform .26s cubic-bezier(.4,0,.2,1);
  display: flex; flex-direction: column; outline: none; }
.cv-actd-ov.cv-show .cv-actd { transform: none; }
.cv-actd-head { display: flex; align-items: center; justify-content: space-between; padding: 18px 20px;
  background: linear-gradient(135deg, var(--cvf-primary, #1e3a5f), var(--cvf-primary-light, #2a5298)); color: #fff; }
.cv-actd-head .cv-actd-sub { margin: 0; font-size: 11.5px; text-transform: uppercase; letter-spacing: .05em; opacity: .85; font-weight: 700; }
.cv-actd-head .cv-actd-title { margin: 2px 0 0; font-size: 17px; font-weight: 700; color: #fff; }
.cv-actd-close { background: rgba(255,255,255,.16); border: 0; color: #fff; width: 34px; height: 34px; border-radius: 9px; font-size: 15px; cursor: pointer; transition: background .15s ease; }
.cv-actd-close:hover { background: rgba(255,255,255,.30); }
.cv-actd-body { overflow: auto; padding: 14px 22px 28px; flex: 1; }
.cv-actfeed-day { font-size: 11.5px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: var(--cvf-text-hint, #94a3b8); margin: 16px 0 4px; }
.cv-actfeed-ev { display: flex; gap: 12px; padding: 11px 10px; margin: 0 -10px; border-radius: 12px; align-items: flex-start; cursor: default; transition: background .14s ease, box-shadow .14s ease; outline: none; }
.cv-actfeed-ev + .cv-actfeed-ev { border-top: 1px solid var(--cvf-border, #e8edf3); }
.cv-actfeed-ev:hover { background: var(--cvf-bg, #f1f5f9); }
.cv-actfeed-ev:focus-visible { background: var(--cvf-bg, #f1f5f9); box-shadow: inset 0 0 0 2px var(--cvf-primary, #1e3a5f); }
.cv-actfeed-ico { width: 38px; height: 38px; border-radius: 11px; background: var(--cvf-bg, #f1f5f9); display: flex; align-items: center; justify-content: center; font-size: 18px; flex: 0 0 auto; }
.cv-actfeed-main { min-width: 0; flex: 1; }
.cv-actfeed-t1 { font-size: 14px; margin: 0; color: var(--cvf-text, #1f2937); font-weight: 600; }
.cv-actfeed-t2 { font-size: 12.5px; margin: 2px 0 0; color: var(--cvf-text-muted, #64748b); }
.cv-actfeed-time { font-size: 11.5px; color: var(--cvf-text-hint, #cbd5e1); white-space: nowrap; margin-left: 8px; padding-top: 2px; }
.cv-actfeed-empty { text-align: center; padding: 40px 16px; color: var(--cvf-text-muted, #64748b); }
.cv-actfeed-empty span { font-size: 34px; display: block; margin-bottom: 8px; }

.cv-actd-pinned { background: var(--cvf-bg, #f7f8fc); border: 1px solid var(--cvf-border, #e8edf3); border-radius: 14px; padding: 8px 12px 12px; margin: 12px 0 12px; }
.cv-actd-pinned-h { font-size: 11.5px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; color: var(--cvf-primary, #1e3a5f); padding: 10px 6px 8px; }
.cv-actd-doc { display: flex; align-items: center; gap: 12px; padding: 12px 10px; border-radius: 11px; text-decoration: none; transition: background .14s ease, box-shadow .14s ease; outline: none; }

.cv-actd-todo { background: color-mix(in srgb, var(--cvf-accent, #e8913a) 7%, #fff); border-color: color-mix(in srgb, var(--cvf-accent, #e8913a) 24%, #fff); }
.cv-actd-todo .cv-actd-pinned-h { color: var(--cvf-accent, #e8913a); }
.cv-actd-todo .cv-actd-doc-ic { background: color-mix(in srgb, var(--cvf-accent, #e8913a) 14%, #fff); border-color: color-mix(in srgb, var(--cvf-accent, #e8913a) 28%, #fff); }
.cv-actd-todo .cv-actd-doc-arr { color: var(--cvf-accent, #e8913a); }
.cv-actd-doc + .cv-actd-doc { border-top: 1px solid var(--cvf-border, #e8edf3); }
.cv-actd-doc:hover { background: #fff; }
.cv-actd-doc:focus-visible { background: #fff; box-shadow: inset 0 0 0 2px var(--cvf-primary, #1e3a5f); }
.cv-actd-doc-ic { width: 34px; height: 34px; border-radius: 9px; background: #fff; border: 1px solid var(--cvf-border, #e8edf3); display: flex; align-items: center; justify-content: center; font-size: 16px; flex: 0 0 auto; }
.cv-actd-doc-main { min-width: 0; flex: 1; display: flex; flex-direction: column; }
.cv-actd-doc-t { font-size: 13.5px; font-weight: 600; color: var(--cvf-text, #1f2937); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.cv-actd-doc-d { font-size: 11.5px; color: var(--cvf-text-hint, #94a3b8); }
.cv-actd-doc-arr { color: var(--cvf-primary, #1e3a5f); font-size: 15px; flex: 0 0 auto; opacity: .55; transition: transform .14s ease, opacity .14s ease; }
.cv-actd-doc:hover .cv-actd-doc-arr { transform: translateX(2px); opacity: 1; }
.cv-actd-histlabel { margin-top: 18px; }


.cv-actfeed-nav { cursor: pointer; }
.cv-actfeed-nav:hover { background: var(--cvf-bg, #f1f5f9); }

.cv-mb-confirm-ov { position: fixed; inset: 0; background: rgba(15,23,42,.5); z-index: 100003; display: flex; align-items: center; justify-content: center; opacity: 0; transition: opacity .2s ease; }
.cv-mb-confirm-ov.cv-mb-confirm-show { opacity: 1; }
.cv-mb-confirm-box { background: #fff; border-radius: 14px; padding: 22px; max-width: 380px; width: calc(100% - 40px); box-shadow: 0 22px 64px rgba(15,23,42,.32); transform: scale(.96); transition: transform .2s ease; }
.cv-mb-confirm-show .cv-mb-confirm-box { transform: scale(1); }
.cv-mb-confirm-msg { display: flex; align-items: flex-start; gap: 10px; font-size: 14.5px; color: #1e293b; line-height: 1.4; }
.cv-mb-confirm-msg .dashicons { color: #dc2626; font-size: 22px; width: 22px; height: 22px; flex: 0 0 auto; }
.cv-mb-confirm-actions { display: flex; justify-content: flex-end; gap: 10px; margin-top: 18px; }
.cv-mb-confirm-cancel { background: #f1f5f9; color: #475569; border: none; border-radius: 9px; padding: 9px 16px; font-size: 13.5px; font-weight: 600; cursor: pointer; }
.cv-mb-confirm-ok { background: #dc2626; color: #fff; border: none; border-radius: 9px; padding: 9px 16px; font-size: 13.5px; font-weight: 600; cursor: pointer; }
.cv-mb-confirm-ok:hover { background: #b91c1c; }


#cv-panel-activite .cvf-section-filters .cvf-toolbar {
    background: var(--cvf-card, #fff); border: 1px solid var(--cvf-border, #e8edf3);
    border-radius: 16px; padding: 14px 16px; margin-bottom: 16px;
    box-shadow: 0 1px 2px rgba(15,23,42,.04), 0 6px 20px rgba(15,23,42,.05);
    display: flex; flex-direction: column; gap: 12px;
}
#cv-panel-activite .cvf-toolbar-row { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
#cv-panel-activite .cvf-doc-search-wrapper { position: relative; flex: 0 1 280px; min-width: 190px; }
#cv-panel-activite .cvf-doc-search-wrapper .cvf-doc-search-icon { position: absolute; left: 12px; top: 50%; transform: translateY(-50%); color: var(--cvf-text-muted, #94a3b8); font-size: 17px; }
#cv-panel-activite .cvf-doc-search { width: 100%; border: 1px solid var(--cvf-border, #e8edf3); border-radius: 11px; padding: 9px 12px 9px 36px; font-size: 13.5px; background: var(--cvf-bg, #f8fafc); }
#cv-panel-activite .cvf-doc-search:focus { border-color: var(--cvf-primary, #7c3aed); background: #fff; outline: none; }

#cv-panel-activite .cv-activity-type-btn {
    display: inline-flex; align-items: center; gap: 5px; border: 1px solid var(--cvf-border, #e8edf3);
    background: var(--cvf-card, #fff); color: var(--cvf-text, #334155); border-radius: 999px;
    padding: 7px 13px; font-size: 12.5px; font-weight: 600; cursor: pointer;
    transition: border-color .15s, background .15s, color .15s;
}
#cv-panel-activite .cv-activity-type-btn:hover { border-color: var(--cvf-primary, #7c3aed); }
#cv-panel-activite .cv-activity-type-btn.active { background: var(--cvf-primary, #7c3aed); border-color: var(--cvf-primary, #7c3aed); color: #fff; }

#cv-panel-activite .cvf-toolbar-label { font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; color: #94a3b8; }
#cv-panel-activite .cvf-period-pills { display: inline-flex; flex-wrap: wrap; gap: 4px; background: var(--cvf-bg, #f1f5f9); border-radius: 12px; padding: 4px; }
#cv-panel-activite .cvf-period-btn { border: none; background: transparent; border-radius: 9px; padding: 6px 11px; font-size: 12.5px; font-weight: 600; color: var(--cvf-text-muted, #64748b); cursor: pointer; }
#cv-panel-activite .cvf-period-btn.active { background: var(--cvf-card, #fff); color: var(--cvf-text, #1e293b); box-shadow: 0 1px 2px rgba(0,0,0,.08); }
#cv-panel-activite .cvf-date-input { border: 1px solid var(--cvf-border, #e8edf3); border-radius: 10px; padding: 8px 11px; font-size: 13px; background: var(--cvf-bg, #f8fafc); }
#cv-panel-activite .cvf-toolbar-sep { color: var(--cvf-border, #cbd5e1); }





.cv-vault-wrap .cvf-home-module {
    background: var(--cvf-card, #fff);
    border: 1px solid var(--cvf-border, #e8edf3);
    border-radius: 16px;
    padding: 18px 20px 20px;
    margin: 0 0 20px;
    box-shadow: 0 2px 10px rgba(30,58,95,.05);
}
.cv-vault-wrap .cvf-home-module-hdr { display: flex; align-items: center; gap: 10px; margin-bottom: 14px; }
.cv-vault-wrap .cvf-home-module-icon { display: inline-flex; color: var(--cvf-primary, #1e3a5f); }
.cv-vault-wrap .cvf-home-module-title { font-size: 16px; font-weight: 700; color: var(--cvf-text, #1e293b); margin: 0; flex: 1; }
.cv-vault-wrap .cvf-home-module-link { font-size: 13px; font-weight: 600; color: var(--cvf-primary, #1e3a5f); cursor: pointer; white-space: nowrap; }
.cv-vault-wrap .cvf-home-module-link:hover { text-decoration: underline; }
.cv-vault-wrap .cvf-home-module-footer { margin-top: 12px; text-align: center; }

.cv-vault-wrap .cvf-home-parcours-list { display: flex; flex-direction: column; gap: 10px; }
.cv-vault-wrap .cvf-home-parc-card {
    border: 1px solid var(--cvf-border, #e8edf3);
    border-radius: 12px;
    padding: 13px 15px;
    background: var(--cvf-bg, #f8fafc);
    cursor: pointer;
    transition: border-color .15s, box-shadow .15s, transform .15s;
}
.cv-vault-wrap .cvf-home-parc-card:hover,
.cv-vault-wrap .cvf-home-parc-card:focus-visible {
    border-color: var(--cvf-primary, #1e3a5f);
    box-shadow: 0 6px 18px rgba(30,58,95,.12);
    transform: translateY(-2px);
    outline: none;
}
.cv-vault-wrap .cvf-home-parc-top { display: flex; align-items: center; gap: 10px; margin-bottom: 9px; }
.cv-vault-wrap .cvf-home-parc-name { font-size: 14px; font-weight: 650; color: var(--cvf-text, #1e293b); flex: 1; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cv-vault-wrap .cvf-home-parc-badge { font-size: 11px; font-weight: 700; padding: 3px 9px; border-radius: 999px; white-space: nowrap; }
.cv-vault-wrap .cvf-home-parc-badge.is-active { background: rgba(232,145,58,.14); color: var(--cvf-accent, #e8913a); }
.cv-vault-wrap .cvf-home-parc-badge.is-paused { background: rgba(100,116,139,.14); color: #64748b; }
.cv-vault-wrap .cvf-home-parc-badge.is-done   { background: rgba(34,158,99,.14); color: #16a34a; }
.cv-vault-wrap .cvf-home-parc-bar { height: 7px; border-radius: 999px; background: var(--cvf-border, #e8edf3); overflow: hidden; }
.cv-vault-wrap .cvf-home-parc-fill { height: 100%; border-radius: 999px; background: linear-gradient(90deg, var(--cvf-primary, #1e3a5f), var(--cvf-accent, #e8913a)); transition: width .4s ease; }
.cv-vault-wrap .cvf-home-parc-meta { display: flex; align-items: center; gap: 12px; margin-top: 8px; font-size: 12px; color: var(--cvf-text-muted, #64748b); }
.cv-vault-wrap .cvf-home-parc-pct { font-weight: 700; color: var(--cvf-primary, #1e3a5f); }
.cv-vault-wrap .cvf-home-parc-steps { flex: 1; }
.cv-vault-wrap .cvf-home-parc-cta { font-weight: 700; color: var(--cvf-accent, #e8913a); }


.cv-vault-wrap .cvf-home-todo-count {
    display: inline-flex; align-items: center; justify-content: center;
    min-width: 22px; height: 22px; padding: 0 7px; border-radius: 999px;
    background: var(--cvf-accent, #e8913a); color: #fff; font-size: 12px; font-weight: 800;
}
.cv-vault-wrap .cvf-home-todo-list { display: flex; flex-direction: column; gap: 8px; }
.cv-vault-wrap .cvf-home-todo-item {
    display: flex; align-items: center; gap: 12px;
    border: 1px solid var(--cvf-border, #e8edf3); border-radius: 12px;
    padding: 12px 14px; background: var(--cvf-bg, #f8fafc);
    cursor: pointer; transition: border-color .15s, box-shadow .15s, transform .15s;
}
.cv-vault-wrap .cvf-home-todo-item:hover,
.cv-vault-wrap .cvf-home-todo-item:focus-visible {
    border-color: var(--cvf-primary, #1e3a5f);
    box-shadow: 0 6px 18px rgba(30,58,95,.12); transform: translateY(-2px); outline: none;
}
.cv-vault-wrap .cvf-home-todo-icon { display: inline-flex; color: var(--cvf-primary, #1e3a5f); flex-shrink: 0; }
.cv-vault-wrap .cvf-home-todo-body { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.cv-vault-wrap .cvf-home-todo-name { font-size: 14px; font-weight: 650; color: var(--cvf-text, #1e293b); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cv-vault-wrap .cvf-home-todo-sub { font-size: 12px; color: var(--cvf-text-muted, #64748b); }
.cv-vault-wrap .cvf-home-todo-badge { font-size: 11px; font-weight: 700; padding: 3px 9px; border-radius: 999px; white-space: nowrap; }
.cv-vault-wrap .cvf-home-todo-badge.is-overdue { background: rgba(220,38,38,.12); color: #dc2626; }
.cv-vault-wrap .cvf-home-todo-badge.is-urgent  { background: rgba(234,88,12,.14); color: #ea580c; }
.cv-vault-wrap .cvf-home-todo-badge.is-soon    { background: rgba(232,145,58,.14); color: var(--cvf-accent, #e8913a); }
.cv-vault-wrap .cvf-home-todo-cta { font-weight: 700; font-size: 13px; color: var(--cvf-accent, #e8913a); white-space: nowrap; }






.cv-vault-wrap .cvf-home-overview-hdr {
    display: flex; align-items: center; gap: 12px;
    margin: 6px 0 16px;
}
.cv-vault-wrap .cvf-home-overview-line {
    flex: 1; height: 1px; background: var(--cvf-border, #e8edf3);
}
.cv-vault-wrap .cvf-home-overview-label {
    font-size: 12px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase;
    color: var(--cvf-text-muted, #94a3b8); white-space: nowrap;
}






.cv-vault-wrap .cvf-home-todo { border: 2px solid var(--cvf-primary, #1e3a5f); }


.cv-vault-wrap .cvf-home-module-count {
    font-size: 11.5px; font-weight: 700; padding: 2px 8px; border-radius: 8px;
    color: var(--cvf-text-muted, #64748b); background: #eef1f5;
}








.cv-vault-wrap .cvf-home-module {
    box-shadow: 0 4px 18px rgba(15,23,42,.05);
    padding: 18px 20px 20px;
}
.cv-vault-wrap .cvf-home-module-hdr { margin-bottom: 16px; gap: 11px; }


.cv-vault-wrap .cvf-home-module-icon {
    width: 36px; height: 36px; border-radius: 11px;
    display: inline-flex; align-items: center; justify-content: center;
    background: rgba(30,58,95,.09); color: var(--cvf-primary, #1e3a5f);
    flex: 0 0 auto;
}
.cv-vault-wrap .cvf-home-module-icon svg { width: 19px; height: 19px; }
.cv-vault-wrap .cvf-home-todo .cvf-home-module-icon { background: rgba(232,145,58,.15); color: var(--cvf-accent, #e8913a); }


.cv-vault-wrap .cvf-home-todo { border: 2px solid var(--cvf-primary, #1e3a5f); box-shadow: 0 6px 22px rgba(30,58,95,.10); }


.cv-vault-wrap .cvf-home-todo-item { padding: 12px 14px; gap: 13px; background: var(--cvf-bg, #f8fafc); }
.cv-vault-wrap .cvf-home-todo-icon {
    width: 36px; height: 36px; border-radius: 11px;
    display: inline-flex; align-items: center; justify-content: center;
    background: rgba(232,145,58,.13); color: var(--cvf-accent, #e8913a);
}
.cv-vault-wrap .cvf-home-todo-cta {
    background: var(--cvf-accent, #e8913a); color: #3b2410;
    padding: 8px 15px; border-radius: 10px; font-weight: 800;
    box-shadow: 0 2px 8px rgba(232,145,58,.28);
}


.cv-vault-wrap .cvf-home-parcours-list { gap: 11px; }
.cv-vault-wrap .cvf-home-parc-card {
    background: var(--cvf-card, #fff);
    border: 1px solid var(--cvf-border, #e8edf3);
    box-shadow: 0 1px 5px rgba(15,23,42,.04);
    padding: 14px 16px;
}
.cv-vault-wrap .cvf-home-parc-card:hover,
.cv-vault-wrap .cvf-home-parc-card:focus-visible {
    box-shadow: 0 10px 26px rgba(30,58,95,.13);
}
.cv-vault-wrap .cvf-home-parc-top { gap: 9px; margin-bottom: 11px; }
.cv-vault-wrap .cvf-home-parc-dot { width: 9px; height: 9px; border-radius: 50%; flex: 0 0 auto; box-shadow: 0 0 0 3px rgba(30,58,95,.06); }
.cv-vault-wrap .cvf-home-parc-name { font-weight: 700; font-size: 14.5px; }
.cv-vault-wrap .cvf-home-parc-bar { height: 8px; }
.cv-vault-wrap .cvf-home-parc-meta { gap: 12px; margin-top: 10px; align-items: center; }
.cv-vault-wrap .cvf-home-parc-pct { font-size: 13px; font-weight: 800; color: var(--cvf-text, #1f2937); }
.cv-vault-wrap .cvf-home-parc-cta {
    background: var(--cvf-primary, #1e3a5f); color: #fff;
    padding: 7px 15px; border-radius: 10px; font-weight: 700;
    box-shadow: 0 2px 8px rgba(30,58,95,.22);
}
.cv-vault-wrap .cvf-home-parc-card .cvf-home-parc-badge.is-done ~ .cvf-home-parc-meta .cvf-home-parc-cta,
.cv-vault-wrap .cvf-home-parc-card:has(.is-done) .cvf-home-parc-cta { background: #eef1f5; color: var(--cvf-text-muted, #64748b); box-shadow: none; }


.cv-vault-wrap .cvf-home-module-link { color: var(--cvf-primary, #1e3a5f); }





.cv-vault-wrap .cvf-home-module-title { flex: 0 1 auto; }
.cv-vault-wrap .cvf-home-module-count,
.cv-vault-wrap .cvf-home-todo-count { margin-left: 2px; }
.cv-vault-wrap .cvf-home-module-link { margin-left: auto; }

.cv-vault-wrap .cvf-home-todo {
    border: 1.5px solid var(--cvf-primary, #1e3a5f);
    border-color: color-mix(in srgb, var(--cvf-primary, #1e3a5f) 38%, #ffffff);
    box-shadow: 0 4px 18px rgba(15,23,42,.05);
}

.cv-vault-wrap .cv-vault-header { margin-bottom: 14px !important; }
.cv-vault-wrap .cv-tabs { margin-top: 0; }


.cv-vault-wrap .cvf-home-news .cvf-home-module-icon { background: rgba(232,145,58,.14); color: var(--cvf-accent, #e8913a); }
.cv-vault-wrap .cvf-home-msg-filters { margin-left: auto; display: inline-flex; gap: 4px; }


.cv-vault-wrap .cvf-home-msg-filter { font: inherit; font-size: 12px; line-height: 1; padding: 6px 12px; border: 1px solid var(--cvf-border, #e8edf3); background: #fff; color: var(--cvf-text-muted, #64748b); border-radius: 8px; cursor: pointer; transition: all .12s; box-sizing: border-box; display: inline-flex; align-items: center; justify-content: center; }
.cv-vault-wrap .cvf-home-msg-filter:hover { border-color: var(--cvf-primary, #1e3a5f); color: var(--cvf-primary, #1e3a5f); }
.cv-vault-wrap .cvf-home-msg-filter.active { background: var(--cvf-primary, #1e3a5f); border-color: var(--cvf-primary, #1e3a5f); color: #fff; }
.cv-vault-wrap .cvf-home-messages .cvf-home-news-ico .dashicons { color: var(--cvf-primary, #1e3a5f); }

.cv-vault-wrap .cvf-home-messages .cvf-home-news-ico { background: rgba(30,58,95,.10); }
.cv-vault-wrap .cvf-home-messages .cvf-home-module-count { background: #1e3a5f; color: #fff; }
.cv-vault-wrap .cvf-home-msg-empty { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px; padding: 26px 14px; color: #94a3b8; text-align: center; }
.cv-vault-wrap .cvf-home-msg-empty .dashicons { font-size: 26px; width: 26px; height: 26px; color: #cbd5e1; }
.cv-vault-wrap .cvf-home-msg-empty p { margin: 0; font-size: 13px; }
.cv-vault-wrap .cvf-home-news-list { display: flex; flex-direction: column; gap: 2px; }
.cv-vault-wrap .cvf-home-news-item { display: flex; align-items: center; gap: 12px; padding: 10px 6px; border-top: 1px solid var(--cvf-border, #e8edf3); cursor: pointer; border-radius: 8px; transition: background .12s; }
.cv-vault-wrap .cvf-home-news-item:first-child { border-top: 0; }
.cv-vault-wrap .cvf-home-news-item:hover { background: var(--cvf-bg, #f8fafc); }
.cv-vault-wrap .cvf-home-news-icon { display: inline-flex; color: var(--cvf-primary, #1e3a5f); flex: 0 0 auto; }
.cv-vault-wrap .cvf-home-news-icon .dashicons { font-size: 17px; width: 17px; height: 17px; }
.cv-vault-wrap .cvf-home-news-body { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 1px; }
.cv-vault-wrap .cvf-home-news-name { font-size: 13.5px; font-weight: 600; color: var(--cvf-text, #1f2937); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cv-vault-wrap .cvf-home-news-date { font-size: 12px; color: var(--cvf-text-hint, #94a3b8); }


.cv-vault-wrap .cvf-home-news-list { gap: 8px; }
.cv-vault-wrap .cvf-home-news-item {
    gap: 13px; padding: 11px 12px; border-top: 0; border-radius: 13px;
    border: 1px solid var(--cvf-border, #eef1f5); background: var(--cvf-card, #fff);
    position: relative; overflow: hidden; transition: border-color .14s, box-shadow .14s, transform .08s, background .14s;
}
.cv-vault-wrap .cvf-home-news-item::before {
    content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 3px;
    background: var(--cvn-accent, #2563eb); opacity: 0; transition: opacity .14s;
}
.cv-vault-wrap .cvf-home-news-item:hover {
    background: var(--cvf-card, #fff); border-color: var(--cvn-accent, #2563eb);
    box-shadow: 0 6px 18px rgba(15,23,42,.08); transform: translateY(-1px);
}
.cv-vault-wrap .cvf-home-news-item:hover::before { opacity: 1; }
.cv-vault-wrap .cvf-home-news-item:hover .cvf-home-news-chev { opacity: 1; transform: translateX(0); color: var(--cvn-accent, #2563eb); }

.cv-vault-wrap .cvf-home-news-ico {
    flex: 0 0 auto; width: 40px; height: 40px; border-radius: 11px;
    display: inline-flex; align-items: center; justify-content: center;
    background: var(--cvn-soft, #e8f0fe); color: var(--cvn-accent, #2563eb);
}
.cv-vault-wrap .cvf-home-news-ico .dashicons { font-size: 20px; width: 20px; height: 20px; }
.cv-vault-wrap .cvf-home-news-name { font-size: 14px; font-weight: 650; }

.cv-vault-wrap .cvf-home-news-meta { display: flex; align-items: center; gap: 7px; margin-top: 3px; flex-wrap: wrap; }
.cv-vault-wrap .cvf-home-news-badge {
    font-size: 10.5px; font-weight: 700; letter-spacing: .02em; text-transform: uppercase;
    padding: 2px 8px; border-radius: 999px; line-height: 1.4;
    background: var(--cvn-soft, #e8f0fe); color: var(--cvn-accent, #2563eb);
}
.cv-vault-wrap .cvf-home-news-author { font-size: 12px; font-weight: 600; color: var(--cvf-text-secondary, #64748b); }
.cv-vault-wrap .cvf-home-news-dot { color: var(--cvf-text-hint, #cbd5e1); font-size: 12px; }
.cv-vault-wrap .cvf-home-news-date { font-size: 12px; color: var(--cvf-text-hint, #94a3b8); }
.cv-vault-wrap .cvf-home-news-chev {
    flex: 0 0 auto; align-self: center; font-size: 18px; width: 18px; height: 18px;
    color: var(--cvf-text-hint, #cbd5e1); opacity: 0; transform: translateX(-4px); transition: all .14s;
}

.cv-vault-wrap .cvf-home-news-item[data-type="file"]  { --cvn-accent:#2563eb; --cvn-soft:#e8f0fe; }
.cv-vault-wrap .cvf-home-news-item[data-type="embed"] { --cvn-accent:#7c3aed; --cvn-soft:#f1ebfc; }
.cv-vault-wrap .cvf-home-news-item[data-type="card"]  { --cvn-accent:#0e9f6e; --cvn-soft:#e3f6ee; }
.cv-vault-wrap .cvf-home-news-item[data-type="link"]  { --cvn-accent:#4f46e5; --cvn-soft:#eaeafc; }
.cv-vault-wrap .cvf-home-news-item[data-type="note"]  { --cvn-accent:#d97706; --cvn-soft:#fdf0dc; }







.cv-vault-wrap .cvf-home-module { padding-top: 0 !important; padding-bottom: 0 !important; margin-bottom: 0 !important;  }

.cv-vault-wrap .cvf-home-module .cvf-home-module-icon { display: none !important; }

.cv-vault-wrap .cvf-home-module .cvf-home-module-hdr {
    display: flex !important;
    align-items: center !important;
    gap: 9px !important;
    padding: 18px 16px 16px 0 !important; 
    margin: 0 !important;
    background: transparent !important;
    border-bottom: 1px solid rgba(15, 23, 42, .05) !important;
}

.cv-vault-wrap .cvf-home-module .cvf-home-module-hdr .cli-drag-handle { color: var(--cvf-text-hint, #b4bdc9); display: inline-flex; flex: 0 0 auto; cursor: grab; }
.cv-vault-wrap .cvf-home-module .cvf-home-module-title { margin: 0 !important; padding: 0 !important; line-height: 1 !important; display: inline-flex; align-items: center; }
.cv-vault-wrap .cvf-home-module .cvf-home-module-link { margin-left: auto; align-self: center; }

.cv-vault-wrap .cvf-home-module .cvf-home-todo-list,
.cv-vault-wrap .cvf-home-module .cvf-home-news-list,
.cv-vault-wrap .cvf-home-module .cvf-home-parcours-list { padding: 16px 2px 18px !important; }

.cv-vault-wrap .cvf-home-todo-count,
.cv-vault-wrap .cvf-home-module-count {
    width: 20px; min-width: 20px; height: 20px; padding: 0;
    border-radius: 999px;
    display: inline-flex; align-items: center; justify-content: center;
    line-height: 1; font-size: 11px; font-weight: 700; text-align: center;
}

.cv-vault-wrap .cvf-home-todo .cvf-home-todo-cta {
    background: transparent !important;
    color: var(--cvf-primary, #1e3a5f) !important;
    border: 1.5px solid color-mix(in srgb, var(--cvf-primary, #1e3a5f) 26%, #fff) !important;
    box-shadow: none !important;
    font-weight: 600 !important;
    border-radius: 8px !important;
    padding: 6px 14px !important;
}
.cv-vault-wrap .cvf-home-todo .cvf-home-todo-cta:hover { background: color-mix(in srgb, var(--cvf-primary, #1e3a5f) 8%, #fff) !important; }


.cv-vault-wrap .cv-tabs .cv-tab-count {
    border-radius: 999px !important;
    min-width: 18px; height: 18px; padding: 0 5px;
    display: inline-flex; align-items: center; justify-content: center;
    line-height: 1; font-size: 11px; box-sizing: border-box;
}
.cv-act-fab-badge {
    border-radius: 999px !important;
    width: 22px; min-width: 22px; height: 22px; padding: 0 !important;
    font-size: 10.5px; font-weight: 700; line-height: 1;
    display: flex !important; align-items: center; justify-content: center;
}




html { scrollbar-gutter: stable; }



.cli-block.cv-home-soft-hidden { display: none !important; }

.cv-autosave-note { font-style: italic; opacity: .75; }


.cv-devis-block { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 8px 0 2px; }
.cv-devis-badge { display: inline-flex; align-items: center; gap: 5px; font-size: 12px; font-weight: 700; padding: 3px 10px; border-radius: 999px; line-height: 1.5; }
.cv-devis-badge .dashicons { font-size: 15px; width: 15px; height: 15px; }
.cv-devis-badge-wait { background: #fef3c7; color: #b45309; border: 1px solid #fcd34d; }
.cv-devis-badge-ok { background: #dcfce7; color: #15803d; border: 1px solid #86efac; }
.cv-devis-signed-tag { display: inline-flex; align-items: center; gap: 5px; font-size: 12px; font-weight: 600; color: var(--cvf-text-soft, #64748b); }
.cv-devis-signed-tag .dashicons { font-size: 15px; width: 15px; height: 15px; }

.cv-devis-validate-btn { display: inline-flex; align-items: center; gap: 6px; background: var(--cvf-primary, #1e3a5f); color: #fff; border: none; border-radius: 9px; padding: 7px 14px; font-size: 13px; font-weight: 700; cursor: pointer; transition: filter .15s ease, transform .1s ease; }
.cv-devis-validate-btn:hover { filter: brightness(1.08); }
.cv-devis-validate-btn:active { transform: translateY(1px); }
.cv-devis-validate-btn .dashicons { font-size: 16px; width: 16px; height: 16px; }
.cv-devis-upload-signed { display: inline-flex; align-items: center; gap: 5px; background: transparent; color: var(--cvf-primary, #1e3a5f); border: 1px solid var(--cvf-border, #d8dee6); border-radius: 9px; padding: 6px 12px; font-size: 12.5px; font-weight: 600; cursor: pointer; }
.cv-devis-upload-signed:hover { background: rgba(0,0,0,.03); }
.cv-devis-upload-signed .dashicons { font-size: 15px; width: 15px; height: 15px; }

.cv-doc-tile .cv-devis-block { justify-content: center; }


.cv-preview-guard-validate-btn { transition: background .15s ease, box-shadow .15s ease, transform .12s ease; }
.cv-preview-guard-validate-btn:hover:not(:disabled) { background: var(--cvf-success, #27ae60) !important; box-shadow: 0 8px 22px rgba(39,174,96,.32) !important; }
#cv-front-guard-validate-foot:hover:not(:disabled) { transform: translateY(-2px); }
.cv-preview-guard-validate-btn:disabled { opacity: .5; cursor: not-allowed; box-shadow: none !important; }


.cv-note-composer #cv-form-notepad{display:block;width:100%;}
.cv-note-composer .cv-note-field{width:100%;box-sizing:border-box;resize:vertical;min-height:46px;border:1px solid var(--cvf-border,#e1e5eb);border-radius:10px;padding:10px 12px;font-size:14px;font-family:inherit;}
.cv-note-composer-foot{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:8px;}
.cv-note-vis{display:inline-flex;border:1px solid var(--cvf-border,#e1e5eb);border-radius:9px;overflow:hidden;}
.cv-note-vis-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 13px;border:none;background:transparent;color:var(--cvf-text-secondary,#475569);font-size:13px;font-weight:600;cursor:pointer;}
.cv-note-vis-btn + .cv-note-vis-btn{border-left:1px solid var(--cvf-border,#eef1f5);}
.cv-note-vis-btn .dashicons{font-size:16px;width:16px;height:16px;}
.cv-note-vis-btn.is-active{background:var(--cvf-primary,#1e3a5f);color:#fff;}
.cv-note-composer .cv-note-send-btn{margin-left:auto;background:var(--cvf-primary,#1e3a5f);color:#fff;border:none;border-radius:9px;padding:9px 18px;font-size:13px;font-weight:600;cursor:pointer;}
.cv-note-vis-hint{display:flex;align-items:center;gap:6px;margin:8px 0 0;font-size:12.5px;color:var(--cvf-text-muted,#64748b);}
.cv-note-vis-hint .dashicons{font-size:15px;width:15px;height:15px;}
.cv-note-vis-pill{display:inline-flex;align-items:center;gap:4px;margin-left:8px;padding:2px 9px;border-radius:999px;font-size:11px;font-weight:600;vertical-align:middle;}
.cv-note-vis-pill .dashicons{font-size:13px;width:13px;height:13px;}
.cv-note-vis-pill--private{background:var(--cvf-bg-alt,#f1f5f9);color:var(--cvf-text-secondary,#475569);}
.cv-note-vis-pill--shared{background:#eef2f7;color:var(--cvf-primary,#1e3a5f);}
.cv-note-discuss{display:inline-flex;align-items:center;gap:6px;margin-top:10px;background:transparent;border:1px solid var(--cvf-border,#e1e5eb);border-radius:8px;padding:6px 12px;font-size:12.5px;font-weight:600;color:var(--cvf-text-secondary,#475569);cursor:pointer;}
.cv-note-discuss:hover{border-color:var(--cvf-primary,#1e3a5f);color:var(--cvf-primary,#1e3a5f);}
.cv-note-discuss .dashicons{font-size:15px;width:15px;height:15px;}
.cv-note-discuss-count{background:var(--cvf-primary,#1e3a5f);color:#fff;border-radius:999px;min-width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center;font-size:10px;padding:0 4px;}
.cv-notepad-msg .cv-comments-panel{margin-top:10px;}


.cv-note-composer{background:#eef2f7;border:1px solid var(--cvf-primary,#1e3a5f);border-left:5px solid var(--cvf-primary,#1e3a5f);border-radius:14px;padding:16px 18px;margin:6px 0 20px;}
.cv-note-composer-title{display:flex;align-items:center;gap:7px;font-size:15px;font-weight:700;color:var(--cvf-primary,#1e3a5f);margin-bottom:10px;}
.cv-note-composer-title .dashicons{font-size:18px;width:18px;height:18px;}
.cv-note-composer .cv-note-field{background:#fff;border:1px solid var(--cvf-border,#cbd5e1);}
.cv-note-composer .cv-note-send-btn{padding:10px 24px;font-size:14px;box-shadow:0 2px 6px rgba(15,23,42,.12);}
.cv-note-composer .cv-note-send-btn:hover{filter:brightness(1.06);}

.cv-amf-popover .cvf-period-pills,.cv-mbar-period,.cv-notepad-mbar .cvf-period-pills{flex-wrap:wrap !important;}
.cv-amf-popover .cv-mbar-dates,.cv-notepad-mbar .cv-mbar-dates{flex-wrap:wrap;}

.cv-note-preview{padding:28px 30px;max-width:680px;margin:0 auto;}
.cv-note-preview-meta{display:flex;align-items:center;gap:10px;margin-bottom:14px;color:var(--cvf-text-muted,#64748b);font-size:12.5px;}
.cv-note-preview-text{font-size:16px;line-height:1.7;color:var(--cvf-text-dark,#1e293b);white-space:pre-wrap;word-break:break-word;}



.cv-clv-preview{ width: 100%; max-width: 660px; margin: 0 auto; box-sizing: border-box; background: var(--cvf-card, #fff); border: 1px solid var(--cvf-border, #e8ecf0); border-radius: 20px; box-shadow: 0 22px 55px rgba(15,23,42,.16); display: flex; flex-direction: column; text-align: center; overflow: hidden; }
.cv-clv-preview .cv-clv-content{ flex: 0 0 auto; padding: 38px 44px 20px; }
.cv-clv-preview .cv-clv-ico{ width: 46px; height: 46px; border-radius: 13px; display: flex; align-items: center; justify-content: center; margin: 0 auto 10px; background: var(--clv-accent, #2563eb); color: #fff; box-shadow: 0 8px 20px rgba(15,23,42,.20); }
.cv-clv-preview .cv-clv-ico .dashicons{ font-size: 24px; width: 24px; height: 24px; color: #fff; }
.cv-clv-preview .cv-clv-h{ font-size: 22px; font-weight: 700; line-height: 1.25; letter-spacing: -.015em; color: var(--cvf-text-dark, #1e293b); margin: 0 0 7px; word-break: break-word; }
.cv-clv-preview .cv-clv-body{ font-size: 17px; line-height: 1.7; color: var(--cvf-text, #334155); word-break: break-word; max-width: 480px; margin: 0 auto !important; text-align: center; }
.cv-clv-preview .cv-clv-body p{ margin: 0 0 12px; }
.cv-clv-preview .cv-clv-body p:last-child{ margin-bottom: 0; }
.cv-clv-preview .cv-clv-desc{ font-size: 17px; line-height: 1.7; color: var(--cvf-text, #475569); margin: 0 auto !important; max-width: 480px; text-align: center; }
.cv-clv-preview .cv-clv-tags{ margin-top: 16px; display: flex; flex-wrap: wrap; gap: 6px; justify-content: center; }
.cv-clv-preview .cv-clv-tags:empty{ display: none; }

.cv-clv-preview .cv-clv-foot{ border-top: 1px solid var(--cvf-border, #eef1f5); padding: 20px 130px 34px; display: flex; flex-direction: column; gap: 11px; }
.cv-clv-preview .cv-clv-openlink{ display: flex; align-items: center; justify-content: center; gap: 11px; width: 100%; background: var(--clv-accent, #2563eb); color: #fff !important; font-weight: 700; font-size: 18px; padding: 16px 28px; border-radius: 12px; text-decoration: none; box-shadow: 0 12px 28px rgba(15,23,42,.22); transition: transform .08s, filter .15s; }
.cv-clv-preview .cv-clv-openlink .dashicons{ color: #fff !important; font-size: 21px; width: 21px; height: 21px; }
.cv-clv-preview .cv-clv-openlink:hover{ filter: brightness(1.07); color: #fff !important; }
.cv-clv-preview .cv-clv-openlink:active{ transform: translateY(1px); }
.cv-clv-preview .cv-clv-host{ display: inline-flex; align-items: center; justify-content: center; gap: 6px; font-size: 13px; color: var(--cvf-text-muted, #94a3b8); word-break: break-all; }
.cv-clv-preview .cv-clv-host .dashicons{ font-size: 14px; width: 14px; height: 14px; opacity: .8; }
.cv-clv-preview .cv-clv-meta{ font-size: 12.5px; color: var(--cvf-text-muted, #64748b); }



.cv-clv-preview.cv-clv-preview-notepad .cv-clv-foot{ padding: 16px 40px 26px; flex-direction: row; flex-wrap: wrap; justify-content: center; align-items: center; gap: 10px; }
.cv-clv-preview.cv-clv-preview-notepad .cv-clv-meta{ margin-top: 0; padding-top: 0; border-top: 0; display: inline-flex; align-items: center; gap: 10px; flex-wrap: wrap; justify-content: center; }
.cv-clv-preview.cv-clv-preview-notepad .cv-clv-note-time{ display: inline-flex; align-items: center; gap: 5px; color: var(--cvf-text-muted, #94a3b8); }
.cv-clv-preview.cv-clv-preview-notepad .cv-clv-note-time .dashicons{ font-size: 14px; width: 14px; height: 14px; opacity: .8; }

.cv-clv-preview.cv-clv-preview-notepad .cv-clv-meta .cv-note-vis-pill{ display: inline-flex; }


.cv-note-msel{position:relative;}
.cv-note-msel-toggle{display:inline-flex;align-items:center;gap:6px;height:38px;padding:0 12px;border:1px solid var(--cvf-border,#cbd5e1);background:#fff;border-radius:9px;color:var(--cvf-text-secondary,#475569);font-size:13px;font-weight:600;cursor:pointer;}
.cv-note-msel-toggle .dashicons{font-size:16px;width:16px;height:16px;}
.cv-note-msel-toggle:hover{border-color:var(--cvf-primary,#1e3a5f);}
.cv-note-msel-panel{position:absolute;z-index:30;top:calc(100% + 5px);left:0;min-width:220px;max-height:200px;overflow:auto;background:#fff;border:1px solid var(--cvf-border,#cbd5e1);border-radius:10px;box-shadow:0 14px 34px rgba(15,23,42,.16);padding:6px;display:flex;flex-direction:column;gap:2px;}
.cv-note-msel-panel[hidden]{display:none;}
.cv-note-msel-opt{display:flex;align-items:center;gap:8px;padding:7px 9px;border-radius:7px;font-size:13px;color:var(--cvf-text-secondary,#475569);cursor:pointer;}
.cv-note-msel-opt:hover{background:var(--cvf-bg-alt,#f1f5f9);}



.cv-vault-wrap .cv-note-composer{background:#eef2f7;border:1px solid #d6deea;border-left:1px solid #d6deea;border-radius:16px;padding:16px;margin:6px 0 24px;box-shadow:0 2px 10px rgba(15,23,42,.06);}
.cv-vault-wrap .cv-note-composer .cv-note-field{background:#fff;border:1px solid #cbd5e1;border-radius:12px;padding:12px 14px;min-height:56px;font-size:15px;line-height:1.6;box-shadow:0 1px 2px rgba(15,23,42,.04);transition:border-color .15s,box-shadow .15s;}
.cv-vault-wrap .cv-note-composer .cv-note-field:focus{outline:none;border-color:var(--cvf-primary,#1e3a5f);box-shadow:0 0 0 3px rgba(30,58,95,.14);}
.cv-vault-wrap .cv-note-composer-foot{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:12px;}
.cv-vault-wrap .cv-note-composer .cv-note-send-btn{margin-left:auto;padding:10px 26px;font-size:14px;border-radius:10px;box-shadow:0 2px 6px rgba(15,23,42,.14);}

.cv-vault-wrap .cv-notepad-messages:not(.cv-clview-grid) .cv-note-msg{border:1px solid var(--cvf-border,#e8ecf0);border-radius:12px;background:var(--cvf-card,#fff);padding:14px 16px;margin-bottom:12px;box-shadow:0 1px 3px rgba(15,23,42,.05);}
.cv-vault-wrap .cv-notepad-messages:not(.cv-clview-grid) .cv-note-msg:last-child{margin-bottom:0;}

.cv-vault-wrap .cv-notepad-messages.cv-clview-grid{margin-bottom:20px;}
.cv-vault-wrap .cv-notepad-messages.cv-clview-grid .cv-notepad-msg{padding-bottom:16px;}



.cv-vault-wrap .cv-note-composer{margin:6px 16px 24px;}

.cv-vault-wrap .cv-note-vis-hint{font-size:11.5px;color:var(--cvf-text-muted,#94a3b8);margin-top:7px;}
.cv-vault-wrap .cv-note-vis-hint .dashicons{font-size:13px;width:13px;height:13px;}

.cv-vault-wrap .cv-note-vis-pill--private{background:#f1f5f9;color:#475569;}
.cv-vault-wrap .cv-note-vis-pill--shared{background:#e0f2f1;color:#0f766e;}

.cv-vault-wrap .cv-notepad-messages:not(.cv-clview-grid) .cv-note-msg{margin-bottom:16px;}

.cv-vault-wrap .cv-notepad-msg[data-clickable="1"]{cursor:pointer;transition:border-color .15s,box-shadow .15s,transform .05s;}
.cv-vault-wrap .cv-notepad-msg[data-clickable="1"]:hover{border-color:var(--cvf-primary,#1e3a5f) !important;box-shadow:0 4px 14px rgba(15,23,42,.10) !important;}
.cv-vault-wrap .cv-notepad-msg[data-clickable="1"]:active{transform:translateY(1px);}

.cv-vault-wrap .cv-note-cc{display:inline-flex;align-items:center;gap:4px;margin-top:8px;color:var(--cvf-text-muted,#64748b);font-size:12px;}
.cv-vault-wrap .cv-note-cc .dashicons{font-size:15px;width:15px;height:15px;}
.cv-vault-wrap .cv-notepad-msg[data-clickable="1"]:hover .cv-note-cc{color:var(--cvf-primary,#1e3a5f);}
.cv-vault-wrap .cv-note-cc-n{background:var(--cvf-primary,#1e3a5f);color:#fff;border-radius:999px;min-width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center;font-size:10px;padding:0 4px;}


.cv-vault-wrap .cv-mbar .cv-amf-popover .cv-mbar-period,
.cv-vault-wrap .cv-mbar .cv-amf-popover .cvf-period-pills{flex-wrap:wrap !important;}
.cv-vault-wrap .cv-note-vis-hint{font-size:11px !important;color:#9aa6b2 !important;margin-top:6px !important;}
.cv-vault-wrap .cv-note-vis-hint .dashicons{font-size:12px !important;width:12px !important;height:12px !important;}


.cv-mb-tagwrap { position: relative; }
.cv-mb-tags { position: absolute; bottom: calc(100% + 8px); left: 0; background: #fff; color: #1e293b; border-radius: 10px; box-shadow: 0 14px 44px rgba(15,23,42,.28); padding: 6px; min-width: 210px; max-height: 260px; overflow-y: auto; }
.cv-mb-tags .cv-mb-folders-head { font-weight: 700; font-size: 12px; padding: 6px 8px; color: #475569; }
.cv-mb-tags .cv-mb-folder-optc { display: flex; align-items: center; gap: 8px; padding: 7px 8px; border-radius: 7px; font-size: 13px; cursor: pointer; }
.cv-mb-tags .cv-mb-folder-optc:hover { background: #f1f5f9; }
.cv-mb-tagapply { margin-top: 6px; width: 100%; background: var(--cvf-primary,#1e3a5f); color: #fff; border: none; border-radius: 8px; padding: 8px 10px; font-size: 13px; font-weight: 600; cursor: pointer; }

.cv-vault-wrap .cv-notepad-foldfilter .cv-note-msel-toggle { border: 1px solid var(--cvf-border,#cbd5e1) !important; background: #fff; }
.cv-vault-wrap .cv-notepad-foldfilter .cv-note-msel-panel { border: 1px solid var(--cvf-border,#cbd5e1); }


.cv-vault-wrap .cv-tags-mbar .cv-mbar-tagseg{display:flex;flex-wrap:wrap;align-items:center;gap:6px;flex:1 1 auto;min-width:0;}
.cv-vault-wrap .cv-tags-mbar .cv-mbar-tagseg .cv-tag-filter-btn{margin:0;}
.cv-vault-wrap .cv-tags-mbar .cv-mbar-search{flex:0 0 220px;max-width:260px;}
@media (max-width:680px){ .cv-vault-wrap .cv-tags-mbar .cv-mbar-search{flex:1 1 100%;max-width:none;} }

.cv-vault-wrap .cv-flash-highlight{animation:cvFlashHighlight 1.6s ease;}
@keyframes cvFlashHighlight{0%,100%{box-shadow:0 0 0 0 rgba(30,58,95,0);}30%{box-shadow:0 0 0 3px rgba(30,58,95,.35);}}



.cv-vault-wrap .cv-tags-meta-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:3px;}
.cv-vault-wrap .cv-tags-cc{display:inline-flex;align-items:center;gap:3px;font-size:11.5px;color:var(--cvf-text-muted,#64748b);}
.cv-vault-wrap .cv-tags-cc .dashicons{font-size:13px;width:13px;height:13px;}
.cv-vault-wrap .cv-tags-desc{margin-top:4px;font-size:12.5px;color:var(--cvf-text-muted,#64748b);line-height:1.5;overflow:hidden;text-overflow:ellipsis;}

.cv-vault-wrap .cv-tags-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;padding:4px 2px;}
.cv-vault-wrap .cv-tags-card{display:flex;flex-direction:column;border:1px solid var(--cvf-border,#e8ecf0);border-radius:12px;background:var(--cvf-card,#fff);overflow:hidden;cursor:pointer;transition:border-color .15s,box-shadow .15s;}
.cv-vault-wrap .cv-tags-card:hover{border-color:var(--cvf-primary,#1e3a5f);box-shadow:0 4px 14px rgba(15,23,42,.10);}

.cv-vault-wrap .cv-tags-card-thumb{height:120px;display:flex;align-items:center;justify-content:center;background:var(--cvf-card,#fff);padding:8px;box-sizing:border-box;}
.cv-vault-wrap .cv-tags-card-thumb .cv-docs-gallery-thumb{border:none;cursor:pointer;margin:0;background:transparent;}
.cv-vault-wrap .cv-tags-card-thumb-media{padding:0;}
.cv-vault-wrap .cv-tags-card-thumb-media .cv-docs-gallery-thumb{width:100%;height:100%;padding:8px;box-sizing:border-box;}
.cv-vault-wrap .cv-tags-card-thumb-media .cv-media-gthumb-pv{width:100%;height:100%;}
.cv-vault-wrap .cv-tags-card-body{padding:11px 13px;display:flex;flex-direction:column;gap:2px;}
.cv-vault-wrap .cv-tags-card-title{font-size:13.5px;font-weight:600;color:var(--cvf-text-dark,#1e293b);line-height:1.35;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;}

.cv-vault-wrap .cv-tags-chips{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px;}
.cv-vault-wrap .cv-tags-chip{font-size:10.5px;font-weight:600;padding:2px 8px;border-radius:999px;background:var(--cvf-bg-alt,#f1f5f9);color:var(--cvf-text-secondary,#475569);line-height:1.5;}

.cv-vault-wrap .cv-tags-count{font-size:12.5px;color:var(--cvf-text-muted,#64748b);margin:2px 2px 12px;font-weight:600;}


.cv-vault-wrap .cv-activity-tl{max-width:640px;margin:0 auto;padding:4px 0 8px;position:relative;}

.cv-vault-wrap .cv-activity-rail{position:absolute;left:18px;top:14px;bottom:24px;width:2px;background:var(--cvf-border,#e8ecf0);border-radius:2px;overflow:hidden;z-index:0;}
.cv-vault-wrap .cv-activity-rail-fill{position:absolute;left:0;top:0;width:100%;height:0;background:linear-gradient(180deg,#2563eb,#6d28d9);}
.cv-vault-wrap .cv-activity-day{text-align:center;margin:20px 0 14px;}
.cv-vault-wrap .cv-activity-group:first-child .cv-activity-day{margin-top:4px;}
.cv-vault-wrap .cv-activity-day-badge{display:inline-block;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--cvf-text-secondary,#475569);background:var(--cvf-bg-alt,#eef2f7);padding:5px 16px;border-radius:999px;}
.cv-vault-wrap .cv-activity-evt{position:relative;display:flex;gap:14px;padding-bottom:16px;}
.cv-vault-wrap .cv-activity-node{flex:0 0 38px;width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--evt-tint,#eef2f7);color:var(--evt-color,#1e3a5f);z-index:1;box-shadow:0 0 0 4px var(--cvf-card,#fff);}
.cv-vault-wrap .cv-activity-node .dashicons{font-size:20px;width:20px;height:20px;}
.cv-vault-wrap .cv-activity-bubble{flex:1 1 auto;min-width:0;background:var(--cvf-card,#fff);border:1px solid var(--cvf-border,#e8ecf0);border-left:3px solid var(--evt-color,#1e3a5f);border-radius:12px;padding:12px 16px;transition:box-shadow .15s,transform .06s;}
.cv-vault-wrap .cv-activity-openable{cursor:pointer;}
.cv-vault-wrap .cv-activity-openable:hover .cv-activity-bubble{box-shadow:0 6px 20px rgba(15,23,42,.10);border-color:var(--evt-color,#1e3a5f);}
.cv-vault-wrap .cv-activity-openable:active .cv-activity-bubble{transform:translateY(1px);}
.cv-vault-wrap .cv-activity-line{font-size:15.5px;line-height:1.5;color:var(--cvf-text-dark,#1e293b);}
.cv-vault-wrap .cv-activity-sub{font-size:14px;font-weight:600;color:var(--evt-color,#1e3a5f);margin-top:2px;word-break:break-word;}
.cv-vault-wrap .cv-activity-foot{display:flex;align-items:center;gap:9px;margin-top:9px;font-size:12px;color:var(--cvf-text-muted,#94a3b8);flex-wrap:wrap;}
.cv-vault-wrap .cv-activity-chip{font-size:11px;font-weight:600;padding:2px 9px;border-radius:999px;background:var(--evt-tint,#eef2f7);color:var(--evt-color,#1e3a5f);}
.cv-vault-wrap .cv-activity-by{color:var(--cvf-text-secondary,#475569);}
.cv-vault-wrap .cv-activity-go{margin-left:auto;color:var(--evt-color,#1e3a5f);font-size:18px;width:18px;height:18px;opacity:.5;transition:opacity .15s,transform .15s;}
.cv-vault-wrap .cv-activity-openable:hover .cv-activity-go{opacity:1;transform:translateX(2px);}


.cv-vault-wrap .cv-activity-evt.cv-activity-unavailable{cursor:default;}
.cv-vault-wrap .cv-activity-evt.cv-activity-unavailable .cv-activity-bubble{background:#f1f3f5;border:1px dashed #cbd5e1;box-shadow:none;}
.cv-vault-wrap .cv-activity-evt.cv-activity-unavailable .cv-activity-node{background:#e2e8f0 !important;color:#94a3b8 !important;}
.cv-vault-wrap .cv-activity-evt.cv-activity-unavailable .cv-activity-line{color:#64748b;text-decoration:line-through;text-decoration-color:rgba(148,163,184,.8);}
.cv-vault-wrap .cv-activity-evt.cv-activity-unavailable .cv-activity-sub,.cv-vault-wrap .cv-activity-evt.cv-activity-unavailable .cv-activity-chip{opacity:.6;}
.cv-vault-wrap .cv-activity-unavail{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:700;color:#b42318;background:rgba(180,35,24,.10);padding:3px 9px;border-radius:10px;white-space:nowrap;}
.cv-vault-wrap .cv-activity-unavail .dashicons{font-size:13px;width:13px;height:13px;}

.cv-vault-wrap .cv-activity-evt,.cv-vault-wrap .cv-activity-day{opacity:0;transform:translateY(22px);transition:opacity .6s cubic-bezier(.2,.7,.2,1),transform .6s cubic-bezier(.2,.7,.2,1);}
.cv-vault-wrap .cv-activity-evt.cv-in,.cv-vault-wrap .cv-activity-day.cv-in{opacity:1;transform:none;}
.cv-vault-wrap .cv-activity-noanim{transition:none !important;}
@media (prefers-reduced-motion: reduce){.cv-vault-wrap .cv-activity-evt,.cv-vault-wrap .cv-activity-day{opacity:1;transform:none;transition:none;}}


.cv-vault-wrap .cv-activity-thumb{flex:0 0 auto;width:54px;height:54px;border-radius:10px;overflow:hidden;margin-top:1px;background:var(--cvf-bg-alt,#f1f5f9);box-shadow:0 1px 3px rgba(15,23,42,.08);}
.cv-vault-wrap .cv-activity-thumb .cv-docs-gallery-thumb{width:100%;height:100%;border-radius:10px;}
.cv-vault-wrap .cv-activity-thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.cv-vault-wrap .cv-activity-thumb .cv-docs-gallery-thumb-ext{display:none;}
.cv-vault-wrap .cv-activity-thumb .cv-docs-gallery-thumb-ico .dashicons{font-size:24px;width:24px;height:24px;}


.cv-vault-wrap .cv-activity-thumb .cv-doc-type-vid .cv-docs-gallery-thumb-ico,
.cv-vault-wrap .cv-activity-thumb .cv-doc-type-aud .cv-docs-gallery-thumb-ico,
.cv-vault-wrap .cv-activity-thumb .cv-doc-type-emb .cv-docs-gallery-thumb-ico{background:#efe9fb;}
.cv-vault-wrap .cv-activity-thumb .cv-doc-type-vid .dashicons,
.cv-vault-wrap .cv-activity-thumb .cv-doc-type-aud .dashicons,
.cv-vault-wrap .cv-activity-thumb .cv-doc-type-emb .dashicons{color:#6d28d9;}

.cv-vault-wrap .cv-activity-head{display:flex;align-items:center;gap:8px;margin-bottom:8px;}
.cv-vault-wrap .cv-activity-time{display:inline-flex;align-items:center;gap:5px;font-size:15px;font-weight:800;color:var(--evt-color,#1e3a5f);font-variant-numeric:tabular-nums;letter-spacing:.01em;}
.cv-vault-wrap .cv-activity-time .dashicons{font-size:15px;width:15px;height:15px;opacity:.7;}
.cv-vault-wrap .cv-activity-head .cv-activity-chip{margin-left:auto;}
.cv-vault-wrap .cv-activity-body{display:flex;gap:12px;align-items:flex-start;}
.cv-vault-wrap .cv-activity-text{flex:1 1 auto;min-width:0;}


.cv-vault-wrap .cv-activity-tl-zz{max-width:840px;}
.cv-vault-wrap .cv-activity-tl-zz .cv-activity-rail{left:50%;transform:translateX(-50%);}
.cv-vault-wrap .cv-activity-tl-zz .cv-activity-evt{display:block;width:50%;box-sizing:border-box;padding-bottom:24px;}
.cv-vault-wrap .cv-activity-tl-zz .cv-side-left{margin-left:0;padding-right:38px;}
.cv-vault-wrap .cv-activity-tl-zz .cv-side-right{margin-left:50%;padding-left:38px;}
.cv-vault-wrap .cv-activity-tl-zz .cv-activity-node{position:absolute;top:2px;flex:none;}
.cv-vault-wrap .cv-activity-tl-zz .cv-side-left .cv-activity-node{right:-19px;left:auto;}
.cv-vault-wrap .cv-activity-tl-zz .cv-side-right .cv-activity-node{left:-19px;right:auto;}

.cv-vault-wrap .cv-activity-tl-zz .cv-side-left .cv-activity-bubble{border-left-width:1px;border-right:3px solid var(--evt-color,#1e3a5f);}
.cv-vault-wrap .cv-activity-tl-zz .cv-side-right .cv-activity-bubble{border-left:3px solid var(--evt-color,#1e3a5f);}

.cv-vault-wrap .cv-activity-tl-zz .cv-side-left{opacity:0;transform:translateX(-46px);}
.cv-vault-wrap .cv-activity-tl-zz .cv-side-right{opacity:0;transform:translateX(46px);}
.cv-vault-wrap .cv-activity-tl-zz .cv-activity-evt.cv-in{opacity:1;transform:none;}
@media (prefers-reduced-motion: reduce){.cv-vault-wrap .cv-activity-tl-zz .cv-side-left,.cv-vault-wrap .cv-activity-tl-zz .cv-side-right{opacity:1;transform:none;}}

@media (max-width:720px){
  .cv-vault-wrap .cv-activity-tl-zz{max-width:640px;}
  .cv-vault-wrap .cv-activity-tl-zz .cv-activity-rail{left:18px;transform:none;}
  .cv-vault-wrap .cv-activity-tl-zz .cv-activity-evt{width:100%;margin-left:0;padding-left:52px;padding-right:0;}
  .cv-vault-wrap .cv-activity-tl-zz .cv-activity-node{left:0;right:auto;}
  .cv-vault-wrap .cv-activity-tl-zz .cv-side-left .cv-activity-bubble{border-right-width:1px;border-left:3px solid var(--evt-color,#1e3a5f);}
  .cv-vault-wrap .cv-activity-tl-zz .cv-side-left,.cv-vault-wrap .cv-activity-tl-zz .cv-side-right{transform:translateY(22px);}
  .cv-vault-wrap .cv-activity-tl-zz .cv-activity-evt.cv-in{transform:none;}
}


.cv-front-folder-card { border-radius: 12px; }
.cv-front-folder-card .cv-folder-card-desc { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.cv-front-folder-card .cv-folder-card-meta { flex-wrap: wrap; gap: 8px 14px; color: var(--cv-text-secondary, #64748b); }
.cv-front-folder-card .cv-folder-items-count,
.cv-front-folder-card .cv-folder-updated,
.cv-front-folder-card .cv-folder-deadline { display: inline-flex; align-items: center; gap: 5px; }
.cv-front-folder-card .cv-folder-items-count svg,
.cv-front-folder-card .cv-folder-updated svg,
.cv-front-folder-card .cv-folder-deadline svg { opacity: .7; flex-shrink: 0; }
.cv-front-folder-card .cv-folder-updated { color: var(--cv-text-hint, #94a3b8); }
.cv-front-folder-card.cv-folder-card-muted { opacity: .72; }
.cv-front-folder-card.cv-folder-card-muted:hover { opacity: 1; }

.cv-front-folder-card .cv-folder-card-meta .cv-folder-badge { padding: 2px 10px; font-size: 11px; font-weight: 600; box-shadow: none; }
.cv-front-folder-card .cv-folder-status-closed { background: rgba(16,163,74,.12); color: #15803d; }
.cv-front-folder-card .cv-folder-status-archived { background: rgba(128,128,128,.14); color: var(--cv-text-secondary,#64748b); }


.cv-vault-wrap .cv-folder-reqs{display:flex;flex-direction:column;gap:12px;}
.cv-vault-wrap .cv-folder-req-proj{border:1px solid var(--cvf-border,#e4e8ee);border-radius:12px;padding:12px 14px;background:var(--cvf-card,#fff);}
.cv-vault-wrap .cv-folder-req-proj-head{display:flex;align-items:center;gap:8px;margin-bottom:8px;}
.cv-vault-wrap .cv-folder-req-proj-head strong{font-size:14px;color:var(--cvf-text-dark,#1e293b);}
.cv-vault-wrap .cv-folder-req-badge{margin-left:auto;font-size:12px;font-weight:700;background:var(--cvf-bg-alt,#eef2f7);color:var(--cvf-text-secondary,#475569);padding:2px 10px;border-radius:999px;}
.cv-vault-wrap .cv-folder-req-ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:5px;}
.cv-vault-wrap .cv-folder-req-li{display:flex;align-items:center;gap:7px;font-size:13.5px;color:var(--cvf-text-dark,#334155);}
.cv-vault-wrap .cv-folder-req-li .dashicons{font-size:17px;width:17px;height:17px;color:var(--cvf-text-muted,#94a3b8);flex:0 0 auto;}
.cv-vault-wrap .cv-folder-req-li.is-done{color:var(--cvf-text-muted,#94a3b8);}
.cv-vault-wrap .cv-folder-req-li.is-done .dashicons{color:#15803d;}
.cv-vault-wrap .cv-folder-req-ok{font-size:11px;font-weight:700;color:#15803d;background:rgba(16,163,74,.12);padding:1px 8px;border-radius:999px;margin-left:2px;}
.cv-vault-wrap .cv-folder-req-goto{margin-top:10px;display:inline-flex;align-items:center;gap:6px;border:none;background:var(--cvf-primary,#1e3a5f);color:#fff;font-size:13px;font-weight:600;padding:8px 16px;border-radius:9px;cursor:pointer;transition:filter .15s;}
.cv-vault-wrap .cv-folder-req-goto .dashicons{font-size:16px;width:16px;height:16px;}
.cv-vault-wrap .cv-folder-req-goto:hover{filter:brightness(1.12);}




.cv-vault-wrap .cv-agenda-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin:2px 2px 14px;}
.cv-vault-wrap .cv-agenda-legend{display:flex;flex-wrap:wrap;gap:14px;font-size:12.5px;color:var(--cvf-text-secondary,#475569);}
.cv-vault-wrap .cv-agenda-leg{display:inline-flex;align-items:center;gap:6px;}
.cv-vault-wrap .cv-agenda-dot{width:9px;height:9px;border-radius:50%;flex:0 0 auto;}
.cv-vault-wrap .cv-agenda-viewtoggle{display:inline-flex;border:1px solid var(--cvf-border,#e4e8ee);border-radius:9px;overflow:hidden;}
.cv-vault-wrap .cv-agenda-viewbtn{background:transparent;border:none;padding:6px 14px;font-size:13px;font-weight:600;color:var(--cvf-text-secondary,#475569);cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:background .12s,color .12s;}
.cv-vault-wrap .cv-agenda-viewbtn .dashicons{font-size:16px;width:16px;height:16px;}
.cv-vault-wrap .cv-agenda-viewbtn.active{background:var(--cvf-primary,#1e3a5f);color:#fff;}
.cv-vault-wrap .cv-agenda-viewbtn + .cv-agenda-viewbtn{border-left:1px solid var(--cvf-border,#e4e8ee);}


.cv-vault-wrap .cv-agenda-scope #cv-agenda-cal{max-width:none;}
.cv-vault-wrap .cv-agenda-scope .cvf-cal-inner{padding:6px 2px 2px;}
.cv-vault-wrap .cv-agenda-scope .cvf-cal-nav{display:flex;align-items:center;justify-content:center;gap:16px;margin-bottom:14px;}
.cv-vault-wrap .cv-agenda-scope .cvf-cal-nav-btn{background:var(--cvf-bg-alt,#f1f5f9);border:1px solid var(--cvf-border,#e4e8ee);color:var(--cvf-text-secondary,#475569);}
.cv-vault-wrap .cv-agenda-scope .cvf-cal-nav-btn:hover{background:var(--cvf-border,#e4e8ee);border-color:var(--cvf-border,#e4e8ee);}
.cv-vault-wrap .cv-agenda-scope .cvf-cal-month{color:var(--cvf-text-dark,#1e293b);font-size:16px;}
.cv-vault-wrap .cv-agenda-scope .cvf-cal-grid{gap:6px;}
.cv-vault-wrap .cv-agenda-scope .cvf-cal-day-name{color:var(--cvf-text-muted,#94a3b8);font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding-bottom:6px;}
.cv-vault-wrap .cv-agenda-scope .cvf-cal-cell{color:var(--cvf-text-secondary,#475569);min-height:66px;justify-content:flex-start;padding:8px 0 0;border:1px solid transparent;font-size:14px;}
.cv-vault-wrap .cv-agenda-scope .cvf-cal-cell.has-events{color:var(--cvf-text-dark,#1e293b);}
.cv-vault-wrap .cv-agenda-scope .cvf-cal-cell.has-events:hover{background:var(--cvf-bg-alt,#f1f5f9);}
.cv-vault-wrap .cv-agenda-scope .cvf-cal-cell.today{background:var(--cvf-primary,#1e3a5f);color:#fff;box-shadow:none;}
.cv-vault-wrap .cv-agenda-scope .cvf-cal-cell.today .cvf-cal-dot{background:#fff !important;}
.cv-vault-wrap .cv-agenda-scope .cvf-cal-cell.selected{background:color-mix(in srgb, var(--cvf-primary,#1e3a5f) 12%, #fff);border:1px solid var(--cvf-primary,#1e3a5f);}
.cv-vault-wrap .cv-agenda-scope .cvf-cal-dots{margin-top:6px;}
.cv-vault-wrap .cv-agenda-scope .cvf-cal-dot{width:7px;height:7px;box-shadow:none;}
.cv-vault-wrap .cv-agenda-scope .cvf-cal-events{margin-top:18px;border-top:1px solid var(--cvf-border,#e4e8ee);padding-top:14px;}
.cv-vault-wrap .cv-agenda-scope .cvf-cal-event{background:var(--cvf-card,#fff);border:1px solid var(--cvf-border,#e4e8ee);border-left-width:3px;border-radius:10px;padding:10px 12px;display:flex;align-items:center;gap:10px;margin-bottom:8px;}
.cv-vault-wrap .cv-agenda-scope .cvf-cal-event:hover{background:var(--cvf-bg-alt,#f1f5f9);}
.cv-vault-wrap .cv-agenda-scope .cvf-cal-event-title{color:var(--cvf-text-dark,#1e293b);font-weight:500;}
.cv-vault-wrap .cv-agenda-scope .cvf-cal-event-date{color:var(--cvf-text-muted,#94a3b8);}
.cv-vault-wrap .cv-agenda-scope .cvf-cal-empty{color:var(--cvf-text-muted,#94a3b8);}


.cv-vault-wrap #cv-agenda-list .cv-agenda-list-day{font-size:12px;font-weight:700;color:var(--cvf-text-muted,#94a3b8);text-transform:capitalize;margin:14px 2px 6px;}
.cv-vault-wrap #cv-agenda-list .cv-agenda-list-item{display:flex;align-items:center;gap:10px;padding:11px 13px;background:var(--cvf-card,#fff);border:1px solid var(--cvf-border,#e4e8ee);border-left-width:3px;border-radius:10px;margin-bottom:6px;font-size:14px;color:var(--cvf-text-dark,#1e293b);}
.cv-vault-wrap #cv-agenda-list .cv-agenda-li-date{margin-left:auto;font-size:12px;color:var(--cvf-text-muted,#94a3b8);white-space:nowrap;}


.cv-vault-wrap .cv-agenda-scope .cvf-cal-event.is-clickable,
.cv-vault-wrap #cv-agenda-list .cv-agenda-list-item.is-clickable{cursor:pointer;}
.cv-vault-wrap .cv-agenda-scope .cvf-cal-event.is-clickable:hover,
.cv-vault-wrap #cv-agenda-list .cv-agenda-list-item.is-clickable:hover{background:var(--cvf-bg-alt,#f1f5f9);}
.cv-vault-wrap .cv-agenda-scope .cvf-cal-event.is-past{border-left-color:#dc2626 !important;}
.cv-vault-wrap .cv-agenda-scope .cvf-cal-event.is-past .cvf-cal-event-date{color:#dc2626;}
.cv-vault-wrap #cv-agenda-list .cv-agenda-list-item.is-past{border-left-color:#dc2626 !important;}
.cv-vault-wrap #cv-agenda-list .cv-agenda-list-item.is-past .cv-agenda-li-date{color:#dc2626;font-weight:600;}
.cv-vault-wrap .cv-agenda-scope .cvf-cal-cell-labels{display:none;flex-direction:column;gap:2px;width:100%;margin-top:5px;padding:0 3px;}
.cv-vault-wrap .cv-agenda-scope .cvf-cal-cell-label{font-size:10.5px;line-height:1.3;color:var(--cvf-text-secondary,#475569);padding-left:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;text-align:left;}
.cv-vault-wrap .cv-agenda-scope .cvf-cal-cell-more{font-size:9px;color:var(--cvf-text-muted,#94a3b8);padding-left:5px;text-align:left;}
@media (min-width:720px){
  .cv-vault-wrap .cv-agenda-scope .cvf-cal-cell-labels{display:flex;}
  .cv-vault-wrap .cv-agenda-scope .cvf-cal-cell.has-events .cvf-cal-dots{display:none;}
  .cv-vault-wrap .cv-agenda-scope .cvf-cal-cell{min-height:84px;}
}



.cv-vault-wrap .cv-agenda-filt{display:inline-flex;align-items:center;gap:6px;background:var(--cvf-card,#fff);border:1px solid var(--cvf-border,#e4e8ee);border-radius:999px;padding:5px 13px;font-size:12.5px;font-weight:600;color:var(--cvf-text-secondary,#475569);cursor:pointer;transition:opacity .12s,background .12s;}
.cv-vault-wrap .cv-agenda-filt:hover{background:var(--cvf-bg-alt,#f1f5f9);}
.cv-vault-wrap .cv-agenda-filt.is-off{opacity:.42;}
.cv-vault-wrap .cv-agenda-filt.is-off .cv-agenda-dot{filter:grayscale(1);}


.cv-vault-wrap .cv-agenda-scope #cv-agenda-cal{background:var(--cvf-card,#fff);border:1px solid var(--cvf-border,#e4e8ee);border-radius:14px;padding:16px;box-shadow:0 1px 3px rgba(15,23,42,.05);}
.cv-vault-wrap .cv-agenda-scope .cvf-cal-inner{padding:0;}
.cv-vault-wrap .cv-agenda-scope .cvf-cal-nav{margin-bottom:16px;}
.cv-vault-wrap .cv-agenda-scope .cvf-cal-grid{gap:1px;background:var(--cvf-border,#e4e8ee);border:1px solid var(--cvf-border,#e4e8ee);border-radius:12px;overflow:hidden;}
.cv-vault-wrap .cv-agenda-scope .cvf-cal-day-name{background:var(--cvf-bg-alt,#f8fafc);padding:9px 0;}
.cv-vault-wrap .cv-agenda-scope .cvf-cal-cell{background:var(--cvf-card,#fff);border:none;border-radius:0;min-height:60px;}
.cv-vault-wrap .cv-agenda-scope .cvf-cal-cell.empty{background:var(--cvf-bg-alt,#fafbfc);visibility:visible;}
.cv-vault-wrap .cv-agenda-scope .cvf-cal-cell.has-events:hover{background:var(--cvf-bg-alt,#f1f5f9);}
.cv-vault-wrap .cv-agenda-scope .cvf-cal-cell.today{background:var(--cvf-primary,#1e3a5f);border-radius:0;}
.cv-vault-wrap .cv-agenda-scope .cvf-cal-cell.selected{background:color-mix(in srgb, var(--cvf-primary,#1e3a5f) 12%, #fff);border:none;}
@media (min-width:720px){ .cv-vault-wrap .cv-agenda-scope .cvf-cal-cell{min-height:88px;} }


.cv-vault-wrap #cv-agenda-list{display:flex;flex-direction:column;gap:10px;}
.cv-vault-wrap .cv-agenda-daygroup{border:1px solid var(--cvf-border,#e4e8ee);border-radius:12px;overflow:hidden;background:var(--cvf-card,#fff);}
.cv-vault-wrap .cv-agenda-dayhdr{width:100%;display:flex;align-items:center;gap:10px;background:var(--cvf-bg-alt,#f8fafc);border:none;padding:11px 14px;cursor:pointer;font-size:13.5px;font-weight:600;color:var(--cvf-text-dark,#1e293b);text-transform:capitalize;text-align:left;}
.cv-vault-wrap .cv-agenda-dayhdr.is-today{color:var(--cvf-primary,#1e3a5f);}
.cv-vault-wrap .cv-agenda-dayname{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.cv-vault-wrap .cv-agenda-daycount{background:var(--cvf-card,#fff);border:1px solid var(--cvf-border,#e4e8ee);color:var(--cvf-text-secondary,#475569);font-size:11px;font-weight:700;min-width:20px;text-align:center;padding:1px 7px;border-radius:999px;flex:0 0 auto;}
.cv-vault-wrap .cv-agenda-daychev{font-size:18px;width:18px;height:18px;color:var(--cvf-text-muted,#94a3b8);transition:transform .16s;flex:0 0 auto;}
.cv-vault-wrap .cv-agenda-daygroup[data-open="0"] .cv-agenda-daychev{transform:rotate(180deg);}
.cv-vault-wrap .cv-agenda-daybody{padding:8px;}
.cv-vault-wrap .cv-agenda-ev{display:flex;align-items:center;gap:12px;padding:11px 12px;border:1px solid var(--cvf-border,#e4e8ee);border-left:3px solid var(--evc,#94a3b8);border-radius:10px;margin-bottom:8px;background:var(--cvf-card,#fff);transition:background .12s;}
.cv-vault-wrap .cv-agenda-ev:last-child{margin-bottom:0;}
.cv-vault-wrap .cv-agenda-ev.is-clickable{cursor:pointer;}
.cv-vault-wrap .cv-agenda-ev.is-clickable:hover{background:var(--cvf-bg-alt,#f8fafc);}
.cv-vault-wrap .cv-agenda-ev.is-past{border-left-color:#dc2626;}
.cv-vault-wrap .cv-agenda-ev-main{flex:1;min-width:0;}
.cv-vault-wrap .cv-agenda-ev-title{font-size:14px;font-weight:500;color:var(--cvf-text-dark,#1e293b);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.cv-vault-wrap .cv-agenda-ev-meta{display:flex;align-items:center;gap:8px;margin-top:4px;}
.cv-vault-wrap .cv-agenda-ev-cat{font-size:11px;font-weight:700;padding:1px 8px;border-radius:999px;}
.cv-vault-wrap .cv-agenda-ev-time{font-size:12px;color:var(--cvf-text-muted,#94a3b8);}
.cv-vault-wrap .cv-agenda-ev.is-past .cv-agenda-ev-time{color:#dc2626;}
.cv-vault-wrap .cv-agenda-ev-go{color:var(--cvf-text-muted,#94a3b8);font-size:18px;width:18px;height:18px;flex:0 0 auto;}


.cv-vault-wrap .cv-agenda-scope .cvf-cal-grid{gap:1px;background:#eef1f6;border:1px solid #eef1f6;}
.cv-vault-wrap .cv-agenda-scope .cvf-cal-day-name{background:#f7f9fc;border-bottom:none;}
.cv-vault-wrap .cv-agenda-scope .cvf-cal-cell{aspect-ratio:1;min-height:0;justify-content:center;padding:0;gap:4px;}
.cv-vault-wrap .cv-agenda-scope .cvf-cal-cell > span:first-child{font-size:14px;line-height:1;}
.cv-vault-wrap .cv-agenda-scope .cvf-cal-cell.selected{background:color-mix(in srgb, var(--cvf-primary,#1e3a5f) 13%, #fff);}
@media (min-width:720px){ .cv-vault-wrap .cv-agenda-scope .cvf-cal-cell{min-height:0;} }


.cv-vault-wrap .cv-agenda-scope .cvf-cal-cell{aspect-ratio:auto;justify-content:center;padding:7px 4px 6px;gap:3px;min-height:64px;}
@media (min-width:720px){ .cv-vault-wrap .cv-agenda-scope .cvf-cal-cell{min-height:96px;} }
.cv-vault-wrap .cv-agenda-scope .cvf-cal-cell.selected{background:color-mix(in srgb, var(--cvf-primary,#1e3a5f) 20%, #fff);box-shadow:inset 0 0 0 2px var(--cvf-primary,#1e3a5f);color:var(--cvf-primary,#1e3a5f);font-weight:700;}

.cv-vault-wrap .cv-agenda-scope .cvf-cal-cell-more{font-size:10.5px;font-weight:700;color:var(--cvf-text-muted,#94a3b8);margin-top:1px;text-align:center;}
.cv-vault-wrap .cv-agenda-scope .cvf-cal-cell.selected .cvf-cal-cell-more{color:var(--cvf-primary,#1e3a5f);}



.cv-vault-wrap .cv-agenda-filt-n{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--cvf-bg-alt,#eef1f6);color:var(--cvf-text-secondary,#475569);font-size:11px;font-weight:800;line-height:1;}
.cv-vault-wrap .cv-agenda-filt.is-off .cv-agenda-filt-n{opacity:.7;}
.cv-vault-wrap .cv-agenda-toolbar-actions{display:inline-flex;align-items:center;gap:10px;flex-wrap:wrap;}
.cv-vault-wrap .cv-agenda-today{background:var(--cvf-card,#fff);border:1px solid var(--cvf-border,#e4e8ee);border-radius:9px;padding:6px 13px;font-size:13px;font-weight:600;color:var(--cvf-primary,#1e3a5f);cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:background .12s;}
.cv-vault-wrap .cv-agenda-today:hover{background:var(--cvf-bg-alt,#f1f5f9);}
.cv-vault-wrap .cv-agenda-dayrel{font-size:11.5px;font-weight:700;padding:1px 9px;border-radius:999px;background:var(--cvf-bg-alt,#eef1f6);color:var(--cvf-text-secondary,#475569);margin-left:8px;}
.cv-vault-wrap .cv-agenda-dayrel.is-today{background:color-mix(in srgb, var(--cvf-primary,#1e3a5f) 16%, #fff);color:var(--cvf-primary,#1e3a5f);}
.cv-vault-wrap .cv-agenda-dayrel.is-past{background:#fdecec;color:#dc2626;}
.cv-vault-wrap .cvf-calendar-body .cvf-cal-event.cv-deeplink-highlight{box-shadow:0 0 0 3px rgba(139,92,246,.55);border-radius:8px;transition:box-shadow .2s;}

.cvf-grp-event-card.cv-deeplink-highlight{box-shadow:0 0 0 3px rgba(139,92,246,.6) !important;border-radius:10px;transition:box-shadow .2s;}


.cv-vault-wrap .cv-agenda-sync-btn{background:var(--cvf-card,#fff);border:1px solid var(--cvf-border,#e4e8ee);border-radius:9px;padding:6px 13px;font-size:13px;font-weight:600;color:var(--cvf-primary,#1e3a5f);cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:background .12s;}
.cv-vault-wrap .cv-agenda-sync-btn:hover{background:var(--cvf-bg-alt,#f1f5f9);}
.cv-vault-wrap .cv-agenda-sync-overlay{position:fixed;inset:0;z-index:100000;background:rgba(15,23,42,.5);display:flex;align-items:center;justify-content:center;padding:16px;}
.cv-vault-wrap .cv-agenda-sync-box{background:var(--cvf-card,#fff);border-radius:16px;max-width:560px;width:100%;max-height:90vh;overflow:auto;padding:22px 24px;position:relative;box-shadow:0 20px 60px rgba(15,23,42,.25);}
.cv-vault-wrap .cv-agenda-sync-close{position:absolute;top:12px;right:12px;background:transparent;border:none;cursor:pointer;color:var(--cvf-text-muted,#94a3b8);width:30px;height:30px;border-radius:8px;}
.cv-vault-wrap .cv-agenda-sync-close:hover{background:var(--cvf-bg-alt,#f1f5f9);}
.cv-vault-wrap .cv-agenda-sync-h{display:flex;align-items:center;gap:8px;font-size:17px;font-weight:800;color:var(--cvf-primary,#1e3a5f);margin:0 0 6px;}
.cv-vault-wrap .cv-agenda-sync-sec{padding:16px 0;border-top:1px solid var(--cvf-border,#eef1f6);}
.cv-vault-wrap .cv-agenda-sync-sec:first-of-type{border-top:none;}
.cv-vault-wrap .cv-agenda-sync-sec h4{font-size:14px;font-weight:800;color:var(--cvf-text,#1e293b);margin:0 0 4px;}
.cv-vault-wrap .cv-agenda-sync-hint{font-size:11px !important;color:var(--cvf-text-muted,#94a3b8) !important;margin:0 0 9px;line-height:1.4;}
.cv-vault-wrap .cv-agenda-sync-urlrow{display:flex;gap:8px;align-items:stretch;}
.cv-vault-wrap .cv-agenda-sync-url{flex:1 1 auto;min-width:0;border:1px solid var(--cvf-border,#e4e8ee);border-radius:9px;padding:8px 11px;font-size:12.5px;color:var(--cvf-text-secondary,#475569);background:var(--cvf-bg-alt,#f8fafc);}
.cv-vault-wrap .cv-agenda-sync-copy,.cv-vault-wrap .cv-agenda-ext-add{background:var(--cvf-primary,#1e3a5f);border:none;color:#fff;border-radius:9px;padding:8px 13px;font-size:13px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:5px;white-space:nowrap;}
.cv-vault-wrap .cv-agenda-sync-copy:hover,.cv-vault-wrap .cv-agenda-ext-add:hover{filter:brightness(1.08);}
.cv-vault-wrap .cv-agenda-sync-suback{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;align-items:center;}


.cv-vault-wrap .cv-agenda-sync-google{display:inline-flex;align-items:center;gap:5px;font-size:12.5px;font-weight:700;color:#fff !important;background:var(--cvf-primary,#1e3a5f);text-decoration:none;padding:8px 13px;border:1px solid var(--cvf-primary,#1e3a5f);border-radius:9px;}
.cv-vault-wrap .cv-agenda-sync-google .dashicons{color:#fff !important;}
.cv-vault-wrap .cv-agenda-sync-google:hover{filter:brightness(1.08);}
.cv-vault-wrap .cv-agenda-sync-download{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:600;color:var(--cvf-text-secondary,#475569) !important;text-decoration:none;padding:7px 11px;border:1px solid var(--cvf-border,#e4e8ee);border-radius:9px;}
.cv-vault-wrap .cv-agenda-sync-download .dashicons{color:var(--cvf-text-secondary,#475569) !important;}
.cv-vault-wrap .cv-agenda-sync-download:hover{background:var(--cvf-bg-alt,#f1f5f9);}
.cv-vault-wrap .cv-agenda-sync-note{font-size:11px !important;color:var(--cvf-text-muted,#94a3b8) !important;margin:9px 0 0;line-height:1.4;}

.cv-vault-wrap .cv-dates-row{display:flex;gap:12px;flex-wrap:wrap;margin:8px 0;align-items:flex-start;justify-content:flex-start;}
.cv-vault-wrap .cv-dates-row>.cv-form-group,.cv-vault-wrap .cv-dates-row>.cv-perfile-cell{flex:0 1 190px;min-width:0;margin:0;}
.cv-vault-wrap .cv-expires-group>label,.cv-vault-wrap .cv-deadline-group>label{display:block;font-size:12px;font-weight:600;color:var(--cvf-text-secondary,#475569);margin-bottom:4px;}
.cv-vault-wrap .cv-expires-input,.cv-vault-wrap .cv-deadline-input{width:100%;border:1px solid var(--cvf-border,#e4e8ee);border-radius:8px;padding:7px 10px;font-size:13px;background:#fff;color:var(--cvf-text,#1e293b);}
.cv-vault-wrap .cv-agenda-sync-regen{background:transparent;border:none;color:var(--cvf-text-muted,#94a3b8) !important;font-size:11px !important;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:4px;padding:0;margin-top:10px;}
.cv-vault-wrap .cv-agenda-sync-regen:hover{color:#dc2626 !important;}
.cv-vault-wrap .cv-agenda-sync-regen .dashicons{color:var(--cvf-text-muted,#94a3b8) !important;}
.cv-vault-wrap .cv-agenda-ext-list{display:flex;flex-direction:column;gap:6px;margin-bottom:10px;}
.cv-vault-wrap .cv-agenda-ext-item{display:flex;align-items:center;gap:9px;padding:8px 10px;border:1px solid var(--cvf-border,#e4e8ee);border-radius:9px;background:var(--cvf-bg-alt,#fafbfc);}
.cv-vault-wrap .cv-agenda-ext-dot{width:11px;height:11px;border-radius:50%;flex:0 0 auto;}
.cv-vault-wrap .cv-agenda-ext-name{flex:1 1 auto;min-width:0;font-size:13px;color:var(--cvf-text,#1e293b);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.cv-vault-wrap .cv-agenda-ext-remove{background:transparent;border:none;cursor:pointer;color:var(--cvf-text-muted,#94a3b8);width:28px;height:28px;border-radius:7px;flex:0 0 auto;}
.cv-vault-wrap .cv-agenda-ext-remove:hover{background:#fdecec;color:#dc2626;}
.cv-vault-wrap .cv-agenda-ext-empty{font-size:12.5px;color:var(--cvf-text-muted,#94a3b8);padding:4px 2px;}
.cv-vault-wrap .cv-agenda-ext-form{display:flex;flex-wrap:wrap;gap:8px;align-items:center;}
.cv-vault-wrap .cv-agenda-ext-url{flex:1 1 200px;min-width:0;border:1px solid var(--cvf-border,#e4e8ee);border-radius:9px;padding:8px 11px;font-size:12.5px;}
.cv-vault-wrap .cv-agenda-ext-label{flex:0 1 130px;min-width:0;border:1px solid var(--cvf-border,#e4e8ee);border-radius:9px;padding:8px 11px;font-size:12.5px;}
.cv-vault-wrap .cv-agenda-ext-color{width:38px;height:38px;padding:2px;border:1px solid var(--cvf-border,#e4e8ee);border-radius:9px;cursor:pointer;flex:0 0 auto;background:#fff;}
.cv-vault-wrap .cv-agenda-ext-msg{margin-top:9px;font-size:12.5px;color:#dc2626;}

.cv-vault-wrap .cv-agenda-ext-orfile{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:10px;}
.cv-vault-wrap .cv-agenda-ext-orsep{font-size:12px;color:var(--cvf-text-muted,#94a3b8);text-transform:uppercase;letter-spacing:.04em;}
.cv-vault-wrap .cv-agenda-ext-filebtn{display:inline-flex;align-items:center;gap:6px;cursor:pointer;background:var(--cvf-card,#fff);border:1px solid var(--cvf-border,#e4e8ee);border-radius:9px;padding:7px 12px;font-size:12.5px;font-weight:600;color:var(--cvf-primary,#1e3a5f);}
.cv-vault-wrap .cv-agenda-ext-filebtn:hover{background:var(--cvf-bg-alt,#f1f5f9);}
.cv-vault-wrap .cv-agenda-ext-filehint{flex:1 1 100%;font-size:11.5px;color:var(--cvf-text-muted,#94a3b8);line-height:1.4;}

.cv-vault-wrap .cv-agenda-loadmore-wrap{text-align:center;margin-top:12px;}
.cv-vault-wrap .cv-agenda-loadmore,.cv-vault-wrap .cv-agenda-scope .cvf-cal-day-more{background:var(--cvf-card,#fff);border:1px solid var(--cvf-border,#e4e8ee);border-radius:9px;padding:7px 16px;font-size:13px;font-weight:600;color:var(--cvf-primary,#1e3a5f);cursor:pointer;transition:background .12s;}
.cv-vault-wrap .cv-agenda-loadmore:hover,.cv-vault-wrap .cv-agenda-scope .cvf-cal-day-more:hover{background:var(--cvf-bg-alt,#f1f5f9);}
.cv-vault-wrap .cv-agenda-scope .cvf-cal-day-more{display:block;width:100%;margin-top:6px;}


.cv-vault-wrap .cv-agenda-addcal{background:transparent;border:none;cursor:pointer;color:var(--cvf-text-muted,#94a3b8);width:26px;height:26px;border-radius:7px;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;padding:0;}
.cv-vault-wrap .cv-agenda-addcal:hover{background:var(--cvf-bg-alt,#f1f5f9);color:var(--cvf-primary,#1e3a5f);}
.cv-vault-wrap .cv-agenda-addcal .dashicons{font-size:17px;width:17px;height:17px;}
.cv-vault-wrap .cv-agenda-scope .cvf-cal-event .cv-agenda-addcal{margin-left:auto;}
.cv-vault-wrap .cv-addcal-menu{background:var(--cvf-card,#fff);border:1px solid var(--cvf-border,#e4e8ee);border-radius:10px;box-shadow:0 8px 24px rgba(15,23,42,.16);padding:5px;min-width:190px;}
.cv-vault-wrap .cv-addcal-menu button{display:flex;align-items:center;gap:8px;width:100%;background:transparent;border:none;cursor:pointer;padding:8px 10px;border-radius:7px;font-size:13px;color:var(--cvf-text,#1e293b);text-align:left;}
.cv-vault-wrap .cv-addcal-menu button:hover{background:var(--cvf-bg-alt,#f1f5f9);}
.cv-vault-wrap .cv-addcal-menu .dashicons{font-size:16px;width:16px;height:16px;color:var(--cvf-text-secondary,#475569);}





.cv-vault-wrap .cv-agenda-scope .cvf-cal-cell{aspect-ratio:1 !important;min-height:0 !important;justify-content:center !important;align-items:stretch !important;padding:6px 4px 4px !important;gap:2px !important;overflow:hidden;}
.cv-vault-wrap .cv-agenda-scope .cvf-cal-cell > span:first-child{order:0;margin:0;padding:0;width:100%;text-align:center;font-size:14px;line-height:1.1;}
.cv-vault-wrap .cv-agenda-scope .cvf-cal-dots{order:1;justify-content:center;margin-top:2px;}
.cv-vault-wrap .cv-agenda-scope .cvf-cal-cell-labels{order:2;margin-top:3px;}
.cv-vault-wrap .cv-agenda-scope .cvf-cal-cell-label{text-align:left;}
@media (min-width:720px){
  .cv-vault-wrap .cv-agenda-scope .cvf-cal-cell{min-height:0 !important;}
  .cv-vault-wrap .cv-agenda-scope .cvf-cal-cell-labels{display:flex !important;}
  .cv-vault-wrap .cv-agenda-scope .cvf-cal-cell.has-events .cvf-cal-dots{display:none;}
}



.cv-vault-wrap .cv-agenda-list-ctrl{display:flex;justify-content:flex-end;margin:0 0 10px;}
.cv-vault-wrap .cv-agenda-pasttoggle{background:var(--cvf-card,#fff);border:1px solid var(--cvf-border,#e4e8ee);border-radius:8px;padding:5px 12px;font-size:12.5px;font-weight:600;color:var(--cvf-text-secondary,#475569);cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:background .12s;}
.cv-vault-wrap .cv-agenda-pasttoggle:hover{background:var(--cvf-bg-alt,#f1f5f9);}
.cv-vault-wrap .cv-agenda-pasttoggle.is-on{color:var(--cvf-primary,#1e3a5f);border-color:color-mix(in srgb, var(--cvf-primary,#1e3a5f) 40%, #fff);}




.cv-vault-wrap .cvf-home-upcoming .cvf-home-upcoming-toggle{display:inline-flex;border:1px solid var(--cvf-border,#e4e8ee);border-radius:8px;overflow:hidden;margin-left:auto;}
.cv-vault-wrap .cvf-home-upcoming .cv-huv-btn{background:transparent;border:none;padding:4px 9px;font-size:12.5px;font-weight:600;color:var(--cvf-text-secondary,#475569);cursor:pointer;display:inline-flex;align-items:center;transition:background .12s,color .12s;}
.cv-vault-wrap .cvf-home-upcoming .cv-huv-btn .dashicons{font-size:16px;width:16px;height:16px;}
.cv-vault-wrap .cvf-home-upcoming .cv-huv-btn.active{background:var(--cvf-primary,#1e3a5f);color:#fff;}
.cv-vault-wrap .cvf-home-upcoming .cvf-home-module-link{margin-left:10px;}
.cv-vault-wrap .cvf-home-upcoming .cv-home-up-dot{width:9px;height:9px;border-radius:50%;display:inline-block;}
.cv-vault-wrap .cvf-home-upcoming .cv-home-upcoming-cal{margin-top:10px;}




.cv-vault-wrap .cvf-owner-filters.cvf-preset-row{flex-wrap:nowrap !important;gap:3px !important;}
.cv-vault-wrap .cvf-owner-filters.cvf-preset-row .cv-seg-btn{flex:0 1 auto !important;min-width:0 !important;padding:5px 9px !important;font-size:11.5px !important;line-height:1.2 !important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;height:auto !important;}

.cv-vault-wrap .cvf-owner-filters.cvf-preset-row .cv-seg-btn:first-child{flex:0 0 auto !important;padding:5px 7px !important;}


.cv-vault-wrap .cv-agenda-extmenu{position:relative;display:inline-block;}
.cv-vault-wrap .cv-agenda-extmenu-btn .cv-agenda-extmenu-caret{font-size:16px;width:16px;height:16px;line-height:16px;opacity:.55;margin-left:1px;transition:transform .15s;}
.cv-vault-wrap .cv-agenda-extmenu-panel{position:absolute;top:calc(100% + 8px);left:0;z-index:60;min-width:248px;max-width:320px;background:#fff;border:1px solid var(--cvf-border,#e6eaf0);border-radius:14px;box-shadow:0 16px 40px -8px rgba(15,23,42,.22),0 2px 8px rgba(15,23,42,.08);padding:0;overflow:hidden;}

.cv-vault-wrap .cv-agenda-extmenu-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px 10px;border-bottom:1px solid #eef1f6;background:linear-gradient(180deg,#f9fafc,#fff);}
.cv-vault-wrap .cv-agenda-extmenu-title{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:#64748b;}
.cv-vault-wrap .cv-agenda-extmenu-title .dashicons{font-size:16px;width:16px;height:16px;color:#94a3b8;}
.cv-vault-wrap .cv-agenda-extmenu-all{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:#475569;cursor:pointer;margin:0;padding:3px 6px;border-radius:7px;}
.cv-vault-wrap .cv-agenda-extmenu-all:hover{background:#eef2f7;}
.cv-vault-wrap .cv-agenda-extmenu-all input{margin:0;}
.cv-vault-wrap .cv-agenda-extmenu-list{padding:6px;max-height:280px;overflow:auto;}
.cv-vault-wrap .cv-agenda-extopt{display:flex;align-items:center;gap:9px;padding:8px 10px;border-radius:9px;cursor:pointer;font-size:13px;color:var(--cvf-text,#2d3748);transition:background .12s;}
.cv-vault-wrap .cv-agenda-extopt:hover{background:#f4f7fb;}
.cv-vault-wrap .cv-agenda-extopt input[type=checkbox]{margin:0;flex:0 0 auto;}
.cv-vault-wrap .cv-agenda-extopt .cv-agenda-dot{flex:0 0 auto;width:10px;height:10px;border-radius:50%;box-shadow:0 0 0 3px rgba(15,23,42,.04);}
.cv-vault-wrap .cv-agenda-extopt-name{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500;}
.cv-vault-wrap .cv-agenda-extopt .cv-agenda-filt-n{flex:0 0 auto;background:#eef2f7;color:#64748b;border-radius:20px;padding:1px 8px;font-size:11px;font-weight:600;}

.cv-vault-wrap .cv-agenda-viewbtn--icon{padding-left:9px;padding-right:9px;}
.cv-vault-wrap .cv-agenda-viewbtn--icon .dashicons{margin:0;}
.cv-vault-wrap .cv-agenda-viewsep{width:1px;align-self:stretch;margin:4px 2px;background:var(--cvf-border,#e1e5eb);flex:0 0 auto;}


.cv-vault-wrap .cv-ie-dates{display:flex;gap:12px;flex-wrap:wrap;}
.cv-vault-wrap .cv-ie-dates .cv-ie-datecol{flex:1 1 150px;min-width:0;display:flex;flex-direction:column;}
.cv-vault-wrap .cv-ie-dates .cv-ie-datecol input[type=date]{width:100%;}




.cv-vault-wrap .cv-vault-stats.cv-tiles-hidden { display: none !important; }

.cv-vault-wrap .cv-appearance-tiles-pref { margin: 0 0 14px; padding: 12px 14px; background: var(--cvf-bg-soft, #f8fafc); border: 1px solid var(--cvf-border, #e8ecf0); border-radius: 12px; }
.cv-vault-wrap .cv-appearance-tiles-label { display: flex; align-items: center; gap: 10px; font-weight: 600; color: var(--cvf-text, #334155); cursor: pointer; }
.cv-vault-wrap .cv-tab-storage-pill { display: inline-flex; align-items: center; gap: 6px; margin-left: auto; padding: 6px 12px; border-radius: 999px; background: var(--cvf-bg-soft, #f1f5f9); color: var(--cvf-text-muted, #64748b); font-size: 12px; font-weight: 600; white-space: nowrap; align-self: center; }




.cv-vault-header.cv-hdr-has-img { background: linear-gradient(135deg, rgba(15,23,42,.66) 0%, rgba(15,23,42,.42) 100%), var(--cv-hdr-img) center / cover no-repeat !important; }

.cv-vault-wrap .cv-appearance-hdrimg { margin: 0 0 14px; padding: 12px 14px; background: var(--cvf-bg-soft, #f8fafc); border: 1px solid var(--cvf-border, #e8ecf0); border-radius: 12px; }
.cv-vault-wrap .cv-hdrimg-row { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; margin-top: 10px; }
.cv-vault-wrap .cv-hdrimg-preview { width: 160px; height: 64px; border-radius: 10px; border: 1px dashed var(--cvf-border, #cbd5e1); background-color: var(--cvf-bg, #eef2f7); background-size: cover; background-position: center; display: flex; align-items: center; justify-content: center; color: var(--cvf-text-muted, #94a3b8); }
.cv-vault-wrap .cv-hdrimg-preview.cv-hdrimg-on { border-style: solid; }
.cv-vault-wrap .cv-hdrimg-btns { display: flex; flex-direction: column; gap: 8px; }

.cv-vault-header.cv-hdr-h-small { padding: 16px 20px 14px !important; gap: 14px !important; }
.cv-vault-header.cv-hdr-h-small .cv-vault-header-watermark { display: none !important; }

.cv-vault-header.cv-hdr-h-large { padding: 34px 30px 42px !important; gap: 30px !important; min-height: 380px !important; justify-content: flex-start !important; }

.cv-vault-header.cv-hdr-h-large .cv-vault-header-watermark { top: 50%; right: -30px; }
.cv-vault-header.cv-hdr-h-large .cv-vault-header-watermark .dashicons { font-size: 400px !important; width: 400px !important; height: 400px !important; }


.cv-vault-header.cv-hdr-h-large .cv-vault-stats { margin-top: auto !important; }

.cv-vault-header.cv-hdr-no-wm .cv-vault-header-watermark { display: none !important; }

.cv-vault-wrap .cv-appearance-hdrh { margin: 0 0 14px; padding: 12px 14px; background: var(--cvf-bg-soft, #f8fafc); border: 1px solid var(--cvf-border, #e8ecf0); border-radius: 12px; }
.cv-vault-wrap .cv-hdrh-btns { display: flex; gap: 8px; margin-top: 10px; flex-wrap: wrap; }
.cv-vault-wrap .cv-hdrh-btn { padding: 7px 16px; border-radius: 999px; border: 1px solid var(--cvf-border, #d7dee6); background: var(--cvf-card, #fff); color: var(--cvf-text, #334155); font-size: 13px; font-weight: 600; cursor: pointer; transition: all .15s; }
.cv-vault-wrap .cv-hdrh-btn:hover { border-color: var(--cvf-primary, #1e3a5f); }
.cv-vault-wrap .cv-hdrh-btn.active { background: var(--cvf-primary, #1e3a5f); border-color: var(--cvf-primary, #1e3a5f); color: #fff; }



.cv-vault-wrap .cv-apzf-q { font-size: 12px; font-weight: 700; color: var(--cvf-text-muted, #64748b); text-transform: uppercase; letter-spacing: .6px; margin: 14px 0 10px; }
.cv-vault-wrap .cv-apzf-switch { display: flex; align-items: stretch; gap: 6px; padding: 7px; border-radius: 18px; background: var(--cvf-bg-soft, #eef2f7); border: 1px solid var(--cvf-border, #e4e8ee); margin: 0 0 22px; }
.cv-vault-wrap .cv-apzf-btn { flex: 1; display: inline-flex; align-items: center; justify-content: center; gap: 9px; padding: 15px 18px; border-radius: 13px; border: none; background: transparent; font-size: 14px; font-weight: 700; color: var(--cvf-text, #334155); cursor: pointer; transition: all .2s ease; opacity: .55; }
.cv-vault-wrap .cv-apzf-btn .dashicons { font-size: 18px; width: 18px; height: 18px; }
.cv-vault-wrap .cv-apzf-btn:hover { opacity: 1; background: rgba(255,255,255,.6); }
.cv-vault-wrap .cv-apzf-btn.is-active { opacity: 1; background: linear-gradient(135deg, var(--cvf-primary, #1e3a5f) 0%, var(--cvf-primary-light, #2a5298) 100%); color: #fff; box-shadow: 0 4px 14px rgba(var(--cvf-primary-rgb, 30, 58, 95), .35); }
.cv-vault-wrap .cv-apzf-btn.is-active .dashicons { color: #fff; }
.cv-vault-wrap .cv-apzf-or { align-self: center; padding: 0 8px; font-size: 10.5px; font-weight: 800; text-transform: uppercase; color: var(--cvf-text-muted, #94a3b8); flex-shrink: 0; }

.cv-vault-wrap .cv-fswitch { position: relative; display: inline-block; width: 44px; height: 24px; flex-shrink: 0; }
.cv-vault-wrap .cv-fswitch input { opacity: 0; width: 0; height: 0; position: absolute; }
.cv-vault-wrap .cv-fswitch-slider { position: absolute; cursor: pointer; inset: 0; background: linear-gradient(135deg, #d1d5db 0%, #c4c9d1 100%); border-radius: 24px; transition: background .3s ease, box-shadow .3s ease; box-shadow: inset 0 1px 3px rgba(0,0,0,.1); }
.cv-vault-wrap .cv-fswitch-slider::before { content: ""; position: absolute; height: 18px; width: 18px; left: 3px; bottom: 3px; background: linear-gradient(180deg, #fff 0%, #f3f4f6 100%); border-radius: 50%; transition: transform .3s cubic-bezier(.4,0,.2,1), box-shadow .3s ease; box-shadow: 0 1px 4px rgba(0,0,0,.18); }
.cv-vault-wrap .cv-fswitch input:checked + .cv-fswitch-slider { background: linear-gradient(135deg, #22c55e 0%, #16a34a 100%); box-shadow: inset 0 1px 3px rgba(0,0,0,.08), 0 0 8px rgba(34,197,94,.25); }
.cv-vault-wrap .cv-fswitch input:checked + .cv-fswitch-slider::before { transform: translateX(20px); }
#cv-apzf-themes, #cv-apzf-header { padding-top: 4px; }
#cv-apzf-header > div { margin-bottom: 18px; }

.cv-vault-wrap .cv-hdrimg-hero { position: relative; width: 100%; min-height: 150px; border-radius: 14px; overflow: hidden; background: linear-gradient(135deg, var(--cvf-primary, #1e3a5f) 0%, var(--cvf-primary-light, #2a5298) 100%); background-size: cover; background-position: center; margin: 10px 0 4px; display: flex; align-items: center; justify-content: center; }
.cv-vault-wrap .cv-hdrimg-hero-scrim { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(15,23,42,.05) 40%, rgba(15,23,42,.45) 100%); pointer-events: none; }
.cv-vault-wrap .cv-hdrimg-hero-empty { position: relative; display: flex; flex-direction: column; align-items: center; gap: 6px; color: rgba(255,255,255,.85); font-size: 12.5px; font-weight: 600; text-align: center; padding: 0 18px; }
.cv-vault-wrap .cv-hdrimg-hero-empty .dashicons { font-size: 30px; width: 30px; height: 30px; opacity: .8; }
.cv-vault-wrap .cv-hdrimg-hero-actions { position: absolute; right: 12px; bottom: 12px; display: flex; gap: 8px; flex-wrap: wrap; justify-content: flex-end; }
.cv-vault-wrap .cv-hdrimg-hero-btn { display: inline-flex; align-items: center; gap: 6px; padding: 7px 14px; border-radius: 999px; border: 1px solid rgba(255,255,255,.4); background: rgba(255,255,255,.92); color: var(--cvf-primary, #1e3a5f); font-size: 12px; font-weight: 700; cursor: pointer; transition: all .15s ease; backdrop-filter: blur(4px); -webkit-backdrop-filter: blur(4px); box-shadow: 0 2px 10px rgba(0,0,0,.18); }
.cv-vault-wrap .cv-hdrimg-hero-btn .dashicons { font-size: 14px; width: 14px; height: 14px; }
.cv-vault-wrap .cv-hdrimg-hero-btn:hover { transform: translateY(-1px); box-shadow: 0 4px 14px rgba(0,0,0,.24); }
.cv-vault-wrap .cv-hdrimg-hero-btn-ghost { background: rgba(15,23,42,.45); color: #fff; border-color: rgba(255,255,255,.28); }
.cv-vault-wrap .cv-hdrimg-hero.cv-hdrimg-busy::after { content: ""; position: absolute; inset: 0; margin: auto; width: 24px; height: 24px; border: 3px solid rgba(255,255,255,.35); border-top-color: #fff; border-radius: 50%; animation: cv-hdrimg-spin .8s linear infinite; }

.cv-vault-wrap .cv-hdrh-blocks { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.cv-vault-wrap .cv-hdrh-blocks .cv-hdrh-btn { display: flex; flex-direction: column; align-items: flex-start; gap: 3px; text-align: left; padding: 12px 14px; border-radius: 12px; border: 1.5px solid var(--cvf-border, #d7dee6); background: var(--cvf-card, #fff); cursor: pointer; transition: all .15s ease; }
.cv-vault-wrap .cv-hdrh-blocks .cv-hdrh-btn:hover { border-color: var(--cvf-primary, #1e3a5f); transform: translateY(-1px); box-shadow: 0 2px 10px rgba(30,58,95,.08); }
.cv-vault-wrap .cv-hdrh-blocks .cv-hdrh-btn.active { border-color: var(--cvf-primary, #1e3a5f); background: var(--cvf-bg-soft, #f0f5fb); box-shadow: inset 0 0 0 1px var(--cvf-primary, #1e3a5f); }
.cv-vault-wrap .cv-hdrh-mini { display: block; width: 100%; border-radius: 5px; background: linear-gradient(135deg, var(--cvf-primary, #1e3a5f), var(--cvf-primary-light, #2a5298)); margin-bottom: 4px; }
.cv-vault-wrap .cv-hdrh-mini-s { height: 8px; }
.cv-vault-wrap .cv-hdrh-mini-m { height: 16px; }
.cv-vault-wrap .cv-hdrh-mini-l { height: 28px; }
.cv-vault-wrap .cv-hdrh-block-t { font-size: 13px; font-weight: 700; color: var(--cvf-text, #334155); }
.cv-vault-wrap .cv-hdrh-block-d { font-size: 11.5px; color: var(--cvf-text-muted, #8492a6); line-height: 1.4; }
@media (max-width: 700px) { .cv-vault-wrap .cv-hdrh-blocks { grid-template-columns: 1fr; } }


.cv-vault-wrap .cv-hdrimg-preview.cv-hdrimg-busy::after { content: ""; width: 22px; height: 22px; border: 3px solid rgba(100,116,139,.25); border-top-color: var(--cvf-primary, #1e3a5f); border-radius: 50%; animation: cv-hdrimg-spin .8s linear infinite; }
@keyframes cv-hdrimg-spin { to { transform: rotate(360deg); } }
.cv-vault-wrap .cv-tab-storage-pill .dashicons { font-size: 15px; width: 15px; height: 15px; }



.cv-vault-wrap .cv-hdr-storage-mini { position: absolute; top: 14px; right: 14px; z-index: 3; display: inline-flex; flex-direction: column; align-items: flex-end; gap: 3px; padding: 5px 10px; border-radius: 9px; background: rgba(15,23,42,.28); border: 1px solid rgba(255,255,255,.35); box-shadow: 0 1px 6px rgba(0,0,0,.18); backdrop-filter: blur(3px); -webkit-backdrop-filter: blur(3px); color: #fff; font-size: 10.5px; font-weight: 600; line-height: 1.2; white-space: nowrap; cursor: pointer; transition: background .15s, border-color .15s; }
.cv-vault-wrap .cv-hdr-storage-mini:hover { background: rgba(15,23,42,.42); border-color: rgba(255,255,255,.55); }

.cv-vault-wrap .cv-settings-flash { animation: cv-settings-flash 2.2s ease; }
@keyframes cv-settings-flash { 0% { box-shadow: 0 0 0 3px var(--cvf-accent, #e8913a); } 70% { box-shadow: 0 0 0 3px var(--cvf-accent, #e8913a); } 100% { box-shadow: 0 0 0 0 transparent; } }
.cv-vault-wrap .cv-hdr-storage-mini .dashicons { display: none; }
.cv-vault-wrap .cv-hdr-storage-mini .cv-hdr-storage-txt em { font-style: normal; color: #ffffff99; font-weight: 500; }
.cv-vault-wrap .cv-hdr-storage-mini .cv-hdr-storage-gauge { display: block; width: 92px; height: 4px; border-radius: 3px; background: rgba(255,255,255,.22); overflow: hidden; }
.cv-vault-wrap .cv-hdr-storage-mini .cv-hdr-storage-fill { display: block; height: 100%; border-radius: 3px; transition: width .6s ease; }
.cv-vault-wrap .cv-hdr-storage-mini.cv-hdr-storage-below { top: 54px; }
.cv-vault-wrap .cv-hdr-storage-mini.cv-pill-off { display: none !important; }


@media (max-width: 680px) {
    .cv-vault-wrap .cv-hdr-storage-mini,
    .cv-vault-wrap .cv-hdr-storage-mini.cv-hdr-storage-below { display: none !important; }
}




html body .cv-app.cv-vault-wrap .cv-vault-header-v2 .cv-meta-storage-v2,
html body .cv-vault-wrap .cv-vault-header-v2 .cv-meta-storage-v2,
html body .cv-vault-header-v2 .cv-meta-storage-v2 { display: none !important; }
@media (max-width: 680px) {
    html body .cv-app.cv-vault-wrap .cv-vault-header-v2 span.cv-vault-meta-item-v2.cv-meta-storage-v2,
    html body .cv-vault-wrap .cv-vault-header-v2 span.cv-vault-meta-item-v2.cv-meta-storage-v2,
    html body .cv-vault-header-v2 span.cv-vault-meta-item-v2.cv-meta-storage-v2 { display: inline-flex !important; }
}


@media (max-width: 680px) {
    html body .cv-app.cv-vault-wrap .cv-vault-header.cv-vault-header-v2.cv-hdr-h-small { padding: 10px 13px !important; min-height: 0 !important; }
    html body .cv-app.cv-vault-wrap .cv-vault-header.cv-vault-header-v2.cv-hdr-h-medium { min-height: 120px !important; justify-content: center !important; }
    html body .cv-app.cv-vault-wrap .cv-vault-header.cv-vault-header-v2.cv-hdr-h-large { min-height: 230px !important; padding: 18px 16px 20px !important; justify-content: flex-start !important; }
}
.cv-vault-wrap .cv-tab-storage-pill.cv-pill-off { display: none; }


.cv-vault-wrap .cvf-home-messages .cvf-home-module-count--unread { background: #ef4444; color: #fff; margin-left: 2px; }
