/* ============================================================
   Classy glass theme — html[data-theme="glass"]
   Load after theme.css. Overrides tokens + adds frosted surfaces.
============================================================ */

html[data-theme="glass"] {
  color-scheme: dark;
  --border: rgba(255, 255, 255, 0.2);
  --accent: #d4c4a8;
  --accent-glow: rgba(212, 196, 168, 0.45);
  --bg: #0c0f18;
  --text: #f2f4f8;
  --surface: rgba(255, 255, 255, 0.09);
  --surface-muted: rgba(255, 255, 255, 0.05);
  --text-muted: rgba(226, 232, 240, 0.68);
  --glass-blur: 18px;
  --glass-highlight: rgba(255, 255, 255, 0.14);
  --glass-edge: rgba(255, 255, 255, 0.22);
  --dialog-border: rgba(255, 255, 255, 0.2);
  --dialog-surface: linear-gradient(
    145deg,
    rgba(255, 255, 255, 0.14) 0%,
    rgba(255, 255, 255, 0.06) 42%,
    rgba(12, 15, 24, 0.55) 100%
  );
  --dialog-shadow:
    0 32px 90px rgba(0, 0, 0, 0.55),
    0 0 0 1px rgba(255, 255, 255, 0.08) inset,
    0 12px 40px rgba(80, 120, 200, 0.12);
  --dialog-header-bg: linear-gradient(
    180deg,
    rgba(212, 196, 168, 0.12) 0%,
    rgba(255, 255, 255, 0.04) 100%
  );
  --bb-card-border: color-mix(in srgb, var(--border) 50%, var(--accent) 50%);
  --bb-card-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.12),
    0 2px 8px rgba(0, 0, 0, 0.28),
    0 12px 28px rgba(0, 0, 0, 0.3);
  --bb-card-shadow-hover:
    inset 0 1px 0 rgba(255, 255, 255, 0.16),
    0 4px 14px rgba(0, 0, 0, 0.34),
    0 18px 40px rgba(0, 0, 0, 0.42);
  --bb-owner-action-danger: #f0a8a8;
}

html[data-theme="glass"] body,
html[data-theme="glass"] body.public-forums-body,
html[data-theme="glass"] body.bb-budget-body {
  background:
    radial-gradient(ellipse 120% 80% at 10% -10%, rgba(88, 120, 200, 0.22), transparent 55%),
    radial-gradient(ellipse 90% 70% at 95% 5%, rgba(180, 140, 220, 0.14), transparent 50%),
    radial-gradient(ellipse 70% 50% at 50% 100%, rgba(40, 80, 140, 0.18), transparent 60%),
    linear-gradient(165deg, #0a0d14 0%, #12182a 38%, #0c101c 100%) !important;
  background-attachment: fixed;
  color: var(--text);
}

html[data-theme="glass"] .header,
html[data-theme="glass"] .footer,
html[data-theme="glass"] .mode-bar {
  background: rgba(255, 255, 255, 0.06);
  backdrop-filter: blur(var(--glass-blur)) saturate(1.35);
  -webkit-backdrop-filter: blur(var(--glass-blur)) saturate(1.35);
  border-color: var(--glass-edge);
  box-shadow: 0 1px 0 var(--glass-highlight) inset;
}

html[data-theme="glass"] .header,
html[data-theme="glass"] .index-header,
html[data-theme="glass"] .public-forums-header {
  z-index: 100100;
}

html[data-theme="glass"] .mode-bar {
  z-index: 100090;
  color: var(--text);
}

html[data-theme="glass"] .header-dropdown {
  z-index: 100200 !important;
  background: rgba(18, 22, 36, 0.92) !important;
  backdrop-filter: blur(var(--glass-blur)) saturate(1.35);
  -webkit-backdrop-filter: blur(var(--glass-blur)) saturate(1.35);
  border-color: var(--glass-edge) !important;
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.45) !important;
}

html[data-theme="glass"] .header-dropdown__username {
  color: var(--text);
  border-bottom: 1px solid var(--glass-edge);
}

html[data-theme="glass"] .header-dropdown__item,
html[data-theme="glass"] a.header-dropdown__item {
  color: var(--text) !important;
}

html[data-theme="glass"] .header-dropdown__item:hover,
html[data-theme="glass"] a.header-dropdown__item:hover {
  background: rgba(255, 255, 255, 0.12) !important;
}

html[data-theme="glass"] .header-dropdown__item--sign-out {
  color: #fca5a5 !important;
}

html[data-theme="glass"] .header-dropdown__item--sign-out:hover {
  background: rgba(127, 29, 29, 0.35) !important;
}

html[data-theme="glass"] .account-menu-btn:not(.account-menu-btn--has-avatar) {
  background: rgba(255, 255, 255, 0.1) !important;
  border-color: var(--glass-edge) !important;
  color: var(--text) !important;
}

html[data-theme="glass"] .account-menu-btn:not(.account-menu-btn--has-avatar):hover {
  background: rgba(255, 255, 255, 0.16) !important;
}

html[data-theme="glass"] .account-menu-btn--has-avatar {
  border-color: var(--glass-edge) !important;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.12);
}

html[data-theme="glass"] .mode-btn,
html[data-theme="glass"] .sticky-icon-btn,
html[data-theme="glass"] .icon-btn,
html[data-theme="glass"] .pill-btn {
  background: rgba(22, 28, 42, 0.55);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-color: var(--glass-edge);
  color: #f2f4f8;
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.1) inset;
}

html[data-theme="glass"] .mode-btn:not(.active),
html[data-theme="glass"] a.mode-btn.mode-btn--link:not(.active) {
  color: #e8ecf4;
  background: rgba(255, 255, 255, 0.1);
}

html[data-theme="glass"] .mode-btn:hover:not(.active),
html[data-theme="glass"] a.mode-btn.mode-btn--link:hover:not(.active),
html[data-theme="glass"] .sticky-icon-btn:hover,
html[data-theme="glass"] .icon-btn:hover,
html[data-theme="glass"] .pill-btn:hover:not(:disabled) {
  background: rgba(255, 255, 255, 0.16);
  border-color: rgba(255, 255, 255, 0.32);
  color: #fff;
}

