/* Scoped to guided Part 5. Shared navigation, scored modes and Part 7 keep their styles. */
.part5-lab{--p5-sentence-size:21px;--p5-answer-size:20px;--p5-gloss-size:12px;--p5-pos-size:11px;--p5-ruby:#bb0737;--p5-green:#247a3f;--p5-ink:#332f2b;--p5-muted:#7b7368;--p5-gold:#9b6717;color:var(--p5-ink);font-family:Arial,sans-serif;background:#fcfaf7;border:1px solid #e5ded6;border-radius:24px;padding:16px 20px;scroll-margin-top:100px;box-shadow:inset 0 0 0 3px #fff9}
.part5-lab *{box-sizing:border-box}
.p5-toolbar,.p5-tools{display:flex;align-items:center;gap:12px}.p5-toolbar{justify-content:space-between}.p5-tools>span{color:var(--p5-muted);font-size:14px}
.p5-quiet{font:700 14px/1.3 Arial,sans-serif;color:var(--p5-ruby);background:#fff9e9;border:1px solid #e3c38c;border-radius:20px;padding:7px 12px;min-height:36px;cursor:pointer}
.part5-lab button:focus-visible,.p5-insight summary:focus-visible{outline:3px solid #a57826;outline-offset:4px}.part5-lab button:disabled{opacity:.35;cursor:default}
.p5-diagram{position:relative;isolation:isolate;min-width:0;padding-right:22px}.p5-diagram-cue{color:var(--p5-gold);font-size:11px;font-weight:600;line-height:1.4;text-align:center;overflow-wrap:break-word;max-width:100%;padding:18px 10px 4px;min-height:44px}
.p5-diagram-cue.is-waiting{visibility:hidden}.p5-arrows{position:absolute;inset:0;width:100%;height:100%;color:var(--p5-gold);pointer-events:none;overflow:visible;z-index:2}
.p5-sentence{font:400 var(--p5-sentence-size)/1.6 Arial,Helvetica,sans-serif;display:flex;flex-wrap:wrap;gap:16px 11px;padding:6px 0 24px;align-items:flex-start}
.p5-chunk{display:inline-flex;flex-direction:column;max-width:100%;min-width:0;padding-top:27px}.p5-chunk-words{position:relative;display:block;padding:2px 2px 14px;border:0 solid #8f8a8280;overflow-wrap:break-word}.p5-role{font:400 12px/1.3 Arial,sans-serif;text-align:center;color:var(--p5-muted);padding:7px 3px 0;white-space:normal}
.p5-chunk:first-child .p5-role{color:#187bb2}.p5-chunk:first-child .p5-chunk-words{border-color:#368abe}.p5-tested-chunk .p5-role{color:var(--p5-ruby)}.p5-tested-chunk .p5-chunk-words{border-color:#b71d47}
.p5-blank{display:inline-block;min-width:105px;color:transparent;background:#fff0b8;border-bottom:3px solid var(--p5-ruby);line-height:1.05;vertical-align:middle}
.p5-clue{border-radius:5px;background:#fff0b8;color:inherit;box-decoration-break:clone;-webkit-box-decoration-break:clone;animation:p5-clue-pulse .75s ease}.p5-blank.p5-clue{color:transparent}
.p5-learning-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(250px,1fr);gap:24px;align-items:start}.p5-question,.p5-side{min-width:0}
.p5-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.p5-option{display:grid;grid-template-columns:18px minmax(0,1fr);grid-template-rows:auto 1fr auto;align-content:start;align-items:start;column-gap:7px;text-align:left;min-height:196px;width:100%;border:1px solid #fff;border-radius:16px;padding:16px 17px 12px;background:#f4f0e8;box-shadow:0 4px 0 #d9d3ca;color:var(--p5-ink);cursor:pointer}
.p5-option:hover{border-color:#bd9b61}.p5-option.is-selected{outline:3px solid #a47727;outline-offset:3px}.p5-option.is-correct{background:#dcefd3;color:#215c34}
.p5-letter{font:700 var(--p5-answer-size)/1.3 Georgia,'Times New Roman',serif;color:var(--p5-ruby);grid-column:1;grid-row:1;padding-top:21px}
.p5-option-copy{grid-column:2;grid-row:1;display:grid;grid-template-columns:minmax(0,1fr);justify-items:center;align-items:center;gap:5px;width:fit-content;max-width:100%}
.p5-option-word{font:700 var(--p5-answer-size)/1.3 Georgia,'Times New Roman',serif;text-align:center;overflow-wrap:break-word;grid-row:2;max-width:100%}.p5-option-meaning{font-size:var(--p5-gloss-size);color:var(--p5-green);text-align:center;min-height:16px;line-height:1.3;grid-row:1}.p5-option-ipa{font-size:var(--p5-gloss-size);color:var(--p5-ruby);text-align:center;line-height:1.3;grid-row:3;overflow-wrap:anywhere}.p5-pos{font:var(--p5-pos-size)/1.25 Arial,sans-serif;color:var(--p5-muted);text-align:center;grid-row:4;max-width:100%}.p5-pos b{color:var(--p5-ruby)}
.p5-choice-note{grid-column:1/-1;grid-row:2;align-self:start;background:#fff4f4;border-left:4px solid var(--p5-ruby);border-radius:0 10px 10px 0;color:#a51134;font-size:14px;line-height:1.45;padding:9px 11px;margin-top:16px;animation:p5-reveal .2s ease}.p5-choice-status{grid-column:1/-1;grid-row:3;align-self:end;text-align:right;color:var(--p5-green);font-size:11px;min-height:14px;padding-top:8px}
.p5-hide-glosses .p5-option-meaning,.p5-hide-glosses .p5-option-ipa{visibility:hidden}.p5-hide-glosses .p5-option:hover .p5-option-meaning,.p5-hide-glosses .p5-option:hover .p5-option-ipa,.p5-hide-glosses .p5-option:focus-visible .p5-option-meaning,.p5-hide-glosses .p5-option:focus-visible .p5-option-ipa{visibility:visible}
/* Grid-based ruby labels share the English centre, reserve their own space, and wrap. */
.part5-lab .reading-word,.part5-lab .p5-vocab{position:relative;display:inline-grid!important;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:auto 1fr auto;justify-items:center;align-items:center;vertical-align:middle;white-space:normal;max-width:100%;margin:0 .08em;row-gap:3px;line-height:1.3;font-weight:inherit;cursor:pointer}
.part5-lab .reading-meaning,.part5-lab .reading-ipa{position:static!important;inset:auto!important;transform:none!important;visibility:visible;opacity:1;grid-column:1!important;width:auto;max-width:100%!important;text-align:center;font:400 12px/1.2 Arial,sans-serif;white-space:normal;overflow-wrap:break-word;padding:0 2px;background:none;z-index:auto}
.part5-lab .reading-meaning{grid-row:1;color:var(--p5-green)}.part5-lab .reading-ipa{grid-row:3;color:var(--p5-ruby)}.part5-lab .reading-english{grid-row:2;grid-column:1;text-decoration:none;background:linear-gradient(115deg,#fffbea,#f9eab8);box-shadow:0 2px 0 #f0dfad;border-radius:9px;padding:2px 3px;max-width:100%;overflow-wrap:break-word;line-height:1.35}
.part5-lab.p5-hide-glosses .reading-meaning,.part5-lab.p5-hide-glosses .reading-ipa{visibility:hidden;opacity:0}.part5-lab.p5-hide-glosses :is(.reading-word,.p5-vocab):is(:hover,:focus,[data-revealed]) :is(.reading-meaning,.reading-ipa){visibility:visible;opacity:1}
.p5-illustration{margin:0;border:1px solid #e5ded6;border-radius:20px;background:#fffaf2;padding:7px;overflow:hidden}.p5-illustration img{width:100%;max-height:340px;aspect-ratio:1;object-fit:contain;display:block;border-radius:13px}.p5-illustration figcaption{font:16px/1.5 Georgia,serif;text-align:center;padding:9px 5px;color:#685d4d}.p5-illustration figcaption span{font:13px Arial,sans-serif}
.p5-insight{margin-top:16px;border-top:1px solid #decfb9;font:14px/1.7 Arial,sans-serif}.p5-insight summary{cursor:pointer;padding:12px 0;font-weight:700;color:var(--p5-ruby)}.p5-insight>div{padding:0 12px 12px;background:#fff8e9;border-radius:12px}.p5-insight h2{font-size:15px;margin:0;padding-top:12px}.p5-insight p{margin:8px 0;color:#63594d}
.p5-example{margin-top:20px;min-height:220px}.p5-example-empty{color:#8b8276;display:grid;place-items:center;font-size:14px}.p5-example-sentence{font:400 var(--p5-sentence-size)/1.6 Arial,Helvetica,sans-serif;white-space:pre-wrap;overflow-wrap:break-word;padding-top:28px;padding-bottom:20px}.p5-example-plain{display:inline-block;max-width:100%;vertical-align:middle;padding-top:25px}.p5-example-group{padding-top:25px;display:inline-flex;vertical-align:middle;flex-direction:column;align-items:center;max-width:100%;margin-bottom:15px}.p5-example-word{position:relative;display:inline-block;max-width:100%;border:0 solid #ab863f;padding:0 2px 12px}.p5-example-focus .p5-example-word{color:var(--p5-ruby);font-weight:700;border-color:var(--p5-ruby)}.p5-example-role{font:12px/1.5 Arial,sans-serif;text-align:center;padding-top:6px;color:#906616;white-space:normal;max-width:100%}.p5-example-focus .p5-example-role{color:var(--p5-ruby)}
.p5-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:20px;color:var(--p5-muted);font-size:13px}.p5-overview{padding:20px 0}.p5-overview-heading{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:18px}.p5-overview-heading h2{font:700 21px/1.4 Georgia,serif;margin:0}.p5-overview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.p5-overview-grid button{display:flex;gap:12px;align-items:center;padding:14px;text-align:left;border:1px solid #dfc89e;border-radius:14px;background:#fff9eb;font:14px/1.5 Arial,sans-serif;cursor:pointer}.p5-overview-grid b{color:var(--p5-ruby)}.p5-overview-grid [aria-current]{border-color:var(--p5-ruby)}
@keyframes p5-reveal{from{opacity:.2}to{opacity:1}}@keyframes p5-clue-pulse{50%{box-shadow:0 0 0 5px #c31c4730;background:#ffdf91}}
@media(max-width:1050px){.p5-learning-grid{grid-template-columns:minmax(0,1fr) 260px;gap:18px}.p5-option{padding:14px 12px}.p5-illustration img{max-height:260px}}
@media(max-width:760px){.part5-lab{padding:13px;border-radius:18px}.p5-learning-grid{grid-template-columns:minmax(0,1fr)}.p5-side{display:grid;grid-template-columns:1fr 1fr;gap:14px}.p5-sentence{gap:12px 8px}.p5-diagram{padding-right:18px}.p5-option{min-height:185px;padding:13px 11px}.p5-choice-note{font-size:14px;padding:9px}.p5-option-meaning,.p5-option-ipa{font-size:var(--p5-gloss-size)}.p5-pos{font-size:11px}.p5-illustration img{max-height:220px}.p5-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.p5-choice-note{font-size:13px}.p5-options{grid-template-columns:minmax(0,1fr)}.p5-option{min-height:160px}.part5-lab{--p5-answer-size:18px}.p5-option-meaning,.p5-option-ipa{font-size:var(--p5-gloss-size)}.p5-side{grid-template-columns:minmax(0,1fr)}.p5-toolbar{gap:8px}.p5-tools{gap:6px}.p5-quiet{font-size:12px;padding:7px 9px;min-height:40px}.p5-overview-heading{flex-direction:column;align-items:flex-start}}
/* Pearl-glass finish from the Listening Test 5 reference. All surfaces stay Part 5 scoped. */
.part5-lab{
 --p5-ruby:#ad1031;--p5-green:#226b37;--p5-muted:#746b67;
 --p5-pearl:linear-gradient(145deg,#fffefd 0%,#f9f6f5 48%,#eeebea 100%);
 --p5-glass-edge:inset 0 1px 1px #fff,inset 0 0 0 3px #ffffffa6;
 background:linear-gradient(135deg,#fffdfbed,#f8f5f4eb 65%,#f2edebe6);
 border:1px solid #ddd6d1;border-radius:28px;
 box-shadow:var(--p5-glass-edge),0 3px 5px #55443808,0 16px 34px #5441380c;
 padding:20px 22px;
}
.part5-lab .p5-toolbar{padding-bottom:12px;border-bottom:1px solid #e6ded780;flex-wrap:wrap;row-gap:10px}
.part5-lab .p5-quiet{
 background:var(--p5-pearl);border:1px solid #ded5d3;border-radius:18px;
 box-shadow:inset 0 1px 1px white,inset 0 0 0 2px #ffffffae,0 2px 3px #58343b0a,0 6px 14px #58343b0a;
 min-height:42px;padding:10px 16px;color:var(--p5-ruby);
 transition:background .18s,border-color .18s,box-shadow .18s;
}
.part5-lab .p5-quiet:hover:not(:disabled){border-color:#c9aaa5;background:linear-gradient(140deg,#fff,#f8f0ef);box-shadow:inset 0 0 0 2px #fff9,0 5px 14px #72283a14}
.part5-lab .p5-quiet:is([aria-pressed="true"],[aria-expanded="true"]){
 color:#fff;background:linear-gradient(180deg,#d83c50 0%,#bd0b30 22%,#aa082b 67%,#880921 100%);
 border-color:#b6485e;box-shadow:inset 0 1px 2px #fff9,inset 0 0 0 2px #ffffff69,0 0 0 1px #eedadd,0 5px 12px #780b2826;
 text-shadow:0 1px 1px #65082040;
}
.part5-lab .p5-options{gap:16px}
.part5-lab .p5-option{
 position:relative;grid-template-columns:18px minmax(0,1fr);column-gap:7px;font-family:Arial,Helvetica,sans-serif;
 background:var(--p5-pearl);border:1px solid #e2dbd8;border-radius:24px;
 padding:19px 20px 15px;outline:none;
 box-shadow:var(--p5-glass-edge),0 2px 3px #54403909,0 8px 18px #5440390c;
 transition:background .2s,border-color .2s,box-shadow .2s;
}
.part5-lab .p5-option:hover{border-color:#c8aaa8;background:linear-gradient(145deg,#fff,#f9f4f2 48%,#efe9e7);box-shadow:var(--p5-glass-edge),0 5px 18px #78283918}
.part5-lab .p5-option.is-selected{
 outline:none;border-color:#c44d68;
 background:linear-gradient(130deg,#fffafb 0%,#fcedf0 58%,#f6e5e9 100%);
 box-shadow:inset 0 1px 2px white,inset 0 0 0 2px #fff9,0 0 0 2px #b21b3921,0 8px 22px #7f143917;
}
.part5-lab .p5-option.is-correct{
 color:#1d5630;border-color:#b8dca9;
 background:linear-gradient(115deg,#e6f7db 0%,#c9edba 47%,#98d987 100%);
 box-shadow:inset 0 1px 2px #fff,inset 0 0 0 3px #f5ffe778,0 2px 3px #4667360a,0 8px 20px #4f733c12;
}
.part5-lab .p5-option.is-correct.is-selected{border-color:#69b957;box-shadow:inset 0 1px 2px #fff,inset 0 0 0 3px #f5ffe78c,0 0 0 2px #72b95825,0 8px 22px #4f733c18}
.part5-lab .p5-letter{text-shadow:0 1px 0 #fff9}
.part5-lab .p5-option-copy{gap:5px}



.part5-lab .p5-choice-note{
 border:1px solid #e9c2cc;border-radius:14px;background:linear-gradient(130deg,#fffcfdc9,#fff5f7b3);
 box-shadow:inset 0 1px 0 #fff9;padding:12px 13px;color:#99233d;
 font-size:14px;line-height:1.45;
}
.part5-lab .is-correct .p5-choice-note{border-color:#fff9;background:linear-gradient(135deg,#fafff3db,#f5ffedb8);color:#215d35;box-shadow:inset 0 1px 0 white,0 3px 10px #416a2510}
.part5-lab .p5-choice-status{display:flex;align-items:center;justify-content:flex-end;gap:7px;font-weight:700;font-size:12px;padding-top:11px}
.part5-lab .p5-choice-status::before{
 content:'✓';display:grid;place-items:center;width:23px;height:23px;border-radius:50%;
 background:linear-gradient(#78ce57,#33a729);color:white;border:1px solid #efffe1;
 box-shadow:inset 0 1px 1px #fff8,0 1px 4px #3a752d38;font-size:15px;
}
.part5-lab .p5-illustration{
 background:var(--p5-pearl);border:1px solid #ddd6d2;border-radius:25px;padding:9px;
 box-shadow:var(--p5-glass-edge),0 7px 20px #5940380d;
}
.part5-lab .p5-illustration img{border-radius:18px}
.part5-lab .p5-illustration figcaption{padding:12px 7px;color:#756355}
.part5-lab .p5-insight{
 border:1px solid #e0d7d3;border-radius:19px;background:var(--p5-pearl);
 box-shadow:inset 0 1px 1px white,inset 0 0 0 2px #ffffff95,0 5px 14px #61433409;
 overflow:hidden;
}
.part5-lab .p5-insight summary{padding:14px 17px;list-style-position:inside}
.part5-lab .p5-insight>div{margin:0 8px 8px;padding:0 13px 13px;border-radius:13px;background:linear-gradient(125deg,#fff9eacf,#fffcf7d9)}
.part5-lab .p5-example{padding:10px 17px;border:1px solid #e2d7cc;border-radius:23px;background:linear-gradient(130deg,#fffdf6,#f9f1e6b3);box-shadow:inset 0 0 0 2px #fffa,0 7px 18px #573c2308}
.part5-lab .p5-overview-grid{gap:13px}
.part5-lab .p5-overview-grid button{
 background:var(--p5-pearl);border:1px solid #e0d8d4;border-radius:19px;
 box-shadow:var(--p5-glass-edge),0 5px 12px #583e300b;
}
.part5-lab .p5-overview-grid button[aria-current]{background:linear-gradient(180deg,#cf354f,#b00b30 27%,#880921);border-color:#bb5870;color:#fff;box-shadow:inset 0 1px 2px #fff9,inset 0 0 0 2px #ffffff69,0 4px 12px #7b143526}
.part5-lab .p5-overview-grid button[aria-current] b{color:#fff0c7}
.part5-lab button:focus-visible,.part5-lab .p5-insight summary:focus-visible{outline:3px solid #a57826;outline-offset:4px}
@media(max-width:760px){.part5-lab{padding:16px;border-radius:24px}.part5-lab .p5-option{padding:17px 15px;column-gap:9px;border-radius:22px}.part5-lab .p5-quiet{padding:9px 12px}.part5-lab .p5-options{gap:13px}}
@media(max-width:480px){.part5-lab{padding:13px}.part5-lab .p5-quiet{font-size:12px;padding:8px 10px}}
/* Reserve the complete explanation before selection; every card keeps its size. */
.part5-lab .p5-options { gap:8px;align-items:stretch;grid-auto-rows:1fr; }
.part5-lab .p5-option {
  min-height:0;
  grid-template-columns:18px minmax(0,1fr) auto;
  grid-template-rows:auto 1fr;
  padding:12px 14px 8px;
  border-radius:20px;
}
.part5-lab .p5-option-copy { gap:4px; }
.part5-lab .p5-choice-note[aria-hidden="true"],
.part5-lab .p5-choice-status[aria-hidden="true"] { visibility:hidden; }
.part5-lab .p5-choice-status { grid-column:3;grid-row:1;align-self:start;padding-top:0;min-height:0;gap:4px;font-size:11px; }
.part5-lab .p5-choice-note { align-self:stretch;margin-top:8px;padding:8px 10px; }
.part5-lab .p5-example { min-height:0;margin-top:14px; }
.part5-lab .p5-example-empty { min-height:60px; }
/* One arrow clearance instead of stacked top/bottom spacing in usage examples. */
.part5-lab .p5-example { padding:8px 17px; }
.part5-lab .p5-example .p5-diagram-cue { min-height:0;padding:2px 8px 3px; }
.part5-lab .p5-example-sentence { padding-top:0;padding-bottom:2px; }
.part5-lab .p5-example-group { padding-top:24px;margin-bottom:3px; }
.part5-lab .p5-example-plain { padding-top:24px; }
.part5-lab .p5-example-plain:empty { display:none; }
.part5-lab .p5-illustration img { max-height:260px; }
.part5-lab .p5-footer { margin-top:14px; }
@media(max-width:760px) {
  .part5-lab .p5-option { padding:12px 12px 8px; }
  .part5-lab .p5-illustration img { max-height:220px; }
}
/* Lesson control sits beside the source, below its top edge. */
.p5-gloss-control{display:grid;place-items:center;align-content:center;gap:0;width:auto;min-height:36px;align-self:start;grid-column:2;grid-row:1;margin-top:22px;padding:8px 11px;font:700 12px/1.35 Arial,sans-serif;border:1px solid #fff9;border-radius:12px;background:linear-gradient(145deg,#fff,#edf0f4);color:#a91336;box-shadow:inset 0 1px 1px #fff,0 3px 9px #27384a15;cursor:pointer}
.p5-gloss-control[aria-pressed="true"]{color:white;background:linear-gradient(155deg,#d8405d,#b61239 45%,#900a2d);box-shadow:inset 0 1px 1px #fff8,0 3px 10px #a8143926}
.p5-gloss-control:focus-visible{outline:2px solid #436a92;outline-offset:3px}
.compact-studio main:has(>.part5-lab){padding-top:8px}
.part5-lab{padding-top:8px;padding-bottom:12px}
.part5-lab #p5-source{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:10px;align-items:start}
.part5-lab #p5-source>.p5-diagram{grid-column:1;grid-row:1}
.part5-lab #p5-source>.p5-source-explanation{grid-column:1/-1}
.p5-source-heading{min-height:0}
.p5-source-heading .p5-diagram-cue.is-waiting{visibility:hidden}
@media(max-width:760px){.p5-gloss-control{max-width:104px;padding:7px 8px}}
.part5-lab #p5-source .p5-diagram-cue{flex:1;min-height:0;padding:0 36px 0 0}
.part5-lab .p5-sentence{row-gap:8px;padding-top:0;padding-bottom:10px}
.part5-lab .p5-chunk{padding-top:22px}
.part5-lab .p5-example-empty{min-height:0;margin-top:8px}
.part5-lab .p5-side{align-items:start}
.part5-lab .p5-source-explanation,.part5-lab .p5-example-explanation{font:13px/1.55 Arial,sans-serif;color:#63594d;margin:0 0 12px;overflow-wrap:anywhere}
.part5-lab .p5-example-explanation{margin:6px 0 2px}

/* Keep the teaching cue attached to its measured arrow rather than the page centre.
   Relative positioning retains the text's layout space, including wrapped cues. */
.part5-lab .p5-diagram .p5-diagram-cue,
.part5-lab #p5-source .p5-diagram-cue{
 position:relative;flex:none;min-height:0;padding:0 4px;max-width:100%;
 width:fit-content;line-height:1.4;z-index:3;transform-origin:top left;
}

/* Grammar B grouping brackets: short raised ends, with the role below. */
.part5-lab .p5-chunk-words::after,
.part5-lab .p5-example-word::after{
 content:"";position:absolute;left:0;right:0;bottom:0;height:8px;
 border-style:solid;border-width:0 1px 2px;border-color:inherit;
 opacity:.8;pointer-events:none;
}

/* Reserve teaching content before revealing it; selection only changes visibility. */
.part5-lab .p5-source-explanation[aria-hidden="true"]{visibility:hidden}
.part5-lab .p5-example{position:relative;display:grid;align-items:start;justify-items:stretch;margin-top:14px;min-height:0}
.p5-example-variant{grid-area:1/1;min-width:0}
.p5-example-variant[aria-hidden="true"],.p5-example-variant[aria-hidden="true"] *{visibility:hidden!important;pointer-events:none}
.part5-lab .p5-example-empty{background:transparent;box-shadow:none;border-color:transparent}
.part5-lab .p5-example-empty p.p5-example-prompt{position:absolute;top:12px;left:16px;right:16px;margin:0;text-align:center;font:14px/1.5 Arial,sans-serif}

/* Reveal skills with the chosen answer, keeping their space reserved beforehand. */
.part5-lab .p5-insight .p5-insight-heading{padding:14px 17px;margin:0;font-size:14px;color:var(--p5-ruby)}
.part5-lab .p5-insight h3{font-size:15px;line-height:1.5;margin:0;padding-top:12px}
.part5-lab .p5-insight-content[aria-hidden="true"]{visibility:hidden}
/* Full-width illustration without letterboxing or cropping. */
.part5-lab .p5-illustration{padding:0}
.part5-lab .p5-illustration img{width:100%;height:auto;max-height:none;aspect-ratio:auto;border-radius:0;object-fit:contain}

/* Shared grid rows align the illustration frame exactly with the A-D block. */
@media(min-width:761px){
 .part5-lab .p5-question,.part5-lab .p5-side{display:contents}
 .part5-lab #p5-choices{grid-column:1;grid-row:1}
 .part5-lab .p5-illustration{grid-column:2;grid-row:1;align-self:stretch;contain:size;min-height:0;display:flex;flex-direction:column}
 .part5-lab .p5-illustration img{flex:1;min-height:0;height:0;object-fit:contain}
 .part5-lab .p5-illustration figcaption{flex:none}
 .part5-lab #p5-example{grid-column:1;grid-row:2;margin-top:0}
 .part5-lab #p5-insight{grid-column:2;grid-row:2;margin-top:0}
}
@media(min-width:1200px){
 .part5-lab .p5-illustration img{object-fit:cover}
}

/* Translation control uses the existing navigation row, never sentence width. */
.shell.compact-studio .unified-toolbar:has(.p5-gloss-control){grid-template-columns:auto auto minmax(0,1fr) auto}
.unified-toolbar .p5-gloss-control{grid-column:auto;grid-row:auto;margin:0;align-self:center;white-space:nowrap;max-width:none}
.part5-lab #p5-source{display:block}
.p5-source-scroll{overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:#c7cdd4 transparent;padding-bottom:4px}
.part5-lab .p5-source-scroll>.p5-diagram{width:max-content;min-width:100%;max-width:none;padding-right:12px}
.part5-lab .p5-source-scroll .p5-sentence{flex-wrap:nowrap;width:max-content;min-width:100%}
.part5-lab .p5-source-scroll .p5-chunk{flex:none;max-width:none}
.part5-lab .p5-source-scroll .p5-chunk-words{white-space:nowrap}
@media(max-width:680px){.shell.compact-studio .unified-toolbar:has(.p5-gloss-control){grid-template-columns:auto minmax(0,1fr) auto}.unified-toolbar .p5-gloss-control{font-size:10px;padding:7px;max-width:112px;white-space:normal}}

/* The English line supplies the baseline; gloss height must not move it.
   Keep meanings in flow for width/height, and reserve one IPA line below. */
.part5-lab .p5-sentence{align-items:baseline}
.part5-lab :is(.reading-word,.p5-vocab){display:inline-block!important;vertical-align:baseline;padding-bottom:18px;text-align:center}
.part5-lab :is(.reading-word,.p5-vocab)>.reading-meaning{display:block;margin-bottom:3px}
.part5-lab :is(.reading-word,.p5-vocab)>.reading-english{display:inline-block;vertical-align:baseline}
.part5-lab :is(.reading-word,.p5-vocab)>.reading-ipa{position:absolute!important;inset:auto 0 0!important;display:block;line-height:15px;white-space:nowrap}
.part5-lab .p5-example-plain,.part5-lab .p5-example-group,.part5-lab .p5-blank{vertical-align:baseline}
