:root {
    --bg-app: #0f1012;
    --bg-sidebar: #1b1d21;
    --border-color: #333;
    --accent: #0ea5e9; /* Light Blue */
    --input-bg: #25282e;
}

body {
    background-color: var(--bg-app);
    color: #e0e0e0;
    font-family: 'Inter', sans-serif;
    height: 100vh;
    overflow: hidden;
}

.bg-sidebar { background-color: var(--bg-sidebar); }
.bg-dark-soft { background-color: #151515; }

/* Custom Inputs */
.form-control-dark {
    background-color: var(--input-bg);
    border: 1px solid var(--border-color);
    color: #fff;
    font-size: 0.9rem;
}
.form-control-dark:focus {
    background-color: #2a2e35;
    border-color: var(--accent);
    box-shadow: none;
    color: #fff;
}

.form-check-input:checked {
    background-color: var(--accent);
    border-color: var(--accent);
}

/* Document Preview (Paper Style) */
.bg-app {
    background-color: #111;
}

.doc-paper {
    background-color: #ffffff;
    color: #333;
    border-radius: 4px;
    font-family: 'Times New Roman', Times, serif; /* Legal feel */
    line-height: 1.6;
    max-width: 900px;
    margin: 0 auto;
    width: 100%;
}

.doc-paper h1 { font-size: 24px; font-weight: bold; margin-bottom: 20px; border-bottom: 2px solid #eee; padding-bottom: 10px; }
.doc-paper h2 { font-size: 18px; font-weight: bold; margin-top: 20px; margin-bottom: 10px; color: #000; }
.doc-paper p { margin-bottom: 15px; font-size: 16px; }
.doc-paper ul { margin-bottom: 15px; padding-left: 20px; }
.doc-paper li { margin-bottom: 5px; }
.doc-paper a { color: #2563eb; text-decoration: underline; }

/* Custom Scrollbar for dark theme context */
::-webkit-scrollbar { width: 8px; }
::-webkit-scrollbar-track { background: #222; }
::-webkit-scrollbar-thumb { background: #444; border-radius: 4px; }