html[data-theme="glass"] .sidebar-create-btn {
  background: color-mix(in srgb, var(--accent, #8ab4f8) 22%, rgba(255, 255, 255, 0.08)) !important;
  border-color: color-mix(in srgb, var(--accent, #8ab4f8) 45%, var(--glass-edge)) !important;
  color: var(--accent, #8ab4f8) !important;
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.08) inset;
}

html[data-theme="glass"] .sidebar-create-btn:hover:not(:disabled) {
  background: color-mix(in srgb, var(--accent, #8ab4f8) 32%, rgba(255, 255, 255, 0.12)) !important;
  border-color: color-mix(in srgb, var(--accent, #8ab4f8) 58%, var(--glass-edge)) !important;
}

html[data-theme="glass"] .mode-btn.active,
html[data-theme="glass"] a.mode-btn.mode-btn--link.active {
  background: linear-gradient(135deg, rgba(212, 196, 168, 0.42), rgba(100, 140, 200, 0.35));
  border-color: color-mix(in srgb, var(--accent) 55%, rgba(255, 255, 255, 0.35));
  color: #fff;
  box-shadow: 0 0 20px rgba(212, 196, 168, 0.22);
}

html[data-theme="glass"] .pill-btn.primary {
  background: linear-gradient(135deg, rgba(212, 196, 168, 0.9), rgba(160, 140, 100, 0.85));
  border-color: rgba(255, 255, 255, 0.35);
  color: #1a1520;
  font-weight: 700;
}

html[data-theme="glass"] .pill-btn.primary:hover:not(:disabled) {
  background: linear-gradient(135deg, rgba(230, 218, 190, 0.95), rgba(180, 155, 110, 0.9));
  box-shadow: 0 6px 24px rgba(212, 196, 168, 0.25);
}

html[data-theme="glass"] .modal {
  background: rgba(6, 10, 20, 0.55);
  backdrop-filter: blur(10px) saturate(1.2);
  -webkit-backdrop-filter: blur(10px) saturate(1.2);
}

html[data-theme="glass"] .modal-content,
html[data-theme="glass"] .dialog-card {
  background: var(--dialog-surface);
  backdrop-filter: blur(var(--glass-blur)) saturate(1.4);
  -webkit-backdrop-filter: blur(var(--glass-blur)) saturate(1.4);
  border: 1px solid var(--dialog-border);
  box-shadow: var(--dialog-shadow);
  color: var(--text);
}

html[data-theme="glass"] .modal-content h2,
html[data-theme="glass"] .dialog-header-main h2 {
  color: var(--text);
}

html[data-theme="glass"] .dialog-header {
  background: var(--dialog-header-bg);
  border-bottom-color: var(--glass-edge);
}

html[data-theme="glass"] .dialog-section-title {
  color: var(--accent);
}

html[data-theme="glass"] .sticky-panel {
  background: rgba(255, 255, 255, 0.07) !important;
  border-color: var(--glass-edge) !important;
  color: var(--text);
}

html[data-theme="glass"] .sticky-empty {
  color: var(--text-muted);
}

html[data-theme="glass"] .sticky-item {
  border-color: var(--glass-edge);
  background: rgba(212, 175, 55, 0.14);
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.08) inset;
  color: var(--text);
}

html[data-theme="glass"] .sticky-item.is-completed {
  background: rgba(255, 255, 255, 0.06);
  border-color: var(--glass-edge);
}

html[data-theme="glass"] .sticky-item.is-selected {
  border-color: color-mix(in srgb, var(--accent, #8ab4f8) 70%, #fbbf24);
  background:
    linear-gradient(90deg, color-mix(in srgb, var(--accent, #8ab4f8) 85%, #fbbf24) 0 4px, transparent 4px),
    linear-gradient(180deg, rgba(251, 191, 36, 0.32) 0%, rgba(212, 175, 55, 0.16) 100%);
  outline: 2px solid color-mix(in srgb, var(--accent, #8ab4f8) 65%, #fbbf24);
  outline-offset: 0;
  box-shadow:
    0 0 0 3px color-mix(in srgb, var(--accent, #8ab4f8) 24%, transparent),
    0 1px 0 rgba(255, 255, 255, 0.12) inset,
    0 10px 22px rgba(0, 0, 0, 0.28);
}

html[data-theme="glass"] .sticky-item.is-selected .sticky-item-title {
  color: #fde68a;
}

html[data-theme="glass"] .sticky-item-title,
html[data-theme="glass"] .sticky-item-body {
  color: var(--text);
}

html[data-theme="glass"] .sticky-item-meta {
  color: var(--text-muted);
}

html[data-theme="glass"] .sticky-small-btn {
  border-color: var(--glass-edge);
  background: rgba(255, 255, 255, 0.08);
  color: var(--text);
}

html[data-theme="glass"] .sticky-small-btn:hover {
  background: rgba(255, 255, 255, 0.14);
}

html[data-theme="glass"] #stickyTitle,
html[data-theme="glass"] #stickyBody,
html[data-theme="glass"] #taskTitleInput,
html[data-theme="glass"] #taskBodyInput,
html[data-theme="glass"] #tasksModalDate,
html[data-theme="glass"] #taskRecurrenceInput,
html[data-theme="glass"] #taskStartDateInput,
html[data-theme="glass"] #taskEndDateInput {
  background: rgba(255, 255, 255, 0.06) !important;
  border-color: var(--glass-edge) !important;
  color: var(--text);
}

html[data-theme="glass"] #stickyTitle::placeholder,
html[data-theme="glass"] #stickyBody::placeholder,
html[data-theme="glass"] #taskTitleInput::placeholder,
html[data-theme="glass"] #taskBodyInput::placeholder {
  color: var(--text-muted);
}

html[data-theme="glass"] #stickyModal .sticky-modal-row-flash,
html[data-theme="glass"] #tasksModal .tasks-modal-row-flash {
  outline-color: color-mix(in srgb, var(--accent) 65%, transparent);
}

html[data-theme="glass"] input,
html[data-theme="glass"] textarea,
html[data-theme="glass"] select {
  background: rgba(255, 255, 255, 0.06);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  border-color: var(--glass-edge);
  color: var(--text);
}

html[data-theme="glass"] input:focus,
html[data-theme="glass"] textarea:focus,
html[data-theme="glass"] select:focus {
  border-color: color-mix(in srgb, var(--accent) 50%, var(--glass-edge));
  box-shadow: 0 0 0 2px rgba(212, 196, 168, 0.22);
  outline: none;
}

html[data-theme="glass"] .bb-look-controls {
  background: rgba(16, 20, 32, 0.82);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border-color: rgba(255, 255, 255, 0.28);
}

html[data-theme="glass"] .bb-look-btn:hover {
  background: rgba(255, 255, 255, 0.1);
}

html[data-theme="glass"] .bb-look-btn--display[aria-pressed="true"] {
  background: rgba(212, 196, 168, 0.18);
}

html[data-theme="glass"] .bb-look-help {
  background: rgba(18, 22, 36, 0.92);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-color: rgba(255, 255, 255, 0.22);
  color: #f2f4f8;
}

html[data-theme="glass"] .bb-look-help__stack {
  color: rgba(232, 236, 244, 0.75);
}

html[data-theme="glass"] .a11y-view-label {
  color: rgba(232, 236, 244, 0.92);
}

html[data-theme="glass"] .a11y-view-select {
  background: rgba(16, 20, 32, 0.82);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border-color: rgba(255, 255, 255, 0.28);
  color: #f2f4f8;
}

html[data-theme="glass"] .a11y-view-select option {
  background: #1a2030;
  color: #f2f4f8;
}

/* #personaFilter in notepad.css sets light #fafafa; beats generic select without ID override */
html[data-theme="glass"] #personaFilter {
  background: rgba(16, 20, 32, 0.88) !important;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border-color: rgba(255, 255, 255, 0.28) !important;
  color: #f2f4f8 !important;
}

html[data-theme="glass"] #personaFilter:hover {
  background: rgba(28, 34, 50, 0.95) !important;
  border-color: rgba(255, 255, 255, 0.36) !important;
}

html[data-theme="glass"] #personaFilter:focus {
  outline: none;
  border-color: color-mix(in srgb, var(--accent) 55%, rgba(255, 255, 255, 0.28)) !important;
  box-shadow: 0 0 0 2px rgba(212, 196, 168, 0.22);
}

html[data-theme="glass"] #personaFilter option {
  background: #1a2030;
  color: #f2f4f8;
}

html[data-theme="glass"] .public-forums-header,
html[data-theme="glass"] .public-forums-title,
html[data-theme="glass"] .public-forums-nav-link,
html[data-theme="glass"] .public-forums-nav-link--btn,
html[data-theme="glass"] .index-header__nav-link,
html[data-theme="glass"] .index-header__nav-link--btn {
  color: var(--text);
}

html[data-theme="glass"] .public-forums-nav-link:hover,
html[data-theme="glass"] .public-forums-nav-link--btn:hover,
html[data-theme="glass"] .index-header__nav-link:hover,
html[data-theme="glass"] .index-header__nav-link--btn:hover {
  color: #fff;
}

html[data-theme="glass"] .index-header__nav-link[aria-current="page"],
html[data-theme="glass"] .public-forums-nav-link[aria-current="page"] {
  color: #fff;
  font-weight: 700;
  box-shadow: inset 0 -2px 0 0 color-mix(in srgb, #fff 75%, transparent);
}

html[data-theme="glass"] .index-header__nav-sep,
html[data-theme="glass"] .public-forums-nav-sep {
  color: var(--text-muted);
}

html[data-theme="glass"] ::selection {
  background: rgba(212, 196, 168, 0.35);
  color: #fff;
}

/* Forums / public shell */
html[data-theme="glass"] .public-forums-body {
  --pf-post-border: rgba(255, 255, 255, 0.24);
  --pf-post-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.12),
    0 4px 14px rgba(0, 0, 0, 0.28),
    0 12px 36px rgba(40, 70, 140, 0.15);
  --pf-post-shadow-hover:
    inset 0 1px 0 rgba(255, 255, 255, 0.18),
    0 8px 22px rgba(0, 0, 0, 0.32),
    0 18px 44px rgba(80, 120, 200, 0.2);
  --pf-post-shadow-selected:
    inset 0 1px 0 rgba(255, 255, 255, 0.16),
    0 0 0 1px color-mix(in srgb, var(--accent) 55%, transparent),
    0 14px 40px rgba(212, 196, 168, 0.12);
  --pf-elev-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.08),
    0 4px 16px rgba(0, 0, 0, 0.3);
}

html[data-theme="glass"] .public-forums-body .pf-list-card,
html[data-theme="glass"] .public-forums-body .pf-detail,
html[data-theme="glass"] .public-forums-body .pf-forum-op-card,
html[data-theme="glass"] .public-forums-body .pf-comment,
html[data-theme="glass"] .public-forums-body .pf-detail-comment,
html[data-theme="glass"] .public-forums-body .pf-space {
  background: rgba(255, 255, 255, 0.07);
  backdrop-filter: blur(14px) saturate(1.25);
  -webkit-backdrop-filter: blur(14px) saturate(1.25);
  border-color: var(--pf-post-border, var(--glass-edge));
}

html[data-theme="glass"] #sharedRoot {
  --pf-post-border: rgba(255, 255, 255, 0.24);
}

html[data-theme="glass"] #sharedRoot .cockpit-shared-title,
html[data-theme="glass"] #sharedRoot .cockpit-shared-lead {
  color: var(--text);
}

html[data-theme="glass"] #sharedRoot .pf-list-card,
html[data-theme="glass"] #sharedRoot .pf-detail,
html[data-theme="glass"] #sharedRoot .pf-detail-comment {
  background: rgba(255, 255, 255, 0.07);
  backdrop-filter: blur(14px) saturate(1.25);
  -webkit-backdrop-filter: blur(14px) saturate(1.25);
  border-color: var(--pf-post-border, var(--glass-edge));
}

html[data-theme="glass"] #privateForumsChrome .pf-list-card,
html[data-theme="glass"] #privateForumsChrome .pf-max-card,
html[data-theme="glass"] #sharedRoot .pf-max-card {
  background: rgba(255, 255, 255, 0.07);
  backdrop-filter: blur(14px) saturate(1.25);
  -webkit-backdrop-filter: blur(14px) saturate(1.25);
  border-color: var(--pf-post-border, var(--glass-edge));
}

html[data-theme="glass"] #sharedRoot .pf-list-card.pf-list-card--selected,
html[data-theme="glass"] #sharedRoot .pf-list-card[aria-current="true"],
html[data-theme="glass"] #privateForumsChrome .pf-list-card.pf-list-card--selected,
html[data-theme="glass"] #privateForumsChrome .pf-list-card[aria-current="true"],
html[data-theme="glass"] #sharedRoot .pf-max-card.pf-max-card--selected,
html[data-theme="glass"] #privateForumsChrome .pf-max-card.pf-max-card--selected,
html[data-theme="glass"] .pf-list-card.pf-list-card--selected,
html[data-theme="glass"] .pf-max-card.pf-max-card--selected,
html[data-theme="glass"] tr.pf-list-table__row.pf-list-table__row--selected {
  background:
    linear-gradient(90deg, var(--accent) 0 4px, transparent 4px),
    color-mix(in srgb, rgba(255, 255, 255, 0.18) 50%, var(--accent) 50%);
  border-color: color-mix(in srgb, var(--accent) 85%, var(--glass-edge, rgba(255, 255, 255, 0.24)));
  box-shadow:
    0 0 0 2px color-mix(in srgb, var(--accent) 55%, transparent),
    0 10px 28px rgba(0, 0, 0, 0.34);
}

html[data-theme="glass"] #sharedRoot .pf-shared-source-cta {
  background: rgba(255, 255, 255, 0.06);
  border-color: rgba(255, 255, 255, 0.2);
}

html[data-theme="glass"] .pf-reader {
  background: rgba(12, 16, 28, 0.72);
  backdrop-filter: blur(20px) saturate(1.3);
  -webkit-backdrop-filter: blur(20px) saturate(1.3);
  border-left-color: var(--glass-edge);
}

html[data-theme="glass"] .pf-create-post__field input[type="text"],
html[data-theme="glass"] .pf-create-post__field select,
html[data-theme="glass"] .pf-create-post__field textarea {
  background: rgba(255, 255, 255, 0.06);
}

html[data-theme="glass"] .archive-sidebar,
html[data-theme="glass"] #researchRoot .archive-sidebar,
html[data-theme="glass"] #groupRoot .archive-sidebar,
html[data-theme="glass"] #photoAlbumRoot .archive-sidebar,
html[data-theme="glass"] #chatRoot .archive-sidebar {
  background: rgba(255, 255, 255, 0.05) !important;
  backdrop-filter: blur(var(--glass-blur)) saturate(1.25);
  -webkit-backdrop-filter: blur(var(--glass-blur)) saturate(1.25);
  border-right-color: var(--glass-edge) !important;
}

/* Frosted panels — !important beats hardcoded whites in notepad.css / dashboard.css */
html[data-theme="glass"] :is(
  .note-editor-container,
  .detail-panel,
  .dashboard-section,
  .dashboard-card,
  .dashboard-top,
  .dashboard-summary-chip,
  .note-card,
  .sticky-note,
  .note-comment,
  .thread-comment-row,
  .share-groups-detail-panel,
  .book-archive-card,
  .book-chapter-card,
  .drawer-note-card,
  .cabinet-block,
  .dialog-section,
  .sticky-item,
  .sticky-panel,
  .persona-picker.dialog-popover,
  .photo-album-card,
  .photo-album-flip-page,
  .photo-album-drop-zone,
  .photo-album-node-nav,
  .chat-room-panel
) {
  background: rgba(255, 255, 255, 0.07) !important;
  backdrop-filter: blur(14px) saturate(1.25);
  -webkit-backdrop-filter: blur(14px) saturate(1.25);
  border-color: var(--glass-edge) !important;
  color: var(--text);
  box-shadow:
    0 1px 0 rgba(255, 255, 255, 0.1) inset,
    0 8px 28px rgba(0, 0, 0, 0.28);
}

html[data-theme="glass"] #archiveRoot .archive-main,
html[data-theme="glass"] #researchRoot .archive-main,
html[data-theme="glass"] #groupRoot .archive-main,
html[data-theme="glass"] #photoAlbumRoot .archive-main,
html[data-theme="glass"] #chatRoot .archive-main,
html[data-theme="glass"] .dashboard-root,
html[data-theme="glass"] .dashboard-body,
html[data-theme="glass"] .designer-app,
html[data-theme="glass"] .designer-body {
  background: transparent !important;
  color: var(--text);
}

html[data-theme="glass"] .designer-topbar,
html[data-theme="glass"] .designer-text-toolbar {
  background: rgba(255, 255, 255, 0.06) !important;
  backdrop-filter: blur(var(--glass-blur)) saturate(1.2);
  -webkit-backdrop-filter: blur(var(--glass-blur)) saturate(1.2);
  border-color: var(--glass-edge) !important;
}

html[data-theme="glass"] .designer-canvas-wrap {
  background: rgba(255, 255, 255, 0.04) !important;
  border-color: var(--glass-edge) !important;
}

html[data-theme="glass"] .dashboard-section.dashboard-section--has-items {
  box-shadow:
    0 0 0 1px color-mix(in srgb, var(--accent) 25%, transparent),
    0 0 24px rgba(212, 196, 168, 0.08),
    0 10px 32px rgba(0, 0, 0, 0.3) !important;
}

html[data-theme="glass"] #noteBody,
html[data-theme="glass"] .note-editor,
html[data-theme="glass"] .editor-surface,
html[data-theme="glass"] .budget-main-pane,
html[data-theme="glass"] #journalNoteBodyWrapper {
  background: rgba(255, 255, 255, 0.04) !important;
  color: var(--text);
  border-color: var(--glass-edge);
}

html[data-theme="glass"] .bb-look-btn--theme[aria-pressed="true"] {
  background: rgba(212, 196, 168, 0.18);
}

html[data-theme="glass"] .bb-look-btn--theme {
  letter-spacing: 0;
}

html[data-theme="glass"] .search-results {
  border-color: color-mix(in srgb, var(--accent) 40%, var(--glass-edge));
  background: rgba(18, 22, 36, 0.88);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  box-shadow: 0 8px 28px rgba(0, 0, 0, 0.35);
}

html[data-theme="glass"] .search-results__head {
  border-bottom-color: var(--glass-edge);
  background: rgba(255, 255, 255, 0.06);
}

html[data-theme="glass"] .search-results h4 {
  color: var(--text);
}

html[data-theme="glass"] .search-results__query,
html[data-theme="glass"] .search-results__empty {
  color: var(--text-muted);
}

html[data-theme="glass"] .search-results__close {
  color: var(--text-muted);
}

html[data-theme="glass"] .search-results__close:hover {
  background: rgba(255, 255, 255, 0.12);
  color: var(--text);
}

html[data-theme="glass"] .search-results__close:focus-visible {
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--accent) 50%, transparent);
}

