.year-review{position:fixed;inset:var(--audio-bar-height,58px) 0 0;z-index:200;background:#142b39;color:#fff;overflow:hidden;isolation:isolate;cursor:pointer}.year-review>header{position:absolute;inset:0 0 auto;display:flex;justify-content:space-between;padding:20px 4%;background:linear-gradient(#102431d9,transparent);z-index:3;font-size:14px}.review-backdrop{position:absolute;inset:0;z-index:-2;animation:review-reveal .7s ease-out}.review-backdrop>img{width:100%;height:100%;object-fit:cover}.review-backdrop .site-photo{width:100%;height:100%;aspect-ratio:auto}.review-backdrop .site-photo-crop{position:absolute;inset:0;overflow:hidden}.review-backdrop .site-photo img{position:absolute;width:300%;height:600%;max-width:none;object-fit:fill}.review-backdrop:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 35%,#0c2339cc)}.review-office{height:100%;background:linear-gradient(120deg,#16394bcc,#203d4d88),url('assets/title-daejeon-morning.png') center/cover}.review-speaker-art{position:absolute;bottom:0;left:3%;height:72%;width:32%;display:flex;justify-content:center;align-items:flex-end;pointer-events:none}.review-person{width:100%;height:100%;object-fit:contain;object-position:bottom}.review-dali{position:relative;width:100%;aspect-ratio:714/551;overflow:hidden;margin-bottom:10%}.review-dali img{position:absolute;width:200%;height:auto;max-width:none;left:0;top:0;transform:translateY(-50%)}.review-talk{position:absolute;bottom:6%;left:32%;right:5%;padding:25px 30px;background:#102a3aed;border:2px solid #adc6c8;border-radius:8px;box-shadow:0 12px 40px #0004;min-height:150px}.review-talk>b{display:block;color:#f2cf87;font-size:18px;margin-bottom:12px}.review-talk>p{font-size:clamp(17px,1.6vw,25px);line-height:1.8;margin:0 0 20px;min-height:3.6em}.review-talk>span{font-size:11px;color:#b1c5cc}.review-talk>button{float:right;color:#fff;background:transparent;padding:4px 12px}.review-score{position:absolute;right:9%;top:22%;text-align:center}.review-score small{display:block;color:#cedde3}.review-score strong{font-size:clamp(70px,10vw,135px);font-weight:900}.review-score em{font-size:24px;font-style:normal;margin-left:8px}.review-place{position:absolute;left:5%;top:15%;font-size:22px;text-shadow:0 2px 8px #000;background:#102a3acc;padding:16px 24px}.review-place small{display:block;font-size:11px;margin-top:6px}.review-place~.review-talk{left:10%;right:10%}.review-final{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:9vh 20px 0;text-align:center;color:#163649;text-shadow:0 2px 14px #fff9;background:linear-gradient(#eaf4f8c9,transparent 65%)}.review-final h1{font-size:clamp(34px,5vw,70px);margin:12px}.review-final p{font-size:clamp(16px,2vw,26px)}.review-final button{position:absolute;bottom:5%;background:#183c4be8;color:#fff;padding:16px 28px;border:1px solid #bfd2d8;border-radius:5px}.review-final small{letter-spacing:.2em}@keyframes review-reveal{from{opacity:0;transform:scale(1.025)}to{opacity:1;transform:scale(1)}}@media(max-width:700px){.review-talk{left:5%;right:5%;bottom:3%;padding:18px;min-height:190px}.review-speaker-art{height:52%;width:60%;left:1%;bottom:29%}.review-score{top:13%;right:7%}.review-score strong{font-size:60px}.review-place{top:12%;font-size:16px;left:5%;right:5%}.review-place~.review-talk{left:5%;right:5%}.review-backdrop>img{object-position:60% center}.year-review>header{font-size:12px}}@media(prefers-reduced-motion:reduce){.review-backdrop{animation:none}}
.review-is-final .review-backdrop:after{background:linear-gradient(transparent 65%,#102a3a44)}

/* June review reuses the tutorial conversation frame; backdrop stays unchanged. */
.review-conversation .tut-dialogue-shell{position:absolute;bottom:5%;left:5%;right:5%;width:auto;max-width:1120px}.review-conversation .tut-dialogue p{margin:0;min-height:3.7em}.review-conversation .tut-speaker{font-weight:800}
@media(max-width:700px){.review-conversation .tut-dialogue-shell{left:3%;right:3%;bottom:3%;padding-left:0}.review-conversation .tut-speaker{left:25px;font-size:19px}.review-conversation .tut-dialogue-inner{padding:38px 26px 24px}.review-conversation .tut-dialogue p{font-size:17px}}

/* Ending score remains legible against the illustrated backdrop. */
.review-ending .review-score{left:50%;right:auto;top:16%;transform:translateX(-50%);width:max-content;min-width:280px;padding:24px 48px 30px;isolation:isolate;color:#fff;text-shadow:0 2px 3px #000,0 0 8px #000,0 0 18px #000,0 0 30px #000,0 0 48px #000c}
.review-ending .review-score:before{content:none}
.review-ending .review-score small{font-size:clamp(18px,2vw,30px);font-weight:700;color:#e9f5ff}
.review-ending .review-score strong{display:block;font-size:clamp(86px,10vw,170px);font-weight:900;line-height:1.15;font-variant-numeric:tabular-nums}
.review-ending .review-score em{font-size:clamp(25px,3vw,46px);margin-left:12px}
@media(max-width:700px){.review-ending .review-score{top:10%;left:60%;padding:16px 24px;min-width:170px}.review-ending .review-score strong{font-size:76px}.review-ending .review-score small{font-size:16px}}
@media(max-height:650px) and (min-width:701px){.review-ending .review-score{top:9%;padding:12px 28px;min-width:220px}.review-ending .review-score strong{font-size:90px}}
.review-is-report{cursor:default;background:#243d4b}.review-is-report>.review-backdrop{display:none}.outcome-desk{position:absolute;inset:0;background:linear-gradient(#18394b66,#142f4266),url('assets/office-interior.png') center/cover;filter:blur(3px);z-index:-1}.held-report{position:absolute;inset:65px 0 0;width:min(1200px,100%);margin:auto;display:flex;justify-content:center;align-items:flex-start}.outcome-paper{position:relative;width:64%;max-height:calc(100% - 20px);overflow:auto;padding:24px 36px 18px;background:#f6f0df;color:#203c4e;box-shadow:none;border:1px solid #c4baa4;scrollbar-width:thin;z-index:1}.outcome-paper header{text-align:center;border-bottom:2px solid #526675;padding-bottom:12px;margin-bottom:16px}.outcome-paper header small{font-size:12px;letter-spacing:.15em}.outcome-paper h2{font-size:clamp(24px,2.5vw,36px);margin:4px 0}.outcome-paper header p{margin:4px 0;font-size:15px}.outcome-top{display:grid;grid-template-columns:1.25fr 1fr;gap:22px;align-items:center}.outcome-top .site-photo{position:relative;width:100%;aspect-ratio:4/3;overflow:hidden;margin:0}.outcome-top .site-photo-crop{position:absolute;inset:0;overflow:hidden}.outcome-top .site-photo img{position:absolute;width:300%;height:600%;max-width:none}.outcome-top dl{margin:0}.outcome-top dl div{padding:9px 0;border-bottom:1px solid #bcc4c1}.outcome-top dt{font-size:12px;color:#607480}.outcome-top dd{margin:4px 0 0;font-size:16px;font-weight:500}.outcome-paper h3{font-size:15px;border-bottom:1px solid #9da9ad;padding-bottom:7px;margin:17px 0 10px}.outcome-interview blockquote{font-size:clamp(19px,1.8vw,26px);font-weight:600;line-height:1.65;margin:12px 5px;text-align:center;word-break:keep-all}.outcome-interview>p{text-align:center;font-size:12px;color:#627482;margin:6px}.outcome-changes ul{margin:8px 0;padding-left:22px;font-size:15px;line-height:1.8}.outcome-paper footer{border-top:1px solid #bcc4c1;margin-top:16px;padding-top:10px;text-align:center;font-size:10px;color:#74818a}.report-hands{position:absolute;left:-15%;bottom:-9%;width:130%;height:100%;object-fit:fill;pointer-events:none;z-index:2}.report-next{position:absolute;right:3%;bottom:4%;background:#17394ce8;color:#fff;border:1px solid #b4c9d2;border-radius:4px;padding:14px 20px;z-index:5}.review-is-report>header{pointer-events:none}
@media(max-width:700px){.held-report{top:54px}.outcome-paper{width:87%;padding:18px 20px;max-height:calc(100% - 75px)}.outcome-top{gap:12px}.outcome-top dd{font-size:13px}.outcome-interview blockquote{font-size:19px}.report-hands{width:150%;left:-25%;height:65%;bottom:0}.report-next{bottom:14px;padding:10px 18px}.outcome-changes ul{font-size:13px}}
@media(max-height:750px) and (min-width:701px){.outcome-paper{padding:14px 30px}.outcome-paper header{margin-bottom:10px;padding-bottom:7px}.outcome-paper h2{font-size:25px}.outcome-top .site-photo{max-width:240px;aspect-ratio:16/10}.outcome-paper h3{margin:10px 0 5px}.outcome-interview blockquote{font-size:20px;margin:7px}.outcome-paper footer{margin-top:8px}}
/* Shared image coordinate space: rear hands, paper, then cropped thumbs. */
.held-report{inset:60px auto 0;left:50%;transform:translateX(-50%);width:min(1500px,130vw);container-type:inline-size;isolation:isolate}
.held-report .outcome-paper{width:58.529%;height:calc(100% - 16px);max-height:none;z-index:2;padding-left:8%;padding-right:8%;box-sizing:border-box}
.held-report .report-hands{left:0;bottom:0;width:100%;height:auto;object-fit:contain;z-index:1}
.report-thumbs{position:absolute;left:19.206%;bottom:10.4818cqw;width:61.589%;height:auto;pointer-events:none;z-index:3;filter:blur(.45px);image-rendering:auto}
@media(max-width:700px){.held-report{width:154vw;top:54px}.held-report .outcome-paper{height:calc(100% - 66px);padding:18px 8%}.held-report .report-hands{bottom:50px}.report-thumbs{bottom:calc(50px + 10.4818cqw)}}

/* Exclude the adjacent tile at the right edge of the shade outcome photo. */
.outcome-paper[data-case="heat"] .outcome-top .site-photo-crop{right:-6%}
