/* PsyHub clarity layer
   A quiet documentation-first interface inspired by the information density
   and hierarchy of the OptiCore documentation site. Loaded after legacy styles. */

:root{
  --sw:288px;
  --hh:52px;
  --content-max:1280px;
  --reading-max:74ch;
}

body.psyhub-app{
  background:var(--bg);
  letter-spacing:0;
}

body.psyhub-app::before{display:none}

/* Stable, low-noise navigation shell. */
.psyhub-app .sidebar{
  inset:0 auto 0 0;
  height:100vh;
  width:var(--sw);
  border:0;
  border-right:1px solid var(--border);
  border-radius:0;
  background:var(--bg2);
  box-shadow:none;
  backdrop-filter:none;
}

.psyhub-app .s-logo{
  height:64px;
  padding:0 1rem;
}

.psyhub-app .s-logo-mark{
  width:32px;
  height:32px;
  border-radius:8px;
  box-shadow:none;
}

.psyhub-app .s-logo-name{letter-spacing:-.025em}
.psyhub-app .s-logo-sub{letter-spacing:.12em}
.psyhub-app .s-search{padding:.64rem .72rem}
.psyhub-app .s-search input{
  min-height:32px;
  border:1px solid var(--border);
  background:var(--bg);
}
.psyhub-app .s-search input:focus{border-color:var(--gold)}
.psyhub-app .s-nav{padding:.18rem .4rem .65rem}
.psyhub-app .sidebar-topic{margin:.1rem 0 .18rem;border-radius:8px}
.psyhub-app .sidebar-topic-header{padding:.28rem .55rem .12rem}
.psyhub-app .nav-group-hdr{min-height:22px;padding:.12rem .55rem;border-radius:6px}
.psyhub-app .nav-item{padding:.1rem .5rem .1rem .85rem;border-radius:5px}
.psyhub-app .s-footer{background:var(--bg2);border-top:1px solid var(--border)}
.psyhub-app .interface-settings{width:100%}
.psyhub-app .interface-settings summary{padding:.28rem 0}
.psyhub-app .interface-setting-group{padding:.45rem 0;border-top:1px solid var(--border)}
.psyhub-app .interface-setting-title{display:block;margin-bottom:.35rem;color:var(--t3)}
.psyhub-app .interface-settings .theme-btns,
.psyhub-app .interface-settings .font-size-controls{justify-content:flex-start}

.psyhub-app .main{margin-left:var(--sw)}
.psyhub-app .prog-bar{left:var(--sw)}
.psyhub-app .topbar{
  top:0;
  min-height:var(--hh);
  height:var(--hh);
  margin:0;
  padding:.35rem clamp(.8rem,2vw,1.5rem);
  border:0;
  border-bottom:1px solid var(--border);
  border-radius:0;
  background:color-mix(in srgb,var(--bg) 94%,transparent);
  box-shadow:none;
}
.psyhub-app .breadcrumb{min-width:0}
.psyhub-app .next-step-btn{
  flex-direction:row;
  align-items:center;
  gap:.32rem;
  padding:.28rem .48rem;
  border-radius:6px;
}
.psyhub-app .next-step-label{display:none}
.psyhub-app .next-step-title{max-width:240px}
.psyhub-app .content{padding:2rem clamp(1rem,4vw,4rem) 5rem}
.psyhub-app .content:has(.rendered:not(.home-view)){padding-top:.55rem}
.psyhub-app .rendered{width:min(100%,var(--content-max))}

/* Home page: concise introduction followed by predictable content sections. */
.psyhub-app .home-hero{
  min-height:0;
  margin:0 0 2.5rem;
  padding:clamp(1.5rem,4vw,3.25rem) 0 2.25rem;
  overflow:visible;
  border:0;
  border-bottom:1px solid var(--border);
  border-radius:0;
  background:none;
  box-shadow:none;
}
.psyhub-app .home-hero::before,
.psyhub-app .home-hero::after{display:none}
.psyhub-app .home-hero h1{
  max-width:760px;
  margin-bottom:.9rem;
  letter-spacing:-.055em;
}
.psyhub-app .home-hero>p{
  max-width:680px;
  margin-bottom:1.25rem;
}
.psyhub-app .home-hero-actions{margin-bottom:0}
.psyhub-app .home-cta{
  min-height:32px;
  padding:.58rem .85rem;
  border-radius:8px;
  box-shadow:none;
}
.psyhub-app .home-cta:hover{transform:none;box-shadow:none;border-color:var(--gold)}
.psyhub-app .home-cta-secondary{background:transparent}
.psyhub-app .home-block{margin-bottom:2.00rem}
.psyhub-app .home-block-head{margin-bottom:1rem}
.psyhub-app .home-block-head h2,
.psyhub-app .domains-h2{letter-spacing:-.03em}
.psyhub-app .section-kicker{margin-bottom:.3rem}
.psyhub-app .start-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.60rem}
.psyhub-app .modern-card,
.psyhub-app .recent-link,
.psyhub-app .site-toc-group{
  border:1px solid var(--border);
  border-radius:10px;
  background:var(--bg2);
  box-shadow:none;
}
.psyhub-app .start-card{min-height:72px;padding:.65rem .75rem}
.psyhub-app .start-card:hover,
.psyhub-app .recent-link:hover{border-color:var(--bord2);background:var(--bg3)}
.psyhub-app .site-toc{gap:.64rem}
.psyhub-app .site-toc-group summary{padding:.62rem .8rem}
.psyhub-app .site-toc-sections{padding:.24rem .64rem .7rem}

