/* Panel structure is separate from the visual design system. */
.tabs-ready body{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}
.tabs-ready #main{flex:1;min-width:0}
.site-panel[hidden]{display:none!important}
.site-panel{outline:none}
.site-tabs [role="tab"]{position:relative;white-space:nowrap}
.site-tabs [role="tab"][aria-selected="true"]{color:var(--text);box-shadow:inset 0 -2px var(--jade)}
.tabs-ready .site-footer{margin-top:auto}
.project-quick-link{align-self:flex-start;margin-top:14px;color:var(--jade);font-size:.78rem;text-decoration:none}
.project-quick-link:hover{text-decoration:underline}
.project-art-action{position:absolute;inset:0;z-index:5;width:100%;height:100%;padding:0;border:0;border-radius:inherit;background:transparent;cursor:pointer}
.project-art-action:focus-visible{outline:3px solid var(--acid);outline-offset:-6px}
/* Content begins just below the compact navigation. */
.site-panel .section{padding-block:28px 56px}
.content-heading{font-size:1.125rem;line-height:1.4;letter-spacing:-.02em;margin:0 0 18px}
.project-toolbar{gap:16px;margin-bottom:20px;padding-bottom:14px}
.filter-group button{min-height:44px}
.demo-tabs{margin-bottom:18px}
/* Page-level copy refinements keep controls readable without decorative labels. */
.demo-tabs button{display:flex;min-height:48px;align-items:center}
.demo-tabs button>span:first-child,.demo-tabs button>span:last-child{margin-left:0;padding-right:0;font-size:15px;line-height:1.45}
.about-copy>h3{font-size:1.35rem;line-height:1.3;letter-spacing:-.02em;margin:27px 0 12px}
.about-copy>p a{color:var(--text);text-underline-offset:3px}
.about-copy>p a:hover{color:var(--jade)}
.site-footer>span{margin-left:0}
.road-fallback{grid-column:1/-1;padding:20px}
.road-fallback img{width:100%;height:auto}
.road-fallback p{max-width:60ch;margin-top:16px}
@media(max-width:640px){.site-panel .section{padding-block:18px 36px}.project-toolbar{margin-bottom:18px;padding-bottom:12px}.filter-group{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.filter-group button{font-size:12px;padding-inline:8px;line-height:1.35}.project-count{margin:8px 0 0;font-size:11px}.demo-tabs{margin-bottom:16px}.demo-tabs button{padding:10px 8px 11px 0}.demo-tabs button>span:first-child,.demo-tabs button>span:last-child{font-size:12px}.about-portrait{max-width:230px}}
