/* ══════════════════════════════════════════════════════════════
   Prism.js Custom Theme — Java Curriculum für Emil
   Farbschema: VSCode Dark+ (angepasst)
   ══════════════════════════════════════════════════════════════ */

pre[class*="language-"],
code[class*="language-"] {
    color: #D4D4D4;
    background: #1E1E1E;
    font-family: 'JetBrains Mono', 'Fira Code', 'Cascadia Code', 'Consolas', monospace;
    font-size: 0.9em;
    line-height: 1.6;
    border-radius: 6px;
    padding: 1.2em 1.4em;
    overflow-x: auto;
    tab-size: 4;
}

pre[class*="language-"] {
    margin: 1.2em 0;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.35);
    border-left: 4px solid #569CD6;
}

:not(pre) > code[class*="language-"],
:not(pre) > code {
    background: #2D2D2D;
    color: #CE9178;
    padding: 0.15em 0.4em;
    border-radius: 3px;
    font-size: 0.88em;
}

/* Kommentare — Graugrün */
.token.comment,
.token.block-comment,
.token.prolog,
.token.doctype,
.token.cdata {
    color: #6A9955;
    font-style: italic;
}

/* Schlüsselwörter: public, static, void, class, new, if, for, return, final — Blau */
.token.keyword,
.token.control-flow {
    color: #569CD6;
    font-weight: 500;
}

/* Eingebaute Typen + Klassennamen: String, int, boolean, ArrayList — Türkis */
.token.builtin,
.token.class-name {
    color: #4EC9B0;
}

/* String-Literale: "Hallo", "meinmod" — Orange */
.token.string,
.token.char,
.token.attr-value {
    color: #CE9178;
}

/* Zahlen-Literale: 20, 3.14, 42L — Hellgrün */
.token.number {
    color: #B5CEA8;
}

/* Boolesche + Null-Literale — Blau */
.token.boolean,
.token.null {
    color: #569CD6;
}

/* Annotationen: @Override, @Mod, @SubscribeEvent — Lila */
.token.annotation,
.token.decorator {
    color: #C586C0;
}

/* Methodennamen: println(), register(), build() — Gelb */
.token.function {
    color: #DCDCAA;
}

/* Variablen und Parameter — Hellblau */
.token.variable,
.token.parameter {
    color: #9CDCFE;
}

/* Operatoren — helles Grau */
.token.operator {
    color: #D4D4D4;
}

/* Interpunktion: ( ) { } [ ] ; , . — Grau */
.token.punctuation {
    color: #808080;
}

/* JSON/TOML Schlüssel — Hellblau */
.token.attr-name,
.token.property {
    color: #9CDCFE;
}

/* Bash-Befehle — Gelb */
.token.command {
    color: #DCDCAA;
}

/* Klassenreferenzen in Java explizit — Türkis */
.language-java .token.class-name {
    color: #4EC9B0;
}

/* Zeilennummern (falls aktiviert) */
.line-numbers .line-numbers-rows {
    border-right: 1px solid #404040;
}

.line-numbers-rows > span:before {
    color: #858585;
}

/* Zeilen-Highlight */
.line-highlight {
    background: rgba(86, 156, 214, 0.1);
    border-left: 3px solid #569CD6;
}
