/*
  AtticusBeta v6.9.16
  Surface contrast correction.
  Styling only: no layout, geometry, positioning, visibility, or interaction changes.

  Rule:
  - dark technical surfaces -> cream / sage / orange foregrounds
  - light paper surfaces -> deep green-charcoal foregrounds
  - disabled controls stay readable while visibly disabled
*/

:root {
  --ab16-dark-bg: #252C28;
  --ab16-dark-bg-deep: #171E1A;
  --ab16-dark-bg-soft: #343B35;
  --ab16-dark-text: #F0E7D6;
  --ab16-dark-text-2: #D8CEBC;
  --ab16-dark-text-3: #B9B1A3;
  --ab16-paper: #EEE9E0;
  --ab16-paper-hi: #F5F0E8;
  --ab16-paper-text: #27312C;
  --ab16-paper-copy: #4F5B54;
  --ab16-paper-muted: #667168;
  --ab16-orange: #C77A4B;
  --ab16-orange-hi: #DA9568;
  --ab16-sage: #A5B5A5;
  --ab16-sage-hi: #C8D3C8;
  --ab16-dark-border: rgba(240,231,214,.18);
  --ab16-paper-border: rgba(39,49,44,.19);
}

/* ---------- Light canvas: always dark foreground ---------- */
.stage,
.page-header,
.page-header :is(h1,h2,h3,p,span,div),
.page-title,
.page-subtitle,
.dashboard-title,
.focus-title,
.settings-title {
  color: var(--ab16-paper-text) !important;
}

.page-subtitle,
.focus-subtitle,
.dashboard-subtitle {
  color: var(--ab16-paper-copy) !important;
}

.page-title .accent,
.dashboard-title .accent,
.focus-title .accent {
  color: var(--ab16-orange) !important;
}

