/* Route-local additions only. Shared study tools and case runtime are reused. */
main[data-ureter-lesson] { --ureter-line:#746589; --ureter-accent:#dac4ff; }
main[data-ureter-lesson] [hidden] { display:none !important; }
main[data-ureter-lesson] .ureter-model { border:1px solid var(--ureter-line); border-radius:1rem; padding:clamp(.8rem,3vw,1.3rem); margin:1rem 0 1.4rem; background:rgba(133,103,167,.09); }
main[data-ureter-lesson] .ureter-controls { border:0; padding:0; margin:0; min-width:0; }
main[data-ureter-lesson] .ureter-controls legend { font-weight:700; margin-bottom:.7rem; }
main[data-ureter-lesson] .ureter-controls label { display:block; margin:.7rem 0; }
main[data-ureter-lesson] .ureter-controls select { display:block; width:100%; min-height:48px; height:3rem; font:inherit; line-height:1.5; padding:.65rem; color:#faf7ff; background:#211b30; border:1px solid #a497b6; border-radius:.5rem; }
main[data-ureter-lesson] [data-ureter-output] { border-left:3px solid var(--ureter-accent); padding-left:.8rem; min-height:4.2em; }
main[data-ureter-lesson] button,main[data-ureter-lesson] summary { min-height:44px; }
main[data-ureter-lesson] summary { cursor:pointer; padding:.65rem .5rem; line-height:1.55; overflow-wrap:anywhere; }
main[data-ureter-lesson] [data-ureter-unit] { margin:.35rem 0; border:1px solid rgba(163,145,187,.32); border-radius:.55rem; }
main[data-ureter-lesson] [data-ureter-unit] p { margin:.2rem .65rem .8rem; }
main[data-ureter-lesson] [data-canonical-rationale] { margin-top:.6rem; }
main[data-ureter-lesson] [data-canonical-rationale] summary { color:inherit; }
main[data-ureter-lesson] .bwcr-rationales>li { padding-bottom:1rem; }
main[data-ureter-lesson] [data-inline-check] { margin:1.5rem 0; border-top:2px solid var(--ureter-line); padding-top:1rem; }
main[data-ureter-lesson] .ureter-figure-link { display:inline-flex; align-items:center; min-height:44px; font-size:1rem; margin-top:.4rem; }
main[data-ureter-lesson] :is(button,select,summary,a,input):focus-visible { outline:3px solid #f6cb78; outline-offset:4px; }
main[data-ureter-lesson] .ureter-controls button { margin:.4rem 0; }
main[data-ureter-lesson] .bwcr-figure { max-width:31rem; margin-inline:auto; }
main[data-ureter-lesson] .bwcr-table-wrap { max-width:100%; }
main[data-ureter-lesson] table { table-layout:auto; }
main[data-ureter-lesson] p,main[data-ureter-lesson] legend,main[data-ureter-lesson] li { overflow-wrap:break-word; }
main[data-ureter-lesson] .bwcr-options label { min-height:44px; }
@media(prefers-reduced-motion:reduce) { main[data-ureter-lesson] *,main[data-ureter-lesson] *::before,main[data-ureter-lesson] *::after { animation:none !important; transition:none !important; scroll-behavior:auto !important; } }

main[data-ureter-lesson] [id] { scroll-margin-top:5rem; }

main[data-ureter-lesson] .ureter-model figure { margin:1rem auto 0; max-width:24rem; }
@media(min-width:56rem) {
 main[data-ureter-lesson] .ureter-model { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:.4rem 1.5rem; align-items:start; }
 main[data-ureter-lesson] .ureter-model fieldset { grid-column:1; grid-row:1; }
 main[data-ureter-lesson] .ureter-model [data-ureter-output] { grid-column:1; grid-row:2; }
 main[data-ureter-lesson] .ureter-model .bwcr-tool-note { grid-column:1; grid-row:3; }
 main[data-ureter-lesson] .ureter-model figure { grid-column:2; grid-row:1 / span 3; margin:0; }
}

/* Keep nested open disclosures hidden when their parent closes, including WebKit.
   Do not discard the native open state: reopening restores the reader's place. */
main[data-ureter-lesson="20260922"] details:not([open]) > :not(summary) {
  display: none;
}