/* Reading surface: a single document plane, restrained metadata and TOC. */
.psyhub-app .rendered:not(.home-view)>.page-hero,
.psyhub-app .wiki-hdr{
  width:100%;
  margin:0 0 .75rem;
  padding:.78rem clamp(1rem,2.5vw,1.65rem);
  overflow:visible;
  border:1px solid var(--border);
  border-radius:10px;
  background:var(--bg2);
  box-shadow:none;
}
.psyhub-app .rendered:not(.home-view)>.page-hero h1,
.psyhub-app .wiki-hdr h1{max-width:none;margin:0;font-family:var(--serif);font-weight:800}
.psyhub-app .chapter-lbl{
  padding:0;
  border:0;
  background:none;
  color:var(--t3);
  letter-spacing:.06em;
}
.psyhub-app .review-meta-badges{margin:.5rem 0 0;gap:.32rem}
.psyhub-app .review-meta-badge{
  padding:0;
  border:0;
  background:none;
  color:var(--t3);
}
.psyhub-app .review-meta-badge + .review-meta-badge::before{
  content:'·';
  margin-right:.32rem;
}
.psyhub-app .article-layout{
  grid-template-columns:minmax(0,820px) 240px;
  justify-content:center;
  align-items:start;
  gap:clamp(1.25rem,3vw,2.5rem);
}
.psyhub-app .article-toc{
  grid-column:2;
  grid-row:1;
  top:64px;
  padding:.4rem 0 .6rem 1rem;
  border:0;
  border-left:1px solid var(--border);
  border-radius:0;
  background:transparent;
}
.psyhub-app .article-toc-title{
  margin-bottom:.54rem;
  color:var(--t3);
  letter-spacing:.06em;
}
.psyhub-app .article-toc-link{
  padding:.3rem .45rem;
  border-radius:6px;
  color:var(--t3);
}
.psyhub-app .article-toc-link:hover,
.psyhub-app .article-toc-link.is-active{
  background:var(--surface-soft);
  color:var(--t1);
}
.psyhub-app .md{
  grid-column:1;
  grid-row:1;
  padding:0 0 3rem;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
.psyhub-app .md p,
.psyhub-app .md>ul,
.psyhub-app .md>ol,
.psyhub-app .md>blockquote{max-width:var(--reading-max)}
.psyhub-app .md p{margin-bottom:1rem;color:var(--t2)}
.psyhub-app .md li{margin:.28rem 0}
.psyhub-app .md>h2{
  max-width:var(--reading-max);
  margin-top:2.65rem;
}
.psyhub-app .md>h3{
  max-width:var(--reading-max);
  margin-top:2rem;
}
.psyhub-app .md a{text-underline-offset:.18em}
.psyhub-app .md blockquote{border-radius:0 8px 8px 0}
.psyhub-app .md img{border-radius:8px;box-shadow:none}
.psyhub-app .pnav-btn{border-radius:8px;box-shadow:none}

@media (max-width:1120px){
  .psyhub-app .article-layout{grid-template-columns:minmax(0,1fr)}
  .psyhub-app .article-toc{
    grid-column:1;
    grid-row:1;
    padding:.64rem;
    border:1px solid var(--border);
    border-radius:8px;
    background:var(--bg2);
  }
  .psyhub-app .md{grid-column:1;grid-row:2}
}

@media (max-width:900px){
  .psyhub-app .sidebar{inset:0 auto 0 0;border-radius:0}
  .psyhub-app .main{margin-left:0}
  .psyhub-app .prog-bar{left:0}
  .psyhub-app .topbar{
    top:0;
    height:42px;
    min-height:42px;
    margin:0;
    border-radius:0;
  }
  .psyhub-app .content{padding:1.00rem .84rem 4rem}
  .psyhub-app .btn-mobile-chapters,
  .psyhub-app .btn-mobile-extra-pages,
  .psyhub-app .topbar-next{display:none!important}
  .psyhub-app .breadcrumb{
    display:flex;
    min-width:0;
    overflow:hidden;
  }
  .psyhub-app .breadcrumb a:not(:last-child),
  .psyhub-app .breadcrumb .bsep{display:none}
  .psyhub-app .home-hero{padding:1.4rem 0 1.72rem}
  .psyhub-app .start-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .psyhub-app .rendered:not(.home-view)>.page-hero,
  .psyhub-app .wiki-hdr{padding:.55rem 0 .45rem}
  .psyhub-app .md{padding:0 0 2.5rem}
  .psyhub-app .mobile-chapters-panel,
  .psyhub-app .mobile-wiki-toc-panel{top:42px}
}

@media (max-width:560px){
  .psyhub-app .start-grid{grid-template-columns:1fr}
  .psyhub-app .start-card{min-height:68px}
}

@media (prefers-reduced-motion:reduce){
  .psyhub-app *,
  .psyhub-app *::before,
  .psyhub-app *::after{scroll-behavior:auto!important;transition-duration:.01ms!important}
}
