/* =============================================
   Pygments Syntax Token Colors (monokai base)
   ============================================= */
.highlight .hll { background-color: #1e3a5f }
.highlight .c  { color: #5c7a9e; font-style: italic } /* Comment */
.highlight .err { color: #ff5f57 }                    /* Error */
.highlight .k  { color: #38BDF8 }                     /* Keyword → primary blue */
.highlight .l  { color: #c792ea }                     /* Literal */
.highlight .n  { color: #cdd9e5 }                     /* Name */
.highlight .o  { color: #89ddff }                     /* Operator */
.highlight .p  { color: #cdd9e5 }                     /* Punctuation */
.highlight .ch { color: #5c7a9e; font-style: italic }
.highlight .cm { color: #5c7a9e; font-style: italic }
.highlight .cp { color: #5c7a9e }
.highlight .c1 { color: #5c7a9e; font-style: italic }
.highlight .cs { color: #5c7a9e; font-style: italic }
.highlight .gd { color: #ff5f57 }
.highlight .ge { font-style: italic }
.highlight .gi { color: #3fb950 }
.highlight .gp { color: #38BDF8; font-weight: bold }  /* Prompt → primary */
.highlight .gs { font-weight: bold }
.highlight .kc { color: #38BDF8 }
.highlight .kd { color: #38BDF8 }
.highlight .kn { color: #22D3EE }                     /* Import → cyan accent */
.highlight .kp { color: #38BDF8 }
.highlight .kr { color: #38BDF8 }
.highlight .kt { color: #22D3EE }
.highlight .m  { color: #c792ea }
.highlight .s  { color: #3fb950 }                     /* String → green */
.highlight .na { color: #3fb950 }
.highlight .nb { color: #cdd9e5 }
.highlight .nc { color: #22D3EE }                     /* Class → cyan */
.highlight .no { color: #38BDF8 }
.highlight .nd { color: #22D3EE }
.highlight .ne { color: #ff5f57 }
.highlight .nf { color: #58D9F9 }                     /* Function → light blue */
.highlight .nn { color: #cdd9e5 }
.highlight .nx { color: #58D9F9 }
.highlight .nt { color: #38BDF8 }                     /* Tag → primary */
.highlight .nv { color: #cdd9e5 }
.highlight .ow { color: #89ddff }
.highlight .w  { color: #cdd9e5 }
.highlight .mb { color: #c792ea }
.highlight .mf { color: #c792ea }
.highlight .mh { color: #c792ea }
.highlight .mi { color: #c792ea }
.highlight .mo { color: #c792ea }
.highlight .s2 { color: #3fb950 }
.highlight .se { color: #22D3EE }
.highlight .sh { color: #3fb950 }
.highlight .si { color: #3fb950 }
.highlight .s1 { color: #3fb950 }
.highlight .ss { color: #3fb950 }
.highlight .bp { color: #cdd9e5 }
.highlight .fm { color: #58D9F9 }
.highlight .vc { color: #cdd9e5 }
.highlight .vg { color: #cdd9e5 }
.highlight .vi { color: #cdd9e5 }
.highlight .il { color: #c792ea }

/* Bash/Shell specific */
.highlight .nb { color: #38BDF8 }  /* builtin */

/* =============================================
   Security Desk 코드 블럭 래퍼 디자인
   ============================================= */

/* 블럭 코드 (.highlight = superfences, .codehilite = codehilite 확장) */
.content .highlight,
.content .codehilite {
    position: relative;
    background: #080F1E;
    border: 1px solid rgba(56, 189, 248, 0.15);
    border-top: 2px solid #38BDF8;
    border-radius: 10px;
    margin: 28px 0;
    overflow: hidden;
    box-shadow:
        0 0 0 1px rgba(56, 189, 248, 0.05),
        0 8px 32px rgba(0, 0, 0, 0.4),
        inset 0 1px 0 rgba(56, 189, 248, 0.08);
}

/* 터미널 헤더 바 */
.content .highlight::before,
.content .codehilite::before {
    content: '';
    display: block;
    height: 38px;
    background: #06090F;
    border-bottom: 1px solid rgba(56, 189, 248, 0.1);
    background-image:
        radial-gradient(circle at 18px 50%, #ff5f57 0, #ff5f57 5px, transparent 5px),
        radial-gradient(circle at 34px 50%, #febc2e 0, #febc2e 5px, transparent 5px),
        radial-gradient(circle at 50px 50%, #28c840 0, #28c840 5px, transparent 5px);
}

/* pre 태그 — highlight 내부에선 기존 스타일 무력화 */
.content .highlight pre,
.content .codehilite pre {
    background: transparent;
    border: none;
    border-radius: 0;
    margin: 0;
    overflow: visible;
}

.content .highlight pre::before,
.content .codehilite pre::before {
    display: none;
}

/* code 태그 — 실제 코드 영역 */
.content .highlight pre code,
.content .codehilite pre code {
    display: block;
    padding: 20px 24px;
    overflow-x: auto;
    background: transparent;
    color: #cdd9e5;
    font-family: 'JetBrains Mono', 'Fira Code', 'Consolas', monospace;
    font-size: 0.875rem;
    line-height: 1.7;
    border-radius: 0;
    -webkit-font-smoothing: antialiased;
}

/* 복사 버튼 */
.code-copy-btn {
    position: absolute;
    top: 6px;
    right: 10px;
    background: transparent;
    border: 1px solid rgba(56, 189, 248, 0.25);
    border-radius: 6px;
    color: rgba(56, 189, 248, 0.6);
    font-family: 'Pretendard', sans-serif;
    font-size: 0.7rem;
    font-weight: 500;
    padding: 3px 10px;
    cursor: pointer;
    transition: all 0.2s;
    z-index: 2;
    letter-spacing: 0.03em;
}

.code-copy-btn:hover {
    background: rgba(56, 189, 248, 0.1);
    border-color: #38BDF8;
    color: #38BDF8;
}

.code-copy-btn.copied {
    border-color: #3fb950;
    color: #3fb950;
}

/* 인라인 코드 — detail.css의 기존 스타일 보완 */
.content code {
    background: rgba(56, 189, 248, 0.08);
    border: 1px solid rgba(56, 189, 248, 0.15);
    padding: 2px 7px;
    border-radius: 4px;
    font-family: 'JetBrains Mono', monospace;
    font-size: 0.875em;
    color: #38BDF8;
}

/* 인라인 코드는 highlight 내부에서 오버라이드 방지 */
.content .highlight code,
.content .codehilite code {
    background: transparent;
    border: none;
    padding: 0;
    color: inherit;
    font-size: inherit;
}