html[data-theme="glass"] .search-results a {
  color: var(--text);
}

html[data-theme="glass"] .search-results a:hover {
  background: rgba(255, 255, 255, 0.1);
  border-color: color-mix(in srgb, var(--accent) 35%, transparent);
}

/* ========== Cockpit: readable text on glass ========== */
html[data-theme="glass"] .breadcrumb,
html[data-theme="glass"] .archive-narrative,
html[data-theme="glass"] .detail-label,
html[data-theme="glass"] .book-section,
html[data-theme="glass"] .book-meta,
html[data-theme="glass"] .drawer-cabinet-meta,
html[data-theme="glass"] .drawer-row-meta,
html[data-theme="glass"] .cabinet-face-meta,
html[data-theme="glass"] .cabinet-shelf-count,
html[data-theme="glass"] .sidebar-title,
html[data-theme="glass"] .dashboard-tagline,
html[data-theme="glass"] .dashboard-date-long,
html[data-theme="glass"] .dashboard-section-title,
html[data-theme="glass"] .dashboard-card-meta,
html[data-theme="glass"] .dashboard-card-body,
html[data-theme="glass"] .dashboard-empty,
html[data-theme="glass"] .share-scope-hint,
html[data-theme="glass"] .share-message,
html[data-theme="glass"] .thread-comment-meta,
html[data-theme="glass"] .note-comment-meta,
html[data-theme="glass"] .journal-window-subtitle,
html[data-theme="glass"] .archive-cabinet-hint,
html[data-theme="glass"] .archive-cabinet-badge,
html[data-theme="glass"] .archive-cabinet-context,
html[data-theme="glass"] #photoAlbumRoot .group-mode-hint,
html[data-theme="glass"] .photo-album-card__date,
html[data-theme="glass"] .photo-album-flip-toc__meta,
html[data-theme="glass"] .photo-album-flip-pager,
html[data-theme="glass"] .photo-album-node-nav__pos,
html[data-theme="glass"] .photo-album-empty,
html[data-theme="glass"] .chat-mode-hint,
html[data-theme="glass"] .chat-room-empty,
html[data-theme="glass"] .photo-album-detail-hint,
html[data-theme="glass"] .photo-album-detail-note,
html[data-theme="glass"] .photo-album-smart-section__title,
html[data-theme="glass"] .photo-album-smart-btn__count,
html[data-theme="glass"] .photo-album-annotate-toolbar__count,
html[data-theme="glass"] .photo-album-annotate-toolbar__hint {
  color: var(--text-muted);
}

html[data-theme="glass"] .breadcrumb__current {
  color: var(--text);
}

html[data-theme="glass"] .breadcrumb__crumb {
  color: var(--accent);
}

html[data-theme="glass"] .breadcrumb__crumb:hover,
html[data-theme="glass"] .breadcrumb__crumb:focus-visible {
  background: color-mix(in srgb, var(--accent) 18%, transparent);
}

html[data-theme="glass"] .photo-album-card__caption,
html[data-theme="glass"] .photo-album-flip-tile__title,
html[data-theme="glass"] .photo-album-flip-toc__title,
html[data-theme="glass"] .photo-album-smart-btn__label {
  color: var(--text);
}

html[data-theme="glass"] #photoAlbumRoot .photo-album-view-select,
html[data-theme="glass"] #photoAlbumRoot #photoAlbumLensSelect {
  background: rgba(16, 20, 32, 0.82) !important;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border-color: rgba(255, 255, 255, 0.28) !important;
  color: #f2f4f8 !important;
}

html[data-theme="glass"] #photoAlbumRoot .photo-album-view-select option,
html[data-theme="glass"] #photoAlbumRoot #photoAlbumLensSelect option {
  background: #1a2030;
  color: #f2f4f8;
}

html[data-theme="glass"] .dashboard-heading,
html[data-theme="glass"] .floating-window-title,
html[data-theme="glass"] .journal-date-label,
html[data-theme="glass"] .detail-panel h3,
html[data-theme="glass"] .detail-panel h4,
html[data-theme="glass"] .book-title-btn,
html[data-theme="glass"] .drawer-label-btn,
html[data-theme="glass"] .cabinet-face-name {
  color: var(--text);
}

html[data-theme="glass"] .dashboard-jump a,
html[data-theme="glass"] .dashboard-micro a {
  color: var(--accent);
}

html[data-theme="glass"] .dashboard-date-input,
html[data-theme="glass"] .team-channel-select {
  background: rgba(255, 255, 255, 0.06) !important;
  border-color: var(--glass-edge) !important;
  color: var(--text) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08) !important;
  color-scheme: dark;
}

html[data-theme="glass"] .team-channel-select option {
  background: #1a2030 !important;
  color: #f2f4f8 !important;
}

html[data-theme="glass"] .dashboard-channel-label,
html[data-theme="glass"] .calendar-channel-label {
  color: var(--text-muted) !important;
}

/* Dashboard buttons — dashboard.css loads after this file; !important required */
html[data-theme="glass"] .dashboard-root .pill-btn,
html[data-theme="glass"] .dashboard-open-chip,
html[data-theme="glass"] .dashboard-summary-chip,
html[data-theme="glass"] .dashboard-expand-nav {
  background: rgba(255, 255, 255, 0.1) !important;
  backdrop-filter: blur(12px) saturate(1.2);
  -webkit-backdrop-filter: blur(12px) saturate(1.2);
  border-color: var(--glass-edge) !important;
  color: var(--text) !important;
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.1) inset !important;
}

html[data-theme="glass"] .dashboard-root .pill-btn:hover:not(:disabled),
html[data-theme="glass"] .dashboard-open-chip:hover,
html[data-theme="glass"] .dashboard-summary-chip:hover,
html[data-theme="glass"] .dashboard-expand-nav:hover:not(:disabled) {
  background: rgba(255, 255, 255, 0.16) !important;
  border-color: rgba(255, 255, 255, 0.32) !important;
  color: #fff !important;
  transform: translateY(-1px);
}

