/* 
 ---------------------------------
 |   LAST UPDATED: 2026-04-18    |
 ---------------------------------
 */

/* VIEWPORT HEADNOTE: Standard boundaries 1024, 768–1023, ≤767. */
/*
 * Takeaway: warm panel shell + responsive grid of prompt-style micro-panels (rosart keystone per box).
 * Split logic lives in assets/js/global.js — enhanceTakeawayCards().
 */

.takeaway-card,
.takeaway[data-publish-gate="custom-excerpt"] {
    container-type: inline-size;
    container-name: takeaway-grid;
    position: relative;
    isolation: isolate;
    width: 100%;
    box-sizing: border-box;
    padding: 4vw;
    overflow: visible;
    border: none;
    border-radius: 0;
    background: color-mix(in srgb, var(--swiss-coffee) 28%, var(--background-color) 72%);
}

.takeaway-card::after {
    content: "";
    position: absolute;
    top: clamp(0.9rem, 2vw, 1.4rem);
    right: clamp(0.7rem, 1.8vw, 1.25rem);
    width: clamp(2.4rem, 4.2vw, 3.4rem);
    height: clamp(1.5rem, 2.8vw, 2.2rem);
    pointer-events: none;
    user-select: none;
    background-color: color-mix(in srgb, var(--port) 72%, var(--text-color) 28%);
    -webkit-mask-image: url('../img/rosart-glyphs/orn749-planet-58117.svg');
    mask-image: url('../img/rosart-glyphs/orn749-planet-58117.svg');
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: contain;
    mask-size: contain;
    transform:
        translate3d(var(--takeaway-planet-drift-x, 0px), var(--takeaway-planet-drift-y, 0px), 0)
        rotate(var(--takeaway-planet-drift-rotate, 0deg));
    opacity: var(--takeaway-planet-drift-opacity, 0.22);
    z-index: 1;
    will-change: transform, opacity;
}

.takeaway-card-text {
    position: relative;
    z-index: 2;
    margin: 0;
    padding: 0;
    font-family: var(--et);
    font-size: inherit;
    line-height: 1.45;
}

/* Responsive grid: up to 4 columns (desktop), 3 below 1024px */
.takeaway-card-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: clamp(0.65rem, 1.8vw, 1rem);
    width: 100%;
}

@container takeaway-grid (min-width: 40rem) {
    .takeaway-card-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

/* Narrow embed contexts: stack one column */
.takeaway-card.card-grid-takeaway .takeaway-card-grid,
.takeaway-card.latest-post-takeaway .takeaway-card-grid {
    grid-template-columns: minmax(0, 1fr);
}

.takeaway-card-box {
    position: relative;
    box-sizing: border-box;
    min-width: 0;
    padding: clamp(0.75rem, 2vw, 1rem) clamp(0.65rem, 1.5vw, 0.9rem) clamp(0.75rem, 2vw, 1rem)
        clamp(1.85rem, 4vw, 2.25rem);
    background: color-mix(in srgb, var(--background-color) 92%, var(--text-color) 8%);
    border: 1px solid color-mix(in srgb, var(--text-color) 12%, transparent);
    border-radius: 2px;
    box-shadow:
        0 1px 0 color-mix(in srgb, var(--text-color) 8%, transparent),
        0 10px 26px color-mix(in srgb, var(--text-color) 6%, transparent);
}

.takeaway-card-box::before {
    content: "";
    position: absolute;
    top: 0.38rem;
    right: 0.38rem;
    width: clamp(1.2rem, 2.5vw, 1.7rem);
    height: clamp(0.9rem, 1.9vw, 1.35rem);
    pointer-events: none;
    user-select: none;
    background-color: color-mix(in srgb, var(--port) 80%, var(--text-color) 20%);
    -webkit-mask-image: url('../img/rosart-glyphs/orn707-bones-58075.svg');
    mask-image: url('../img/rosart-glyphs/orn707-bones-58075.svg');
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: contain;
    mask-size: contain;
    opacity: 0.9;
    z-index: 1;
}

.takeaway-card-box-inner {
    position: relative;
    z-index: 2;
    font-family: var(--et);
    font-size: 0.95em;
    line-height: 1.4;
}

.takeaway-card-box-inner p {
    margin: 0;
}

.takeaway-card-box-inner p + p {
    margin-top: 0.5em;
}

/* Smaller rosart keystone in micro-boxes (mask from borders.css / ray glyph) */
.takeaway-card-box .takeaway-card-keystone.ray-corner {
    width: calc(1.1rem * 1038 / 1000 * var(--scale));
    height: calc(1.1rem * var(--scale));
    top: 0.35rem;
    left: 0.35rem;
}

.takeaway-card-label {
    margin: 0;
    padding: 0;
    font-family: var(--cm);
    text-transform: uppercase;
    letter-spacing: 0.08em;
    font-size: 0.75rem;
    line-height: 1;
    opacity: 0.75;
}

/* Ghost HTML without `takeaway-card` partial: static top asset only (no inline SVG). */
.takeaway[data-publish-gate="custom-excerpt"]:not(.takeaway-card) {
    background-image: url('../img/orn-clef-top-ornate.svg');
    background-repeat: no-repeat;
    background-position: top center;
    background-size: 120% auto;
    padding: 4vw;
    padding-top: calc(1.25rem * var(--scale) + 4vw);
    font-family: var(--et);
    font-size: inherit;
    line-height: 1.45;
    border: none;
}
