:root{--metadata-radius:9px;--metadata-gap:8px}
/* Opt-in card face. Shared layers, content slots and motion variables. */
.reveal-card{--surface-rest:#fff;--surface-reveal:#B4E4FF;--reveal:0;--wave:0;--heading:0;--description:0;--footer:0;--art-scale:1;--art-y:0px;--image-width:132%;--image-bottom:-9%;--card-inset:28px;background:var(--surface-rest);overflow:hidden;container-type:inline-size}
.reveal-card::before{content:none}
.reveal-wash,.reveal-art,.reveal-wave{position:absolute;pointer-events:none}
.reveal-wash{inset:0;z-index:0;background:var(--hover-color,var(--surface-reveal));opacity:var(--wash,0)}
.reveal-art{inset:0;z-index:1;transform:translateY(var(--art-y)) scale(var(--art-scale));transform-origin:50% 100%;will-change:transform}
.reveal-image{position:absolute;width:var(--image-width);max-width:none;height:auto;left:50%;bottom:var(--image-bottom);transform:translateX(-50%);display:block}
.reveal-wave{z-index:2;top:100%;left:-50%;width:200%;height:135%;border-radius:50% 50% 0 0 / var(--wave-curve,50%) var(--wave-curve,50%) 0 0;transform:translateY(calc(var(--wave)*-100%));background:var(--hover-color,var(--surface-reveal));will-change:transform}
.card-hit{position:absolute;inset:0;z-index:3;background:transparent;border-radius:inherit;padding:0}
.card-hit:focus-visible{outline-offset:-6px}
.reveal-content{position:absolute;inset:0;z-index:4;pointer-events:none;color:#000}
.reveal-heading{position:absolute;top:var(--card-inset);left:var(--card-inset);right:var(--card-inset)}
.reveal-heading h2{font-size:clamp(24px,9.4cqw,32px);font-weight:400;line-height:1.16;letter-spacing:-.025em;margin:0 0 24px;opacity:var(--heading);transform:translateY(calc((1 - var(--heading))*var(--heading-y,14px)))}
.reveal-heading p{font-size:clamp(18px,7cqw,23px);font-weight:400;line-height:1.32;margin:0;opacity:var(--description);transform:translateY(calc((1 - var(--description))*var(--description-y,16px)))}
.reveal-footer{position:absolute;left:var(--card-inset);right:var(--card-inset);bottom:var(--card-inset);display:flex;align-items:center;justify-content:space-between;gap:12px;opacity:var(--footer);transform:translateY(calc((1 - var(--footer))*var(--footer-y,12px)))}
.reveal-meta{display:flex;align-items:center;gap:var(--metadata-gap);white-space:nowrap;padding:9px 10px;border-radius:var(--metadata-radius);background:#0003;color:#123143;font-size:13px;line-height:1.2}
.meta-symbol{position:relative;display:block;width:29px;height:22px;flex:none}
.meta-symbol::before,.meta-symbol::after{content:'';position:absolute;width:22px;height:22px;border-radius:50%;top:0}
.meta-symbol::before{left:0;background:#fff}.meta-symbol::after{right:0;background:#000}
.reveal-action{display:grid;place-items:center;flex:none;width:48px;height:48px;background:#000;color:#fff;border-radius:50%;padding:0;pointer-events:none;transition:transform .5s cubic-bezier(.25,1,.5,1)}
.reveal-action svg{width:25px;height:25px;transition:transform .5s cubic-bezier(.25,1,.5,1)}
.reveal-card[data-action-ready=true] .reveal-action{pointer-events:auto}
.reveal-action:hover{transform:scale(1.06)}.reveal-action:hover svg{transform:translateX(2px)}
.reveal-rail-label{display:none}
.case-open .board .reveal-card{container-type:normal;background:#fff}
.case-open .board .reveal-art{transform:none}.case-open .board .reveal-image{width:100%;bottom:-10%}
.case-open .board .reveal-wash,.case-open .board .reveal-wave,.case-open .board .reveal-content{display:none}
.case-open .board .reveal-rail-label{display:block;position:absolute;left:11px;bottom:8px;z-index:3;font-size:11px}
@media(max-width:1000px){.reveal-card{--card-inset:22px}.reveal-heading h2{font-size:clamp(22px,10cqw,29px)}.reveal-heading p{font-size:clamp(17px,7.3cqw,21px)}.reveal-meta{font-size:12px;padding:8px}.reveal-action{width:43px;height:43px}.meta-symbol{width:25px;height:19px}.meta-symbol::before,.meta-symbol::after{width:19px;height:19px}}
@media(max-width:650px){.reveal-card{--card-inset:18px;--image-width:142%;--image-bottom:-8%}.reveal-heading h2{font-size:clamp(21px,12cqw,28px);margin-bottom:20px}.reveal-heading p{font-size:clamp(16px,9cqw,20px)}.reveal-footer{gap:7px}.reveal-meta{font-size:11px;gap:5px;padding:8px 6px}.meta-symbol{width:22px;height:17px}.meta-symbol::before,.meta-symbol::after{width:17px;height:17px}.reveal-action{width:40px;height:40px}.reveal-action svg{width:23px;height:23px}}
@media(prefers-reduced-motion:reduce){.reveal-art,.reveal-wave{will-change:auto}.reveal-heading h2,.reveal-heading p,.reveal-footer{transform:none}}

/* One Kry-derived content scale, fitted to the available card height and width.
   Tall cards keep the approved sizing; compact cards retain the same hierarchy. */
.reveal-card{container-type:size;--card-inset:clamp(18px,5cqh,28px);--card-title-size:clamp(20px,min(9.4cqw,10cqh),32px);--card-description-size:clamp(14px,min(7cqw,7.2cqh),23px);--card-copy-gap:clamp(10px,4.4cqh,24px);--card-action-size:clamp(36px,9cqh,48px);--card-meta-size:clamp(11px,2.6cqh,13px);--card-symbol-size:clamp(17px,4.4cqh,22px)}
.reveal-card .reveal-heading h2{font-size:var(--card-title-size);font-weight:400;line-height:1.16;letter-spacing:-.025em;margin-bottom:var(--card-copy-gap)}
.reveal-card .reveal-heading p{font-size:var(--card-description-size);font-weight:400;line-height:1.32}
.reveal-card .reveal-footer{gap:12px}
.reveal-card .reveal-meta{font-size:var(--card-meta-size);padding:clamp(8px,1.8cqh,9px) 10px;border-radius:var(--metadata-radius);gap:var(--metadata-gap);color:var(--card-meta-ink,#123143)}
.reveal-card .meta-symbol{width:calc(var(--card-symbol-size) + 7px);height:var(--card-symbol-size)}
.reveal-card .meta-symbol::before,.reveal-card .meta-symbol::after{width:var(--card-symbol-size);height:var(--card-symbol-size)}
.reveal-card .reveal-action{width:var(--card-action-size);height:var(--card-action-size)}
.reveal-card .reveal-action svg{width:calc(var(--card-action-size)*.52);height:calc(var(--card-action-size)*.52)}
@media(max-width:1000px){.reveal-card{--card-inset:clamp(18px,5cqh,22px);--card-title-size:clamp(20px,min(10cqw,10cqh),29px);--card-description-size:clamp(14px,min(7.3cqw,7.2cqh),21px);--card-action-size:clamp(36px,9cqh,43px);--card-meta-size:12px;--card-symbol-size:19px}.reveal-card .reveal-meta{padding:8px}}
@media(max-width:650px){.reveal-card{--card-inset:18px;--card-title-size:clamp(18px,min(12cqw,10cqh),28px);--card-description-size:clamp(13px,min(9cqw,7.2cqh),20px);--card-copy-gap:clamp(10px,4.4cqh,20px);--card-action-size:40px;--card-meta-size:11px;--card-symbol-size:17px}.reveal-card .reveal-footer{gap:7px}.reveal-card .reveal-meta{padding:8px 6px;gap:5px}}
/* Long metadata stays within its footer slot, including narrow mobile cards. */
.reveal-card .reveal-meta{min-width:0;max-width:calc(100% - var(--card-action-size) - 12px);white-space:normal}
@media(max-width:650px){.reveal-card .reveal-meta{max-width:calc(100% - var(--card-action-size) - 7px)}}