html[data-theme="glass"] .dashboard-root .pill-btn.primary,
html[data-theme="glass"] .dashboard-expand-block__create.pill-btn.primary {
  background: linear-gradient(135deg, rgba(212, 196, 168, 0.9), rgba(160, 140, 100, 0.85)) !important;
  border-color: rgba(255, 255, 255, 0.35) !important;
  color: #1a1520 !important;
  font-weight: 700;
  box-shadow: 0 6px 20px rgba(212, 196, 168, 0.2) !important;
}

html[data-theme="glass"] .dashboard-root .pill-btn.primary:hover:not(:disabled),
html[data-theme="glass"] .dashboard-expand-block__create.pill-btn.primary:hover:not(:disabled) {
  background: linear-gradient(135deg, rgba(230, 218, 190, 0.95), rgba(180, 155, 110, 0.9)) !important;
  color: #1a1520 !important;
}

html[data-theme="glass"] .dashboard-open-chip__label,
html[data-theme="glass"] .dashboard-summary-l {
  color: var(--text-muted) !important;
}

html[data-theme="glass"] .dashboard-recent-chip__title {
  color: var(--text);
}

html[data-theme="glass"] .dashboard-open-chip--has-data,
html[data-theme="glass"] .dashboard-summary-chip--has-data {
  border-color: color-mix(in srgb, var(--accent) 42%, var(--glass-edge)) !important;
  box-shadow:
    0 0 0 1px color-mix(in srgb, var(--accent) 22%, transparent),
    0 1px 0 rgba(255, 255, 255, 0.1) inset,
    0 8px 20px rgba(0, 0, 0, 0.25) !important;
}

html[data-theme="glass"] .dashboard-expand-nav:disabled {
  opacity: 0.4;
  color: var(--text-muted) !important;
}

html[data-theme="glass"] .dashboard-error {
  background: rgba(127, 29, 29, 0.35) !important;
  border-color: rgba(248, 113, 113, 0.45) !important;
  color: #fecaca;
}

/* Tree + lens cards */
html[data-theme="glass"] .archive-app,
html[data-theme="glass"] #groupRoot,
html[data-theme="glass"] #researchRoot,
html[data-theme="glass"] #photoAlbumRoot {
  --bb-tree-hover-bg: rgba(255, 255, 255, 0.16);
  --bb-tree-hover-edge: inset 0 0 0 1px rgba(255, 255, 255, 0.24);
  --bb-tree-active-bg: color-mix(in srgb, var(--accent) 22%, rgba(255, 255, 255, 0.08));
  --bb-tree-active-hover-bg: color-mix(in srgb, var(--accent) 30%, rgba(255, 255, 255, 0.1));
  --bb-tree-active-hover-edge: inset 0 0 0 1px rgba(255, 255, 255, 0.3);
  --bb-tree-focus-ring: 0 0 0 2px rgba(255, 255, 255, 0.35);
}

html[data-theme="glass"] .archive-node:hover,
html[data-theme="glass"] .research-node:hover,
html[data-theme="glass"] #photoAlbumRoot .photo-album-node:hover,
html[data-theme="glass"] #photoAlbumRoot .photo-album-tree-photo-btn:hover,
html[data-theme="glass"] .tasks-node:hover,
html[data-theme="glass"] .journal-entry-item:hover {
  background: var(--bb-tree-hover-bg, rgba(255, 255, 255, 0.16));
  color: var(--text);
}

html[data-theme="glass"] .archive-node.active,
html[data-theme="glass"] .research-node.active,
html[data-theme="glass"] #photoAlbumRoot .photo-album-node.active,
html[data-theme="glass"] #photoAlbumRoot .photo-album-tree-photo-btn.active,
html[data-theme="glass"] .tasks-node.active,
html[data-theme="glass"] .journal-entry-item.active {
  background: color-mix(in srgb, var(--accent) 22%, rgba(255, 255, 255, 0.08)) !important;
  color: var(--text);
  font-weight: 600;
}

html[data-theme="glass"] .book-archive-card:hover,
html[data-theme="glass"] .book-chapter-card:hover,
html[data-theme="glass"] .drawer-note-card:hover {
  background: rgba(255, 255, 255, 0.11) !important;
  border-color: color-mix(in srgb, var(--accent) 35%, var(--glass-edge)) !important;
}

html[data-theme="glass"] .cabinet-block:hover {
  background: rgba(255, 255, 255, 0.11) !important;
  border-color: color-mix(in srgb, var(--accent) 35%, var(--glass-edge)) !important;
  border-left-color: color-mix(in srgb, var(--cab-parent) 80%, var(--accent)) !important;
}

html[data-theme="glass"] .book-archive-card.active,
html[data-theme="glass"] .book-chapter-card.active,
html[data-theme="glass"] .drawer-note-card.active {
  border-color: color-mix(in srgb, var(--accent) 50%, var(--glass-edge)) !important;
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--accent) 28%, transparent) !important;
}

html[data-theme="glass"] .book-page-btn,
html[data-theme="glass"] .drawer-row {
  background: rgba(255, 255, 255, 0.06) !important;
  border-color: var(--glass-edge) !important;
  color: var(--text);
}

html[data-theme="glass"] .book-page-btn:hover,
html[data-theme="glass"] .book-title-btn:hover,
html[data-theme="glass"] .drawer-label-btn:hover {
  background: color-mix(in srgb, var(--accent) 14%, rgba(255, 255, 255, 0.08)) !important;
  color: var(--accent);
}

html[data-theme="glass"] .book-page-btn.active {
  background: color-mix(in srgb, var(--accent) 20%, rgba(255, 255, 255, 0.06)) !important;
  border-color: color-mix(in srgb, var(--accent) 45%, var(--glass-edge)) !important;
}

html[data-theme="glass"] .drawer-row.active {
  border-color: color-mix(in srgb, var(--accent) 40%, var(--glass-edge)) !important;
}

html[data-theme="glass"] .cabinet-block {
  border-left-color: color-mix(in srgb, var(--cab-parent) 75%, var(--glass-edge));
}

html[data-theme="glass"] .cabinet-interior {
  background: linear-gradient(
    180deg,
    color-mix(in srgb, var(--cab-parent) 10%, rgba(255, 255, 255, 0.05)) 0%,
    rgba(255, 255, 255, 0.03) 100%
  ) !important;
  border-top-color: color-mix(in srgb, var(--cab-parent) 25%, var(--glass-edge)) !important;
}

html[data-theme="glass"] .cabinet-shelf-head {
  background: linear-gradient(
    90deg,
    color-mix(in srgb, var(--cab-mid) 18%, rgba(255, 255, 255, 0.06)) 0%,
    rgba(255, 255, 255, 0.04) 100%
  ) !important;
  border-color: color-mix(in srgb, var(--cab-mid) 30%, var(--glass-edge)) !important;
  border-left-color: color-mix(in srgb, var(--cab-mid) 85%, var(--accent)) !important;
  color: var(--text);
}

html[data-theme="glass"] .cabinet-shelf-rack {
  border-left-color: color-mix(in srgb, var(--cab-child) 40%, transparent);
}

html[data-theme="glass"] .cabinet-note-card {
  background: color-mix(in srgb, var(--cab-child) 12%, rgba(255, 255, 255, 0.06)) !important;
  border-color: color-mix(in srgb, var(--cab-child) 28%, var(--glass-edge)) !important;
  border-left-color: color-mix(in srgb, var(--cab-parent) 70%, var(--cab-child)) !important;
  color: var(--text);
}

html[data-theme="glass"] .cabinet-note-card:hover,
html[data-theme="glass"] .cabinet-note-card--active {
  border-left-color: var(--cab-parent) !important;
}

html[data-theme="glass"] .cabinet-shelf.active .cabinet-shelf-head,
html[data-theme="glass"] .cabinet-shelf.lens-path .cabinet-shelf-head {
  background: color-mix(in srgb, var(--cab-mid) 16%, rgba(255, 255, 255, 0.06)) !important;
  border-color: color-mix(in srgb, var(--cab-mid) 35%, var(--glass-edge)) !important;
  color: var(--text);
}

html[data-theme="glass"] .archive-app--cabinet .archive-cabinet-shell {
  background: rgba(255, 255, 255, 0.04) !important;
  backdrop-filter: blur(var(--glass-blur)) saturate(1.2);
  -webkit-backdrop-filter: blur(var(--glass-blur)) saturate(1.2);
  border-right-color: var(--glass-edge) !important;
}

html[data-theme="glass"] .archive-cabinet-toolbar {
  background: rgba(0, 0, 0, 0.2) !important;
  border-bottom-color: var(--glass-edge) !important;
}

html[data-theme="glass"] .archive-cabinet-archive-select {
  background: rgba(16, 20, 32, 0.75) !important;
  border-color: var(--glass-edge) !important;
  color: var(--text);
}

/* Format toolbar */
html[data-theme="glass"] .format-toolbar,
html[data-theme="glass"] .journal-format-toolbar,
html[data-theme="glass"] .research-format-toolbar,
html[data-theme="glass"] .tasks-format-toolbar {
  border-color: var(--glass-edge);
  background: transparent;
  color: var(--text);
}

html[data-theme="glass"] .fmt-btn,
html[data-theme="glass"] .fmt-select {
  background: rgba(22, 28, 42, 0.55) !important;
  border-color: var(--glass-edge) !important;
  color: var(--text);
}

html[data-theme="glass"] .fmt-btn:hover {
  background: rgba(255, 255, 255, 0.14) !important;
}

/* Rich text editor */
html[data-theme="glass"] .note-editor *,
html[data-theme="glass"] #journalNoteBody * {
  color: inherit;
}

html[data-theme="glass"] .note-editor a[href],
html[data-theme="glass"] #journalNoteBody a[href] {
  color: #c4b896;
  background: transparent !important;
}

html[data-theme="glass"] .note-editor .note-link,
html[data-theme="glass"] #journalNoteBody .note-link {
  background: color-mix(in srgb, var(--accent) 18%, transparent) !important;
  color: var(--accent);
}

html[data-theme="glass"] .note-editor [style*="background-color: #fff"],
html[data-theme="glass"] .note-editor [style*="background-color:#fff"],
html[data-theme="glass"] .note-editor [style*="background-color: #ffffff"],
html[data-theme="glass"] .note-editor [style*="background-color:#ffffff"],
html[data-theme="glass"] .note-editor [style*="background-color: white"],
html[data-theme="glass"] .note-editor [style*="background: #fff"],
html[data-theme="glass"] .note-editor [style*="background:#fff"] {
  background-color: transparent !important;
  background: transparent !important;
  color: inherit !important;
}

