/* Notion-inspired light palette: white canvas, pale blue surfaces, restrained blue accents. */
:root {
    --color-primary: #0075de;
    --color-primary-light: #005bab;
    --color-primary-lighter: #097fe8;
    --color-primary-bg: #f2f9ff;
    --color-primary-bg-hover: #e7f2fd;
    --color-bg: #ffffff;
    --color-surface: #ffffff;
    --color-border: #dce6ef;
    --color-border-light: #edf2f7;
    --color-text: #31302e;
    --color-text-secondary: #57677a;
    --color-text-muted: #718297;
    --color-text-placeholder: #9aa9b9;
    --color-user-bubble: #f0f6fc;
    --color-user-bubble-text: #31302e;
    --color-ai-bubble: #ffffff;
    --color-ai-bubble-text: #31302e;
    --workspace-sidebar: #f0f6fc;
    --workspace-hover: #e5eff9;
    --color-success: #2a9d99;
    --color-warning: #dd5b00;
    --color-error: #c94b45;
    --color-info: #0075de;
}
.sidebar,.home-conversation-sidebar { background: var(--workspace-sidebar); }
.top-bar,.main-content,.chat-container { background: var(--color-surface); }
.sidebar .platform-nav-item { color: var(--color-text-secondary); }
.sidebar .platform-nav-icon { color: var(--color-text-muted); }
.sidebar .platform-nav-item.active { background: #dfecf8; color: var(--color-text); }
.sidebar .platform-nav-item.active .platform-nav-icon { color: var(--color-primary); }
.conversation-item.active { background: #dfecf8; }
.platform-count,.attachment-type,.version-badge { background: #dfecf8; color: var(--color-text-secondary); }
.stage-progress,.disclaimer-bar,.chat-source-panel { background: #f8fbff; }
.topic-btn .topic-icon { color: var(--color-text-secondary); }
.topic-btn:hover { background: #f0f6fc; border-color: #c2d7ec; }
.input-row,.welcome-composer-slot .input-row { border-color: #d4e1ee; box-shadow: 0 2px 7px rgba(49,48,46,.035); }
.input-row:focus-within { border-color: #097fe8; box-shadow: 0 0 0 3px rgba(9,127,232,.09); }
.btn-send { background: var(--color-primary); color: #fff; }
.btn-send:hover:not(:disabled) { background: var(--color-primary-light); }
.intake-submit { background: var(--color-primary); }
.intake-submit:hover:not(:disabled) { background: var(--color-primary-light); }
.intake-submit:disabled { background: var(--color-border); color: var(--color-text-placeholder); opacity: 1; }
.btn-send:disabled { background: #dce6ef; color: #9aa9b9; }
.chat-source-item a,.auth-text-button,.regulation-open-action,.policy-row-action { color: var(--color-primary); }
.chat-source-item a:hover,.auth-text-button:hover { color: var(--color-primary-light); }
.scenario-chip.active,.case-topic-strip button.active,.policy-category-strip button.active {
    color: var(--color-primary-light); border-color: #c5dff5; background: var(--color-primary-bg);
}
.reader-tab.active,.case-reader-tabs button.active,.case-language-tabs button.active,.auth-tabs button[aria-selected="true"] {
    color: var(--color-primary); border-color: var(--color-primary);
}
.auth-primary,.policy-reader-actions .policy-evaluate,.policy-local-tabs button.active {
    background: var(--color-primary); border-color: var(--color-primary); color: #fff;
}
.auth-primary:disabled { background: var(--color-border); border-color: var(--color-border); color: var(--color-text-placeholder); }
.knowledge-searchbar input:focus,.case-searchbar input:focus,.policy-searchbar input:focus,.market-input:focus,.auth-field input:focus {
    border-color: #097fe8; box-shadow: 0 0 0 3px rgba(9,127,232,.09);
}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible {
    outline-color: #097fe8;
}

/* Light blue card surfaces stay distinct from the white document canvas. */
.topic-btn,.knowledge-card,.service-product,.project-item,.matching-standard,.price-method {
    background: #f8fbff;
    border-color: var(--color-border);
}
.topic-btn:hover { background: #edf5fd; }
.scenario-chip,.case-topic-strip button,.policy-category-strip button,.policy-year-control,.market-input,.segmented-control,.policy-filterbar select,.policy-filterbar button {
    border-color: var(--color-border);
}
.case-topic,.guide-category,.source-type.regulation,.source-type.guide,.case-translation-progress {
    background: #edf5fd; border-color: #d4e1ee; color: var(--color-text-secondary);
}
.chat-source-item,.chat-source-item.guide,.case-segment,.policy-reader-lead,.policy-local-reader {
    border-color: #d4e1ee;
}
.regulation-open:hover,.guide-open:hover,.case-open:hover,.policy-open:hover,.secondary-command:hover { background: #f0f6fc; }
