/**
 * CsgHoverPopover — 悬停/聚焦时展示的浮动层（非 Bootstrap Tooltip）
 * 脚本：__STATIC__/js/csg_hover_popover.js
 */

.csg-hover-popover-layer {
    position: fixed;
    z-index: 1080;
    min-width: 6.5rem;
    max-width: min(22rem, 92vw);
    max-height: min(50vh, 22rem);
    overflow-x: hidden;
    overflow-y: auto;
    padding: 0.5rem 0.7rem;
    margin: 0;
    background: var(--bs-body-bg, #fff);
    color: var(--bs-body-color, #212529);
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 0.65rem;
    box-shadow:
        0 10px 36px rgba(15, 23, 42, 0.14),
        0 2px 8px rgba(15, 23, 42, 0.06);
    pointer-events: auto;
    opacity: 0;
    transform: translateY(4px);
    transition: opacity 0.12s ease, transform 0.12s ease;
}

.csg-hover-popover-layer.csg-hover-popover-layer--visible {
    opacity: 1;
    transform: translateY(0);
}

.csg-hover-popover-layer[hidden] {
    display: none !important;
}

.csg-hover-popover-layer .csg-hover-popover-heading {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--bs-secondary-color, #6c757d);
    margin: 0 0 0.4rem;
    padding-bottom: 0.3rem;
    border-bottom: 1px solid var(--bs-border-color, #dee2e6);
    line-height: 1.35;
}

.csg-hover-popover-layer .csg-hover-popover-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.csg-hover-popover-layer .csg-hover-popover-list li {
    font-family: var(--bs-font-monospace, ui-monospace, monospace);
    font-size: 0.8125rem;
    line-height: 1.45;
    padding: 0.22rem 0;
    margin: 0;
    word-break: break-all;
}

.csg-hover-popover-layer .csg-hover-popover-list li + li {
    border-top: 1px solid rgba(15, 23, 42, 0.07);
}

[data-csg-hover-popover="list-json"] {
    cursor: default;
}