html[data-theme="glass"] .note-editor:empty:before,
html[data-theme="glass"] #journalNoteBody:empty:before {
  color: var(--text-muted);
}

html[data-theme="glass"] .note-editor blockquote,
html[data-theme="glass"] .note-editor pre,
html[data-theme="glass"] .note-editor code {
  border-color: var(--glass-edge);
  background: rgba(0, 0, 0, 0.25);
  color: var(--text);
}

/* Floating windows (calendar, journal) */
html[data-theme="glass"] .floating-window {
  background: var(--dialog-surface) !important;
  backdrop-filter: blur(var(--glass-blur)) saturate(1.35);
  -webkit-backdrop-filter: blur(var(--glass-blur)) saturate(1.35);
  border-color: var(--dialog-border) !important;
  box-shadow: var(--dialog-shadow);
}

html[data-theme="glass"] .floating-window-header {
  background: var(--dialog-header-bg);
  border-bottom-color: var(--glass-edge);
}

html[data-theme="glass"] .floating-window-title {
  color: var(--text) !important;
}

/* Calendar / journal floating headers — opaque bar so header pill-btns stay visible on hover */
html[data-theme="glass"] .calendar-window .floating-window-header,
html[data-theme="glass"] #journalWindow .floating-window-header {
  background: rgba(12, 16, 26, 0.96) !important;
  border-bottom-color: var(--glass-edge) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.08),
    0 2px 12px rgba(0, 0, 0, 0.35);
}

html[data-theme="glass"] .calendar-window .floating-window-header .pill-btn,
html[data-theme="glass"] #journalWindow .floating-window-header .pill-btn,
html[data-theme="glass"] .journal-date-bar .pill-btn {
  background: rgba(28, 34, 50, 0.88) !important;
  border: 1px solid rgba(255, 255, 255, 0.3) !important;
  color: #f8fafc !important;
  box-shadow:
    0 1px 0 rgba(255, 255, 255, 0.1) inset,
    0 2px 8px rgba(0, 0, 0, 0.4) !important;
}

html[data-theme="glass"] .calendar-window .calendar-window-nav-btn,
html[data-theme="glass"] .bb-window-nav-btn {
  background: rgba(28, 34, 50, 0.88) !important;
  border: 1px solid rgba(255, 255, 255, 0.3) !important;
  color: #f8fafc !important;
  box-shadow:
    0 1px 0 rgba(255, 255, 255, 0.1) inset,
    0 2px 8px rgba(0, 0, 0, 0.4) !important;
}

html[data-theme="glass"] .calendar-window .floating-window-header .pill-btn:hover:not(:disabled),
html[data-theme="glass"] #journalWindow .floating-window-header .pill-btn:hover:not(:disabled),
html[data-theme="glass"] .journal-date-bar .pill-btn:hover:not(:disabled) {
  background: rgba(52, 62, 88, 0.98) !important;
  border-color: color-mix(in srgb, var(--accent) 50%, rgba(255, 255, 255, 0.35)) !important;
  color: #fff !important;
}

html[data-theme="glass"] .calendar-window .calendar-window-nav-btn:hover,
html[data-theme="glass"] .bb-window-nav-btn:hover {
  background: rgba(52, 62, 88, 0.98) !important;
  border-color: color-mix(in srgb, var(--accent) 50%, rgba(255, 255, 255, 0.35)) !important;
  color: #fff !important;
}

html[data-theme="glass"] .journal-window-head-text .floating-window-title {
  color: #f8fafc !important;
  text-shadow: 0 1px 4px rgba(0, 0, 0, 0.55);
}

html[data-theme="glass"] .journal-window-subtitle {
  color: rgba(212, 220, 232, 0.95) !important;
  text-shadow: 0 1px 3px rgba(0, 0, 0, 0.6);
}

/* Calendar — dark-style grid/cards (glass excluded from global light-mode calendar rules) */
html[data-theme="glass"] .calendar-window.floating-window {
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.06),
    var(--dialog-shadow);
}

