/* layout.css */

/* Flexbox Layout */
.flex {
    display: flex;
}

.flex-column {
    flex-direction: column;
}

.flex-center {
    justify-content: center;
    align-items: center;
}

.flex-space-between {
    justify-content: space-between;
}

.flex-grow {
    flex-grow: 1;
}

/* Grid Layout */
.grid {
    display: grid;
}

.grid-cols-2 {
    grid-template-columns: repeat(2, 1fr);
}

.grid-cols-3 {
    grid-template-columns: repeat(3, 1fr);
}

.grid-gap {
    gap: 10px;
}

/* Container */
.container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

/* Custom tooltip styles */
[data-tooltip] {
    position: relative;
}

[data-tooltip]:hover::after {
    content: attr(data-tooltip);
    position: fixed;
    top: var(--mouse-y);
    left: var(--mouse-x);
    transform: translateY(-50%);
    background: #1a1a1a;
    color: #fff;
    padding: 12px;
    border-radius: 6px;
    font-size: 14px;
    width: 400px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    z-index: 99999;
    font-family: monospace;
    white-space: pre;
    pointer-events: none;
}