.integrated-review { max-width: 1180px; }
.review-hero { display:grid; grid-template-columns:1.05fr .95fr; gap:2rem; align-items:center; padding:2.25rem; border-radius:26px; color:#f9fcff; background:linear-gradient(125deg,#08253c,#13587d); margin:1rem 0 1.25rem; }
.review-hero h1 { margin:.3rem 0 .8rem; font-size:clamp(2rem,5vw,3.8rem); line-height:1; }
.review-hero p { font-size:1.05rem; max-width:640px; }
.review-hero img { width:100%; aspect-ratio:16/10; object-fit:cover; border-radius:18px; background:white; }
.review-nav { display:flex; flex-wrap:wrap; gap:.55rem; margin:1.25rem 0; }
.review-nav a { display:grid; place-items:center; width:2.2rem; height:2.2rem; border-radius:50%; text-decoration:none; background:#dff1fa; color:#073450; font-weight:800; }
.review-station { scroll-margin-top:1rem; margin:1.5rem 0; padding:clamp(1rem,3vw,2rem); border:1px solid #cce7f4; border-radius:22px; background:#fff; box-shadow:0 10px 28px rgba(5,51,77,.06); }
.review-station-head { display:flex; align-items:flex-start; gap:1rem; margin-bottom:1.3rem; }
.review-station-head>span { flex:none; display:grid; place-items:center; width:2.55rem; height:2.55rem; border-radius:50%; background:#0b6b95; color:white; font-size:1.25rem; font-weight:800; }
.review-station h2 { margin:0; color:#0c3550; }
.review-station-head p { margin:.25rem 0 0; color:#526f83; }
.review-note { margin:0 0 1rem; padding:.9rem 1rem; border-left:4px solid #f4a629; background:#fff7e8; color:#4c3a16; border-radius:8px; }
.review-grid { display:grid; gap:.8rem; }
.review-matching { grid-template-columns:repeat(2,minmax(0,1fr)); }
.review-matching label,.review-endings label { display:grid; grid-template-columns:1.1fr .9fr; gap:.65rem; align-items:center; padding:.7rem .8rem; border:1px solid #d7e7ef; border-radius:12px; background:#fbfdff; }
#station-A .review-matching,#station-C .review-matching,#station-G .review-endings { grid-template-columns:1fr; }
#station-A .review-matching label,#station-C .review-matching label,#station-G .review-endings label { grid-template-columns:minmax(0,1fr) minmax(15rem,20rem); }
.review-grid select { width:100%; min-height:2.65rem; padding:.45rem 2rem .45rem .7rem; border:1px solid #9cc5d9; border-radius:10px; color:#12354e; background:#fff; font:inherit; }
.review-tense article,.review-skeleton article,.review-reorder article { padding:.9rem; border:1px solid #d7e7ef; border-radius:12px; background:#fbfdff; }
.review-inline { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.55rem; margin-top:.7rem; }
.review-tense .review-inline { grid-template-columns:140px minmax(0,1fr); }
.review-muted { color:#61798a; align-self:center; }
.review-figure { margin:0 0 1rem; }
.review-figure img { width:100%; max-height:520px; object-fit:contain; display:block; border-radius:14px; background:#fff; border:1px solid #d7e7ef; }
.review-figure figcaption { margin-top:.45rem; color:#526f83; font-size:.9rem; }
.scrambled { display:block; padding:.7rem; margin-bottom:.65rem; border-radius:8px; background:#eaf6fb; color:#21495f; font-style:italic; }
.review-endings { grid-template-columns:repeat(2,minmax(0,1fr)); }
.review-check { margin-top:1rem; }
.review-feedback { min-height:1.4rem; margin:.7rem 0 0; color:#0b5b37; font-weight:700; }
.review-correct { border-color:#20a760!important; background:#edfff4!important; }
.review-wrong { border-color:#e26c5b!important; background:#fff5f3!important; }
.review-finish { text-align:center; margin:2rem 0; padding:2rem; border-radius:20px; background:#e8f7ff; }
@media (max-width:700px) { .review-hero{grid-template-columns:1fr;padding:1.25rem}.review-matching,.review-endings{grid-template-columns:1fr}.review-matching label,.review-endings label,#station-A .review-matching label,#station-C .review-matching label,#station-G .review-endings label{grid-template-columns:1fr}.review-inline,.review-tense .review-inline{grid-template-columns:1fr} }
