.puzzle-gallery{display:grid;grid-template-rows:auto auto minmax(0,1fr);gap:var(--space-md);height:var(--screen-height);padding:var(--space-xl) clamp(var(--space-lg),calc(var(--app-vw) * .03),var(--space-3xl)) var(--space-3xl)}.puzzle-gallery__header,.puzzle-tabs,.puzzle-gallery__body{width:100%}.puzzle-gallery__header{align-items:center;padding:var(--space-lg) calc(var(--space-3xl) * 4) var(--space-lg) var(--space-2xl)}.puzzle-gallery__title{font-size:clamp(var(--text-lead),calc(var(--app-vw) * .03),2rem)}.puzzle-gallery__lede{max-width:72ch}.puzzle-tabs{padding-inline:var(--space-3xs)}.puzzle-tab{min-height:var(--ux-target)}.puzzle-gallery__body{grid-template-columns:minmax(0,.82fr) minmax(45%,1.18fr);gap:var(--space-xl);min-height:0;align-items:start}.puzzle-index{display:grid;gap:var(--space-sm);min-width:0}.puzzle-index__heading{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-md);padding:0 var(--space-2xs) var(--space-xs);border-bottom:var(--border-width-hairline) solid var(--ember-a30)}.puzzle-index__heading h2,.puzzle-index__heading span{margin:0;font-family:var(--font-display);letter-spacing:var(--tracking-label);text-transform:uppercase}.puzzle-index__heading h2{color:var(--color-accent-bright);font-size:var(--text-label)}.puzzle-index__heading span{color:var(--color-text-muted);font-size:var(--text-eyebrow)}.puzzle-grid{grid-template-columns:1fr;grid-auto-rows:minmax(calc(var(--ux-target-mobile) * 3.4),max-content);align-content:start}.puzzle-card{--puzzle-card-art: url(../assets/curated/encounter-choice-icons/encounter-choice-tactical-icon-v1.webp);display:grid;grid-template-columns:minmax(calc(var(--ux-target-mobile) * 2.3),34%) minmax(0,1fr);gap:0;min-width:0;padding:0;overflow:hidden;border-left:var(--space-3xs) solid transparent}.puzzle-card--targeting,.puzzle-detail--targeting{--puzzle-card-art: url(../assets/curated/card-illustrations/_shared/mark_target__gpt15low_v1.webp)}.puzzle-card--defensive,.puzzle-detail--defensive{--puzzle-card-art: url(../assets/curated/card-illustrations/assassin/blade_shield__gpt15low_v1.webp)}.puzzle-card--combo,.puzzle-detail--combo{--puzzle-card-art: url(../assets/curated/card-illustrations/assassin/combo_mastery__gpt15low_v1.webp)}.puzzle-card__art{min-height:100%;background:linear-gradient(90deg,transparent,var(--c-ink-a90)),linear-gradient(180deg,var(--c-ink-a10),var(--c-ink-a70)),var(--puzzle-card-art) center / cover no-repeat;filter:saturate(.85) contrast(1.05)}.puzzle-card__content{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-xs);min-width:0;padding:var(--space-lg)}.puzzle-card__ordinal{color:var(--color-text-muted);font-family:var(--font-display);font-size:var(--text-eyebrow);letter-spacing:var(--tracking-label);text-transform:uppercase}.puzzle-card--selected{border-left-color:var(--accent-bright);outline-width:var(--border-width-thin);box-shadow:inset 0 0 var(--space-2xl) var(--ember-a12),var(--shadow-drop-soft)}.puzzle-card__title{font-size:var(--text-lead)}.puzzle-card__class{margin-top:auto;font-size:var(--text-body-sm)}.puzzle-detail{min-height:0;padding:clamp(var(--space-lg),calc(var(--app-vw) * .025),var(--space-3xl));border-top:var(--space-3xs) solid var(--color-accent)}.puzzle-detail__masthead{display:grid;grid-template-columns:calc(var(--ux-target-mobile) * 3) minmax(0,1fr);gap:var(--space-lg);align-items:stretch}.puzzle-detail__art{min-height:calc(var(--ux-target-mobile) * 2.5);border:var(--border-width-hairline) solid var(--ember-a30);border-radius:var(--radius-md);background:linear-gradient(180deg,var(--c-ink-a06),var(--c-ink-a70)),var(--puzzle-card-art) center / cover no-repeat;box-shadow:inset 0 0 var(--space-lg) var(--c-ink-a54)}.puzzle-detail__intro{display:flex;flex-direction:column;justify-content:center;gap:var(--space-xs);min-width:0}.puzzle-detail__intro>*{margin-block:0}.puzzle-detail__title{font-size:clamp(var(--text-lead),calc(var(--app-vw) * .02),1.6rem)}.puzzle-detail__begin{min-height:var(--ux-target-mobile);margin-top:var(--space-lg)}html[data-viewport-mode=mobile-landscape] .puzzle-gallery{grid-template-rows:auto auto minmax(0,1fr);gap:var(--space-xs);width:100%;height:var(--app-vh);min-height:var(--app-vh);padding:var(--space-xs) var(--space-sm) var(--space-sm)}html[data-viewport-mode=mobile-landscape] .puzzle-gallery__header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-sm);padding:var(--space-sm) calc(var(--space-3xl) * 3) var(--space-sm) var(--space-md)}html[data-viewport-mode=mobile-landscape] .puzzle-gallery__eyebrow{margin-bottom:0;font-size:var(--rsize-meta)}html[data-viewport-mode=mobile-landscape] .puzzle-gallery__title{margin-bottom:0;font-size:var(--text-lead)}html[data-viewport-mode=mobile-landscape] .puzzle-gallery__lede{display:none}html[data-viewport-mode=mobile-landscape] .puzzle-gallery__header>button,html[data-viewport-mode=mobile-landscape] .puzzle-tab,html[data-viewport-mode=mobile-landscape] .puzzle-detail__begin{min-height:var(--ux-target-mobile)}html[data-viewport-mode=mobile-landscape] .puzzle-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-xs);padding-inline:0}html[data-viewport-mode=mobile-landscape] .puzzle-gallery__body{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:var(--space-sm);min-height:0;align-items:stretch}html[data-viewport-mode=mobile-landscape] .puzzle-index{gap:0;min-height:0}html[data-viewport-mode=mobile-landscape] .puzzle-index__heading{display:none}html[data-viewport-mode=mobile-landscape] .puzzle-grid{grid-template-columns:1fr;grid-template-rows:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(0,1fr);gap:var(--space-xs);min-height:0;padding-bottom:calc(var(--ux-target-mobile) + var(--space-22))}html[data-viewport-mode=mobile-landscape] .puzzle-card{grid-template-columns:calc(var(--ux-target-mobile) * 1.25) minmax(0,1fr);gap:var(--space-3xs);min-height:0;padding:var(--space-sm) var(--space-md)}html[data-viewport-mode=mobile-landscape] .puzzle-card__art{margin:calc(var(--space-sm) * -1) 0 calc(var(--space-sm) * -1) calc(var(--space-md) * -1)}html[data-viewport-mode=mobile-landscape] .puzzle-card__content{gap:var(--space-3xs);padding:0 var(--space-xs)}html[data-viewport-mode=mobile-landscape] .puzzle-card__ordinal{display:none}html[data-viewport-mode=mobile-landscape] .puzzle-card__title{font-size:var(--text-body)}html[data-viewport-mode=mobile-landscape] .puzzle-card__class,html[data-viewport-mode=mobile-landscape] .puzzle-card__badge{font-size:var(--rsize-meta)}html[data-viewport-mode=mobile-landscape] .puzzle-detail{gap:var(--space-2xs);height:100%;padding:var(--space-sm) var(--space-md);overflow:hidden}html[data-viewport-mode=mobile-landscape] .puzzle-detail__masthead{display:block}html[data-viewport-mode=mobile-landscape] .puzzle-detail__art{display:none}html[data-viewport-mode=mobile-landscape] .puzzle-detail__kicker{font-size:var(--rsize-meta)}html[data-viewport-mode=mobile-landscape] .puzzle-detail__title{font-size:var(--text-lead)}html[data-viewport-mode=mobile-landscape] .puzzle-detail__highlight,html[data-viewport-mode=mobile-landscape] .puzzle-detail__blurb{font-size:var(--rsize-label);line-height:var(--line-height-snug)}html[data-viewport-mode=mobile-landscape] .puzzle-detail__blurb{font-size:var(--rsize-meta)}html[data-viewport-mode=mobile-landscape] .puzzle-detail__facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-xs);margin:var(--space-3xs) 0}html[data-viewport-mode=mobile-landscape] .puzzle-detail__facts li{flex-direction:column;gap:0;min-width:0;padding-top:var(--space-3xs);font-size:var(--rsize-meta)}html[data-viewport-mode=mobile-landscape] .puzzle-detail__facts strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}html[data-viewport-mode=mobile-landscape] .puzzle-detail__begin{flex:0 0 var(--ux-target-mobile);margin-top:auto}
