:root{
  --aa5-bg: #fbf4e6;
  --aa5-surface: rgba(255,255,255,.76);
  --aa5-border: rgba(32,24,10,.14);
  --aa5-ink: #1b140a;
  --aa5-accent: #0f766e;
}
html,body{background:var(--aa5-bg);color:var(--aa5-ink);}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}

.aa5-header{position:sticky;top:0;z-index:30;background:rgba(251,244,230,.84);backdrop-filter:saturate(160%) blur(10px);border-bottom:1px solid var(--aa5-border);}
.aa5-header-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 0;flex-wrap:wrap;}
.aa5-logo-link{display:flex;align-items:center;gap:.65rem;text-decoration:none;color:inherit;}
.aa5-logo img{height:34px;width:auto;display:block;}
.aa5-logo-text{font-weight:900;letter-spacing:.2px;}
.aa5-logo.is-fallback img{display:none;}
.aa5-logo:not(.is-fallback) .aa5-logo-text{display:none;}

.aa5-title{font-weight:900;font-size:1.05rem;}
.aa5-tag{opacity:.8;max-width:72ch;}

.aa5-panes{display:grid;grid-template-columns: 1fr 320px;gap:1rem;padding:1rem 0 2rem;}
.aa5-content{background:var(--aa5-surface);border:1px solid rgba(255,255,255,.5);border-radius:18px;padding:1.15rem;}
.aa5-aside-box{position:sticky;top:86px;background:rgba(255,255,255,.62);border:1px solid rgba(255,255,255,.75);border-radius:18px;padding:1rem;}
.aa5-aside-title{font-weight:900;margin-bottom:.5rem;}
.aa5-nav ul{list-style:none;margin:0 0 .5rem;padding:0;display:grid;gap:.25rem;}
.aa5-nav-link{text-decoration:none;color:inherit;display:block;padding:.35rem .45rem;border-radius:12px;}
.aa5-nav-link:hover{background:rgba(15,118,110,.10);}
.aa5-nav-link.is-active{background:rgba(15,118,110,.18);}

.aa5-toc{list-style:none;margin:0;padding:0;display:grid;gap:.25rem;}
.aa5-toc a{text-decoration:none;color:inherit;display:block;padding:.25rem .45rem;border-radius:12px;opacity:.85;}
.aa5-toc a.is-active{opacity:1;background:rgba(15,118,110,.14);}

@media (max-width: 1000px){
  .aa5-panes{grid-template-columns:1fr;}
  .aa5-aside{order:-1;}
}

#footer{padding:1.25rem 0;border-top:1px solid var(--aa5-border);background:rgba(255,255,255,.55);}
#footer .container{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;}
#footer .social{display:flex;gap:.5rem;}
#footer .social a{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:14px;border:1px solid rgba(32,24,10,.14);text-decoration:none;background:rgba(255,255,255,.6);}
