package Ġio . do co ps . asci ido ctor j . extension . panels Ċ Ċ import Ġorg . asci ido ctor . ast . Document Ċ import Ġorg . asci ido ctor . extension . Doc info Processor Ċ import Ġorg . asci ido ctor . extension . Location Ċ import Ġorg . asci ido ctor . extension . Location Type Ċ Ċ @ Location ( Location Type . HEADER ) Ċ class ĠT oc Bot Header Doc Info Processor : ĠDoc info Processor () Ġ{ ĊĠĠĠ Ġoverride Ġfun Ġprocess ( document : ĠDocument ): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġattributes Ġ= Ġdocument . attributes ĊĠĠĠĠĠĠĠ Ġval Ġtb Ġ= Ġattributes . get OrDefault (" toc bot ", Ġ" NO ") Ġas ĠString ĊĠĠĠĠĠĠĠ Ġif Ġ(! document . is Base backend (" html ") Ġ|| Ġ" NO ". equals ( tb , true )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġ"" ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ// Ġlanguage = Html ĊĠĠĠĠĠĠĠ Ġreturn Ġ""" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< style > ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ/* ĠT oc bot Ġdynamic ĠTO C , Ġworks Ġwith Ġtoc bot Ġ 3 . 0 . 2 Ġ*/ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ/* ĠSource : Ġhttps :// github . com / asci ido ctor / asci ido ctor / issues / 6 9 9 # issuecomment - 3 2 1 0 6 6 0 0 6 Ġ*/ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ# toc bot Ġa . toc - link . node - name -- H 1 { Ġfont - style : Ġitalic Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ media Ġscreen { ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ# toc bot Ġ> Ġul . toc - list { Ġmargin - bottom : Ġ 0 . 5 em ; Ġmargin - left : Ġ 0 . 1 2 5 em Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ# toc bot Ġul . sect level 0 , Ġ# toc bot Ġa . toc - link . node - name -- H 1 Ġ+ Ġul { ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpadding - left : Ġ 0 Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ# toc bot Ġa . toc - link { Ġheight : 1 0 0 % Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. is - collapsible { Ġmax - height : 3 0 0 0 px ; Ġoverflow : hidden ; Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. is - collapsed { Ġmax - height : 0 Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. is - active - link { Ġfont - weight : 7 0 0 ; Ġcolor : Ġ# 0 0 fa 0 0 Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ media Ġprint { ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ# toc bot Ġa . toc - link . node - name -- H 4 { Ġdisplay : none Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. toc { overflow - y : auto }. toc >. toc - list { overflow : hidden ; position : relative }. toc >. toc - list Ġli { list - style : none }. toc - list { margin : 0 ; padding - left : 1 0 px } a . toc - link { color : currentColor ; height : 1 0 0 % }. is - collapsible { max - height : 1 0 0 0 px ; overflow : hidden ; transition : all Ġ 3 0 0 ms Ġease - in - out }. is - collapsed { max - height : 0 }. is - position - fixed { position : fixed Ġ! important ; top : 0 }. is - active - link { font - weight : 7 0 0 }. toc - link :: before { background - color :# EEE ; content :' Ġ'; display : inline - block ; height : inherit ; left : 0 ; margin - top :- 1 2 px ; position : absolute ; width : 2 px }. is - active - link :: before { background - color :# 5 4 BC 4 B } ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ media Ġonly Ġscreen Ġand Ġ( min - width : Ġ 9 9 3 px ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. sticky Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġposition : Ġ- webkit - sticky ; ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġposition : Ġsticky ; ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtop : Ġ 0 ; ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġalign - self : Ġflex - start ; ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ media Ġonly Ġscreen Ġand Ġ( max - width : Ġ 9 9 2 px ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. is - collapsed Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmax - height : Ġnone ; ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. admin - bar Ġ. sticky Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtop : Ġ 3 2 px ; ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. sticky : before , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. sticky : after Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontent : Ġ''; ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdisplay : Ġtable ; ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġa . toc - link Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpadding : Ġ 1 px Ġ 0 ; ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdisplay : Ġblock ; ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġline - height : Ġ 1 . 0 ; ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġa . toc - link : hover Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcolor : Ġ# 5 4 bc 4 b ; ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. is - collapsible Ġa . toc - link Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpadding : Ġ 5 px Ġ 0 ; ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġa . toc - link Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġline - height : Ġ 1 . 4 ; ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ</ style > ĊĠĠĠĠĠĠĠ Ġ""" . trim Indent () ĊĠĠĠ Ġ} Ċ }