.diagrams-main { background: var(--bg); }
.diagrams-page { padding: clamp(44px, 7vw, 74px) 0 clamp(70px, 9vw, 108px); }
.diagrams-heading { margin-bottom: 14px; }
.diagrams-heading h1 { margin: 0 0 8px; color: var(--text); font-size: clamp(2.2rem, 5vw, 3.5rem); line-height: 1.05; letter-spacing: -0.035em; }
.diagrams-heading p { max-width: 72ch; margin: 0; color: var(--muted); font-size: 1.05rem; }
.diagram-directory { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(30px, 5vw, 58px); }
.diagram-directory section { min-width: 0; }
.diagram-directory h2 { margin: 0; padding-bottom: 12px; border-bottom: 2px solid var(--green-deep); color: var(--text); font-size: 1.2rem; }
.diagram-list { margin: 0; padding: 0; list-style: none; }
.diagram-list li { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 45px; padding: 9px 4px; border-bottom: 1px solid var(--line); color: #929aa3; }
.diagram-list li > span:first-child { opacity: .78; }
.diagram-name small { display: block; margin-top: 3px; font-size: .78rem; line-height: 1.35; }
.diagram-list .diagram-live { color: var(--text); }
.diagram-list a { color: var(--green-deep); font-weight: 750; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.diagram-list a:hover { color: var(--brand-green); }
.diagram-status { flex: none; color: #a1a8b0; font-size: .69rem; font-weight: 750; text-transform: uppercase; letter-spacing: .045em; }
.diagram-live .diagram-status { padding: 3px 8px; border-radius: 999px; background: #e7f7ec; color: var(--green-deep); }
@media (min-width: 1680px) { .diagram-directory { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 28px; } }
@media (max-width: 700px) { .diagram-directory { grid-template-columns: 1fr; } }
@media (max-width: 480px) { .diagrams-page { width: min(100% - 32px, 1120px); } }