html[data-theme="glass"] .calendar-window .calendar-grid-inner {
  padding: 8px;
  border-radius: 14px;
  background: linear-gradient(165deg, #14171e 0%, #1a1e28 52%, #12151c 100%);
  box-shadow:
    inset 0 2px 8px rgba(0, 0, 0, 0.45),
    inset 0 -1px 0 rgba(255, 255, 255, 0.04);
  gap: 7px;
}

html[data-theme="glass"] .calendar-window .calendar-dow-label {
  color: #e2e8f0 !important;
  text-shadow: 0 1px 3px rgba(0, 0, 0, 0.65);
}

html[data-theme="glass"] .calendar-window button.calendar-day.calendar-cell {
  background: linear-gradient(168deg, #3d4556 0%, #2a303c 46%, #1e2430 100%) !important;
  border: 1px solid rgba(255, 255, 255, 0.16) !important;
  color: #f8fafc !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.12),
    0 3px 8px rgba(0, 0, 0, 0.42) !important;
}

html[data-theme="glass"] .calendar-window button.calendar-day.calendar-cell .calendar-day-num {
  color: #f8fafc !important;
  text-shadow: 0 1px 3px rgba(0, 0, 0, 0.55);
}

html[data-theme="glass"] .calendar-window button.calendar-day.calendar-cell:hover {
  background: linear-gradient(168deg, #4a5568 0%, #384252 50%, #2d3644 100%) !important;
  color: #fff !important;
  border-color: color-mix(in srgb, var(--accent) 45%, rgba(255, 255, 255, 0.25)) !important;
}

html[data-theme="glass"] .calendar-window button.calendar-day.calendar-cell.is-outside {
  opacity: 0.72;
  color: #cbd5e1 !important;
  background: linear-gradient(168deg, #2e3440 0%, #252a34 100%) !important;
}

html[data-theme="glass"] .calendar-window button.calendar-day.calendar-cell.is-today {
  color: #fff !important;
  border-color: color-mix(in srgb, var(--accent) 60%, transparent) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.14),
    0 0 0 2px color-mix(in srgb, var(--accent) 28%, transparent) !important;
}

html[data-theme="glass"] .calendar-window button.calendar-day.calendar-cell.is-selected {
  background: linear-gradient(168deg, #3a5280 0%, #2f4570 52%, #283c62 100%) !important;
  color: #fff !important;
  border-color: color-mix(in srgb, var(--accent) 55%, transparent) !important;
}

html[data-theme="glass"] .calendar-window .calendar-controls .cal-step-btn,
html[data-theme="glass"] .calendar-window .calendar-selectors select {
  background: rgba(28, 34, 50, 0.9) !important;
  border: 1px solid rgba(255, 255, 255, 0.28) !important;
  color: #f8fafc !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.35);
}

html[data-theme="glass"] .calendar-window .calendar-controls .cal-step-btn:hover,
html[data-theme="glass"] .calendar-window .calendar-selectors select:hover {
  background: rgba(52, 62, 88, 0.98) !important;
  color: #fff !important;
  border-color: color-mix(in srgb, var(--accent) 45%, rgba(255, 255, 255, 0.35)) !important;
}

html[data-theme="glass"] .calendar-window .calendar-selectors select option {
  background: #1a2030;
  color: #f2f4f8;
}

html[data-theme="glass"] .calendar-window .calendar-day-canvas,
html[data-theme="glass"] .calendar-window .calendar-day-view {
  color: #f2f4f8;
}

html[data-theme="glass"] .calendar-window .calendar-day-canvas {
  padding: 10px;
  border-radius: 14px;
  background: linear-gradient(165deg, #14171e 0%, #1a1e28 52%, #12151c 100%);
  box-shadow: inset 0 2px 8px rgba(0, 0, 0, 0.42);
}

html[data-theme="glass"] .calendar-window .calendar-day-toolbar .cal-step-btn,
html[data-theme="glass"] .calendar-window .calendar-day-toolbar .pill-btn {
  background: rgba(28, 34, 50, 0.88) !important;
  border: 1px solid rgba(255, 255, 255, 0.28) !important;
  color: #f8fafc !important;
}

html[data-theme="glass"] .calendar-window .calendar-day-toolbar .cal-step-btn:hover,
html[data-theme="glass"] .calendar-window .calendar-day-toolbar .pill-btn:hover:not(:disabled) {
  background: rgba(52, 62, 88, 0.98) !important;
  color: #fff !important;
}

html[data-theme="glass"] .calendar-window .calendar-day-card {
  background: linear-gradient(168deg, #3d4556 0%, #2a303c 48%, #1e2430 100%) !important;
  border: 1px solid rgba(255, 255, 255, 0.14) !important;
  color: #f8fafc !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.1),
    0 3px 10px rgba(0, 0, 0, 0.35);
}

html[data-theme="glass"] .calendar-window .calendar-day-card-title,
html[data-theme="glass"] .calendar-day-card-body,
html[data-theme="glass"] .calendar-window .calendar-day-comment-body {
  color: #f2f4f8 !important;
}

html[data-theme="glass"] .calendar-window .calendar-day-card-meta,
html[data-theme="glass"] .calendar-window .calendar-day-card-time,
html[data-theme="glass"] .calendar-window .calendar-day-section-title,
html[data-theme="glass"] .calendar-window .calendar-day-toc-label,
html[data-theme="glass"] .calendar-window .calendar-day-muted,
html[data-theme="glass"] .calendar-window .calendar-day-empty,
html[data-theme="glass"] .calendar-window .calendar-day-loading,
html[data-theme="glass"] .calendar-window .calendar-day-card-sub,
html[data-theme="glass"] .calendar-window .calendar-day-comment-meta {
  color: rgba(203, 213, 225, 0.92) !important;
}

html[data-theme="glass"] .calendar-window .calendar-day-toc {
  background: linear-gradient(168deg, #3d4556 0%, #2a303c 50%, #1e2430 100%) !important;
  border-color: rgba(255, 255, 255, 0.14) !important;
  color: #f2f4f8 !important;
}

html[data-theme="glass"] .calendar-window .calendar-day-toc-link {
  color: #e2e8f0 !important;
}

html[data-theme="glass"] .calendar-window .calendar-day-toc-link:hover {
  color: #fff !important;
  background: rgba(212, 196, 168, 0.12);
}

html[data-theme="glass"] #journalWindow.journal-window {
  border-color: color-mix(in srgb, var(--accent) 28%, var(--glass-edge));
}

html[data-theme="glass"] #journalWindow .journal-window-body,
html[data-theme="glass"] #journalWindow .journal-window-body.floating-window-body {
  background: linear-gradient(180deg, rgba(14, 18, 28, 0.98) 0%, rgba(8, 10, 18, 0.99) 100%) !important;
  color: var(--text);
}

html[data-theme="glass"] .journal-entry-item {
  color: var(--text);
  border-color: var(--glass-edge);
}

html[data-theme="glass"] .journal-entry-item:hover {
  background: rgba(212, 196, 168, 0.1);
  border-color: color-mix(in srgb, var(--accent) 35%, var(--glass-edge));
}

html[data-theme="glass"] .journal-entry-item.active {
  background: color-mix(in srgb, var(--accent) 22%, rgba(255, 255, 255, 0.06));
  border-color: color-mix(in srgb, var(--accent) 45%, var(--glass-edge));
}

html[data-theme="glass"] .journal-note-toolbar {
  background: rgba(255, 255, 255, 0.06) !important;
  border-bottom-color: var(--glass-edge) !important;
}

html[data-theme="glass"] .journal-date-bar {
  background: rgba(255, 255, 255, 0.08) !important;
  border-color: var(--glass-edge);
  box-shadow:
    0 4px 16px rgba(0, 0, 0, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.12);
}

html[data-theme="glass"] .journal-sidebar {
  background: rgba(255, 255, 255, 0.06) !important;
  backdrop-filter: blur(var(--glass-blur));
  -webkit-backdrop-filter: blur(var(--glass-blur));
  border-color: var(--glass-edge) !important;
  box-shadow:
    0 6px 20px rgba(0, 0, 0, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.1);
}

html[data-theme="glass"] .journal-sidebar .sidebar-tree-toolbar {
  background: rgba(255, 255, 255, 0.08) !important;
  box-shadow:
    0 4px 12px rgba(0, 0, 0, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.1);
}

html[data-theme="glass"] .journal-editor-pane.note-editor-container {
  background: rgba(255, 255, 255, 0.06) !important;
  border-color: var(--glass-edge) !important;
  box-shadow:
    0 8px 24px rgba(0, 0, 0, 0.3),
    inset 0 1px 0 rgba(255, 255, 255, 0.1);
}

html[data-theme="glass"] #journalWindow #journalNoteTitle {
  background: rgba(255, 255, 255, 0.06) !important;
  border-color: var(--glass-edge) !important;
  color: var(--text);
}

html[data-theme="glass"] #groupRoot .note-editor-title,
html[data-theme="glass"] #archiveRoot .note-editor-title,
html[data-theme="glass"] #researchRoot .note-editor-title,
html[data-theme="glass"] #photoAlbumRoot .note-editor-title {
  background: transparent !important;
  border: none !important;
  border-bottom: 2px solid transparent !important;
  box-shadow: none !important;
  color: var(--text);
}

html[data-theme="glass"] #groupRoot .note-editor-title:not(:disabled):focus,
html[data-theme="glass"] #archiveRoot .note-editor-title:not(:disabled):focus,
html[data-theme="glass"] #researchRoot .note-editor-title:not(:disabled):focus,
html[data-theme="glass"] #photoAlbumRoot .note-editor-title:not(:disabled):focus {
  border-bottom-color: color-mix(in srgb, var(--accent, #8ab4f8) 55%, transparent) !important;
}

html[data-theme="glass"]:not([data-a11y-view="contrast"]):not([data-a11y-view="comfort"]) {
  --bb-sidebar-resize-line: color-mix(in srgb, var(--accent, #8ab4f8) 16%, transparent);
  --bb-sidebar-resize-line-active: color-mix(in srgb, var(--accent, #8ab4f8) 42%, transparent);
  --bb-sidebar-resize-grip: color-mix(in srgb, var(--accent, #8ab4f8) 36%, transparent);
  --bb-sidebar-resize-grip-active: color-mix(in srgb, var(--accent, #8ab4f8) 64%, transparent);
  --bb-sidebar-resize-grip-opacity: 0.5;
}

html[data-theme="glass"] .sidebar-search input {
  background: rgba(255, 255, 255, 0.06) !important;
  border-color: var(--glass-edge) !important;
  color: var(--text);
}

html[data-theme="glass"] .share-add-row input[type="text"],
html[data-theme="glass"] .share-add-row select {
  background: rgba(255, 255, 255, 0.06) !important;
  border-color: var(--glass-edge) !important;
  color: var(--text);
}

html[data-theme="glass"] .mode-inline-tip {
  background: rgba(18, 22, 36, 0.88) !important;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-color: var(--glass-edge) !important;
  color: var(--text);
}

/* Share, DM, persona, admin overlays */
html[data-theme="glass"] #shareManagerModal .modal-content,
html[data-theme="glass"] #groupManagerRoot .share-groups-modal-card,
html[data-theme="glass"] #dmModal .modal-content,
html[data-theme="glass"] #personaManager .modal-content,
html[data-theme="glass"] #adminOverlayModal .modal-content,
html[data-theme="glass"] #bbInspectHelpModal .modal-content,
html[data-theme="glass"] #cockpitWelcomeModal .modal-content,
html[data-theme="glass"] #cockpitModeOnboardModal .modal-content,
html[data-theme="glass"] #dashWallpaperModal .modal-content,
html[data-theme="glass"] #stashChooserModal .modal-content,
html[data-theme="glass"] #stashBoxModal .modal-content,
html[data-theme="glass"] #moderationAlertModal .modal-content,
html[data-theme="glass"] #smtpRelayTestModal .modal-content {
  color: var(--text);
}

html[data-theme="glass"] #groupManagerRoot {
  color: var(--text);
}

html[data-theme="glass"] #groupManagerRoot .share-groups-list-panel,
html[data-theme="glass"] #groupManagerRoot .share-groups-members-frame,
html[data-theme="glass"] #groupManagerRoot .share-group-meta {
  background: rgba(255, 255, 255, 0.07);
  border-color: var(--glass-edge, rgba(255, 255, 255, 0.16));
  color: var(--text);
}

html[data-theme="glass"] #groupManagerRoot .share-groups-list-empty,
html[data-theme="glass"] #groupManagerRoot .share-groups-detail-empty,
html[data-theme="glass"] #groupManagerRoot .share-group-members-empty {
  color: var(--text-muted);
  border-color: var(--glass-edge, rgba(255, 255, 255, 0.16));
  background: rgba(255, 255, 255, 0.04);
}

html[data-theme="glass"] #groupManagerRoot .share-groups-list-item,
html[data-theme="glass"] #groupManagerRoot .share-group-member-row {
  background: rgba(255, 255, 255, 0.06);
  border-color: var(--glass-edge, rgba(255, 255, 255, 0.14));
  color: var(--text);
}

html[data-theme="glass"] #groupManagerRoot .share-groups-list-item.is-active,
html[data-theme="glass"] #groupManagerRoot .share-group-member-row.is-selected {
  background: color-mix(in srgb, var(--accent) 22%, rgba(255, 255, 255, 0.06));
  border-color: color-mix(in srgb, var(--accent) 45%, rgba(255, 255, 255, 0.2));
  color: var(--text);
}

html[data-theme="glass"] #groupManagerRoot .share-group-member-primary,
html[data-theme="glass"] #groupManagerRoot .share-group-meta__item strong,
html[data-theme="glass"] #groupManagerRoot .share-groups-members-heading,
html[data-theme="glass"] #groupManagerRoot .share-group-name-label,
html[data-theme="glass"] #groupManagerRoot .group-manager-title {
  color: var(--text);
}

html[data-theme="glass"] #groupManagerRoot .share-group-member-secondary,
html[data-theme="glass"] #groupManagerRoot .share-group-member-added,
html[data-theme="glass"] #groupManagerRoot .share-group-member-badge,
html[data-theme="glass"] #groupManagerRoot .share-groups-public-hint,
html[data-theme="glass"] #groupManagerRoot .share-scope-hint {
  color: var(--text-muted);
}

html[data-theme="glass"] #groupManagerRoot .share-group-name-controls input[type="text"],
html[data-theme="glass"] #groupManagerRoot #shareGroupEmailInput {
  background: rgba(255, 255, 255, 0.08);
  border-color: var(--glass-edge, rgba(255, 255, 255, 0.18));
  color: var(--text);
}

html[data-theme="glass"] #bbInspectHelpModal .dialog-section {
  background: rgba(255, 255, 255, 0.06);
  border-color: var(--glass-edge, rgba(255, 255, 255, 0.16));
  color: var(--text);
}

html[data-theme="glass"] #dashWallpaperModal .dialog-section {
  background: rgba(255, 255, 255, 0.06);
  border-color: var(--glass-edge, rgba(255, 255, 255, 0.16));
  color: var(--text);
}

html[data-theme="glass"] #dashWallpaperModal .dash-wallpaper-choice-btn,
html[data-theme="glass"] #dashWallpaperModal .dash-wallpaper-album-sidebar,
html[data-theme="glass"] #dashWallpaperModal .dash-wallpaper-album-search__input,
html[data-theme="glass"] #dashWallpaperModal .photo-album-story-picker__thumb {
  background: rgba(255, 255, 255, 0.07);
  border-color: var(--glass-edge, rgba(255, 255, 255, 0.16));
  color: var(--text);
}

html[data-theme="glass"] #dashWallpaperModal .dash-wallpaper-lead,
html[data-theme="glass"] #dashWallpaperModal .dash-wallpaper-choice-btn__hint,
html[data-theme="glass"] #dashWallpaperModal .photo-album-story-picker__thumb-label,
html[data-theme="glass"] #dashWallpaperModal .photo-album-story-picker__empty,
html[data-theme="glass"] #dashWallpaperModal .dash-wallpaper-album-nav--sub {
  color: var(--text-muted);
}

html[data-theme="glass"] #dashWallpaperModal .dash-wallpaper-album-nav.is-active {
  background: color-mix(in srgb, var(--accent) 22%, rgba(255, 255, 255, 0.06));
  border-color: color-mix(in srgb, var(--accent) 45%, rgba(255, 255, 255, 0.2));
  color: var(--text);
}

html[data-theme="glass"] #bbInspectHelpModal .bb-inspect-help-id,
html[data-theme="glass"] #bbInspectHelpModal .bb-inspect-help-block h3,
html[data-theme="glass"] #bbInspectHelpModal .bb-inspect-help-interim-note {
  color: var(--text-muted);
}

