:root{
  --aa12-bg:#fffaf2;
  --aa12-surface:#ffffff;
  --aa12-border: rgba(17,24,39,.10);
  --aa12-accent:#7c3aed;
  --aa12-ink:#121826;
  --aa12-muted: rgba(18,24,38,.72);
}
html,body{background:var(--aa12-bg);color:var(--aa12-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;}

.aa12-shell{display:grid;grid-template-columns:320px 1fr;min-height:100vh;}
.aa12-left{background:rgba(255,255,255,.72);backdrop-filter:saturate(170%) blur(10px);border-right:1px solid var(--aa12-border);}
.aa12-left-inner{position:sticky;top:0;padding:1rem;min-height:100vh;display:flex;flex-direction:column;gap:.75rem;}
#logo a{font-weight:900;letter-spacing:.2px;text-decoration:none;color:inherit;}
.aa12-tag{color:var(--aa12-muted);}
.aa12-hr{border-top:1px solid var(--aa12-border);opacity:1;margin:.25rem 0;}
.aa12-nav .nav-link{border-radius:12px;padding:.5rem .6rem;color:inherit;}
.aa12-nav .nav-link:hover{background:rgba(124,58,237,.10);}
.aa12-nav .nav-link.active{background:rgba(124,58,237,.16);font-weight:700;}
.aa12-tools{margin-top:auto;display:grid;gap:.35rem;}
.aa12-msg{font-size:.9rem;color:var(--aa12-muted);min-height:1.2em;}

.aa12-top{position:sticky;top:0;z-index:20;background:rgba(255,250,242,.86);backdrop-filter:saturate(170%) blur(10px);border-bottom:1px solid var(--aa12-border);padding:1rem 0;}
.aa12-kicker{text-transform:uppercase;letter-spacing:.12em;font-weight:900;font-size:.75rem;color:var(--aa12-muted);}
.aa12-title{font-weight:900;margin:.25rem 0 .35rem;}
.aa12-desc{color:var(--aa12-muted);margin:0;}

.aa12-content{padding:1rem 0 2rem;}
.aa12-paper{background:var(--aa12-surface);border:1px solid var(--aa12-border);border-radius:18px;padding:1.15rem;}

#footer{border-top:1px solid var(--aa12-border);padding:1.25rem 0;background:rgba(255,255,255,.70);}
#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 var(--aa12-border);text-decoration:none;background:rgba(255,255,255,.78);}

@media (max-width: 980px){
  .aa12-shell{grid-template-columns:1fr;}
  .aa12-left-inner{min-height:auto;position:relative;}
  .aa12-left{border-right:none;border-bottom:1px solid var(--aa12-border);}
}