/* Header action row sits on the light canvas, so use dark buttons with light labels. */
.messenger-header-actions .action,
.page-actions .action {
  background: linear-gradient(180deg, #424A44, #303732) !important;
  border-color: rgba(39,49,44,.34) !important;
  color: var(--ab16-dark-text) !important;
  text-shadow: none !important;
}

.messenger-header-actions .action:hover,
.page-actions .action:hover {
  background: linear-gradient(180deg, #515B53, #39413B) !important;
  border-color: rgba(199,122,75,.55) !important;
  color: #FFF4E4 !important;
}

.messenger-header-actions .action.action-new-conversation,
.page-actions .action.action-new-conversation {
  background: linear-gradient(180deg, rgba(199,122,75,.96), rgba(169,97,56,.98)) !important;
  border-color: #C77A4B !important;
  color: #18130F !important;
}

.messenger-header-actions .action.action-new-workspace,
.page-actions .action.action-new-workspace {
  background: linear-gradient(180deg, #718579, #52665A) !important;
  border-color: #899D90 !important;
  color: #F2F4EE !important;
}

/* Disabled controls remain readable instead of disappearing. */
.action:disabled,
button:disabled,
.action-new-conversation:disabled,
.action-new-workspace:disabled,
.thread-head .action:disabled,
.messenger-header-actions .action:disabled {
  opacity: .72 !important;
  filter: saturate(.62) !important;
  color: #E0D8CA !important;
  border-color: rgba(224,216,202,.28) !important;
}

.messenger-header-actions .action-new-conversation:disabled {
  background: linear-gradient(180deg, #765D4C, #5A493D) !important;
}

.messenger-header-actions .action-new-workspace:disabled {
  background: linear-gradient(180deg, #59665F, #424D47) !important;
}

/* ---------- Dark structural surfaces: always light foreground ---------- */
.rail,
.topbar,
.thread-list,
.thread-main,
.thread-head,
.thread-toolbar,
.thread-list-head,
.thread-list-heading,
.thread-compose,
.terminal,
.panel,
.settings-card,
.abdash-panel,
.personal-panel,
.personal-hero,
.system-card,
.library-card,
.file-folder,
.contacts-panel,
.auth-panel,
.modal-panel,
[data-view="tools"] .app-library-row,
[data-view="tools"] .app-filter-bar {
  color: var(--ab16-dark-text-2) !important;
}

.rail :is(strong,h1,h2,h3,h4,.title,.nav-button),
.topbar :is(strong,h1,h2,h3,h4),
.thread-list :is(strong,h1,h2,h3,h4),
.thread-main > .thread-head :is(strong,h1,h2,h3,h4),
.panel :is(.panel-title,.settings-card-title,.setting-title),
.settings-card :is(.settings-card-title,.setting-title),
.personal-panel :is(.panel-title,.personal-title),
.personal-hero :is(.panel-title,.personal-title),
.system-card :is(.system-card-title,.title),
.library-card :is(.library-title,.title),
.file-folder :is(.file-folder-title,.title),
.contacts-panel :is(.panel-title,.contact-title),
.auth-panel :is(.auth-title,.title),
.modal-panel :is(.modal-title,.title) {
  color: var(--ab16-dark-text) !important;
}

.rail :is(p,small,.copy,.label,.recent-title,.recent-time),
.topbar :is(p,small,.copy),
.panel :is(.panel-subtitle,.settings-copy,.setting-copy,.project-copy,.notification-copy,.library-copy,.system-card-copy),
.settings-card :is(.settings-copy,.setting-copy),
.personal-panel :is(.project-copy,.personal-copy),
.personal-hero :is(.project-copy,.personal-copy),
.system-card :is(.system-card-copy,.copy),
.library-card :is(.library-copy,.copy),
.contacts-panel :is(.contact-copy,.copy),
.auth-panel :is(.auth-copy,.auth-subtitle,.copy),
.modal-panel :is(.modal-copy,.copy) {
  color: var(--ab16-dark-text-3) !important;
}

/* ---------- Messenger thread list ---------- */
.thread-list-heading {
  background: linear-gradient(180deg, #171E1A, #101612) !important;
  border-color: rgba(199,122,75,.42) !important;
  color: var(--ab16-dark-text-2) !important;
}

.thread-list-heading strong {
  color: var(--ab16-orange-hi) !important;
}

.thread-list-heading span {
  color: #BDB4A4 !important;
}

.thread-card,
.thread-row,
.conversation-card {
  color: var(--ab16-dark-text-2) !important;
}

.thread-button {
  background: linear-gradient(180deg, #252C28, #1C231F) !important;
  color: var(--ab16-dark-text-2) !important;
  border-color: rgba(240,231,214,.10) !important;
}

.thread-button:hover {
  background: linear-gradient(180deg, #353D37, #252D28) !important;
  color: #FFF2DE !important;
}

.thread-button.is-active,
.thread-card.is-active .thread-button {
  background: linear-gradient(90deg, rgba(199,122,75,.18), #282D28 52%, #202722) !important;
  border-color: rgba(199,122,75,.54) !important;
  color: #FFF1DC !important;
}

.thread-button .thread-name,
.thread-card .thread-name,
.thread-row .thread-title,
.conversation-card .conversation-title {
  color: var(--ab16-dark-text) !important;
}

.thread-button .thread-preview,
.thread-card .thread-preview,
.thread-row .thread-preview,
.conversation-card .conversation-copy {
  color: #BFB6A8 !important;
}

.thread-button .thread-time,
.thread-card .thread-time {
  color: #AFA698 !important;
}

.thread-card .avatar,
.thread-button .avatar {
  color: #E09666 !important;
  border-color: rgba(199,122,75,.58) !important;
  background: rgba(199,122,75,.10) !important;
}

.thread-card-actions .action,
.thread-head-actions .action,
.thread-main .thread-action {
  background: #151B18 !important;
  border-color: rgba(240,231,214,.20) !important;
  color: #E8DECC !important;
}

.thread-card-actions .action:hover,
.thread-head-actions .action:hover,
.thread-main .thread-action:hover {
  background: #39413B !important;
  border-color: rgba(199,122,75,.52) !important;
  color: #FFF3E0 !important;
}

.thread-head .thread-title {
  color: var(--ab16-dark-text) !important;
}

.thread-head .thread-sub {
  color: #BCB4A6 !important;
}

/* ---------- Messenger reading surfaces: cream gets dark text ---------- */
.response-content,
.message:not(.user) {
  color: var(--ab16-paper-text) !important;
}

.response-content :is(p,li,span,div,strong,em,b,i,blockquote,td,th),
.message:not(.user) :is(p,li,span,div,strong,em,b,i,blockquote,td,th),
.message:not(.user) .message-text {
  color: var(--ab16-paper-text) !important;
}

.response-content :is(.muted,.subtle,small,.message-meta,.message-time,.message-author),
.message:not(.user) :is(.muted,.subtle,small,.message-meta,.message-time,.message-author) {
  color: var(--ab16-paper-muted) !important;
}

.response-content a,
.message:not(.user) a {
  color: #9A552F !important;
  text-decoration-color: rgba(154,85,47,.45) !important;
}

.response-content code,
.message:not(.user) code {
  background: rgba(39,49,44,.09) !important;
  color: #202A25 !important;
  border-color: rgba(39,49,44,.15) !important;
}

.response-content pre,
.message:not(.user) pre {
  background: #242C27 !important;
  color: #F0E7D6 !important;
  border-color: rgba(39,49,44,.26) !important;
}

.response-content pre code,
.message:not(.user) pre code {
  background: transparent !important;
  color: #F0E7D6 !important;
}

.message.user,
.message.user .message-text,
.message.user :is(p,li,span,div,strong,em,b,i,blockquote) {
  color: #F5EBDD !important;
}

.message.user :is(.message-meta,.message-time,.message-author,.message-name) {
  color: #E4A273 !important;
}

/* ---------- Composer ---------- */
.thread-compose textarea,
.terminal textarea,
.terminal input,
.focus-console textarea,
.focus-console input {
  color: #F0E7D6 !important;
  caret-color: var(--ab16-orange-hi) !important;
}

.thread-compose textarea::placeholder,
.terminal textarea::placeholder,
.terminal input::placeholder,
.focus-console textarea::placeholder,
.focus-console input::placeholder {
  color: #9E978A !important;
  opacity: 1 !important;
}

.composer-icon-button,
.thread-compose .prompt,
.terminal .prompt {
  color: #C6BBA9 !important;
}

.composer-icon-button:hover,
.thread-compose .prompt:last-child,
.terminal .prompt:last-child {
  color: var(--ab16-orange-hi) !important;
}

/* ---------- Generic dark rows / cards ---------- */
.personal-snapshot-card,
.personal-chart-card,
.personal-radar-row,
.personal-app-row,
.personal-workspace-breakdown-row,
.dashboard-overview-card,
.dashboard-continue-card,
.dashboard-notification-card,
.dashboard-library-card,
.settings-list-row,
.profile-setup-card,
.file-card,
.file-row,
.contact-card,
.contact-row,
.project-row,
.notification-row,
.usage-row,
.setting-row,
.settings-plan-option,
.walkthrough-card,
[data-view="tools"] .app-library-row {
  color: var(--ab16-dark-text-2) !important;
}

:is(.personal-snapshot-card,.personal-chart-card,.personal-radar-row,.personal-app-row,.personal-workspace-breakdown-row,.dashboard-overview-card,.dashboard-continue-card,.dashboard-notification-card,.dashboard-library-card,.settings-list-row,.profile-setup-card,.file-card,.file-row,.contact-card,.contact-row,.project-row,.notification-row,.usage-row,.setting-row,.settings-plan-option,.walkthrough-card,.app-library-row)
:is(h1,h2,h3,h4,strong,.title,.thread-title,.file-title,.contact-title,.project-title,.setting-title,.app-library-title) {
  color: var(--ab16-dark-text) !important;
}

:is(.personal-snapshot-card,.personal-chart-card,.personal-radar-row,.personal-app-row,.personal-workspace-breakdown-row,.dashboard-overview-card,.dashboard-continue-card,.dashboard-notification-card,.dashboard-library-card,.settings-list-row,.profile-setup-card,.file-card,.file-row,.contact-card,.contact-row,.project-row,.notification-row,.usage-row,.setting-row,.settings-plan-option,.walkthrough-card,.app-library-row)
:is(p,small,.copy,.thread-preview,.file-copy,.contact-copy,.project-copy,.setting-copy,.app-library-description) {
  color: var(--ab16-dark-text-3) !important;
}

/* ---------- App Library ---------- */
[data-view="tools"] .app-library-title {
  color: #F0E7D6 !important;
}

[data-view="tools"] .app-library-subtitle {
  color: #C8D3C8 !important;
}

[data-view="tools"] .app-library-description {
  color: #BDB4A5 !important;
}

[data-view="tools"] .app-library-state,
[data-view="tools"] .app-library-price {
  color: #E09A6C !important;
}

[data-view="tools"] .app-library-action,
[data-view="tools"] .app-card-action,
[data-view="tools"] .install-btn {
  background: #151B18 !important;
  border-color: rgba(240,231,214,.20) !important;
  color: #EEE3D0 !important;
}

[data-view="tools"] .app-library-action:hover,
[data-view="tools"] .app-card-action:hover,
[data-view="tools"] .install-btn:hover {
  background: #3A423C !important;
  border-color: rgba(199,122,75,.55) !important;
  color: #FFF3E2 !important;
}

/* ---------- Form fields on dark panels ---------- */
.panel input,
.panel select,
.panel textarea,
.settings-card input,
.settings-card select,
.settings-card textarea,
.app-filter-bar input,
.app-filter-bar select,
.focus-context-selects select,
.file-search,
.contact-search,
.search-input {
  background: #111713 !important;
  color: #F0E7D6 !important;
  border-color: rgba(240,231,214,.23) !important;
}

.panel input::placeholder,
.panel textarea::placeholder,
.settings-card input::placeholder,
.settings-card textarea::placeholder,
.app-filter-bar input::placeholder,
.file-search::placeholder,
.contact-search::placeholder,
.search-input::placeholder {
  color: #9F988B !important;
  opacity: 1 !important;
}

select option {
  background: #171E1A !important;
  color: #F0E7D6 !important;
}

/* ---------- Welcome modal ---------- */
.welcome-back-modal,
.welcome-back-modal > *,
.welcome-back-grid section {
  color: var(--ab16-dark-text-2) !important;
}

.welcome-back-modal > h1,
.welcome-back-modal > h2,
.welcome-back-modal > h3,
.welcome-back-grid strong {
  color: var(--ab16-dark-text) !important;
}

.welcome-back-grid h3 {
  color: var(--ab16-orange-hi) !important;
}

.welcome-back-grid li,
.welcome-back-lede {
  color: #BFB6A8 !important;
}

/* ---------- Rail / topbar ---------- */
.rail .nav-button,
.rail .recent-title,
.rail .recent-time,
.rail .rail-footer,
.topbar .top-link,
.topbar .top-link-button,
.topbar > span {
  color: #BFB6A8 !important;
}

.rail .nav-button:hover,
.rail .nav-button.is-active,
.topbar .top-link:hover,
.topbar .top-link-button:hover {
  color: #F0E7D6 !important;
}

.rail .recent-type,
.rail .rail-footer .accent {
  color: #E09A6C !important;
}

/* ---------- Status / tags ---------- */
.status-pill,
.settings-pill,
.tag,
.badge {
  color: #D3DDD2 !important;
  border-color: rgba(165,181,165,.34) !important;
  background: rgba(165,181,165,.11) !important;
}

/* Keep paper-only utility elements explicitly readable. */
.paper,
.paper-card,
.reading-card {
  color: var(--ab16-paper-text) !important;
}
