/* Documentation built on TendUI's AppShell, Prose and semantic CSS.
   Only branding and documentation-specific composition live here. */
:root {
  --tendui-heading-1: clamp(2.1rem, 3.5vw, 3.5rem);
  --tendui-heading-2: clamp(1.4rem, 2vw, 1.8rem);
}
.app-shell { max-inline-size: 1920px; }
.app-sidebar { font-size: .9rem; }
.app-sidebar summary { list-style: none; color: var(--tendui-muted); font-size: .6875rem; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; }
.app-sidebar summary::-webkit-details-marker { display: none; }
.app-sidebar footer p { margin-block: .75rem; }
.app-main { padding: clamp(1.5rem, 4vw, 4rem); }
.app-main > .prose { margin-inline: auto; }
.eyebrow { font-size: .75rem; letter-spacing: .08em; color: var(--tendui-muted); }
.prose h1 { margin-block-start: 1rem; max-inline-size: 23ch; font-size: clamp(1.8rem, 3vw, 2.6rem); }
.doc-lead { font-size: 1.15rem; color: var(--tendui-muted); }
.doc-callout {
  padding: 1.25rem 1.5rem;
  margin-block: 2rem;
  background: var(--tendui-subtle);
  border-inline-start: 3px solid var(--tendui-primary);
  border-radius: 0 var(--tendui-radius) var(--tendui-radius) 0;
}
.doc-callout p:last-child { margin-block-end: 0; }
.prose pre { border: 1px solid var(--tendui-border); }
.table-scroll { overflow-x: auto; margin-block: 1.5rem; }
.doc-next { display: flex; flex-wrap: wrap; gap: 1rem 2rem; border-block-start: 1px solid var(--tendui-border); margin-block-start: 3rem; padding-block-start: 1.5rem; }
.example-directory { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--tendui-grid-gap); }
.example-directory article h2 { margin-block-start: 0; }
@media (max-width: 850px) {
  .app-shell { grid-template-columns: minmax(0, 1fr); }
  .app-sidebar { border-inline-end: 0; border-block-end: 1px solid var(--tendui-border); }
  .app-sidebar nav ul { display: flex; flex-wrap: wrap; gap: .25rem; }
  .app-sidebar nav a { padding: .5rem .65rem; }
  .app-sidebar footer { display: none; }
}
@media (max-width: 600px) { .example-directory { grid-template-columns: minmax(0, 1fr); } }
/* The compact header menu lists the guides, so the sidebar steps aside. */
@media (max-width: 48rem) { .app-sidebar { display: none; } }
@media print { .app-shell { display: block; } .app-sidebar, .doc-next { display: none; } .app-main { padding: 0; } .prose pre { white-space: pre-wrap; overflow-wrap: anywhere; } }

.docs-mascot { display: block; margin-block: 1.5rem .5rem; }
.example-section { margin-block-start: 2.5rem; }
.prose .example-section > h2 { font-size: 1.25rem; font-weight: 600; color: var(--tendui-muted); margin-block: 0 1rem; }
.example-directory article { display: flex; flex-direction: column; margin: 0; }
.prose .example-directory h3 { font-size: 1.2rem; font-weight: 600; line-height: 1.35; margin: 0 0 .75rem; }
.example-directory p { color: var(--tendui-muted); }
.example-directory .example-link { margin-block-start: auto; font-size: .9rem; text-decoration: none; }
.example-directory .example-link:hover { text-decoration: underline; }
