:root{
  --b31-bg:#f7f8fb;
  --b31-ink:#111827;
  --b31-muted:#6b7280;
  --b31-rail:#ffffff;
  --b31-accent:#3b82f6;
}

body{background:var(--b31-bg);color:var(--b31-ink)}

.b31-split{display:grid;grid-template-columns: 240px minmax(0,1fr) 320px;min-height:100vh}
.b31-rail{background:var(--b31-rail);border-right:1px solid rgba(17,24,39,.10)}
.b31-rail-right{border-left:1px solid rgba(17,24,39,.10);border-right:none}
.b31-rail-inner{position:sticky;top:0;max-height:100vh;overflow:auto;padding:16px}

#logo img{width:48px;height:48px;object-fit:contain;border-radius:14px;background:#fff;border:1px solid rgba(17,24,39,.10)}
.b31-site-title{font-weight:800;margin-top:12px}
.b31-tagline{color:var(--b31-muted);font-size:.9rem}

.b31-rail-tools{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}

.b31-main{padding:18px}
.b31-paper{background:#fff;border:1px solid rgba(17,24,39,.10);border-radius:16px;padding:16px;box-shadow:0 1px 0 rgba(0,0,0,.04)}

.b31-panel{background:rgba(59,130,246,.06);border:1px solid rgba(59,130,246,.14);border-radius:14px;padding:12px;margin-bottom:12px}
.b31-panel-title{font-weight:700;margin-bottom:8px}

.menu .menu-item a.active{font-weight:700;color:var(--b31-accent)}

@media (max-width: 1100px){
  .b31-split{grid-template-columns: 240px minmax(0,1fr)}
  .b31-rail-right{display:none}
}
@media (max-width: 720px){
  .b31-split{grid-template-columns: 1fr}
  .b31-rail{position:static;border-right:none}
}

#footer{padding:28px 0;border-top:1px solid rgba(17,24,39,.12)}
#footer .social{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px}
#footer .social a{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:12px;background:#fff;border:1px solid rgba(17,24,39,.10);text-decoration:none;color:inherit}
#footer p{margin:0;color:var(--b31-muted)}

.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
