/* 白底與中性文字固定，僅互動主色隨使用者偏好切換。 */
html {
    --gd-accent: #68518c;
    --gd-accent-dark: #513c70;
    --gd-accent-rgb: 104, 81, 140;
}
html[data-gandau-theme="blue"] {
    --gd-accent: #244b80;
    --gd-accent-dark: #19385f;
    --gd-accent-rgb: 36, 75, 128;
}
html[data-gandau-theme="terracotta"] {
    --gd-accent: #a04e36;
    --gd-accent-dark: #7e3925;
    --gd-accent-rgb: 160, 78, 54;
}
html body.gandau-app {
    --gd-teal: var(--gd-accent);
    --gd-teal-dark: var(--gd-accent-dark);
    --gd-primary: var(--gd-accent);
    --main-color: var(--gd-accent);
    --gd-ink: #292d32;
    --gd-muted: #626970;
    --gd-line: #e1e4e8;
    --gd-bg: #fff;
    --gd-surface: #fff;
    --gd-mint: #f5f6f7;
    --gd-blue: #f5f6f7;
    --gd-purple: #f5f6f7;
    --chat-primary: var(--gd-accent);
    --chat-primary-dark: var(--gd-accent-dark);
    --chat-primary-light: #f3f4f5;
    --chat-primary-soft: #f7f8f9;
    --chat-page-background: #fff;
    --chat-text: var(--gd-ink);
    --chat-muted: var(--gd-muted);
    background: #fff;
}
html body.gandau-app:not(.has-app-shell) { background: #fff; }
.gandau-app .header-card { background: var(--gd-accent); }
.gandau-app .home-weekly,
.gandau-app .home-pending,
.gandau-app .home-overview .app-announcements,
.gandau-app .gandau-font-preview,
.gandau-app .questionnaire-progress,
.gandau-app .overview-profile {
    background: #fff;
    box-shadow: inset 0 0 0 1px var(--gd-line);
    color: var(--gd-ink);
}
.gandau-app .gandau-font-preview small,
.gandau-app .gandau-font-preview p { color: var(--gd-muted); }
.gandau-app .gandau-side-link.active,
.gandau-app .mobile-bottom-tab.active .mobile-bottom-icon {
    background: rgba(var(--gd-accent-rgb), .08);
}
.gandau-app .custom-btn,
.gandau-app .custom-btn:hover,
.gandau-app .custom-btn:focus,
.gandau-app .custom-btn:active {
    background-color: var(--gd-accent);
    color: #fff;
}
.gandau-app .custom-btn:hover { background-color: var(--gd-accent-dark); }
.gandau-app .questionnaire-progress button,
.gandau-app .summary-questionnaire-link { color: var(--gd-accent); }
.gandau-app .questionnaire-progress button { border-color: var(--gd-line); }
.gandau-app .summary-questionnaire-link:hover::after { background: rgba(var(--gd-accent-rgb), .04); }
.gandau-app .form-choice-row:focus-within,
.gandau-app .friendly-number button:focus-visible,
.gandau-app .summary-history-link:focus-visible,
.gandau-app .summary-questionnaire-link:focus-visible::after,
.gandau-app .gandau-account-link:focus-visible,
.gandau-app .feedback-page .rating-scale .form-check-input:focus-visible + label {
    outline-color: var(--gd-accent);
}
.gandau-app .chat-messages { background: #fff; }
.gandau-app .user-bubble,
.gandau-app .send-button,
.gandau-app .chat-feedback-actions button[type="submit"] { background: var(--gd-accent); box-shadow: none; }
.gandau-app .send-button:hover,
.gandau-app .chat-feedback-actions button[type="submit"]:hover { background: var(--gd-accent-dark); }
.gandau-color-options { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 12px; }
.gandau-setting-status + .gandau-setting-label { margin-top: 20px; }
.gandau-color-options button {
    display: inline-flex; align-items: center; justify-content: center; gap: 8px;
    flex: 1 1 120px; min-height: 46px; padding: 10px 12px;
    border: 1px solid var(--gd-line); border-radius: 12px; background: #fff; color: var(--gd-ink);
}
.gandau-color-options button[aria-pressed="true"] {
    border-color: var(--gd-accent); box-shadow: inset 0 0 0 1px var(--gd-accent); color: var(--gd-accent-dark);
}
.gandau-color-options button[aria-pressed="true"]::after { content: "✓"; }
.gandau-color-options button:focus-visible { outline: 3px solid var(--gd-accent); outline-offset: 3px; }
.gandau-color-dot { width: 16px; height: 16px; flex-shrink: 0; border-radius: 50%; background: #68518c; }
[data-gandau-color="blue"] .gandau-color-dot { background: #244b80; }
[data-gandau-color="terracotta"] .gandau-color-dot { background: #a04e36; }