html[data-theme="glass"] #shareManagerModal .share-scope-hint,
html[data-theme="glass"] #shareManagerModal .share-message,
html[data-theme="glass"] .admin-flagged-item,
html[data-theme="glass"] #adminRoot .admin-flagged-item {
  color: var(--text);
  background: rgba(255, 255, 255, 0.06);
  border-color: var(--glass-edge);
}

html[data-theme="glass"] #adminOverlayModal .account-profile-label,
html[data-theme="glass"] #adminOverlayModal .account-profile-hint,
html[data-theme="glass"] #adminOverlayModal .account-overlay-status {
  color: var(--text-muted);
}

html[data-theme="glass"] #adminOverlayModal .account-profile-fields input,
html[data-theme="glass"] #adminOverlayModal .account-profile-fields textarea {
  background: rgba(16, 20, 32, 0.72);
  border-color: var(--glass-edge);
  color: var(--text);
}

/* Stash box viewer */
html[data-theme="glass"] #stashBoxModal .stash-box-shell,
html[data-theme="glass"] #stashChooserModal .dialog-section {
  background: rgba(10, 14, 22, 0.55);
  color: var(--text);
}

html[data-theme="glass"] #stashBoxModal .stash-box-toolbar,
html[data-theme="glass"] #stashBoxModal .stash-box-sidebar,
html[data-theme="glass"] #stashBoxModal .stash-box-editor-wrap,
html[data-theme="glass"] #stashBoxModal .stash-box-detail {
  background: rgba(255, 255, 255, 0.06) !important;
  border-color: var(--glass-edge) !important;
  color: var(--text);
}

html[data-theme="glass"] #stashBoxModal .stash-box-loading,
html[data-theme="glass"] #stashBoxModal .stash-box-empty-hint,
html[data-theme="glass"] #stashBoxModal .stash-box-collection-hint,
html[data-theme="glass"] #stashBoxModal .stash-box-count,
html[data-theme="glass"] #stashBoxModal .stash-tree-empty {
  color: var(--text-muted) !important;
}

html[data-theme="glass"] #stashBoxModal .stash-box-tab {
  background: rgba(28, 34, 50, 0.85) !important;
  border-color: var(--glass-edge) !important;
  color: #f2f4f8 !important;
}

html[data-theme="glass"] #stashBoxModal .stash-box-tab:hover {
  background: rgba(48, 56, 78, 0.95) !important;
  color: #fff !important;
}

html[data-theme="glass"] #stashBoxModal .stash-box-tab.active {
  background: linear-gradient(135deg, rgba(212, 196, 168, 0.55), rgba(100, 140, 200, 0.4)) !important;
  border-color: color-mix(in srgb, var(--accent) 55%, var(--glass-edge)) !important;
  color: #fff !important;
}

html[data-theme="glass"] #stashBoxModal .stash-box-sidebar .archive-tree .tree-node {
  color: #e2e8f0;
}

html[data-theme="glass"] #stashBoxModal .stash-box-sidebar .archive-tree .tree-node:hover {
  background: rgba(212, 196, 168, 0.14) !important;
  color: #fff !important;
}

html[data-theme="glass"] #stashBoxModal .stash-box-sidebar .archive-tree .tree-node.active {
  background: color-mix(in srgb, var(--accent) 28%, rgba(255, 255, 255, 0.08)) !important;
  color: #fff !important;
  font-weight: 600;
}

html[data-theme="glass"] #stashBoxModal .stash-box-toolbar .pill-btn,
html[data-theme="glass"] #stashChooserModal .pill-btn {
  background: rgba(28, 34, 50, 0.88) !important;
  border-color: rgba(255, 255, 255, 0.28) !important;
  color: #f8fafc !important;
}

html[data-theme="glass"] #stashBoxModal .stash-box-toolbar .pill-btn:hover:not(:disabled),
html[data-theme="glass"] #stashChooserModal .pill-btn:hover:not(:disabled) {
  background: rgba(52, 62, 88, 0.98) !important;
  color: #fff !important;
}

html[data-theme="glass"] #stashBoxModal .stash-box-error {
  color: #fca5a5;
}

/* Stash chooser — option cards use light #fff / #fffbeb in base CSS; need dark glass panels */
html[data-theme="glass"] #stashChooserModal .share-scope-hint {
  color: rgba(203, 213, 225, 0.95) !important;
}

html[data-theme="glass"] #stashChooserModal .share-scope-hint strong {
  color: #f8fafc;
}

html[data-theme="glass"] #stashChooserModal .stash-chooser-section {
  background: rgba(255, 255, 255, 0.05) !important;
  border-color: var(--glass-edge) !important;
}

html[data-theme="glass"] .stash-chooser-option {
  background: rgba(26, 32, 48, 0.92) !important;
  border: 2px solid rgba(255, 255, 255, 0.22) !important;
  color: #f2f4f8;
}

html[data-theme="glass"] .stash-chooser-option--browse {
  border-color: color-mix(in srgb, var(--accent) 48%, rgba(255, 255, 255, 0.22)) !important;
  background: color-mix(in srgb, var(--accent) 16%, rgba(26, 32, 48, 0.94)) !important;
}

html[data-theme="glass"] .stash-chooser-option--browse:hover:not(:disabled) {
  border-color: color-mix(in srgb, var(--accent) 62%, transparent) !important;
  background: color-mix(in srgb, var(--accent) 26%, rgba(38, 46, 66, 0.96)) !important;
}

