126 lines
		
	
	
	
		
			2.9 KiB
		
	
	
	
		
			SCSS
		
	
	
	
	
	
			
		
		
	
	
			126 lines
		
	
	
	
		
			2.9 KiB
		
	
	
	
		
			SCSS
		
	
	
	
	
	
| #button-container {
 | |
|     display: flex;
 | |
|     position: fixed;
 | |
|     right: 2rem;
 | |
|     bottom: 2rem;
 | |
|     flex-direction: column;
 | |
|     gap: 0.6rem;
 | |
|     z-index: 2; // Above "copy-code" buttons. Important for the ToC.
 | |
| 
 | |
|     #toc-button,
 | |
|     #comments-button,
 | |
|     #top-button {
 | |
|         display: flex;
 | |
|         justify-content: center;
 | |
|         align-items: center;
 | |
|         z-index: 2;
 | |
|         cursor: pointer;
 | |
|         border: none;
 | |
|         border-radius: 50%;
 | |
|         background-color: var(--bg-1);
 | |
|         padding: 0.4rem;
 | |
|         width: 1rem;
 | |
|         height: 1rem;
 | |
|         text-align: center;
 | |
| 
 | |
|         &:hover {
 | |
|             background-color: var(--bg-3);
 | |
| 
 | |
|             svg {
 | |
|                 fill: var(--primary-color);
 | |
|             }
 | |
| 
 | |
|             &::before {
 | |
|                 background-color: transparent;
 | |
|             }
 | |
|         }
 | |
| 
 | |
|         svg {
 | |
|             fill: var(--text-color);
 | |
|             width: 1rem;
 | |
|             height: 1rem;
 | |
|         }
 | |
|     }
 | |
| 
 | |
|     #toc-floating-container {
 | |
| 
 | |
|         $padding-vertical: 0.7rem;
 | |
|         $padding-horizontal: 1rem;
 | |
| 
 | |
|         #toc-button {
 | |
|             position: relative;
 | |
|             z-index: 2;
 | |
|         }
 | |
| 
 | |
|         .toc-container {
 | |
|             margin: 0;
 | |
|             margin-top: $padding-vertical;
 | |
|             max-width: 80vw;
 | |
|         }
 | |
| 
 | |
|         .toc-content {
 | |
|             display: none;
 | |
|             position: absolute;
 | |
|             right: 0;
 | |
|             bottom: 100%;
 | |
|             z-index: 2;
 | |
|             margin-block-end: $padding-vertical;
 | |
|             box-shadow: rgba(0, 0, 0, 0.15) 1.95px 1.95px 2.6px;
 | |
|             border: 1px solid var(--divider-color);
 | |
|             border-radius: 5px;
 | |
|             background-color: var(--background-color);
 | |
|             padding-inline-end: $padding-horizontal;
 | |
|             max-height: 70vh;
 | |
|             overflow-y: auto;
 | |
|             font-size: 0.8rem;
 | |
|             text-align: start;
 | |
|             white-space: nowrap; // Prevents wrapping, allowing content to define width.
 | |
| 
 | |
|             ul {
 | |
|                 padding-inline-start: $padding-horizontal;
 | |
|                 list-style: none;
 | |
|             }
 | |
|         }
 | |
| 
 | |
|         .toggle {
 | |
|             display: none;
 | |
| 
 | |
|             &:checked {
 | |
| 
 | |
|                 + .overlay,
 | |
|                 + .overlay + #toc-button + .toc-content {
 | |
|                     display: block;
 | |
|                 }
 | |
| 
 | |
|                 + .overlay + #toc-button svg {
 | |
|                     fill: var(--primary-color); // Show the ToC icon as toggled.
 | |
|                 }
 | |
|             }
 | |
|         }
 | |
| 
 | |
|         .overlay {
 | |
|             display: none;
 | |
|             position: fixed;
 | |
|             top: 0;
 | |
|             right: 0;
 | |
|             bottom: 0;
 | |
|             left: 0;
 | |
|             opacity: 40%;
 | |
|             z-index: 1; // Lower than the Table of Contents
 | |
|             background: var(--background-color);
 | |
|         }
 | |
| 
 | |
|     }
 | |
| }
 | |
| 
 | |
| @media (max-width: 700px) {
 | |
|     #button-container {
 | |
|         display: none !important;
 | |
|     }
 | |
| }
 | |
| 
 | |
| @media print {
 | |
|     #button-container {
 | |
|         display: none;
 | |
|     }
 | |
| }
 |