/* Album is an illustrated page of the active 9:16 mother. All values are live. */
.overlay[data-dialog="album"]{background:#f7ecd1 url('assets/care-room-v45.webp') center/100% 100% no-repeat}
.overlay[data-dialog="album"]>.panel{width:350px;max-height:none;overflow:visible;padding:0;isolation:isolate}
.overlay[data-dialog="album"]>.panel::before{content:none}
.overlay[data-dialog="album"] .album-back{position:absolute;left:-9px;top:28px;width:43px;height:43px;z-index:3}
.overlay[data-dialog="album"]>.panel>h2.album-title{position:relative;width:270px;height:117px;margin:0 auto 2px;padding:0;display:block;background:none}
.album-title>span{position:absolute;left:37px;right:37px;top:43px;height:48px;display:flex;align-items:center;justify-content:center;white-space:nowrap;font-size:35px;line-height:1.1;letter-spacing:3px;color:#51311b;font-weight:900}
.overlay[data-dialog="album"] .album-intro{width:300px;height:55px;margin:0 auto 6px;padding:11px 24px;background:url('assets/album-long-plaque.webp') center/100% 100% no-repeat;font-size:11.5px;line-height:1.35;font-weight:700;white-space:nowrap}
.overlay[data-dialog="album"] .adult-grid{gap:8px;margin:0}
.overlay[data-dialog="album"] .adult-card{width:350px;height:175px;min-height:0;padding:0;display:block;border:0;border-radius:0;box-shadow:none;background:none;isolation:isolate;overflow:visible}
.overlay[data-dialog="album"] .adult-card::before{inset:0;background-image:var(--album-card-art);background-size:contain;background-repeat:no-repeat;background-position:center}
.adult-card[data-album-form="adult_power"]{--album-card-art:url('assets/album-card-power.webp')}
.adult-card[data-album-form="adult_scholar"]{--album-card-art:url('assets/album-card-scholar.webp')}
.adult-card[data-album-form="adult_balanced"]{--album-card-art:url('assets/album-card-balanced.webp')}
.album-portrait{position:absolute;left:3.5%;top:10%;width:49%;height:84%;display:grid;place-items:center}
.overlay[data-dialog="album"] .adult-card .adult-image{width:100%;height:100%;object-fit:contain;background:none}
.overlay[data-dialog="album"] .adult-card.locked .adult-image{filter:brightness(0) invert(.46) sepia(1) saturate(.75);opacity:.76}
.album-question{position:absolute;left:0;right:0;top:21%;text-align:center;font-size:63px;font-weight:900;color:#f9d39a;line-height:1}
.overlay[data-dialog="album"] .adult-card h3{position:absolute;left:58%;right:8%;top:9%;height:20%;margin:0;display:flex;align-items:center;justify-content:center;line-height:1;font-size:22px;font-weight:900;letter-spacing:2px;white-space:nowrap;color:#54321c}
.album-record{position:absolute;left:59%;right:8%;top:35%;height:25%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.album-first-label{font-size:11px;line-height:1.2;white-space:nowrap}
.album-first-label img{width:17px;height:15px;vertical-align:-3px;margin-right:2px;object-fit:contain}
.album-first-value{font-size:28px;line-height:1.05;font-weight:900;color:#4f2c13}
.album-legacy-record{font-size:11.5px;line-height:1.3}
.album-record.is-locked{flex-direction:row;gap:6px;padding:0 1px}
.album-lock{width:18px;height:23px;object-fit:contain;flex-shrink:0}
.album-condition{font-size:12px;line-height:1.4;font-weight:700;text-align:left;max-width:95px}
.overlay[data-dialog="album"] .adult-card p.album-flavor{position:absolute;left:57.5%;right:5.5%;top:67%;height:22%;margin:0;padding:2px 0;font-size:11px;line-height:1.4;font-weight:600;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;white-space:nowrap;color:#815a35}
.overlay[data-dialog="album"] .album-best{width:285px;height:53px;margin:5px auto 0;padding:14px 25px;background:url('assets/album-long-plaque.webp') center/100% 100% no-repeat;display:flex;align-items:center;justify-content:center;gap:4px;white-space:nowrap;font-size:14px;font-weight:800;line-height:1}
.album-best img{width:21px;height:20px;object-fit:contain}
.album-best strong{font-size:27px;font-weight:900;color:#55321c}

/* Intrinsic image min-size must not enlarge the fixed portrait opening. */
.overlay[data-dialog="album"] .adult-card .adult-image{position:absolute;inset:0;display:block;min-width:0;min-height:0;width:100%;height:100%;object-fit:contain}
.overlay[data-dialog="album"] .adult-card.locked .adult-image{filter:brightness(0) invert(.55) sepia(1) saturate(2) hue-rotate(-12deg) brightness(.78);opacity:.85}
.overlay[data-dialog="album"] .adult-card p.album-flavor{left:56%;right:5.5%}

/* Own mother-derived footer: daisy trim and growth medallion stay raster art. */
.overlay[data-dialog="album"] .album-best{position:relative;width:300px;height:60px;margin:4px auto 0;padding:0;display:block;background-image:url('assets/album-best.webp');background-size:contain;font-size:14.5px}
.album-best>span{position:absolute;left:15%;width:40%;top:15%;height:70%;display:flex;align-items:center;justify-content:center}
.album-best>strong{position:absolute;left:68%;right:14%;top:19%;height:62%;display:flex;align-items:center;justify-content:center;font-size:32px;line-height:1}

/* Actual 70 glyphs exceed the old1.05 line box. Preserve space for label+value. */
.album-record:not(.is-locked){top:33.5%;height:28%}
.album-first-value{font-size:22px;line-height:1.4}

/* V102 mother14 album-only straight-arrow return; original hit43 and handler. */
.overlay[data-dialog="album"] .album-back>img{position:absolute;max-width:none;max-height:none;left:-33.014050px;top:-13.646281px;width:109.170248px;height:72.780165px;}

/* V103 mother14 illustrated intro and fixed handpainted text; native source intact. */
.overlay[data-dialog="album"] .album-intro{position:relative;background:none;padding:0}
.overlay[data-dialog="album"] .album-intro>img{position:absolute;max-width:none;max-height:none;pointer-events:none;left:26.238555px;top:-13.601797px;width:247.408876px;height:82.659648px;}

/* V105 live growth value fits between the raster flower and right orange rays. */
.overlay[data-dialog="album"] .album-best>strong{left:65.5%;right:auto;width:15%;top:10%;height:80%;font-size:28px;line-height:1.4}

/* V106 handpainted fixed footer label; live number remains a separate text node. */
.overlay[data-dialog="album"] .album-best{background:none}
.overlay[data-dialog="album"] .album-best>.album-best-art-v106{position:absolute;max-width:none;max-height:none;pointer-events:none;left:-0.128669px;top:-19.950253px;width:299.839504px;height:99.900507px;}
.overlay[data-dialog="album"] .album-best>strong{left:196.5px;top:6px}

/* V108 decorative transparent margins must not enlarge the return hit target. */
.overlay[data-dialog="album"] .album-back>img{pointer-events:none}

/* V109 album body only. Native semibold handwriting, no glyph distortion. */
@font-face{font-family:TuanAlbumBodyV109;src:url('assets/fonts/yrdzst-album-body-v109.woff2') format('woff2');font-style:normal;font-weight:600;font-display:swap}
.overlay[data-dialog="album"] .album-condition,
.overlay[data-dialog="album"] .adult-card p.album-flavor{font-family:TuanAlbumBodyV109,Tuan,sans-serif;font-weight:600;font-synthesis:none}
.overlay[data-dialog="album"] .adult-card p.album-flavor{font-size:9.8px;line-height:1.5;letter-spacing:.75px}
.overlay[data-dialog="album"] .album-flavor-line{display:block;white-space:nowrap}
.overlay[data-dialog="album"] .album-condition{font-size:11px;line-height:1.45;letter-spacing:.25px}

/* V109 second body pass: align each paragraph to mother's common left edge. */
.overlay[data-dialog="album"] .adult-card p.album-flavor{left:59.5%;right:5.5%;align-items:flex-start;text-align:left;letter-spacing:.25px;line-height:1.65}
.overlay[data-dialog="album"] .album-condition{font-size:10.1px;line-height:1.5;letter-spacing:.2px}
.overlay[data-dialog="album"] .album-condition-line{display:block;white-space:nowrap}
.overlay[data-dialog="album"] .album-condition-count{font-size:1.25em;color:#e67444}

/* V110 locked album portraits: keep native opaque cores and subdued source texture. */
.overlay[data-dialog="album"] .adult-card.locked .adult-image{opacity:1;filter:grayscale(1) contrast(.16) sepia(1) saturate(2) hue-rotate(-12deg) brightness(.72)}

/* V110 second pass: mother's low contrast brown, while retaining source alpha. */
.overlay[data-dialog="album"] .adult-card.locked .adult-image{opacity:1;filter:grayscale(1) contrast(.055) sepia(1) saturate(2.2) hue-rotate(-16deg) brightness(.69)}
