/* Custom CSS for WTF Transcript Converter Documentation */

/* Override theme colors */
:root {
    --pst-color-primary: #2980B9;
    --pst-color-secondary: #E74C3C;
    --pst-color-accent: #F39C12;
    --pst-color-info: #3498DB;
    --pst-color-success: #27AE60;
    --pst-color-warning: #F39C12;
    --pst-color-danger: #E74C3C;
}

/* Header styling */
.wy-side-nav-search {
    background-color: #2980B9;
}

.wy-side-nav-search input[type="text"] {
    border-color: #2980B9;
}

/* Code blocks */
.highlight {
    background-color: #f8f9fa;
    border: 1px solid #e9ecef;
    border-radius: 4px;
    padding: 1rem;
}

.highlight pre {
    background-color: transparent;
    border: none;
    padding: 0;
    margin: 0;
}

/* Tables */
.rst-content table {
    border-collapse: collapse;
    border-spacing: 0;
    border: 1px solid #ddd;
    margin: 1rem 0;
}

.rst-content table th {
    background-color: #f8f9fa;
    border: 1px solid #ddd;
    padding: 0.5rem;
    font-weight: bold;
}

.rst-content table td {
    border: 1px solid #ddd;
    padding: 0.5rem;
}

/* Admonitions */
.admonition {
    border-left: 4px solid #2980B9;
    background-color: #f8f9fa;
    padding: 1rem;
    margin: 1rem 0;
    border-radius: 4px;
}

.admonition-title {
    color: #2980B9;
    font-weight: bold;
    margin-bottom: 0.5rem;
}

.admonition.note {
    border-left-color: #3498DB;
}

.admonition.note .admonition-title {
    color: #3498DB;
}

.admonition.warning {
    border-left-color: #F39C12;
}

.admonition.warning .admonition-title {
    color: #F39C12;
}

.admonition.danger {
    border-left-color: #E74C3C;
}

.admonition.danger .admonition-title {
    color: #E74C3C;
}

/* Buttons */
.btn {
    display: inline-block;
    padding: 0.5rem 1rem;
    background-color: #2980B9;
    color: white;
    text-decoration: none;
    border-radius: 4px;
    border: none;
    cursor: pointer;
    font-size: 0.9rem;
    margin: 0.25rem;
}

.btn:hover {
    background-color: #1F5F8B;
    color: white;
    text-decoration: none;
}

.btn-secondary {
    background-color: #6c757d;
}

.btn-secondary:hover {
    background-color: #545b62;
}

.btn-success {
    background-color: #27AE60;
}

.btn-success:hover {
    background-color: #1E8449;
}

.btn-warning {
    background-color: #F39C12;
}

.btn-warning:hover {
    background-color: #D68910;
}

.btn-danger {
    background-color: #E74C3C;
}

.btn-danger:hover {
    background-color: #C0392B;
}

/* Code inline */
code {
    background-color: #f8f9fa;
    border: 1px solid #e9ecef;
    border-radius: 3px;
    padding: 0.2rem 0.4rem;
    font-size: 0.9em;
    color: #E74C3C;
}

/* Navigation */
.wy-nav-side {
    background-color: #2c3e50;
}

.wy-menu-vertical a {
    color: #ecf0f1;
}

.wy-menu-vertical a:hover {
    background-color: #34495e;
    color: #ecf0f1;
}

.wy-menu-vertical li.current > a {
    background-color: #2980B9;
    color: white;
}

/* Footer */
.rst-footer-buttons {
    margin-top: 2rem;
    padding-top: 2rem;
    border-top: 1px solid #e9ecef;
}

/* Responsive design */
@media (max-width: 768px) {
    .wy-nav-side {
        width: 100%;
        position: relative;
    }

    .wy-nav-content-wrap {
        margin-left: 0;
    }

    .wy-nav-content {
        margin: 0;
        padding: 1rem;
    }
}

/* Print styles */
@media print {
    .wy-nav-side,
    .wy-nav-content-wrap .wy-nav-content-wrap,
    .rst-footer-buttons {
        display: none;
    }

    .wy-nav-content {
        margin: 0;
        padding: 0;
    }

    .rst-content {
        max-width: none;
    }
}

/* Custom classes */
.feature-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 1rem;
    margin: 1rem 0;
}

.feature-card {
    border: 1px solid #e9ecef;
    border-radius: 8px;
    padding: 1rem;
    background-color: #f8f9fa;
}

.feature-card h3 {
    color: #2980B9;
    margin-top: 0;
}

.provider-comparison {
    overflow-x: auto;
}

.provider-comparison table {
    min-width: 800px;
}

.code-example {
    background-color: #f8f9fa;
    border: 1px solid #e9ecef;
    border-radius: 4px;
    padding: 1rem;
    margin: 1rem 0;
}

.code-example h4 {
    margin-top: 0;
    color: #2980B9;
}

/* Syntax highlighting overrides */
.highlight .k { color: #2980B9; } /* Keywords */
.highlight .s { color: #27AE60; } /* Strings */
.highlight .c { color: #7f8c8d; } /* Comments */
.highlight .n { color: #2c3e50; } /* Names */
.highlight .o { color: #E74C3C; } /* Operators */
.highlight .p { color: #2c3e50; } /* Punctuation */
.highlight .nb { color: #2980B9; } /* Built-in names */
.highlight .mi { color: #E74C3C; } /* Numbers */
.highlight .mf { color: #E74C3C; } /* Float numbers */
.highlight .mh { color: #E74C3C; } /* Hex numbers */
.highlight .mo { color: #E74C3C; } /* Octal numbers */
.highlight .sa { color: #27AE60; } /* String attributes */
.highlight .sb { color: #27AE60; } /* String backticks */
.highlight .sc { color: #27AE60; } /* String characters */
.highlight .dl { color: #27AE60; } /* String delimiters */
.highlight .sd { color: #7f8c8d; } /* String documentation */
.highlight .s2 { color: #27AE60; } /* String double quotes */
.highlight .se { color: #E74C3C; } /* String escape sequences */
.highlight .sh { color: #27AE60; } /* String heredoc */
.highlight .si { color: #27AE60; } /* String interpolation */
.highlight .sx { color: #27AE60; } /* String other */
.highlight .sr { color: #27AE60; } /* String regex */
.highlight .s1 { color: #27AE60; } /* String single quotes */
.highlight .ss { color: #27AE60; } /* String symbols */
.highlight .bp { color: #2980B9; } /* Built-in pseudo */
.highlight .fm { color: #2980B9; } /* Function/method */
.highlight .vc { color: #2980B9; } /* Variable class */
.highlight .vg { color: #2980B9; } /* Variable global */
.highlight .vi { color: #2980B9; } /* Variable instance */
.highlight .vm { color: #2980B9; } /* Variable magic */
.highlight .il { color: #E74C3C; } /* Integer long */