html[data-theme="glass"] .stash-chooser-option--stash {
  border-color: color-mix(in srgb, #f59e0b 55%, rgba(255, 255, 255, 0.22)) !important;
  background: color-mix(in srgb, #f59e0b 14%, rgba(32, 30, 24, 0.94)) !important;
}

html[data-theme="glass"] .stash-chooser-option--stash:hover:not(:disabled) {
  border-color: #fbbf24 !important;
  background: color-mix(in srgb, #f59e0b 28%, rgba(48, 42, 28, 0.96)) !important;
}

html[data-theme="glass"] .stash-chooser-option__title {
  color: #f8fafc !important;
}

html[data-theme="glass"] .stash-chooser-option__desc {
  color: rgba(203, 213, 225, 0.94) !important;
}

html[data-theme="glass"] .stash-chooser-option__hint {
  color: color-mix(in srgb, var(--accent) 75%, #e8ecf4) !important;
}

html[data-theme="glass"] .stash-chooser-option__hint--warn {
  color: #fcd34d !important;
}

html[data-theme="glass"] .stash-chooser-alert {
  background: rgba(127, 29, 29, 0.4) !important;
  border-color: rgba(248, 113, 113, 0.55) !important;
  color: #fecaca !important;
}

html[data-theme="glass"] .stash-chooser-alert strong {
  color: #fee2e2 !important;
}

html[data-theme="glass"] .stash-chooser-alert p {
  color: #fecaca !important;
}

html[data-theme="glass"] .stash-chooser-confirm-target {
  color: #f2f4f8 !important;
}

html[data-theme="glass"] #stashChooserModal .share-message {
  color: var(--text-muted) !important;
}

/* ========== Budget (bb_budget.html) ========== */
html[data-theme="glass"] .bb-budget-body .budget-app,
html[data-theme="glass"] .bb-budget-body .budget-main-area,
html[data-theme="glass"] .bb-budget-body .budget-lens-shell,
html[data-theme="glass"] .bb-budget-body .budget-body {
  background: transparent !important;
  color: var(--text);
}

html[data-theme="glass"] .bb-budget-body :is(
  .budget-topbar,
  .budget-lens-bar,
  .budget-lens-kpi-card,
  .budget-lens-placeholder,
  .budget-coa,
  .budget-workbench,
  .budget-inspector,
  .budget-workbench-tabs,
  .budget-panel-body,
  .budget-quick-card,
  .budget-balance-bar,
  .budget-expense-report-toolbar,
  .budget-cashflow-toolbar,
  .budget-cashflow-summary,
  .budget-register-toolbar,
  .budget-timeline-toolbar,
  .budget-memo-report-panel,
  .budget-memo-report-total,
  .budget-timeline-kpi,
  .budget-timeline-side-card,
  .budget-liability-payoff,
  .budget-inspector-column-head,
  .budget-pdf-range-presets,
  .budget-table-wrap,
  .budget-lens-total-row td,
  .budget-cashflow-group-total td,
  .budget-cashflow-group-head td,
  .budget-trial-total,
  .app-trial-notice
) {
  background: rgba(255, 255, 255, 0.07) !important;
  backdrop-filter: blur(14px) saturate(1.25);
  -webkit-backdrop-filter: blur(14px) saturate(1.25);
  border-color: var(--glass-edge) !important;
  color: var(--text);
  box-shadow:
    0 1px 0 rgba(255, 255, 255, 0.1) inset,
    0 8px 24px rgba(0, 0, 0, 0.22);
}

html[data-theme="glass"] .bb-budget-body .budget-lens-btn,
html[data-theme="glass"] .bb-budget-body .budget-workbench-tabs button:not(.active) {
  background: rgba(255, 255, 255, 0.1) !important;
  border-color: var(--glass-edge) !important;
  color: var(--text-muted) !important;
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.08) inset;
}

html[data-theme="glass"] .bb-budget-body .budget-lens-btn:hover,
html[data-theme="glass"] .bb-budget-body .budget-workbench-tabs button:hover:not(.active) {
  background: rgba(255, 255, 255, 0.14) !important;
  color: var(--text) !important;
}

html[data-theme="glass"] .bb-budget-body .budget-lens-btn.active,
html[data-theme="glass"] .bb-budget-body .budget-workbench-tabs button.active,
html[data-theme="glass"] .bb-budget-body .budget-journal-mode-bar .pill-btn.active {
  background: linear-gradient(135deg, rgba(212, 196, 168, 0.42), rgba(100, 140, 200, 0.35)) !important;
  border-color: color-mix(in srgb, var(--accent) 55%, var(--glass-edge)) !important;
  color: #fff !important;
  box-shadow: 0 0 16px rgba(212, 196, 168, 0.18);
}

html[data-theme="glass"] .bb-budget-body .budget-kpi {
  background: rgba(255, 255, 255, 0.08) !important;
  border-color: var(--glass-edge) !important;
}

html[data-theme="glass"] .bb-budget-body .budget-balance-bar.balanced {
  background: rgba(20, 83, 45, 0.28) !important;
  border-color: rgba(74, 222, 128, 0.35) !important;
  color: #bbf7d0 !important;
}

html[data-theme="glass"] .bb-budget-body .budget-balance-bar.unbalanced {
  background: rgba(127, 29, 29, 0.35) !important;
  border-color: rgba(248, 113, 113, 0.45) !important;
  color: #fecaca !important;
}

html[data-theme="glass"] .bb-budget-body .budget-inspector-range-btn.active,
html[data-theme="glass"] .bb-budget-body .budget-inspector-sort-btn.active {
  background: linear-gradient(135deg, rgba(212, 196, 168, 0.35), rgba(100, 140, 200, 0.28)) !important;
  border-color: color-mix(in srgb, var(--accent) 50%, var(--glass-edge)) !important;
  color: #fff !important;
}

html[data-theme="glass"] .bb-budget-body .budget-detached-window {
  border-color: var(--glass-edge) !important;
  background: rgba(255, 255, 255, 0.06) !important;
  backdrop-filter: blur(16px) saturate(1.25);
  -webkit-backdrop-filter: blur(16px) saturate(1.25);
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.45);
}

html[data-theme="glass"] .bb-budget-body .budget-detached-window-header,
html[data-theme="glass"] .bb-budget-body .budget-detached-window-body,
html[data-theme="glass"] .bb-budget-body .budget-detached-window-content {
  background: rgba(255, 255, 255, 0.07) !important;
  border-color: var(--glass-edge) !important;
  color: var(--text);
}

html[data-theme="glass"] .bb-budget-body .budget-detached-window-header .pill-btn {
  background: rgba(255, 255, 255, 0.1) !important;
  border-color: var(--glass-edge) !important;
  color: var(--text) !important;
}

html[data-theme="glass"] .bb-budget-body .budget-period,
html[data-theme="glass"] .bb-budget-body .budget-period-label,
html[data-theme="glass"] .bb-budget-body .budget-kpi span,
html[data-theme="glass"] .bb-budget-body .budget-inspector-toolbar-lbl,
html[data-theme="glass"] .bb-budget-body .budget-hint,
html[data-theme="glass"] .bb-budget-body .budget-post-hint,
html[data-theme="glass"] .bb-budget-body .budget-lens-section-title,
html[data-theme="glass"] .bb-budget-body .budget-lens-kpi-card span,
html[data-theme="glass"] .bb-budget-body .budget-panel-title,
html[data-theme="glass"] .bb-budget-body .budget-inspector-kicker,
html[data-theme="glass"] .bb-budget-body .budget-coa-code,
html[data-theme="glass"] .bb-budget-body .budget-quick-fields label,
html[data-theme="glass"] .bb-budget-body .budget-form-row label,
html[data-theme="glass"] .bb-budget-body .budget-workbook-row label,
html[data-theme="glass"] .bb-budget-body .budget-cashflow-range-hint,
html[data-theme="glass"] .bb-budget-body .budget-memo-time-label,
html[data-theme="glass"] .bb-budget-body .budget-register-line-detail {
  color: var(--text-muted);
}

html[data-theme="glass"] .bb-budget-body .budget-workbook-title,
html[data-theme="glass"] .bb-budget-body .budget-kpi strong,
html[data-theme="glass"] .bb-budget-body .budget-lens-hero,
html[data-theme="glass"] .bb-budget-body .budget-lens-kpi-card strong,
html[data-theme="glass"] .bb-budget-body .budget-inspector-selected-title,
html[data-theme="glass"] .bb-budget-body .budget-coa-group-title,
html[data-theme="glass"] .bb-budget-body .budget-quick-card-title {
  color: var(--text);
}

html[data-theme="glass"] .bb-budget-body .budget-kpi--net.positive strong {
  color: #86efac;
}

html[data-theme="glass"] .bb-budget-body .budget-kpi--net.negative strong {
  color: #fca5a5;
}

html[data-theme="glass"] .bb-budget-body .budget-workbook-title--editable:hover {
  background: rgba(255, 255, 255, 0.08) !important;
  border-color: var(--glass-edge) !important;
}

html[data-theme="glass"] .bb-budget-body .budget-coa-row {
  color: var(--text);
}

html[data-theme="glass"] .bb-budget-body .budget-coa-row:hover {
  background: rgba(255, 255, 255, 0.1) !important;
}

html[data-theme="glass"] .bb-budget-body .budget-coa-row.active {
  background: color-mix(in srgb, var(--accent) 18%, rgba(255, 255, 255, 0.08)) !important;
  border-color: color-mix(in srgb, var(--accent) 40%, var(--glass-edge)) !important;
  color: var(--text) !important;
}

html[data-theme="glass"] .bb-budget-body .budget-coa-group-title {
  border-left-color: color-mix(in srgb, var(--accent) 50%, var(--glass-edge)) !important;
  background: linear-gradient(
    90deg,
    rgba(212, 196, 168, 0.14) 0%,
    rgba(255, 255, 255, 0.04) 100%
  ) !important;
}

html[data-theme="glass"] .bb-budget-body .budget-lines-table th,
html[data-theme="glass"] .bb-budget-body .budget-data-table th,
html[data-theme="glass"] .bb-budget-body .budget-lens-table.budget-data-table th {
  background: rgba(255, 255, 255, 0.12) !important;
  color: var(--text) !important;
  border-color: var(--glass-edge) !important;
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.1) inset;
}

html[data-theme="glass"] .bb-budget-body .budget-cashflow-table thead th {
  background: rgba(255, 255, 255, 0.14) !important;
  color: var(--text) !important;
  border-bottom-color: var(--glass-edge) !important;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.25);
}

html[data-theme="glass"] .bb-budget-body .budget-lines-table td,
html[data-theme="glass"] .bb-budget-body .budget-data-table td,
html[data-theme="glass"] .bb-budget-body .budget-lens-table.budget-data-table td,
html[data-theme="glass"] .bb-budget-body .budget-cashflow-table td {
  border-color: var(--glass-edge) !important;
  color: var(--text);
  background: transparent;
}

html[data-theme="glass"] .bb-budget-body .budget-cashflow-pos {
  color: #86efac;
}

html[data-theme="glass"] .bb-budget-body .budget-cashflow-neg {
  color: #fca5a5;
}

html[data-theme="glass"] .bb-budget-body .budget-workbench-tab-pdf {
  color: #a7f3d0 !important;
  border-color: color-mix(in srgb, #5eead4 45%, var(--glass-edge)) !important;
}

html[data-theme="glass"] .bb-budget-body .budget-api-banner {
  background: rgba(127, 29, 29, 0.35) !important;
  border-color: rgba(248, 113, 113, 0.45) !important;
  color: #fecaca !important;
}

html[data-theme="glass"] .bb-budget-body .index-header {
  background: rgba(255, 255, 255, 0.06) !important;
  backdrop-filter: blur(var(--glass-blur)) saturate(1.35);
  -webkit-backdrop-filter: blur(var(--glass-blur)) saturate(1.35);
  border-bottom-color: var(--glass-edge) !important;
}

html[data-theme="glass"] .bb-budget-body .footer {
  background: rgba(255, 255, 255, 0.06) !important;
  backdrop-filter: blur(var(--glass-blur)) saturate(1.35);
  -webkit-backdrop-filter: blur(var(--glass-blur)) saturate(1.35);
  border-top-color: var(--glass-edge) !important;
}

html[data-theme="glass"] #budgetPdfRangeModal .modal-content.dialog-card {
  background: var(--dialog-surface) !important;
  border-color: var(--glass-edge) !important;
  color: var(--text);
  backdrop-filter: blur(var(--glass-blur)) saturate(1.35);
  -webkit-backdrop-filter: blur(var(--glass-blur)) saturate(1.35);
}

html[data-theme="glass"] #budgetPdfRangeModal .budget-modal-fields label,
html[data-theme="glass"] #budgetPdfRangeModal .budget-pdf-range-presets label {
  color: var(--text-muted);
}

html[data-theme="glass"] #budgetPdfRangeModal .budget-modal-fields input[type="date"] {
  color-scheme: dark;
}

html[data-theme="glass"] #budgetPdfRangeModal .budget-pdf-range-error {
  background: rgba(127, 29, 29, 0.35) !important;
  border-color: rgba(248, 113, 113, 0.45) !important;
  color: #fecaca !important;
}

/* Budget selects/inputs — beat budget.css light-only surfaces (workbook picker, quick entry, etc.) */
html[data-theme="glass"] .bb-budget-body .budget-workbook-row-inner select,
html[data-theme="glass"] .bb-budget-body .budget-quick-fields select,
html[data-theme="glass"] .bb-budget-body .budget-form-row select,
html[data-theme="glass"] .bb-budget-body .budget-lines-table select,
html[data-theme="glass"] .bb-budget-body .budget-th-cash-source select,
html[data-theme="glass"] .bb-budget-body .budget-cashflow-field-label select,
html[data-theme="glass"] .bb-budget-body .budget-expense-report-field-label select,
html[data-theme="glass"] .bb-budget-body .budget-reconcile-field select,
html[data-theme="glass"] .bb-budget-body .budget-memo-time-label select,
html[data-theme="glass"] .bb-budget-body .budget-modal-fields select,
html[data-theme="glass"] #budgetAccountModal .budget-modal-fields select,
html[data-theme="glass"] #budgetPdfRangeModal .budget-modal-fields select {
  background: rgba(16, 20, 32, 0.82) !important;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border-color: rgba(255, 255, 255, 0.28) !important;
  color: #f2f4f8 !important;
}

html[data-theme="glass"] .bb-budget-body select option,
html[data-theme="glass"] #budgetAccountModal select option,
html[data-theme="glass"] #budgetPdfRangeModal select option {
  background: #1a2030;
  color: #f2f4f8;
}

html[data-theme="glass"] .bb-budget-body .budget-workbook-row-inner .pill-btn {
  background: rgba(22, 28, 42, 0.55) !important;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-color: var(--glass-edge) !important;
  color: #f2f4f8 !important;
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.1) inset;
}

html[data-theme="glass"] .bb-budget-body .budget-workbook-row-inner .pill-btn:hover:not(:disabled) {
  background: rgba(255, 255, 255, 0.16) !important;
  border-color: rgba(255, 255, 255, 0.32) !important;
  color: #fff !important;
}

html[data-theme="glass"] .bb-budget-body .budget-workbook-row {
  border-bottom-color: var(--glass-edge) !important;
}
