:root {
/* Slightly lighter background for body & header */
--bg-dark: #1a1a1a;
--text-color: #ffffff;
--text-muted: #bcbcbc;
--accent-green: #00ff99;
--border-color: #2a2a2a;
--font-family: "Inter", sans-serif;
--font-weight: 618
/* No line across header */
--header-line-height: 0;
/* Layout widths */
--wrapper-max-width: 1200px;
--sidebar-width: 300px;
}
/* Remove page scrolling in favor of local scrolls */
html, body {
width: 100%;
height: 100%;
overflow: hidden; /* no global page scroll */
margin: 0;
padding: 0;
background: var(--bg-dark);
font-family: var(--font-family);
color: var(--text-color);
display: flex;
flex-direction: column;
}
/* ========== HEADER (No line) ========== */
.header {
background: var(--bg-dark);
padding: 1rem 2rem;
}
.header::after {
content: none;
}
.header-content {
max-width: var(--wrapper-max-width);
margin: 0 auto;
display: flex;
align-items: center;
justify-content: space-between;
}
.brand-logo {
height: 34px;
width: auto;
filter: drop-shadow(0 0 5px rgba(0,255,153,0.7));
}
.top-links {
display: flex;
align-items: center;
gap: 1.2rem;
}
.top-links a {
text-decoration: none;
color: var(--text-muted);
font-weight: 500;
transition: color 0.2s;
}
.top-links a:hover {
color: var(--accent-green);
}
/*
The main-wrapper: occupies the rest of the screen.
We can store the content-wrapper inside it
so we don't scroll the entire page.
*/
.main-wrapper {
flex: 1;
width: 100%;
overflow: hidden; /* no outside scrolling */
display: flex;
}
/* ========== CONTENT WRAPPER (SIDEBAR + MAIN) ========== */
.content-wrapper {
flex: 1;
display: flex;
width: 100%;
max-width: var(--wrapper-max-width);
margin: 0 auto;
/* local scrolling if needed */
overflow: hidden;
padding: 0rem;
}
/* ========== SIDEBAR ========== */
.sidebar {
width: var(--sidebar-width);
flex-shrink: 0;
overflow-y: auto; /* allow vertical scroll */
max-height: 100%;
margin-right: 2rem;
/* Add padding-right so the scrollbar is away from text */
padding-right: 0.3rem;
}
/* Initially hide scrollbar, show on hover */
.sidebar::-webkit-scrollbar {
width: 0px; /* hidden by default */
background: transparent;
}
/* On hover, show a 2px green scrollbar */
.sidebar:hover::-webkit-scrollbar {
width: 3.5px;
}
.sidebar::-webkit-scrollbar-track {
background: transparent; /* no white track */
}
.sidebar::-webkit-scrollbar-thumb {
background-color: var(--accent-green);
border-radius: 3px;
border: none;
}
.sidebar-nav {
list-style: none;
}
.category-title {
margin: 1.25rem 1rem;
align-items: center;
font-size: 0.75rem;
text-transform: uppercase;
font-weight: 600;
color: #fff;
}
.sidebar-nav li {
margin-bottom: 0.1rem;
}
.sidebar-link {
display: block;
padding: 0.5rem 1rem;
border-radius: 6px;
text-decoration: none;
font-weight: 500;
font-size: 0.95rem;
color: #A3A3A3; /* text color */
background: transparent;
transition: background 0.2s, color 0.2s;
}
/* When the link is “active” (currently selected page)
we show green text by default, but no distinct background. */
.sidebar-link.active {
color: #00ff99;
background: transparent; /* or something subtle */
}
/* If it's NOT active and hovered, show your usual “hover” background
(like your second screenshot) */
.sidebar-link:not(.active):hover {
background: rgba(255,255,255,0.06);
/* text color might remain white, or become some highlight color? */
color: #ffffff;
}
/* If it IS active and hovered, show the special greenish background
(like your first screenshot).
For instance, a dark green background with bright green text. */
.sidebar-link.active:hover {
background: #1b3e2b; /* example dark green */
color: #00ff99; /* keep text green */
}
/*****************************************
*
* Custom Paragraph Styles (Dark Layout)
*
*****************************************/
/* Individual paragraph styling: size, line-height, color */
.custom-paragraph {
font-size: 1.125rem; /* ~18px, akin to GitBook's "text-lg" */
line-height: 1.75rem; /* ~28px line height */
color: #bcbcbc;
}
/* ========== MAIN CONTENT SCROLL ========== */
.main-content {
flex: 1;
overflow-y: auto;
max-height: 100%;
}
/* Also hide main scrollbar, show on hover if you like */
.main-content::-webkit-scrollbar {
width: 0px;
background: transparent;
}
.main-content:hover::-webkit-scrollbar {
width: 6px;
}
.main-content::-webkit-scrollbar-track {
background: transparent;
}
.main-content::-webkit-scrollbar-thumb {
background-color: var(--accent-green);
border-radius: 3px;
border: none;
}
.page-title {
font-size: 1.8rem;
font-weight: 700;
margin-bottom: 1rem;
}
/* ========== RESPONSIVE VIDEO ========== */
.video-container {
position: relative;
width: 100%;
padding-bottom: 56.25%;
margin-bottom: 2rem;
}
.video-container iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
border: 0;
}
/* ========== NEXT/PREV FOOTER ========== */
.nav-footer {
display: flex;
justify-content: space-between;
gap: 1rem;
margin-top: 2rem;
}
.nav-card {
position: relative;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
padding: 1rem 2rem;
border: 1px solid var(--border-color);
border-radius: 6px;
text-decoration: none;
color: var(--text-color);
flex: 1;
transition: background 0.2s, transform 0.2s;
min-height: 38px;
margin: 0;
}
.nav-card:hover {
background: rgba(255,255,255,0.06);
transform: translateY(-2px);
}
/* only text turns green on hover, arrow remains grey */
.nav-card:hover .nav-label,
.nav-card:hover .nav-title {
color: var(--accent-green);
}
/* Arrows */
.nav-card.nav-prev::before {
content: "";
position: absolute;
left: 1rem;
top: 50%;
transform: translateY(-50%);
width: 16px;
height: 16px;
opacity: 0.7;
background: url('data:image/svg+xml;utf8,') no-repeat center;
}
.nav-card.nav-next::after {
content: "";
position: absolute;
right: 1rem;
top: 50%;
transform: translateY(-50%);
width: 16px;
height: 16px;
opacity: 0.7;
background: url('data:image/svg+xml;utf8,') no-repeat center;
}
.nav-label {
font-size: 0.8rem;
font-weight: 600;
color: var(--text-muted);
margin-bottom: 0.2rem;
}
.nav-title {
font-size: 1rem;
font-weight: 600;
}
/* ========== RESPONSIVE ========== */
@media (max-width: 900px) {
.header-content {
flex-direction: column;
align-items: flex-start;
gap: 0.5rem;
}
.top-links {
margin-left: auto;
}
.content-wrapper {
flex-direction: column;
padding: 1rem;
}
.sidebar {
width: 100%;
margin-right: 0;
margin-bottom: 1rem;
max-height: 50vh;
}
.main-content {
max-width: 100%;
}
.nav-footer {
flex-direction: column;
}
.nav-card {
width: 100%;
margin-bottom: 1rem;
}
}
/* --- Extras --- */
/* A small, uppercase green heading for category */
.green-category {
color: #00ff99; /* bright green */
font-size: 1.75rem; /* slightly smaller than normal text | normal 0.85rem */
/* text-transform: uppercase; */
font-weight: 600;
margin-bottom: 0.5rem; /* spacing below it */
}
/* The icon next to big heading (like “📎Restore Point”)
just a small margin-right to separate from text. */
.category-icon {
margin-right: 0.3rem;
}
/* For “Video Tutorial:” heading, you can style it differently
or just use your default .page-title style.
For demonstration, let's keep it smaller than the main page title. */
.video-heading {
font-size: 1.25rem; /* ~20px */
font-weight: 600;
margin-top: 1.5rem;
margin-bottom: 1rem;
color: #ffffff; /* or #bcbcbc, your choice */
}
.hrefcolor {
color: var(--accent-green);
}
.hrefcolor:hover {
color: #298A53
}
a {
text-decoration: none; /* Removes the underline from all links */
}
a:hover {
text-decoration: none; /* Ensures underline doesn't appear on hover */
}