﻿/* ===== Messages Vault cards (v3) ===== */

.vault-card {
    position: relative;
    display: flex;
    flex-direction: column;
    min-height: 360px; /* a touch taller */
    height: 100%;
    padding: 7px 7px 4px;
    border-radius: 10px;
    min-width: 0;
}

/* Title pill row */
.vault-card__top {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 8px;
}

.vault-card__pill {
    display: inline-block;
    max-width: calc(100% - 90px);
    padding: 4px 6px;
    border-radius: 999px;
    font-weight: 800;
    font-size: 12px;
    letter-spacing: .2px;
    color: rgba(203, 213, 245, 0.95);
    background: rgba(255,255,255,0.08);
    border: 1px solid rgba(120, 140, 200, 0.25);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* Top-right action cluster */
.vault-card__actionsTop {
    position: absolute;
    top: 10px;
    right: 10px;
    display: flex;
    gap: 6px;
    align-items: center;
    z-index: 5;
}

/* Small icon buttons */
.vault-icon-btn {
    width: 26px;
    height: 28px;
    padding: 0;
    border-radius: 6px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    opacity: .9;
}

    .vault-icon-btn:hover {
        opacity: 1;
    }

/* Preview bubble */
.vault-card__bubble {
    position: relative;
    flex: 1 1 auto;
    min-height: 260px;
    padding: 10px 10px;
    padding-bottom: 34px;
    border-radius: 14px;
    background: rgba(10, 14, 25, 0.45);
    border: 1px solid rgba(120, 140, 200, 0.18);
    box-shadow: inset 0 0 0 1px rgba(0,0,0,0.15);
    overflow: auto;
    min-width: 0;
}

.vault-card__preview {
    margin: 0;
    white-space: pre-wrap;
    overflow-wrap: anywhere;
    word-break: break-word;
    line-height: 1.18;
    font-size: 12px;
    color: rgba(203, 213, 245, 0.92);
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    min-width: 0;
    max-width: 100%;
}

.vault-card__bubble::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 28px;
    background: linear-gradient(to bottom, rgba(10,14,25,0), rgba(10,14,25,.75));
    pointer-events: none;
    border-radius: 0 0 14px 14px;
}

.vault-card__bubble::-webkit-scrollbar {
    width: 10px;
}

.vault-card__bubble::-webkit-scrollbar-thumb {
    background: rgba(255,255,255,0.12);
    border-radius: 999px;
}

@media (min-width: 992px) {
    .vault-card__preview {
        font-size: 12.5px;
    }
}
.vault-card__preview {
    font-size: 12px;
}

@media (max-width: 575.98px) {
    .vault-card__preview {
        font-size: 11px;
        line-height: 1.15;
    }
}

@media (min-width: 1200px) {
    .vault-card__preview {
        font-size: 12.5px;
        line-height: 1.18;
    }
}
.wos-content {
    max-width: 2000px !important;
}

.vault-card__preview--html {
    white-space: normal;
    line-height: 1.35;
    font-family: inherit;
    font-size: 14px;
}

    .vault-card__preview--html br {
        line-height: 1.35;
    }

.vault-card__bubble {
    user-select: text;
    -webkit-user-select: text;
}
.vault-card__previewCopy {
    margin: 0;
    white-space: normal; 
    line-height: 1.35;
    font-size: 12px;
    color: rgba(203, 213, 245, 0.92);
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}

    /* Optional: keep selection clean */
    .vault-card__previewCopy::before,
    .vault-card__previewCopy::after {
        content: none !important;
    }


.messages-vault-row {
    --vault-cols-xs: 1; /* <576 */
    --vault-cols-sm: 2; /* >=576 */
    --vault-cols-lg: 4; /* >=992 */
    --vault-cols-xl: 4; /* >=1200 */
}

    .messages-vault-row > .vault-item {
        flex: 0 0 auto;
        width: calc(100% / var(--vault-cols-xs));
    }

/* sm */
@media (min-width: 576px) {
    .messages-vault-row > .vault-item {
        width: calc(100% / var(--vault-cols-sm));
    }
}

/* lg */
@media (min-width: 992px) {
    .messages-vault-row > .vault-item {
        width: calc(100% / var(--vault-cols-lg));
    }
}

/* xl */
@media (min-width: 1200px) {
    .messages-vault-row > .vault-item {
        width: calc(100% / var(--vault-cols-xl));
    }
}
/* ===== Cards/row control ===== */
.mv-cols-control {
    color: rgba(203, 213, 245, 0.8);
    font-size: 12px;
}

.mv-cols-label {
    white-space: nowrap;
}

.mv-cols-select {
    width: 86px;
    min-width: 86px;
}

/* ===== Responsive cards-per-row layout (override bootstrap widths) ===== */
.messages-vault-row {
    --mv-cols-mobile: 1;
    --mv-cols-desktop: 5; /* default */
}

/* Use desktop setting >= lg */
@media (min-width: 992px) {
    .messages-vault-row > .mv-col {
        flex: 0 0 calc(100% / var(--mv-cols-desktop)) !important;
        max-width: calc(100% / var(--mv-cols-desktop)) !important;
    }
}

/* Use mobile setting < lg */
@media (max-width: 991.98px) {
    .messages-vault-row > .mv-col {
        flex: 0 0 calc(100% / var(--mv-cols-mobile)) !important;
        max-width: calc(100% / var(--mv-cols-mobile)) !important;
    }
}

/* ===== Font tuning for crowded layouts ===== */
/* Desktop 6–7: slightly smaller preview to reduce clipping/wrapping issues */
.messages-vault-row.mv-d-6 .vault-card__previewCopy,
.messages-vault-row.mv-d-7 .vault-card__previewCopy {
    font-size: 11px;
    line-height: 1.25;
}

/* Mobile 3: smaller preview */
.messages-vault-row.mv-m-3 .vault-card__previewCopy {
    font-size: 11px;
    line-height: 1.25;
}

@media (max-width: 575.98px) {
    .vault-card__top {
        padding-right: 120px; /* reserve space for 3 icon buttons + gaps */
    }

    .vault-card__pill {
        max-width: calc(100% - 120px);
    }
}
