/* blog-axios.css
 * Additional styles for technical blog posts.
 * Only things NOT in base/vendor/main/h-style.
 * -------------------------------------------- */

/* -- Code blocks -- */
pre.code-block {
    background: #0d1117;
    border: 1px solid #21262d;
    border-radius: 6px;
    padding: 20px 24px;
    overflow-x: auto;
    margin: 20px 0 28px;
    font-family: 'JetBrains Mono', 'Consolas', monospace;
    font-size: 1.3rem;
    line-height: 1.8;
    color: #e6edf3;
}
pre.code-block code { font-family: inherit; background: none; border: none; padding: 0; color: inherit; }
code.inline { font-family: 'JetBrains Mono', 'Consolas', monospace; font-size: 1.4rem; background: #161b22; color: #7ee787; padding: 2px 7px; border-radius: 4px; border: 1px solid #21262d; }

/* syntax highlight colors */
.cm  { color: #484f58; }
.str { color: #7ee787; }
.kw  { color: #d2a8ff; }
.dng { color: #ff7b72; }

/* -- IOC table -- */
.ioc-table { width: 100%; border-collapse: collapse; margin: 20px 0 30px; }
.ioc-table th { font-family: 'JetBrains Mono', monospace; font-size: 1.1rem; letter-spacing: 1px; text-transform: uppercase; color: #8b949e; text-align: left; padding: 10px 14px; border-bottom: 2px solid #21262d; background: #0d1117; }
.ioc-table td { padding: 10px 14px; border-bottom: 1px solid #21262d; font-family: 'JetBrains Mono', monospace; font-size: 1.2rem; color: #c9d1d9; word-break: break-all; }
.ioc-table td:first-child { color: #fff; font-family: 'Nunito Sans', sans-serif; font-size: 1.4rem; font-weight: 600; white-space: nowrap; min-width: 160px; }

/* -- SVG diagram wrapper -- */
.diagram-card { background: #0d1117; border: 1px solid #21262d; border-radius: 8px; padding: 24px 16px; margin: 30px 0; overflow-x: auto; }
.diagram-card .diagram-label { font-family: 'JetBrains Mono', monospace; font-size: 1.1rem; letter-spacing: .5px; color: #8b949e; margin-bottom: 14px; text-transform: uppercase; }
.diagram-card svg { width: 100%; height: auto; display: block; }

/* -- Numbered remediation list -- */
.remediation-list { counter-reset: step; list-style: none; padding: 0; margin: 16px 0 28px; }
.remediation-list li { display: block; position: relative; padding: 12px 0 12px 40px; color: #fff; font-size: 1.7rem; line-height: 1.7; border-bottom: 1px solid #161b22; }
.remediation-list li::before { counter-increment: step; content: counter(step); position: absolute; left: 0; top: 14px; width: 26px; height: 26px; background: #de0039; color: #fff; border-radius: 50%; text-align: center; line-height: 26px; font-size: 1.2rem; font-weight: 700; font-family: 'JetBrains Mono', monospace; }

/* -- Reference links -- */
.ref-list { list-style: none; padding: 0; margin: 16px 0 30px; }
.ref-list li { display: block; padding: 8px 0; border-bottom: 1px solid #21262d; }
.ref-list li:last-child { border-bottom: none; }
.ref-list a { color: #58a6ff; font-size: 1.5rem; text-decoration: none; }
.ref-list a:hover { color: #79c0ff; text-decoration: underline; }

/* -- Responsive -- */
@media only screen and (max-width:800px) {
    pre.code-block { font-size: 1.1rem; padding: 14px; }
    .ioc-table td:first-child { white-space: normal; min-width: 100px; }
}
