/* Documentation-specific styles */

/* Sidebar menu styling */
.docs-menu {
    position: sticky;
    top: 1rem;
}

.docs-menu .menu-label {
    color: #363636;
    font-weight: 600;
}

.docs-menu .menu-list a {
    display: flex;
    align-items: center;
    padding: 0.75em 1em;
    border-radius: 4px;
    color: #4a4a4a;
    transition: all 0.2s ease;
}

.docs-menu .menu-list a .icon {
    margin-right: 0.5rem;
    width: 1.25rem;
    color: #7a7a7a;
}

.docs-menu .menu-list a:hover {
    background-color: #f5f5f5;
    color: #00a65a;
}

.docs-menu .menu-list a:hover .icon {
    color: #00a65a;
}

.docs-menu .menu-list a.is-active {
    background-color: #00a65a;
    color: white;
}

.docs-menu .menu-list a.is-active .icon {
    color: white;
}

/* Documentation content styling */
.docs-content {
    line-height: 1.7;
}

.docs-content h1 {
    font-size: 2rem;
    margin-bottom: 1.5rem;
    padding-bottom: 0.5rem;
    border-bottom: 2px solid #00a65a;
}

.docs-content h2 {
    font-size: 1.5rem;
    margin-top: 2rem;
    margin-bottom: 1rem;
    color: #363636;
}

.docs-content h3 {
    font-size: 1.25rem;
    margin-top: 1.5rem;
    margin-bottom: 0.75rem;
    color: #4a4a4a;
}

.docs-content h4 {
    font-size: 1.1rem;
    margin-top: 1.25rem;
    margin-bottom: 0.5rem;
    font-weight: 600;
}

/* Code blocks */
.docs-content code {
    background-color: #f5f5f5;
    padding: 0.2em 0.4em;
    border-radius: 3px;
    font-size: 0.9em;
    color: #da1039;
}

.docs-content pre {
    background-color: #2d2d2d;
    padding: 1rem;
    border-radius: 6px;
    overflow-x: auto;
}

.docs-content pre code {
    background: none;
    color: #f8f8f2;
    padding: 0;
}

/* Lists */
.docs-content ul,
.docs-content ol {
    margin-left: 1.5rem;
    margin-bottom: 1rem;
}

.docs-content li {
    margin-bottom: 0.5rem;
}

.docs-content ul ul,
.docs-content ol ol {
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
}

/* Bold text in lists (for key terms) */
.docs-content li strong {
    color: #363636;
}

/* Links */
.docs-content a {
    color: #00a65a;
    text-decoration: none;
    border-bottom: 1px solid transparent;
    transition: border-color 0.2s ease;
}

.docs-content a:hover {
    border-bottom-color: #00a65a;
}

/* Tables (from GFM) */
.docs-content table {
    width: 100%;
    margin-bottom: 1rem;
    border-collapse: collapse;
}

.docs-content th,
.docs-content td {
    padding: 0.75rem;
    border: 1px solid #dbdbdb;
    text-align: left;
}

.docs-content th {
    background-color: #f5f5f5;
    font-weight: 600;
}

.docs-content tr:hover {
    background-color: #fafafa;
}

/* Blockquotes */
.docs-content blockquote {
    border-left: 4px solid #00a65a;
    padding-left: 1rem;
    margin-left: 0;
    color: #4a4a4a;
    font-style: italic;
}

/* Horizontal rules */
.docs-content hr {
    margin: 2rem 0;
    border: none;
    border-top: 1px solid #dbdbdb;
}

/* Images */
.docs-content img {
    max-width: 100%;
    height: auto;
    border-radius: 4px;
    margin: 1rem 0;
}

/* Responsive adjustments */
@media screen and (max-width: 768px) {
    .docs-menu {
        position: static;
        margin-bottom: 1.5rem;
    }

    .docs-content h1 {
        font-size: 1.75rem;
    }

    .docs-content h2 {
        font-size: 1.35rem;
    }
}

/* Print styles */
@media print {
    .docs-menu {
        display: none;
    }

    .docs-content {
        font-size: 12pt;
    }
}
