/* IChat account appearance, chat themes, wallpaper, and reading comfort */
.appearance-page { --appearance-bg:#eef4f9;--appearance-panel:#fff;--appearance-text:#172b43;--appearance-muted:#7d8fa3;--appearance-border:#e0e9f1; }
.appearance-screen { background:var(--appearance-bg);display:flex;flex-direction:column;height:100%;padding-top:37px; }
.appearance-statusbar { color:#fff!important; }
.appearance-topbar { align-items:center;background:linear-gradient(135deg,#061a36,#0b477e);color:#fff;display:grid;grid-template-columns:44px 1fr 40px;min-height:72px;padding:10px 17px; }
.appearance-topbar .back-button { position:static; }
.appearance-topbar small { color:#82d4ff;display:block;font-size:7px;font-weight:900;letter-spacing:1.35px; }
.appearance-topbar h1 { font-size:19px;letter-spacing:-.45px;margin:3px 0 0; }
.appearance-top-icon { align-items:center;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.13);border-radius:13px;color:#9bdcff;display:flex;font-size:20px;height:38px;justify-content:center;width:38px; }
.appearance-scroll { flex:1;min-height:0;overflow-x:hidden;overflow-y:auto;padding:14px 14px calc(25px + env(safe-area-inset-bottom));scrollbar-width:none; }
.appearance-scroll::-webkit-scrollbar { display:none; }
.appearance-flash { margin:0 0 11px; }
.appearance-preview-card { background:#0a1a2d;border-radius:24px;box-shadow:0 14px 32px rgba(7,29,53,.2);overflow:hidden;padding:0; }
.appearance-preview-wallpaper { background-color:#102f4d;background-image:radial-gradient(rgba(255,255,255,.09) 1px,transparent 1px);background-size:17px 17px;min-height:195px;padding:18px 14px 15px;position:relative;transition:background .2s ease; }
.appearance-preview-wallpaper > small { color:#84d4ff;display:block;font-size:7px;font-weight:900;letter-spacing:1.3px;margin-bottom:19px; }
.appearance-preview-message { box-shadow:0 7px 17px rgba(0,0,0,.14);display:flex;flex-direction:column;font-size:calc(10px * var(--ichat-text-scale));max-width:77%;padding:9px 11px;transition:border-radius .2s ease,background .2s ease; }
.appearance-preview-message.incoming { background:rgba(255,255,255,.95);border-left:3px solid var(--ichat-accent);border-radius:5px var(--ichat-message-corner) var(--ichat-message-corner) var(--ichat-message-corner);color:#24374c; }
.appearance-preview-message.incoming b { color:var(--ichat-accent);font-size:.86em;margin-bottom:3px; }
.appearance-preview-message.outgoing { background:linear-gradient(135deg,var(--ichat-accent),color-mix(in srgb,var(--ichat-accent),#07182f 26%));border-radius:var(--ichat-message-corner) 5px var(--ichat-message-corner) var(--ichat-message-corner);color:#fff;margin:12px 0 0 auto; }
.appearance-preview-message.outgoing i { color:rgba(255,255,255,.72);font-size:6px;font-style:normal;margin-top:4px;text-align:right; }
.appearance-panel { background:var(--appearance-panel);border:1px solid var(--appearance-border);border-radius:22px;box-shadow:0 9px 24px rgba(27,61,91,.07);margin-top:12px;padding:14px; }
.appearance-panel > header { align-items:center;display:flex;justify-content:space-between;margin-bottom:12px; }
.appearance-panel > header small { color:var(--ichat-accent);display:block;font-size:6px;font-weight:900;letter-spacing:1.1px; }
.appearance-panel > header h2 { color:var(--appearance-text);font-size:14px;margin:3px 0 0; }
.appearance-panel > header > span { color:var(--appearance-muted);font-size:8px;font-weight:800; }
.appearance-theme-grid { display:flex;gap:9px;margin:0 -14px;overflow-x:auto;padding:0 14px 5px;scroll-snap-type:x proximity;scrollbar-width:none; }
.appearance-theme-grid::-webkit-scrollbar { display:none; }
.appearance-theme-option { cursor:pointer;display:flex;flex:0 0 92px;flex-direction:column;scroll-snap-align:start; }
.appearance-theme-option input,.appearance-wallpaper-option input,.appearance-segmented input,.appearance-choice-row input { position:absolute;opacity:0;pointer-events:none; }
.appearance-theme-demo { background:#132235;border:2px solid transparent;border-radius:17px;display:block;height:115px;overflow:hidden;position:relative;transition:border-color .18s ease,transform .18s ease;width:92px; }
.appearance-theme-demo::before { background-image:radial-gradient(rgba(255,255,255,.09) .8px,transparent .8px);background-size:13px 13px;content:'';inset:0;position:absolute; }
.appearance-theme-demo i,.appearance-theme-demo b { border-radius:9px;display:block;height:20px;position:absolute;width:53px; }
.appearance-theme-demo i { left:8px;top:23px; }.appearance-theme-demo b { right:8px;top:50px; }
.appearance-theme-demo em { bottom:9px;font-size:18px;font-style:normal;position:absolute;right:9px; }
.theme-ocean .appearance-theme-demo i { background:#fff; }.theme-ocean .appearance-theme-demo b { background:linear-gradient(135deg,#22a8ee,#1769d4); }
.theme-mint .appearance-theme-demo i { background:#f3fff9; }.theme-mint .appearance-theme-demo b { background:linear-gradient(135deg,#4cd2a2,#158762); }
.theme-sunset .appearance-theme-demo i { background:#fff4f0; }.theme-sunset .appearance-theme-demo b { background:linear-gradient(135deg,#8d5de2,#f07c62); }
.theme-lavender .appearance-theme-demo i { background:#faf5ff; }.theme-lavender .appearance-theme-demo b { background:linear-gradient(135deg,#8c6bff,#5b3cc5); }
.theme-rose .appearance-theme-demo i { background:#fff4f7; }.theme-rose .appearance-theme-demo b { background:linear-gradient(135deg,#ff8fac,#d84c72); }
.theme-graphite .appearance-theme-demo i { background:#354152; }.theme-graphite .appearance-theme-demo b { background:linear-gradient(135deg,#51718f,#172638); }
.appearance-theme-option input:checked + .appearance-theme-demo { border-color:var(--ichat-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--ichat-accent),transparent 82%);transform:translateY(-2px); }
.appearance-theme-option strong { color:var(--appearance-text);font-size:9px;margin:7px 2px 0; }.appearance-theme-option > small { color:var(--appearance-muted);font-size:6px;margin:2px 2px 0; }
.appearance-wallpaper-grid { display:grid;gap:8px;grid-template-columns:repeat(3,1fr); }
.appearance-wallpaper-option { cursor:pointer;min-width:0; }
.appearance-wallpaper-option > span { background-color:#dce9f2;border:2px solid transparent;border-radius:14px;display:block;height:67px;transition:border-color .18s ease,transform .18s ease; }
.appearance-wallpaper-option input:checked + span { border-color:var(--ichat-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--ichat-accent),transparent 84%);transform:scale(.97); }
.appearance-wallpaper-option b { color:var(--appearance-text);display:block;font-size:8px;margin:5px 2px 0; }.appearance-wallpaper-option small { color:var(--appearance-muted);display:block;font-size:6px;margin:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
.wallpaper-doodles > span,.appearance-wallpaper-doodles .appearance-preview-wallpaper { background-color:#dcecf4;background-image:radial-gradient(circle at 20% 20%,rgba(18,100,151,.13) 0 2px,transparent 2.5px),radial-gradient(circle at 70% 65%,rgba(18,100,151,.1) 0 3px,transparent 3.5px);background-size:27px 27px,39px 39px; }
.wallpaper-dots > span,.appearance-wallpaper-dots .appearance-preview-wallpaper { background-color:#e7f0f6;background-image:radial-gradient(rgba(24,98,145,.15) .8px,transparent .8px);background-size:12px 12px; }
.wallpaper-waves > span,.appearance-wallpaper-waves .appearance-preview-wallpaper { background-color:#dceef0;background-image:repeating-radial-gradient(ellipse at 0 50%,transparent 0 12px,rgba(19,128,145,.09) 13px 14px); }
.wallpaper-stars > span,.appearance-wallpaper-stars .appearance-preview-wallpaper { background-color:#142942;background-image:radial-gradient(#8edcff 1px,transparent 1.5px),radial-gradient(#fff 1px,transparent 1.5px);background-position:0 0,11px 13px;background-size:29px 29px,37px 37px; }
.wallpaper-geometry > span,.appearance-wallpaper-geometry .appearance-preview-wallpaper { background-color:#e7e5f5;background-image:linear-gradient(30deg,rgba(104,76,174,.09) 12%,transparent 12.5%,transparent 87%,rgba(104,76,174,.09) 87.5%),linear-gradient(150deg,rgba(104,76,174,.09) 12%,transparent 12.5%,transparent 87%,rgba(104,76,174,.09) 87.5%);background-size:28px 49px; }
.wallpaper-clean > span,.appearance-wallpaper-clean .appearance-preview-wallpaper { background:#edf3f7;background-image:none; }
.appearance-color-panel > header { margin-bottom:9px; }.appearance-current-color { border:3px solid var(--appearance-panel);border-radius:50%;box-shadow:0 0 0 1px var(--appearance-border);height:25px;width:25px; }
.appearance-color-row { display:flex;gap:8px;overflow-x:auto;padding:3px;scrollbar-width:none; }.appearance-color-row::-webkit-scrollbar { display:none; }
.appearance-color-row > button,.appearance-color-custom { background:var(--swatch);border:3px solid var(--appearance-panel);border-radius:50%;box-shadow:0 0 0 1px var(--appearance-border);cursor:pointer;display:block;flex:0 0 30px;height:30px;padding:0;width:30px; }
.appearance-color-custom { align-items:center;background:conic-gradient(#f44,#fc3,#3c6,#2bd,#36f,#a4e,#f44);color:#fff;display:flex;justify-content:center;overflow:hidden;position:relative; }.appearance-color-custom input { inset:0;opacity:0;position:absolute; }.appearance-color-custom span { font-size:16px;text-shadow:0 1px 4px #000; }
.appearance-list-panel { padding:7px 13px; }.appearance-setting-row { align-items:center;color:var(--appearance-text);display:flex;gap:11px;min-height:58px;padding:7px 1px; }.appearance-setting-icon { align-items:center;background:#eaf5fd;border-radius:13px;color:var(--ichat-accent);display:flex;flex:0 0 39px;font-size:20px;height:39px;justify-content:center;width:39px; }.appearance-setting-row > div { display:flex;flex:1;flex-direction:column;min-width:0; }.appearance-setting-row b { font-size:10px; }.appearance-setting-row small { color:var(--appearance-muted);font-size:7px;line-height:1.4;margin-top:3px; }.appearance-night-value { color:var(--ichat-accent);font-size:8px;font-weight:900; }
.appearance-segmented { background:color-mix(in srgb,var(--appearance-bg),#8797a7 8%);border-radius:12px;display:grid;gap:3px;grid-template-columns:repeat(3,1fr);margin:0 0 7px 50px;padding:3px; }.appearance-segmented span,.appearance-choice-row span { border-radius:9px;color:var(--appearance-muted);display:block;font-size:8px;font-weight:800;padding:7px 5px;text-align:center; }.appearance-segmented input:checked + span,.appearance-choice-row input:checked + span { background:var(--appearance-panel);box-shadow:0 3px 9px rgba(27,58,83,.12);color:var(--ichat-accent); }
.appearance-range-panel > header { margin-bottom:8px; }.appearance-range-copy { align-items:center;display:flex;gap:10px; }.appearance-range-copy small,.appearance-range-copy b { color:var(--appearance-text);font-size:10px; }.appearance-range-copy b { font-size:16px; }.appearance-range-copy input { accent-color:var(--ichat-accent);flex:1; }.appearance-range-sample { background:var(--appearance-bg);border-radius:12px;color:var(--appearance-text);font-size:calc(9px * var(--ichat-text-scale));line-height:1.4;margin:9px 0 0;padding:9px 10px; }
.toggle-row { cursor:pointer; }.toggle-row > input { height:0;opacity:0;position:absolute;width:0; }.toggle-row > i { background:#c8d1da;border-radius:999px;display:block;flex:0 0 43px;height:24px;position:relative;transition:background .2s ease; }.toggle-row > i::after { background:#fff;border-radius:50%;box-shadow:0 2px 6px rgba(16,38,57,.25);content:'';height:20px;left:2px;position:absolute;top:2px;transition:transform .2s ease;width:20px; }.toggle-row > input:checked + i { background:var(--ichat-accent); }.toggle-row > input:checked + i::after { transform:translateX(19px); }
.appearance-size-panel fieldset { border:0;margin:0;padding:0; }.appearance-size-panel fieldset + fieldset { border-top:1px solid var(--appearance-border);margin-top:11px;padding-top:11px; }.appearance-size-panel legend { color:var(--appearance-muted);font-size:7px;font-weight:800;margin-bottom:6px; }.appearance-choice-row { background:var(--appearance-bg);border-radius:12px;display:grid;gap:3px;grid-template-columns:repeat(3,1fr);padding:3px; }
.appearance-save { align-items:center;background:linear-gradient(135deg,var(--ichat-accent),color-mix(in srgb,var(--ichat-accent),#07182f 24%));border:0;border-radius:16px;box-shadow:0 11px 23px color-mix(in srgb,var(--ichat-accent),transparent 70%);color:#fff;display:flex;font-size:10px;font-weight:900;height:49px;justify-content:center;margin-top:14px;width:100%; }.appearance-save svg { fill:none;height:20px;margin-left:8px;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2;width:20px; }.appearance-sync-note { color:var(--appearance-muted);font-size:7px;line-height:1.45;margin:9px auto 0;max-width:290px;text-align:center; }

/* Theme palette shared by preview and real chat */
.appearance-theme-ocean { --theme-companion:#1769d4; }.appearance-theme-mint { --theme-companion:#158762; }.appearance-theme-sunset { --theme-companion:#bd5d86; }.appearance-theme-lavender { --theme-companion:#5b3cc5; }.appearance-theme-rose { --theme-companion:#d84c72; }.appearance-theme-graphite { --theme-companion:#172638; }
.chat-page[class*="appearance-theme-"] .mine .message-bubble { background:linear-gradient(135deg,var(--ichat-accent),var(--theme-companion));box-shadow:0 9px 20px color-mix(in srgb,var(--ichat-accent),transparent 72%); }
.chat-page .message-bubble { border-radius:5px var(--ichat-message-corner) var(--ichat-message-corner) var(--ichat-message-corner); }
.chat-page .mine .message-bubble { border-radius:var(--ichat-message-corner) 5px var(--ichat-message-corner) var(--ichat-message-corner); }
.chat-page .message-bubble p { font-size:calc(13px * var(--ichat-text-scale)); }
.chat-page.appearance-wallpaper-doodles .messages { background-color:#e3eff5;background-image:radial-gradient(circle at 20% 20%,rgba(18,100,151,.09) 0 2px,transparent 2.5px),radial-gradient(circle at 70% 65%,rgba(18,100,151,.07) 0 3px,transparent 3.5px);background-size:27px 27px,39px 39px; }
.chat-page.appearance-wallpaper-dots .messages { background-color:#edf4f8;background-image:radial-gradient(rgba(24,98,145,.11) .8px,transparent .8px);background-size:12px 12px; }
.chat-page.appearance-wallpaper-waves .messages { background-color:#e5f2f3;background-image:repeating-radial-gradient(ellipse at 0 50%,transparent 0 13px,rgba(19,128,145,.07) 14px 15px); }
.chat-page.appearance-wallpaper-stars .messages { background-color:#13283e;background-image:radial-gradient(#70bde7 1px,transparent 1.5px),radial-gradient(rgba(255,255,255,.7) 1px,transparent 1.5px);background-position:0 0,11px 13px;background-size:29px 29px,37px 37px; }
.chat-page.appearance-wallpaper-geometry .messages { background-color:#eceaf7;background-image:linear-gradient(30deg,rgba(104,76,174,.07) 12%,transparent 12.5%,transparent 87%,rgba(104,76,174,.07) 87.5%),linear-gradient(150deg,rgba(104,76,174,.07) 12%,transparent 12.5%,transparent 87%,rgba(104,76,174,.07) 87.5%);background-size:28px 49px; }
.chat-page.appearance-wallpaper-clean .messages { background:#eef4f8;background-image:none; }
.chat-page.appearance-sticker-small .message-sticker-attachment { max-width:130px; }.chat-page.appearance-sticker-large .message-sticker-attachment { max-width:220px; }
.chat-page.appearance-emoji-compact .composer-emoji-panel button { font-size:15px; }.chat-page.appearance-emoji-large .composer-emoji-panel button { font-size:23px;height:38px; }

/* Night mode */
.appearance-page.appearance-night-dark { --appearance-bg:#0f1722;--appearance-panel:#18222e;--appearance-text:#f4f7fb;--appearance-muted:#93a2b3;--appearance-border:#283646;background:#07101b; }
.appearance-page.appearance-night-dark .phone-shell { background:#0f1722; }.appearance-page.appearance-night-dark .appearance-preview-card { border:1px solid #2b3b4d; }.appearance-page.appearance-night-dark .appearance-setting-icon { background:#233344; }.appearance-page.appearance-night-dark .appearance-theme-demo { background:#0d1622; }
.chat-page.appearance-night-dark .messages { filter:saturate(.9) brightness(.76); }.chat-page.appearance-night-dark .message-bubble { background:#202c39;border-color:#314152;color:#f3f7fb; }.chat-page.appearance-night-dark .mine .message-bubble { filter:brightness(1.25); }.chat-page.appearance-night-dark .message-composer,.chat-page.appearance-night-dark .composer-reply,.chat-page.appearance-night-dark .composer-emoji-panel { background:#151f2a;border-color:#263545; }.chat-page.appearance-night-dark .message-composer input { background:#202d3a;border-color:#314050;color:#fff; }
@media (prefers-color-scheme:dark) {
  .appearance-page.appearance-night-system { --appearance-bg:#0f1722;--appearance-panel:#18222e;--appearance-text:#f4f7fb;--appearance-muted:#93a2b3;--appearance-border:#283646;background:#07101b; }
  .appearance-page.appearance-night-system .phone-shell { background:#0f1722; }.appearance-page.appearance-night-system .appearance-setting-icon { background:#233344; }
  .chat-page.appearance-night-system .messages { filter:saturate(.9) brightness(.78); }.chat-page.appearance-night-system .message-bubble { background:#202c39;border-color:#314152;color:#f3f7fb; }.chat-page.appearance-night-system .mine .message-bubble { filter:brightness(1.22); }.chat-page.appearance-night-system .message-composer,.chat-page.appearance-night-system .composer-reply,.chat-page.appearance-night-system .composer-emoji-panel { background:#151f2a;border-color:#263545; }.chat-page.appearance-night-system .message-composer input { background:#202d3a;border-color:#314050;color:#fff; }
}
.appearance-reduce-motion *,.appearance-reduce-motion *::before,.appearance-reduce-motion *::after { animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important; }

/* Home follows the account color and night preference too */
.app-page[class*="appearance-theme-"] .bottom-nav a.active,.app-page[class*="appearance-theme-"] .home-folder-tab.active { color:var(--ichat-accent); }
.app-page[class*="appearance-theme-"] .compose-button { background:linear-gradient(135deg,var(--ichat-accent),var(--theme-companion)); }
.app-page.appearance-night-dark .home-screen,.app-page.appearance-night-dark .chat-list-section { background:#0f1722;color:#f4f7fb; }
.app-page.appearance-night-dark .chat-list-header h2,.app-page.appearance-night-dark .chat-item h3,.app-page.appearance-night-dark .folder-tabs-manage b { color:#f3f7fb; }
.app-page.appearance-night-dark .chat-item,.app-page.appearance-night-dark .bottom-nav,.app-page.appearance-night-dark .home-folder-tabs,.app-page.appearance-night-dark .account-popover { background:#18222e;border-color:#293847;color:#f4f7fb; }
.app-page.appearance-night-dark .chat-item p,.app-page.appearance-night-dark .account-links small { color:#91a2b3; }.app-page.appearance-night-dark .account-links a { color:#e9f1f7; }.app-page.appearance-night-dark .account-links a:hover { background:#223140; }.app-page.appearance-night-dark .account-popover-head { background:#202d3a;border-color:#2b3a49; }.app-page.appearance-night-dark .account-popover-head strong { color:#fff; }
@media (prefers-color-scheme:dark) {
  .app-page.appearance-night-system .home-screen,.app-page.appearance-night-system .chat-list-section { background:#0f1722;color:#f4f7fb; }
  .app-page.appearance-night-system .chat-list-header h2,.app-page.appearance-night-system .chat-item h3,.app-page.appearance-night-system .folder-tabs-manage b { color:#f3f7fb; }
  .app-page.appearance-night-system .chat-item,.app-page.appearance-night-system .bottom-nav,.app-page.appearance-night-system .home-folder-tabs,.app-page.appearance-night-system .account-popover { background:#18222e;border-color:#293847;color:#f4f7fb; }
  .app-page.appearance-night-system .chat-item p,.app-page.appearance-night-system .account-links small { color:#91a2b3; }.app-page.appearance-night-system .account-links a { color:#e9f1f7; }.app-page.appearance-night-system .account-popover-head { background:#202d3a;border-color:#2b3a49; }.app-page.appearance-night-system .account-popover-head strong { color:#fff; }
}

@media (max-width:600px) { .appearance-screen { padding-top:max(37px,env(safe-area-inset-top)); } }

/* Entry point shown on the account profile */
.profile-appearance-shortcut { margin:0 16px 13px; }
.profile-appearance-shortcut a { align-items:center;background:linear-gradient(135deg,#071e3c,#0b5f9f);border-radius:20px;box-shadow:0 12px 28px rgba(8,59,102,.17);color:#fff;display:flex;gap:12px;padding:14px;text-decoration:none; }
.profile-appearance-shortcut a > span { align-items:center;background:linear-gradient(145deg,#bceaff,#fff);border-radius:14px;color:#087ccb;display:flex;flex:0 0 44px;height:44px;justify-content:center;width:44px; }
.profile-appearance-shortcut svg { fill:none;height:24px;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7;width:24px; }
.profile-appearance-shortcut div { display:flex;flex:1;flex-direction:column;min-width:0; }.profile-appearance-shortcut small { color:#83d5ff;font-size:6px;font-weight:900;letter-spacing:1.1px; }.profile-appearance-shortcut b { font-size:12px;margin-top:2px; }.profile-appearance-shortcut p { color:#bedbf1;font-size:7px;line-height:1.4;margin:3px 0 0; }.profile-appearance-shortcut i { color:#8ed7ff;font-size:21px;font-style:normal; }

/* Stable application-wide light/dark palette. Every authenticated page consumes
   the same tokens so changing Night Mode never leaves a white page behind. */
.app-page {
  --app-canvas:#edf2f6;
  --app-surface:#ffffff;
  --app-surface-soft:#f5f8fb;
  --app-surface-raised:#ffffff;
  --app-border:#dce5ed;
  --app-text:#17283d;
  --app-text-soft:#617589;
  --app-text-muted:#8a99a8;
  --app-input:#f3f7fa;
  --app-hover:#edf5fb;
  --app-danger-surface:#fff1f3;
  --app-danger:#d84c5c;
}
.app-page.appearance-night-dark {
  --app-canvas:#0d1622;
  --app-surface:#182330;
  --app-surface-soft:#121d29;
  --app-surface-raised:#202d3b;
  --app-border:#2c3c4c;
  --app-text:#f3f7fb;
  --app-text-soft:#b4c1ce;
  --app-text-muted:#8fa0b1;
  --app-input:#202d3a;
  --app-hover:#243443;
  --app-danger-surface:#342129;
  --app-danger:#ff7d8b;
  background:#07101a;
  color-scheme:dark;
}
@media (prefers-color-scheme:dark) {
  .app-page.appearance-night-system {
    --app-canvas:#0d1622;
    --app-surface:#182330;
    --app-surface-soft:#121d29;
    --app-surface-raised:#202d3b;
    --app-border:#2c3c4c;
    --app-text:#f3f7fb;
    --app-text-soft:#b4c1ce;
    --app-text-muted:#8fa0b1;
    --app-input:#202d3a;
    --app-hover:#243443;
    --app-danger-surface:#342129;
    --app-danger:#ff7d8b;
    background:#07101a;
    color-scheme:dark;
  }
}

/* Remove parent filters: they made colors and media change brightness unpredictably. */
.chat-page.appearance-night-dark .messages { filter:none!important;background-color:var(--app-canvas); }
.chat-page.appearance-night-dark .mine .message-bubble { filter:none!important; }
@media (prefers-color-scheme:dark) {
  .chat-page.appearance-night-system .messages { filter:none!important;background-color:var(--app-canvas); }
  .chat-page.appearance-night-system .mine .message-bubble { filter:none!important; }
}

/* Account/settings popover: special links use one dark surface instead of white strips. */
.app-page.appearance-night-dark .account-popover::before { background:var(--app-surface); }
.app-page.appearance-night-dark .account-popover-head span,
.app-page.appearance-night-dark .account-popover-head em { color:var(--app-text-muted); }
.app-page.appearance-night-dark .account-links .account-device-link,
.app-page.appearance-night-dark .account-links .account-saved-link,
.app-page.appearance-night-dark .account-links .account-folder-link {
  background:transparent!important;border-color:transparent!important;color:var(--app-text)!important;
}
.app-page.appearance-night-dark .account-links .account-device-link:hover,
.app-page.appearance-night-dark .account-links .account-saved-link:hover,
.app-page.appearance-night-dark .account-links .account-folder-link:hover { background:var(--app-hover)!important; }
.app-page.appearance-night-dark .account-premium-link {
  background:linear-gradient(135deg,#1a3045,#292746)!important;border-color:#34455a!important;color:var(--app-text)!important;
}
.app-page.appearance-night-dark .account-logout { border-color:var(--app-border); }
.app-page.appearance-night-dark .account-logout button { background:var(--app-danger-surface);color:var(--app-danger); }
@media (prefers-color-scheme:dark) {
  .app-page.appearance-night-system .account-popover::before { background:var(--app-surface); }
  .app-page.appearance-night-system .account-popover-head span,
  .app-page.appearance-night-system .account-popover-head em { color:var(--app-text-muted); }
  .app-page.appearance-night-system .account-links .account-device-link,
  .app-page.appearance-night-system .account-links .account-saved-link,
  .app-page.appearance-night-system .account-links .account-folder-link { background:transparent!important;border-color:transparent!important;color:var(--app-text)!important; }
  .app-page.appearance-night-system .account-links .account-device-link:hover,
  .app-page.appearance-night-system .account-links .account-saved-link:hover,
  .app-page.appearance-night-system .account-links .account-folder-link:hover { background:var(--app-hover)!important; }
  .app-page.appearance-night-system .account-premium-link { background:linear-gradient(135deg,#1a3045,#292746)!important;border-color:#34455a!important;color:var(--app-text)!important; }
  .app-page.appearance-night-system .account-logout { border-color:var(--app-border); }
  .app-page.appearance-night-system .account-logout button { background:var(--app-danger-surface);color:var(--app-danger); }
}

/* Shared shell, navigation and form surfaces. */
.app-page .phone-shell { background:var(--app-canvas); }
.app-page .bottom-nav { background:color-mix(in srgb,var(--app-surface),transparent 4%);border-color:var(--app-border); }
.app-page .bottom-nav a { color:var(--app-text-muted); }
.app-page .bottom-nav a.active { background:color-mix(in srgb,var(--ichat-accent),var(--app-surface) 88%);color:var(--ichat-accent); }
.app-page .chat-folder-tabs { background:var(--app-surface);border-color:var(--app-border); }
.app-page .chat-folder-tabs a { color:var(--app-text-muted); }
.app-page .chat-folder-tabs a.active { color:var(--ichat-accent); }
.app-page .chat-folder-tabs a b { background:color-mix(in srgb,var(--ichat-accent),var(--app-surface) 82%);color:var(--ichat-accent); }
.app-page input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),
.app-page textarea,
.app-page select { color:var(--app-text); }
.app-page input::placeholder,.app-page textarea::placeholder { color:var(--app-text-muted);opacity:1; }

/* Contacts */
.contacts-page .contacts-screen,.contacts-page .contacts-content { background:var(--app-canvas);color:var(--app-text); }
.contacts-page .contacts-search { background:var(--app-surface-raised);border-color:var(--app-border); }
.contacts-page .contacts-search input { background:transparent;color:var(--app-text); }
.contacts-page .contacts-heading h2,.contacts-page .contact-copy h3,.contacts-page .empty-contacts h3 { color:var(--app-text); }
.contacts-page .contacts-heading p,.contacts-page .contact-copy p,.contacts-page .contact-card small,.contacts-page .empty-contacts,.contacts-page .empty-contacts p { color:var(--app-text-muted); }
.contacts-page .contact-card { background:var(--app-surface);border-color:var(--app-border);box-shadow:0 8px 20px rgba(0,0,0,.12); }
.contacts-page .contact-card .contact-actions button { background:var(--app-surface-raised);border-color:var(--app-border); }
.contacts-page .contact-card .contact-chat-button { background:color-mix(in srgb,var(--ichat-accent),var(--app-surface) 86%);color:var(--ichat-accent); }
.contacts-page .empty-contacts-icon { background:var(--app-surface-raised); }
.contacts-page .save-contact-dialog { background:var(--app-surface);color:var(--app-text); }
.contacts-page .save-contact-dialog h2,.contacts-page .save-contact-dialog label span { color:var(--app-text); }
.contacts-page .save-contact-dialog > p { color:var(--app-text-muted); }
.contacts-page .save-contact-dialog input[type="text"] { background:var(--app-input);border-color:var(--app-border);color:var(--app-text); }
.contacts-page .save-contact-cancel { background:var(--app-surface-raised);color:var(--app-text-soft); }

/* Status / social feed */
.status-page .phone-shell,.status-page .status-screen { background:var(--app-canvas);color:var(--app-text); }
.status-page .status-feed-topbar,
.status-page .status-story-section,
.status-page .status-composer,
.status-page .status-post,
.status-page .status-post.text-only,
.status-page .status-comments { background:var(--app-surface)!important;border-color:var(--app-border)!important;color:var(--app-text); }
.status-page .status-feed-brand h1,.status-page .status-story-section h2,.status-page .status-section-heading h2,
.status-page .status-post > header h3,.status-page .status-post.text-only > header h3,
.status-page .status-comment-name { color:var(--app-text)!important; }
.status-page .status-story-button,.status-page .status-post > p,.status-page .status-post.text-only > p,
.status-page .status-comment p { color:var(--app-text-soft)!important; }
.status-page .status-story-section > header > span,.status-page .status-story-empty > span { background:var(--app-surface-raised);color:var(--app-text-muted); }
.status-page .status-composer-quick > button { background:var(--app-input);border-color:var(--app-border);color:var(--app-text-soft); }
.status-page .status-social-actions { border-color:var(--app-border); }
.status-page .status-social-actions button,.status-page .status-comment-count { color:var(--app-text-soft); }
.status-page .status-social-actions button:hover { background:var(--app-hover); }
.status-page .status-comment-replies { border-color:var(--app-border); }
.status-page .status-comment-form { border-color:var(--app-border); }
.status-page .status-comment-form input { background:var(--app-input);border-color:var(--app-border);color:var(--app-text); }
.status-page .status-comment-form input:focus { background:var(--app-surface-raised); }
.status-page .status-reply-context { background:var(--app-surface-raised);color:var(--app-text-soft); }
.status-page .status-media,
.status-page .status-video-media,
.status-page .status-gif-media { background:var(--app-surface-soft)!important; }
.status-page .status-media img,
.status-page .status-media video { background:var(--app-surface-soft); }
.status-page .profile-post-menu,
.status-page .profile-post-menu > button,
.status-page .profile-post-menu form > button { background:var(--app-surface-raised);border-color:var(--app-border);color:var(--app-text); }
.status-page .profile-post-menu-wrap > button { background:var(--app-surface-raised);color:var(--app-text-soft); }
.status-page .profile-post-menu small { color:var(--app-text-muted); }
.status-page .profile-post-menu > button > span,
.status-page .profile-post-menu form > button > span { background:color-mix(in srgb,var(--ichat-accent),var(--app-surface) 86%); }
.status-page .profile-post-menu .danger button { color:#ff7187; }
.status-page .profile-post-menu .danger button > span { background:color-mix(in srgb,#e95770,var(--app-surface) 84%);color:#ff7187; }
.status-page .profile-post-dialog { background:var(--app-surface);color:var(--app-text); }
.status-page .profile-post-dialog > header,
.status-page .profile-post-dialog [data-profile-privacy-panel] label { border-color:var(--app-border); }
.status-page .profile-post-dialog textarea { background:var(--app-input);border-color:var(--app-border);color:var(--app-text); }
.status-page .profile-post-dialog [data-profile-edit-panel] label,
.status-page .profile-post-dialog [data-profile-privacy-panel] > p { color:var(--app-text-soft); }
.status-page .profile-post-dialog [data-profile-privacy-panel] small { color:var(--app-text-muted); }

/* Status editor and all of its sheets inherit night mode as well. */
.status-page .status-editor-modal,.status-page .status-editor-sheet > section { background:var(--app-surface);color:var(--app-text); }
.status-page .status-editor-header,.status-page .status-editor-toolbar { border-color:var(--app-border); }
.status-page .status-editor-header > button:first-child,.status-page .status-editor-toolbar label,.status-page .status-editor-toolbar button { color:var(--app-text); }
.status-page .status-editor-shortcuts button,.status-page .status-feeling-grid button { background:var(--app-surface-raised);border-color:var(--app-border);color:var(--app-text); }
.status-page .status-editor-canvas.status-background-none { background:var(--app-surface); }
.status-page .status-editor-canvas.status-background-none textarea { color:var(--app-text); }
.status-page .status-editor-meta span,.status-page .status-editor-search,.status-page .status-editor-field,.status-page .status-giphy-search { background:var(--app-input);color:var(--app-text-soft); }
.status-page .status-people-list > button,.status-page .status-music-list > button { border-color:var(--app-border);color:var(--app-text); }
.status-page .status-editor-panel > p,.status-page .status-editor-panel > small { color:var(--app-text-muted); }

/* Profile */
.profile-page .social-profile-screen,.profile-page .social-profile-scroll { background:var(--app-canvas);color:var(--app-text); }
.profile-page .social-profile-topbar,
.profile-page .social-profile-hero,
.profile-page .profile-inline-composer,
.profile-page .social-profile-about,
.profile-page .social-profile-editor,
.profile-page .social-profile-feed,
.profile-page .profile-feed-card { background:var(--app-surface);border-color:var(--app-border);color:var(--app-text); }
.profile-page .social-profile-topbar a,.profile-page .social-profile-topbar h1,
.profile-page .social-profile-identity h2,.profile-page .social-profile-stats b,
.profile-page .social-profile-about header h2,.profile-page .social-profile-feed header h2,
.profile-page .social-profile-about li b,.profile-page .profile-feed-card h3,
.profile-page .social-profile-empty h3 { color:var(--app-text); }
.profile-page .social-profile-identity p,.profile-page .social-profile-stats span,
.profile-page .social-profile-about li small,.profile-page .social-profile-editor > summary small,
.profile-page .profile-feed-card header small,.profile-page .profile-feed-card > footer,
.profile-page .social-profile-empty { color:var(--app-text-muted); }
.profile-page .social-profile-actions a,.profile-page .social-profile-actions label,
.profile-page .profile-inline-composer > button,.profile-page .social-profile-about li > span,
.profile-page .social-profile-editor > summary > span { background:var(--app-surface-raised);color:var(--app-text-soft); }
.profile-page .profile-inline-composer > button.profile-inline-photo { color:var(--ichat-accent); }
.profile-page .social-profile-stats,.profile-page .social-profile-stats div,.profile-page .social-profile-editor .profile-form { border-color:var(--app-border); }
.profile-page .profile-form { background:var(--app-surface-raised);border-color:var(--app-border);color:var(--app-text); }
.profile-page .profile-form-intro h2 { color:var(--app-text); }
.profile-page .profile-form-intro p { color:var(--app-text-muted); }
.profile-page .profile-feed-card > p { color:var(--app-text-soft); }
.profile-page .profile-post-context span { background:var(--app-surface-raised);color:var(--app-text-soft); }
.profile-page .profile-post-menu,.profile-page .profile-post-menu > button,.profile-page .profile-post-menu form > button { background:var(--app-surface-raised);border-color:var(--app-border);color:var(--app-text); }
.profile-page .profile-post-menu-wrap > button { background:var(--app-surface-raised);color:var(--app-text-soft); }
.profile-page .profile-post-dialog { background:var(--app-surface);color:var(--app-text); }
.profile-page .profile-post-dialog > header,.profile-page .profile-post-dialog [data-profile-privacy-panel] label { border-color:var(--app-border); }
.profile-page .profile-post-dialog textarea { background:var(--app-input);border-color:var(--app-border);color:var(--app-text); }
.profile-page .profile-post-dialog [data-profile-edit-panel] label,
.profile-page .profile-post-dialog [data-profile-privacy-panel] > p { color:var(--app-text-soft); }
.profile-page .profile-post-dialog [data-profile-privacy-panel] small { color:var(--app-text-muted); }

/* Profile feed reuses the social interaction components. Keep the media,
   reactions and comments on the same surface as the rest of the profile. */
.profile-page .profile-post-media { background:var(--app-surface-soft); }
.profile-page .profile-feed-card > footer { border-color:var(--app-border);color:var(--app-text-muted); }
.profile-page .profile-feed-card > footer a { color:var(--ichat-accent); }
.profile-page .status-social-actions,
.profile-page .status-comments,
.profile-page .status-comment-form { background:var(--app-surface);border-color:var(--app-border); }
.profile-page .status-social-actions button { background:var(--app-surface-raised);border-color:var(--app-border);color:var(--app-text-soft); }
.profile-page .status-social-actions button.active { background:color-mix(in srgb,var(--ichat-accent),var(--app-surface) 83%);border-color:color-mix(in srgb,var(--ichat-accent),var(--app-border) 45%);color:var(--ichat-accent); }
.profile-page .status-social-actions button.active.dislike { background:color-mix(in srgb,#e95770,var(--app-surface) 84%);border-color:color-mix(in srgb,#e95770,var(--app-border) 50%);color:#ff7d91; }
.profile-page .status-comment-count,
.profile-page .status-comment-meta > small,
.profile-page .status-comment-meta > button,
.profile-page .status-comment-reaction-form button { color:var(--app-text-muted); }
.profile-page .status-comment-name { color:var(--app-text); }
.profile-page .status-comment p { color:var(--app-text-soft); }
.profile-page .status-comment-replies { border-color:var(--app-border); }
.profile-page .status-comment-form input { background:var(--app-input);border-color:var(--app-border);color:var(--app-text); }
.profile-page .status-comment-form input:focus { background:var(--app-surface-raised); }
.profile-page .status-reply-context { background:var(--app-surface-raised);color:var(--app-text-soft); }
.profile-page .status-reaction-sheet { background:var(--app-surface);color:var(--app-text); }
.profile-page .status-reaction-sheet > header { border-color:var(--app-border); }
.profile-page .status-reaction-sheet > header h2 { color:var(--app-text); }
.profile-page .status-reaction-sheet > header button,
.profile-page .status-reaction-person { background:var(--app-surface-raised);border-color:var(--app-border);color:var(--app-text); }
.profile-page .status-reaction-people h3 { color:var(--app-text-soft); }
.profile-page .status-reaction-people p { color:var(--app-text-muted); }

/* Contact details: all cards and controls now consume the global palette,
   instead of keeping their original hard-coded white backgrounds. */
.contact-info-page .contact-info-screen,
.contact-info-page .contact-info-scroll { background:var(--app-canvas);color:var(--app-text); }
.contact-info-page .contact-profile-card,
.contact-info-page .contact-info-card { background:var(--app-surface);border-color:var(--app-border);box-shadow:0 12px 28px rgba(0,0,0,.14); }
.contact-info-page .contact-info-avatar { border-color:var(--app-surface); }
.contact-info-page .contact-profile-card h2,
.contact-info-page .contact-section-title h2,
.contact-info-page .direct-settings-card label b,
.contact-info-page .mutual-groups-card b,
.contact-info-page .encryption-card b { color:var(--app-text); }
.contact-info-page .contact-profile-card > p,
.contact-info-page .contact-profile-card > p.registered-name,
.contact-info-page .contact-name-form > p,
.contact-info-page .contact-about-card p,
.contact-info-page .direct-settings-card label small,
.contact-info-page .mutual-groups-card small,
.contact-info-page .no-common-groups,
.contact-info-page .encryption-card small { color:var(--app-text-muted); }
.contact-info-page .contact-quick-actions a,
.contact-info-page .contact-quick-actions button { background:color-mix(in srgb,var(--ichat-accent),var(--app-surface) 88%);border-color:color-mix(in srgb,var(--ichat-accent),var(--app-border) 52%);color:var(--ichat-accent); }
.contact-info-page .contact-name-form input,
.contact-info-page .direct-settings-card select { background:var(--app-input);border-color:var(--app-border);color:var(--app-text); }
.contact-info-page .contact-name-form input:focus { background:var(--app-surface-raised); }
.contact-info-page .contact-about-card > div,
.contact-info-page .direct-settings-card .setting-toggle,
.contact-info-page .direct-settings-card .setting-select,
.contact-info-page .mutual-groups-card > a { border-color:var(--app-border); }
.contact-info-page .mutual-group-avatar { background:var(--app-surface-raised); }
.contact-info-page .contact-block-form button,
.contact-info-page .contact-delete-form button { background:var(--app-danger-surface);border-color:color-mix(in srgb,var(--app-danger),var(--app-border) 55%);color:var(--app-danger); }
.contact-info-page .contact-block-form.unblock button { background:color-mix(in srgb,var(--ichat-accent),var(--app-surface) 88%);border-color:var(--app-border);color:var(--ichat-accent); }
.contact-info-page .save-contact-dialog { background:var(--app-surface);color:var(--app-text); }
.contact-info-page .save-contact-dialog h2,
.contact-info-page .save-contact-dialog label span { color:var(--app-text); }
.contact-info-page .save-contact-dialog > p { color:var(--app-text-muted); }
.contact-info-page .save-contact-dialog input[type="text"] { background:var(--app-input);border-color:var(--app-border);color:var(--app-text); }
.contact-info-page .save-contact-dialog input[type="text"]:focus { background:var(--app-surface-raised); }
.contact-info-page .save-contact-cancel { background:var(--app-surface-raised);color:var(--app-text-soft); }

/* Devices: every card, session and QR sheet follows the shared palette. */
.devices-page .phone-shell,
.devices-page .devices-screen { background:var(--app-canvas);color:var(--app-text); }
.devices-page .add-device-card {
  background:linear-gradient(135deg,var(--app-surface),color-mix(in srgb,var(--ichat-accent),var(--app-surface) 94%));
  border-color:var(--app-border);color:var(--app-text);box-shadow:0 8px 22px rgba(0,0,0,.12);
}
.devices-page .add-device-card p { color:var(--app-text-muted); }
.devices-page .devices-section > header h2,
.devices-page .device-session-copy h3,
.devices-page .devices-empty b { color:var(--app-text); }
.devices-page .devices-section > header > span { background:color-mix(in srgb,var(--ichat-accent),var(--app-surface) 84%);color:var(--ichat-accent); }
.devices-page .devices-section > header .device-safe-label { background:color-mix(in srgb,#20ae79,var(--app-surface) 84%);color:#39cf98; }
.devices-page .devices-list { background:var(--app-surface);border-color:var(--app-border);box-shadow:0 9px 24px rgba(0,0,0,.13); }
.devices-page .device-session + .device-session { border-color:var(--app-border); }
.devices-page .device-session.current { background:linear-gradient(135deg,var(--app-surface),color-mix(in srgb,var(--ichat-accent),var(--app-surface) 94%)); }
.devices-page .device-session-icon { background:color-mix(in srgb,#168fe6,var(--app-surface) 82%);color:#4db9ff; }
.devices-page .device-session-icon.phone { background:color-mix(in srgb,#20ae79,var(--app-surface) 82%);color:#39cf98; }
.devices-page .device-session-icon.tablet { background:color-mix(in srgb,#8068dc,var(--app-surface) 82%);color:#a58eff; }
.devices-page .device-session-copy > div > b { background:color-mix(in srgb,#20ae79,var(--app-surface) 82%);color:#39cf98; }
.devices-page .device-session-copy p { color:var(--app-text-soft); }
.devices-page .device-session-copy small,
.devices-page .devices-empty { color:var(--app-text-muted); }
.devices-page .device-session > form button { background:var(--app-danger-surface);color:var(--app-danger); }
.devices-page .terminate-all-form > button { background:var(--app-surface);border-color:color-mix(in srgb,var(--app-danger),var(--app-border) 58%);color:var(--app-danger); }
.devices-page .terminate-all-form > button > span { background:var(--app-danger-surface); }
.devices-page .terminate-all-form small { color:color-mix(in srgb,var(--app-danger),var(--app-text-muted) 42%); }
.devices-page .devices-empty > span { background:color-mix(in srgb,#20ae79,var(--app-surface) 84%);color:#39cf98; }
.devices-page .devices-security-note { background:var(--app-surface-soft);border-color:var(--app-border);color:var(--app-text-muted); }
.devices-page .devices-security-note > span { background:var(--app-surface-raised);color:var(--ichat-accent); }
.devices-page .devices-security-note b { color:var(--app-text); }
.devices-page .device-scanner-dialog { background:var(--app-canvas);color:var(--app-text); }
.devices-page .device-scanner-dialog > header button { background:var(--app-surface-raised);color:var(--app-text-soft); }
.devices-page .device-scanner-dialog > header > span { background:color-mix(in srgb,var(--ichat-accent),var(--app-surface) 86%);color:var(--ichat-accent); }
.devices-page .device-scanner-copy b,
.devices-page .device-scanner-gallery b { color:var(--app-text); }
.devices-page .device-scanner-copy p,
.devices-page .device-scanner-gallery small,
.devices-page .device-scanner-dialog > aside { color:var(--app-text-muted); }
.devices-page .device-scanner-gallery { background:var(--app-surface);border-color:var(--app-border);color:var(--app-text); }
.devices-page .device-scanner-gallery > span { background:color-mix(in srgb,var(--ichat-accent),var(--app-surface) 86%);color:var(--ichat-accent); }

/* Chat folders: list, recommendations and editor share the global theme. */
.folder-page .phone-shell,
.folder-page .folder-screen { background:var(--app-canvas);color:var(--app-text); }
.folder-page .folder-section-title h2,
.folder-page .folder-editor-title h2,
.folder-page .folder-row b,
.folder-page .folder-suggestions b,
.folder-page .folder-empty b,
.folder-page .folder-editor-card.identity > label > span,
.folder-page .folder-editor-card legend,
.folder-page .toggle-list b,
.folder-page .folder-chat-picker summary b,
.folder-page .folder-chat-picker label b { color:var(--app-text); }
.folder-page .folder-row,
.folder-page .folder-suggestions article,
.folder-page .folder-editor-card,
.folder-page .folder-chat-picker {
  background:var(--app-surface);border-color:var(--app-border);box-shadow:0 8px 22px rgba(0,0,0,.12);color:var(--app-text);
}
.folder-page .folder-row-icon,
.folder-page .folder-suggestions article > span,
.folder-page .toggle-list .setting-icon,
.folder-page .folder-picker-avatar {
  background:color-mix(in srgb,var(--ichat-accent),var(--app-surface) 87%);
}
.folder-page .folder-row small,
.folder-page .folder-suggestions small,
.folder-page .folder-row > i,
.folder-page .folder-suggestions article > i,
.folder-page .folder-limit-note,
.folder-page .folder-editor-card.identity label small,
.folder-page .folder-editor-title p,
.folder-page .toggle-list small,
.folder-page .folder-chat-picker summary small,
.folder-page .folder-chat-picker label small { color:var(--app-text-muted); }
.folder-page .folder-row-actions button,
.folder-page .folder-row-actions a { background:var(--app-surface-raised);color:var(--ichat-accent); }
.folder-page .folder-row-actions button:disabled { color:var(--app-text-muted); }
.folder-page .folder-empty { background:var(--app-surface-soft);border-color:var(--app-border);color:var(--app-text-muted); }
.folder-page .folder-editor-card.identity input[type="text"] {
  background:var(--app-input);border-color:var(--app-border);color:var(--app-text);
}
.folder-page .folder-icon-picker span { background:var(--app-input); }
.folder-page .folder-icon-picker input:checked + span {
  background:color-mix(in srgb,var(--ichat-accent),var(--app-surface) 82%);border-color:var(--ichat-accent);
}
.folder-page .toggle-list > label,
.folder-page .folder-chat-picker > div,
.folder-page .folder-chat-picker > div > label { border-color:var(--app-border); }
.folder-page .toggle-list label > i { background:color-mix(in srgb,var(--app-text-muted),var(--app-surface) 58%); }
.folder-page .toggle-list label > i::after { background:var(--app-surface-raised); }
.folder-page .folder-chat-picker summary > i { color:var(--app-text-muted); }
.folder-page .folder-chat-picker label > i { border-color:var(--app-border); }
.folder-page .folder-delete-form button { background:var(--app-danger-surface);border-color:color-mix(in srgb,var(--app-danger),var(--app-border) 55%);color:var(--app-danger); }

/* Generic secondary pages (devices, folders, group/contact details, premium). */
.app-page.appearance-night-dark .devices-screen,
.app-page.appearance-night-dark .folder-screen,
.app-page.appearance-night-dark .group-screen,
.app-page.appearance-night-dark .group-info-screen,
.app-page.appearance-night-dark .contact-info-screen,
.app-page.appearance-night-dark .premium-screen,
.app-page.appearance-night-dark .story-manager-screen,
.app-page.appearance-night-dark .qr-connect-screen { background:var(--app-canvas);color:var(--app-text); }
@media (prefers-color-scheme:dark) {
  .app-page.appearance-night-system .devices-screen,
  .app-page.appearance-night-system .folder-screen,
  .app-page.appearance-night-system .group-screen,
  .app-page.appearance-night-system .group-info-screen,
  .app-page.appearance-night-system .contact-info-screen,
  .app-page.appearance-night-system .premium-screen,
  .app-page.appearance-night-system .story-manager-screen,
  .app-page.appearance-night-system .qr-connect-screen { background:var(--app-canvas);color:var(--app-text); }
}
