/* Library Twin c1: /theories/ page layout (with pages.css and lt.css). */
.lt-theories-page .bar{flex-wrap:wrap}
.lt-prefs{display:flex;gap:.5rem}
.lt-chip{font:600 .8rem/1 var(--sans);color:var(--ink);background:var(--card);border:1px solid var(--rule);border-radius:999px;padding:.55rem .85rem;min-height:36px;cursor:pointer}
.lt-chip[aria-pressed="true"]{background:var(--accent);color:var(--bg);border-color:var(--accent)}
.lt-chip:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
main.lt-theories{max-width:80rem;padding-top:2.5rem}
.lt-theories .overline{font:italic 400 1.05rem/1.3 var(--serif);color:var(--accent);margin:0 0 .8rem}
.lt-theories h1{font:400 clamp(2.1rem,4.6vw,3.8rem)/1.04 var(--serif);letter-spacing:-.014em;margin:0;max-width:22ch;text-wrap:balance}
.lt-theories .lt-intro .lede{max-width:40rem;color:var(--ink-2);font-size:1.08rem;margin:1.1rem 0 2rem}
.lt-theories .spine{margin:0 0 1rem;max-width:60rem}
.lt-theories .spine-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr)}
.lt-theories .spine-steps li{position:relative;padding:1rem 1rem 1rem 0;border-top:1px solid var(--accent)}
.lt-theories .spine-steps li::after{content:"→";position:absolute;right:.4rem;top:-.85rem;color:var(--accent)}
.lt-theories .spine-steps li:last-child::after{content:none}
.lt-theories .spine-n{display:inline-grid;place-items:center;width:1.6rem;height:1.6rem;border-radius:50%;background:var(--bg);border:1px solid var(--accent);color:var(--accent);font:600 .75rem var(--sans);position:absolute;top:-.8rem}
.lt-theories .spine-steps b{display:block;font:600 1.02rem var(--serif);margin-top:.5rem}
.lt-theories .spine-steps small{display:block;color:var(--muted);font-size:.8rem;line-height:1.4;margin-top:.2rem}
.lt-theories .spine figcaption{font-size:.84rem;color:var(--ink-2);margin-top:.9rem;line-height:1.9}
.lt-theories .lt-stand{padding:3rem 0 1rem;border-top:1px solid var(--rule);color:var(--ink-2)}.lt-theories .lt-stand h2{font-size:1.5rem}
@media (max-width:900px){.lt-theories .spine-steps{grid-template-columns:repeat(2,1fr);row-gap:1.6rem}.lt-theories .spine-steps li:nth-child(2)::after{content:none}}
@media (max-width:520px){.lt-theories .spine-steps{grid-template-columns:minmax(0,1fr)}.lt-theories .spine-steps li::after{content:none}}
/* home: the Foundations section */
.lt-home .lt-parts{list-style:none;margin:2.4rem 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,19rem),1fr));gap:1rem}
.lt-home .lt-parts li{border:1px solid var(--rule);border-radius:12px;padding:1rem 1.1rem;background:var(--card)}
.lt-home .lt-parts a{color:var(--ink);text-decoration:none}.lt-home .lt-parts a:hover b{text-decoration:underline}
.lt-home .lt-pn{font:italic 400 1.1rem var(--serif);color:var(--accent)}.lt-home .lt-parts b{font:600 1.05rem/1.3 var(--serif)}
.lt-home .lt-kinds{display:flex;flex-wrap:wrap;gap:.3rem;margin:.5rem 0}.lt-home .lt-eq{margin:.4rem 0;color:var(--ink)}.lt-home .lt-parts p{margin:.35rem 0 0;font-size:.9rem;color:var(--ink-2)}
.lt-home .lt-demo-intro{margin:2.6rem 0 1rem;max-width:46rem}.lt-home .lt-demo-intro h3{font:400 1.7rem/1.15 var(--serif);margin:.2rem 0 .5rem}
.lt-home .lt-more{margin:2rem 0 0;display:flex;gap:1rem;align-items:center;flex-wrap:wrap}
.site-foot .foot-links{flex-wrap:wrap;row-gap:.6rem}

/* x3: at 320 px with large text the badges and the next-step button wrap */
.lt-theories-page .st,.statusbadge{white-space:normal;overflow-wrap:anywhere;max-width:100%}#drNext{white-space:normal;overflow-wrap:anywhere;max-width:100%}.dr-nav{flex-wrap:wrap}.lt-theories-page .btn{white-space:normal;max-width:100%}@media (max-width:420px){.ltf .dg-inspector dl.kv{display:block}.ltf .dg-inspector dl.kv dd{margin:0 0 .45rem;min-width:0}}

/* x2 (carried from x1): at 200% text a 16rem minimum outgrows a 390px screen, and long words in large headings must wrap */
.ltf .dg-controls output{min-width:min(16rem,100%)}
.lt-theories-page h1,.lt-theories-page h2,.lt-theories-page h3,.lt-theories-page p,.lt-theories-page li{overflow-wrap:break-word;hyphens:auto;-webkit-hyphens:auto}
