/* Discovery keeps each task beside a useful example, then returns to reading. */
.rm-hub-body.rm-discovery-body { max-width:1180px; }
:is(.rm-tools,.rm-glossary) { --rm-discovery-link:var(--rm-forest); width:100%; color:var(--rm-body); }
:is(.rm-tools,.rm-glossary) { scroll-margin-top:96px; }
:is(.rm-tools,.rm-glossary) [hidden] { display:none!important; }
:is(.rm-tools,.rm-glossary) :is(a,button,input,select):focus-visible { outline:3px solid var(--rm-gold); outline-offset:3px; }
:is(.rm-tools,.rm-glossary) a { color:var(--rm-discovery-link); text-underline-offset:.23em; }
:is(.rm-tools,.rm-glossary) svg { width:18px; height:18px; flex-shrink:0; }
:is(.rm-tools,.rm-glossary) h2 { color:var(--rm-discovery-link); margin:0 0 16px; font:750 clamp(25px,3vw,34px)/1.22 Manrope,system-ui,sans-serif; letter-spacing:-.025em; }
:is(.rm-tools,.rm-glossary) p { margin:0 0 16px; max-width:72ch; font-size:16px; line-height:1.75; }
.rm-tool-jumps { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; margin:0 0 26px; }
.rm-tool-jumps a { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:12px 0; min-height:48px; border-bottom:1px solid var(--rm-line); font-size:14px; font-weight:750; text-decoration:none; }
.rm-tool-jumps a:hover { text-decoration:underline; border-color:var(--rm-discovery-link); }
.rm-tool-workspace { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr); align-items:center; gap:40px; padding:42px 0; border-bottom:1px solid var(--rm-line); scroll-margin-top:96px; }
.rm-tool-copy { min-width:0; }
.rm-tool-copy .rm-tool-boundary { color:var(--rm-support); font-size:13px; line-height:1.7; }
.rm-discovery-actions { display:flex; flex-wrap:wrap; gap:2px 22px; }
.rm-discovery-actions a,.rm-example-action { display:inline-flex; align-items:center; gap:8px; min-height:44px; padding:8px 0; font-size:14px; font-weight:750; text-decoration:underline; }
.rm-tool-example { min-width:0; background:var(--rm-paper); padding:26px 28px; border-radius:12px; }
.rm-tool-example h3 { color:var(--rm-discovery-link); margin:0 0 18px; font:750 18px/1.4 Manrope,system-ui,sans-serif; letter-spacing:-.015em; }
.rm-tool-example dl { margin:0; }
.rm-tool-example dl>div { padding:12px 0; border-top:1px solid var(--rm-line); }
.rm-tool-example dt { color:var(--rm-discovery-link); font-size:13px; line-height:1.5; font-weight:750; margin-bottom:6px; }
.rm-tool-example dd { margin:0; font-size:14px; line-height:1.7; }
.rm-tool-example dd strong { display:block; font-size:clamp(18px,2vw,23px); line-height:1.45; letter-spacing:-.02em; }
.rm-tool-example dd span { display:block; margin-top:4px; font-size:13px; color:var(--rm-support); }
.rm-tool-example>p { margin:12px 0 0; font-size:14px; line-height:1.7; }
.rm-tool-report .rm-tool-example-meta { margin:0 0 6px; font-size:12px; line-height:1.5; color:var(--rm-support); }
.rm-tool-report .rm-tool-example-title { color:var(--rm-discovery-link); margin:0 0 18px; font-size:21px; font-weight:750; line-height:1.35; letter-spacing:-.02em; }
.rm-tool-report .rm-example-action { margin-top:6px; }
.rm-tool-terms ul { margin:0; padding:0; list-style:none; }
.rm-tool-terms li { padding:9px 0 16px; border-top:1px solid var(--rm-line); }
.rm-tool-terms li:last-child { padding-bottom:0; }
.rm-tool-terms li>a,.rm-tool-names dt>a { display:flex; align-items:center; justify-content:space-between; gap:8px; min-height:44px; font-size:18px; font-weight:750; line-height:1.5; text-decoration:none; }
.rm-tool-terms li>a:hover,.rm-tool-names dt>a:hover { text-decoration:underline; }
.rm-tool-terms li>span { display:block; color:var(--rm-support); font-size:14px; line-height:1.6; }
.rm-tool-reading-path { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:40px; padding:40px 0 0; }
.rm-tool-reading-path ol { margin:0; padding-left:24px; }
.rm-tool-reading-path li { padding:0 0 16px 5px; }
.rm-tool-reading-path li::marker { color:var(--rm-discovery-link); font-weight:750; }
.rm-tool-reading-path li>a { display:inline-flex; align-items:center; gap:8px; min-height:44px; font-size:16px; line-height:1.5; font-weight:750; }
.rm-tool-reading-path li>span { display:block; font-size:14px; line-height:1.7; color:var(--rm-support); }
:is(.rm-tools,.rm-glossary) .rm-discovery-sources { margin:12px 0 0; font-size:12px; line-height:1.75; color:var(--rm-support); }
.rm-glossary-intro { margin-bottom:26px!important; }
.rm-glossary-controls { display:grid; grid-template-columns:minmax(0,2fr) minmax(200px,1fr) auto; gap:14px; align-items:end; scroll-margin-top:96px; }
.rm-glossary-controls>div { min-width:0; }
.rm-glossary-controls label { display:block; margin:0 0 7px; color:var(--rm-discovery-link); font-size:13px; line-height:1.5; font-weight:750; }
.rm-glossary-controls :is(input,select,button),.rm-glossary-empty button { font:inherit; font-size:15px; min-height:46px; padding:10px 12px; border:1px solid var(--rm-line); border-radius:6px; color:var(--rm-body); }
.rm-glossary-controls :is(input,select) { width:100%; background:var(--rm-card); caret-color:var(--rm-discovery-link); }
.rm-glossary-controls input::placeholder { color:var(--rm-support); opacity:1; }
.rm-glossary-controls button,.rm-glossary-empty button { color:var(--rm-discovery-link); background:var(--rm-paper); font-weight:750; cursor:pointer; transition:background-color 160ms ease-out,border-color 160ms ease-out; }
.rm-glossary :is(button):hover { background:#e7dfcc; border-color:var(--rm-discovery-link); }
.rm-glossary :is(button):active { background:#d9d0bd; }
.rm-glossary-status { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:0 20px; margin:14px 0 10px; }
.rm-glossary-status>p { margin:0; color:var(--rm-support); font-size:13px; font-variant-numeric:tabular-nums; }
.rm-glossary-status nav { display:flex; flex-wrap:wrap; align-items:center; gap:2px 16px; font-size:13px; line-height:1.6; }
.rm-glossary-status nav>span { color:var(--rm-support); }
.rm-glossary-status nav>a { min-height:44px; display:inline-flex; align-items:center; font-weight:750; }
.rm-glossary-list { border-top:1px solid var(--rm-line); }
.rm-glossary-entry { display:grid; grid-template-columns:minmax(0,.7fr) minmax(0,2fr); gap:32px; padding:26px 0; border-bottom:1px solid var(--rm-line); scroll-margin-top:96px; }
.rm-glossary-entry:target { background:var(--rm-paper); outline:2px solid var(--rm-gold); outline-offset:8px; }
.rm-glossary-entry:focus { outline:2px solid var(--rm-gold); outline-offset:8px; }
.rm-glossary-term h3 { color:var(--rm-discovery-link); margin:0 0 7px; font:750 22px/1.35 Manrope,system-ui,sans-serif; letter-spacing:-.02em; overflow-wrap:break-word; }
.rm-glossary-term p { color:var(--rm-support); font-size:12px; line-height:1.5; margin:0; }
.rm-glossary-meaning { min-width:0; }
.rm-glossary-meaning>p { margin:0 0 10px; font-size:15px; line-height:1.75; }
.rm-glossary-meaning .rm-glossary-example { color:var(--rm-support); font-size:14px; line-height:1.7; }
.rm-glossary-example strong { font-weight:750; }
.rm-glossary-links { display:flex; flex-wrap:wrap; gap:0 24px; }
.rm-glossary-links>a { display:inline-flex; gap:6px; align-items:center; min-height:44px; padding:6px 0; font-size:13px; line-height:1.5; font-weight:750; }
.rm-glossary-meaning .rm-discovery-sources { margin:0; }
.rm-glossary-empty { margin:20px 0; padding:26px; border:1px solid var(--rm-line); border-radius:12px; background:var(--rm-paper); }
.rm-glossary-empty h3 { margin:0 0 10px; color:var(--rm-discovery-link); font:750 23px/1.4 Manrope,system-ui,sans-serif; }
.rm-glossary .rm-glossary-next { margin:28px 0 0; font-size:14px; }
.rm-glossary-next a { display:inline-flex; align-items:center; gap:6px; min-height:44px; font-weight:750; }
html[data-rm-theme="dark"] :is(.rm-tools,.rm-glossary) { --rm-discovery-link:var(--rm-dark-link); }
html[data-rm-theme="dark"] .rm-glossary-controls :is(input,select) { background:#14251b; border-color:#739180; }
html[data-rm-theme="dark"] .rm-glossary button:hover { background:#294532; border-color:#91b39d; }
html[data-rm-theme="dark"] .rm-glossary button:active { background:#36543e; }
@media(max-width:900px) { .rm-tool-jumps { grid-template-columns:repeat(2,minmax(0,1fr)); gap:4px 24px; } .rm-tool-workspace { gap:28px; } .rm-glossary-controls { grid-template-columns:minmax(0,1.5fr) minmax(0,1fr); } .rm-glossary-controls button { justify-self:start; } .rm-glossary-entry { grid-template-columns:minmax(0,.85fr) minmax(0,2fr); gap:24px; } }
@media(max-width:650px) { .rm-tool-workspace,.rm-tool-reading-path { grid-template-columns:1fr; gap:24px; padding-block:30px; } .rm-tool-reading-path { padding-bottom:0; } .rm-tool-jumps { gap:4px 18px; margin-bottom:8px; } .rm-tool-jumps a { font-size:13px; } .rm-tool-example { padding:22px; } .rm-glossary-controls { grid-template-columns:1fr; gap:12px; } .rm-glossary-controls button { width:100%; } .rm-glossary-status { align-items:flex-start; flex-direction:column; } .rm-glossary-status nav { gap:2px 13px; } .rm-glossary-entry { grid-template-columns:1fr; gap:12px; padding:24px 0; } .rm-glossary-term h3 { font-size:21px; margin-bottom:4px; } .rm-glossary-links { gap:0 16px; } .rm-glossary-meaning>p { font-size:15px; } .rm-glossary-entry:target,.rm-glossary-entry:focus { outline-offset:5px; } }
@media(max-width:360px) { .rm-tool-jumps { grid-template-columns:1fr; } .rm-tool-example { padding:20px; } }
@media(prefers-reduced-motion:reduce) { .rm-glossary button { transition:none; } }
