/* Neutral surfaces, intentional accents, consistent geometry. Shared with previews. */
[data-appearance="studio"] {
    --space-bg: #f4f6f9;
    --space-surface: #ffffff;
    --space-secondary: #edf0f5;
    --space-ink: #202938;
    --space-muted: #59677a;
    --space-border: #dce1e9;
    --space-accent: #4f46e5;
    --space-accent-dark: #4338ca;
    --space-on-accent: #ffffff;
    --space-soft: #edf0ff;
    --space-rail: #f0f2f7;
    --space-canvas: #eff2f7;
    --space-outgoing: #e7ebfd;
}
:root[data-theme="dark"][data-appearance="studio"], :root[data-theme="dark"] [data-appearance="studio"] {
    --space-bg: #11151d;
    --space-surface: #1b202a;
    --space-secondary: #252c38;
    --space-ink: #f3f5f9;
    --space-muted: #abb5c5;
    --space-border: #353e4d;
    --space-accent: #9ba6ff;
    --space-accent-dark: #b7bfff;
    --space-on-accent: #11151d;
    --space-soft: #2a3150;
    --space-rail: #161b24;
    --space-canvas: #141a24;
    --space-outgoing: #303a53;
}
[data-appearance="botanical"] {
    --space-bg: #f5f6f3;
    --space-surface: #fffffd;
    --space-secondary: #eef1ec;
    --space-ink: #24332b;
    --space-muted: #56685b;
    --space-border: #dae1d8;
    --space-accent: #35664f;
    --space-accent-dark: #2b5642;
    --space-on-accent: #ffffff;
    --space-soft: #e9f0e8;
    --space-rail: #f0f2ed;
    --space-canvas: #f0f2eb;
    --space-outgoing: #e3eddf;
}
:root[data-theme="dark"][data-appearance="botanical"], :root[data-theme="dark"] [data-appearance="botanical"] {
    --space-bg: #141b18;
    --space-surface: #1d2621;
    --space-secondary: #28342d;
    --space-ink: #f1f5ef;
    --space-muted: #aabdaf;
    --space-border: #38493e;
    --space-accent: #a0c9ad;
    --space-accent-dark: #bfdcc5;
    --space-on-accent: #141b18;
    --space-soft: #2c4032;
    --space-rail: #18201b;
    --space-canvas: #18211b;
    --space-outgoing: #304736;
}
[data-appearance="coastal"] {
    --space-bg: #f3f6f8;
    --space-surface: #ffffff;
    --space-secondary: #ecf1f5;
    --space-ink: #24323e;
    --space-muted: #50677a;
    --space-border: #d7e1e7;
    --space-accent: #24617c;
    --space-accent-dark: #1c5067;
    --space-on-accent: #ffffff;
    --space-soft: #e6eff5;
    --space-rail: #eef2f5;
    --space-canvas: #edf2f5;
    --space-outgoing: #deecf3;
}
:root[data-theme="dark"][data-appearance="coastal"], :root[data-theme="dark"] [data-appearance="coastal"] {
    --space-bg: #121a21;
    --space-surface: #1c2731;
    --space-secondary: #283642;
    --space-ink: #eff5f8;
    --space-muted: #a9bdcc;
    --space-border: #394d5d;
    --space-accent: #8bc9e2;
    --space-accent-dark: #b0dced;
    --space-on-accent: #121a21;
    --space-soft: #293e4e;
    --space-rail: #162029;
    --space-canvas: #17232c;
    --space-outgoing: #2d4555;
}
[data-appearance="atelier"] {
    --space-bg: #f7f5f1;
    --space-surface: #fffefa;
    --space-secondary: #f0ece7;
    --space-ink: #332c31;
    --space-muted: #695d65;
    --space-border: #e1dbd6;
    --space-accent: #7b4c64;
    --space-accent-dark: #693e54;
    --space-on-accent: #ffffff;
    --space-soft: #f2e8ee;
    --space-rail: #f2eeea;
    --space-canvas: #f3eee7;
    --space-outgoing: #efe1e8;
}
:root[data-theme="dark"][data-appearance="atelier"], :root[data-theme="dark"] [data-appearance="atelier"] {
    --space-bg: #1e191c;
    --space-surface: #292329;
    --space-secondary: #372e35;
    --space-ink: #f8f2f5;
    --space-muted: #c3b3be;
    --space-border: #4c3d48;
    --space-accent: #dfafc7;
    --space-accent-dark: #f0cadd;
    --space-on-accent: #1e191c;
    --space-soft: #43313e;
    --space-rail: #231d22;
    --space-canvas: #251f24;
    --space-outgoing: #483440;
}

[data-appearance] {
    --appearance-font: Inter, system-ui, sans-serif;
    --appearance-heading: var(--appearance-font);
    --appearance-radius: 14px;
    --radius-sm: 8px; --radius: 12px; --radius-lg: 18px; --radius-xl: 24px;
    --space-focus: var(--space-accent-dark);
    --space-shadow: 0 1px 2px #10182808, 0 3px 10px #10182804;
    --wallpaper: radial-gradient(circle, color-mix(in srgb, var(--space-muted) 7%, transparent) .7px, transparent 1px);
    --wallpaper-size: 28px 28px;
}
:root[data-theme="dark"] [data-appearance], :root[data-theme="dark"][data-appearance] { --space-shadow: 0 1px 3px #00000020; }
[data-appearance="botanical"] { --wallpaper:url('../wallpapers/botanical.svg'); --wallpaper-size:420px 455px; }
[data-appearance="coastal"] { --wallpaper:repeating-linear-gradient(155deg,transparent 0 140px,color-mix(in srgb,var(--space-accent) 3%,transparent) 141px 142px,transparent 143px 280px); --wallpaper-size:cover; }
[data-appearance="atelier"] { --wallpaper:repeating-linear-gradient(0deg,transparent 0 5px,color-mix(in srgb,var(--space-muted) 3%,transparent) 5px 6px); --wallpaper-size:6px 6px; }
body, input, textarea, select, button, .chat-shell { font-family:var(--appearance-font); }
h1, h2, .chat-shell .thread-identity h1, .chat-shell .chats-heading h2, .modal-card h2 { font-family:var(--appearance-heading); }
.auth-card,.modal-card { border-radius:20px; }
.profile-fields,.profile-preferences,.account-settings>form { border-radius:14px; }
.auth-shell { background-image:radial-gradient(ellipse at 0 0,var(--space-soft),transparent 65%); }
.chat-shell { --chat-blue:var(--space-accent);--chat-soft:var(--space-soft);--chat-canvas:var(--chat-wallpaper-base,var(--space-canvas));--chat-outgoing:var(--space-outgoing);--chat-incoming:var(--space-surface); }
:root[data-theme="dark"] .chat-shell { --chat-blue:var(--space-accent);--chat-canvas:var(--chat-wallpaper-base,var(--space-canvas));--chat-outgoing:var(--space-outgoing);--chat-incoming:var(--space-surface); }
.chat-shell .advanced-conversation { background-color:var(--chat-canvas);background-image:var(--chat-wallpaper,var(--wallpaper));background-size:var(--chat-wallpaper-size,var(--wallpaper-size));background-position:var(--chat-wallpaper-position,center);background-repeat:var(--chat-wallpaper-repeat,repeat); }
.chat-shell .message-bubble { border-radius:14px 14px 14px 4px;box-shadow:0 1px 1px #00000006;border:1px solid color-mix(in srgb,var(--space-border) 45%,transparent); }
.chat-shell .mine .message-bubble { border-radius:14px 14px 4px 14px; }
.chat-shell .emoji-only .message-bubble { background:transparent;box-shadow:none;border:0; }
.chat-shell .conversation-row.selected { background:var(--space-soft);color:var(--space-ink);box-shadow:inset 3px 0 var(--space-accent); }
.chat-shell .conversation-row.selected :is(small,.conversation-time,em) { color:var(--space-muted); }
.chat-shell .advanced-composer { border:1px solid color-mix(in srgb,var(--space-border) 70%,transparent);box-shadow:0 2px 8px #00000006; }
.chat-shell .advanced-composer .send-button,.chat-shell .unread-badge,.chat-shell .chat-folders button span,.chat-shell .selected .unread-badge { background:var(--space-accent);color:var(--space-on-accent); }
.profile-heading button { color:var(--space-accent-dark); }
.themes-trigger,.backgrounds-trigger { display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:8px 12px;font-size:13px;font-weight:550;background:var(--space-surface);color:var(--space-ink);border:1px solid var(--space-border);border-radius:10px;white-space:nowrap; }
.themes-trigger:hover,.backgrounds-trigger:hover { background:var(--space-secondary); }
.profile-theme-entry { display:flex;flex-wrap:wrap;gap:10px;padding:16px;background:var(--space-surface);border-radius:14px;margin-top:12px; }
.profile-theme-entry small { flex-basis:100%;color:var(--space-muted);line-height:1.5; }
.theme-gallery-backdrop { z-index:150;padding:32px;backdrop-filter:blur(5px); }
.theme-gallery { display:flex;flex-direction:column;width:min(1040px,100%);max-width:1040px;height:min(790px,calc(100dvh - 64px));max-height:calc(100dvh - 64px);overflow:hidden;padding:0;box-shadow:0 24px 80px #00000030; }
.theme-gallery-heading { display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 26px;border-bottom:1px solid var(--space-border);flex-shrink:0; }
.theme-gallery-heading .eyebrow { color:var(--space-muted);font-size:10px;letter-spacing:.13em;margin:0 0 5px; }
.theme-gallery-heading h2 { font-family:Inter,system-ui,sans-serif;font-size:23px;line-height:1.2;letter-spacing:-.035em;padding:0;margin:0; }
.theme-gallery .modal-close { position:static;display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;min-height:44px;padding:10px;border:0;border-radius:10px;background:transparent;color:var(--space-muted); }
.theme-gallery .modal-close:hover { background:var(--space-secondary); }
.appearance-workspace { display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,43%);flex:1;min-height:0; }
.appearance-library { min-height:0;display:flex;flex-direction:column;min-width:0; }
.appearance-tabs { display:flex;gap:22px;padding:0 26px;border-bottom:1px solid var(--space-border);flex-shrink:0; }
.appearance-tabs>button { position:relative;display:flex;gap:7px;align-items:center;min-height:54px;padding:12px 0;border:0;border-radius:0;background:none;color:var(--space-muted);font-size:13px;font-weight:550; }
.appearance-tabs>button.active { color:var(--space-ink); }
.appearance-tabs>button.active:after { content:'';height:2px;position:absolute;bottom:-1px;left:0;right:0;background:var(--space-accent); }
.appearance-tabs>button>span { padding:2px 6px;border-radius:6px;font-size:10px;background:var(--space-secondary);color:var(--space-muted); }
.appearance-library-content { padding:24px 26px;overflow:auto;overscroll-behavior:contain;min-height:0; }
.appearance-library-content>h3 { font-size:16px;letter-spacing:-.02em;margin:0 0 7px;font-weight:600; }
.appearance-description { font-size:12px;line-height:1.65;color:var(--space-muted);margin:0 0 22px;max-width:380px; }
.theme-options { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px; }
.theme-option { padding:7px;text-align:left;min-width:0;overflow:hidden;border:1px solid var(--space-border);border-radius:12px;background:var(--space-surface);color:var(--space-ink); }
.theme-option:hover { border-color:var(--space-muted); }
.theme-option.is-selected { border-color:var(--space-accent);box-shadow:0 0 0 1px var(--space-accent); }
.theme-option-name { display:flex;align-items:center;justify-content:space-between;gap:8px;margin:11px 6px 5px;font-size:13px;font-weight:600; }
.appearance-check { display:grid;place-items:center;width:18px;height:18px;font-size:11px;border-radius:50%;background:var(--space-accent);color:var(--space-on-accent); }
.appearance-check:empty { visibility:hidden; }
.theme-option-description { display:block;margin:0 6px 6px;color:var(--space-muted);font-size:11px;line-height:1.5;min-height:33px; }
.theme-mini { display:flex;height:82px;border:1px solid var(--space-border);border-radius:7px;overflow:hidden;background:var(--space-canvas); }
.mini-rail { width:29%;padding:14px 7px;background:var(--space-surface);border-right:1px solid var(--space-border); }
.mini-rail i { display:block;background:var(--space-secondary);height:4px;border-radius:3px;margin-bottom:7px; }
.mini-rail i:first-child { background:var(--space-soft);height:8px; }
.mini-paper { flex:1;padding:16px 9px;background-image:var(--wallpaper);background-size:var(--wallpaper-size); }
.mini-paper i { display:block;height:16px;width:80%;margin-bottom:8px;background:var(--space-surface);border:1px solid var(--space-border);border-radius:5px; }
.mini-paper i+i { background:var(--space-outgoing);margin-left:auto; }
.theme-gallery-mode { display:flex;justify-content:space-between;align-items:center;gap:12px;padding:0 0 16px;margin:0 0 18px;border-bottom:1px solid var(--space-border);font-size:12px;color:var(--space-ink); }
.theme-gallery-mode select { width:auto;min-width:125px;margin:0;padding:8px 28px 8px 12px;font-size:12px;min-height:40px; }
.appearance-note { display:flex;gap:8px;align-items:flex-start;margin:16px 0 0;font-size:11px;line-height:1.6;color:var(--space-muted); }
.appearance-note .app-icon { width:15px;height:15px; }
.appearance-preview-column { display:flex;flex-direction:column;gap:14px;padding:26px;background:var(--space-secondary);border-left:1px solid var(--space-border);min-width:0;min-height:0; }
.preview-caption { display:flex;flex-direction:column;gap:7px; }
.preview-caption>span:first-child { font-size:10px;letter-spacing:.12em;font-weight:600;color:var(--space-muted); }
.preview-caption>span+span { font-size:12px;color:var(--space-muted); }
.theme-preview { display:flex;flex:1;min-height:290px;overflow:hidden;border:1px solid var(--space-border);border-radius:14px;background:var(--space-surface);color:var(--space-ink);font-family:Inter,system-ui,sans-serif;box-shadow:0 4px 18px #00000005; }
.preview-thread { display:flex;flex-direction:column;flex:1;min-width:0;background-color:var(--chat-wallpaper-base,var(--space-canvas));background-image:var(--chat-wallpaper,var(--wallpaper));background-size:var(--chat-wallpaper-size,var(--wallpaper-size));background-position:var(--chat-wallpaper-position,center);background-repeat:var(--chat-wallpaper-repeat,repeat); }
.preview-thread>header { flex-shrink:0;display:flex;align-items:center;gap:10px;padding:14px 16px;background:var(--space-surface);border-bottom:1px solid var(--space-border); }
.preview-thread>header>div { flex:1; }
.preview-thread>header>.app-icon { width:18px;height:18px;color:var(--space-muted); }
.preview-thread strong { font-size:13px;font-weight:600; }
.preview-thread header small { display:block;font-size:10px;margin-top:3px;color:var(--space-muted); }
.preview-avatar { display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--space-soft);color:var(--space-accent-dark);font-size:12px;font-weight:600; }
.preview-messages { min-height:0;display:flex;flex-direction:column;justify-content:center;flex:1;gap:14px;padding:18px; }
.preview-day { align-self:center;padding:4px 10px;background:var(--space-surface);color:var(--space-muted);border:1px solid var(--space-border);border-radius:20px;font-size:9px; }
.preview-bubble { align-self:flex-start;width:fit-content;max-width:87%;padding:10px 12px 6px;border-radius:12px 12px 12px 4px;border:1px solid color-mix(in srgb,var(--space-border) 65%,transparent);background:var(--space-surface);font-size:12px;line-height:1.6;box-shadow:0 1px 1px #00000005; }
.preview-bubble>strong { display:block;color:var(--space-accent-dark);font-size:10px;margin-bottom:3px; }
.preview-bubble small { display:block;text-align:right;margin-top:5px;font-size:9px;color:var(--space-muted); }
.preview-bubble.outgoing { align-self:flex-end;background:var(--space-outgoing);border-radius:12px 12px 4px 12px; }
.preview-composer { flex-shrink:0;display:flex;align-items:center;gap:10px;padding:8px 10px;margin:4px 12px 12px;border:1px solid var(--space-border);border-radius:12px;background:var(--space-surface);color:var(--space-muted); }
.preview-composer>.app-icon { width:18px;height:18px; }
.preview-composer>span:not(.preview-send) { flex:1;font-size:11px; }
.preview-send { display:grid;place-items:center;width:28px;height:28px;flex:0 0 28px;border-radius:9px;background:var(--space-accent);color:var(--space-on-accent); }
.preview-send .app-icon { width:15px;height:15px; }
.preview-selection { text-align:center;margin:0;font-size:11px;color:var(--space-muted); }
.preview-selection>span { margin:0 6px; }
.theme-gallery-footer { display:flex;justify-content:space-between;align-items:center;gap:20px;padding:17px 26px;border-top:1px solid var(--space-border);background:var(--space-surface);flex-shrink:0; }
.theme-gallery-footer>p { display:flex;align-items:center;gap:7px;max-width:320px;margin:0;font-size:11px;line-height:1.5;color:var(--space-muted); }
.theme-gallery-footer>p .app-icon { width:14px;height:14px; }
.theme-gallery-footer>div { display:flex;gap:10px; }
.theme-gallery-footer button { width:auto;min-height:44px;padding:10px 16px;margin:0;font-size:12px;border-radius:9px; }
.appearance-cancel { border:1px solid var(--space-border);background:var(--space-surface);color:var(--space-ink); }
.background-categories { display:flex;flex-wrap:wrap;gap:6px;margin:0 0 20px; }
.background-categories>button { min-height:36px;font-size:11px;padding:7px 10px;border:1px solid transparent;border-radius:7px;background:none;color:var(--space-muted); }
.background-categories>button.active { background:var(--space-soft);color:var(--space-accent-dark);border-color:var(--space-border); }
.background-options { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 11px; }
.background-option { display:flex;flex-direction:column;gap:7px;padding:0;background:none;color:var(--space-ink);border:0;text-align:left;font-size:11px;min-width:0; }
.background-swatch { display:block;position:relative;width:100%;height:75px;overflow:hidden;border:1px solid var(--space-border);border-radius:9px;background-color:var(--chat-wallpaper-base);background-image:var(--chat-wallpaper);background-size:var(--chat-wallpaper-size);background-position:var(--chat-wallpaper-position,center);background-repeat:var(--chat-wallpaper-repeat,repeat); }
.background-option.is-selected .background-swatch { outline:2px solid var(--space-accent);outline-offset:2px; }
.background-swatch>.appearance-check { position:absolute;right:6px;bottom:6px; }
.background-option:hover .background-swatch { border-color:var(--space-muted); }
@media(max-width:760px) {
 .theme-gallery-backdrop { padding:8px; }
 .theme-gallery { height:calc(100dvh - 16px);max-height:calc(100dvh - 16px);border-radius:16px; }
 .theme-gallery-heading { padding:14px 18px; }
 .theme-gallery-heading .eyebrow { display:none; }
 .theme-gallery-heading h2 { font-size:20px; }
 .appearance-workspace { display:flex;flex-direction:column;overflow:auto;overscroll-behavior:contain; }
 .appearance-preview-column { order:-1;flex:none;padding:14px 18px;gap:8px;border-left:0;border-bottom:1px solid var(--space-border); }
 .preview-caption { display:none; }
 .theme-preview { height:300px;min-height:300px;flex:none; }
 .preview-thread>header { padding:9px 12px; }
 .preview-avatar { width:28px;height:28px; }
 .preview-messages { gap:9px;padding:10px 14px; }
 .preview-bubble { padding:7px 10px 4px;font-size:11px;line-height:1.5; }
 .preview-bubble:last-child { display:none; }
 .preview-bubble small { margin-top:2px; }
 .preview-day { padding:2px 8px; }
 .preview-composer { padding:6px 9px;margin:0 10px 9px; }
 .appearance-library { flex:none;overflow:visible;min-height:auto; }
 .appearance-library-content { padding:20px 18px;overflow:visible; }
 .appearance-tabs { padding:0 18px; }
 .appearance-tabs>button { min-height:48px; }
 .appearance-description { margin-bottom:16px; }
 .theme-mini { height:62px; }
 .mini-rail { padding:9px 6px; }
 .mini-paper { padding:9px; }
 .theme-options { gap:12px; }
 .theme-option-description { font-size:10px; }
 .background-options { gap:16px 12px; }
 .background-categories>button { min-height:44px; }
 .theme-gallery-footer { gap:10px;flex-wrap:wrap;padding:12px 18px max(12px,env(safe-area-inset-bottom)); }
 .theme-gallery-footer>p { width:100%;max-width:none;font-size:10px; }
 .theme-gallery-footer>div { width:100%; }
 .theme-gallery-footer .primary-button { flex:1; }
}

@media(max-width:740px) { .chat-shell .advanced-conversation>header:has(.header-call) .chat-background-button { display:none; } }

/* Additional coordinated themes use the same neutral-surface and control system. */
[data-appearance="graphite"] {
    --space-bg: #f5f6f7;
    --space-surface: #ffffff;
    --space-secondary: #eef0f3;
    --space-ink: #24272e;
    --space-muted: #596270;
    --space-border: #dce0e5;
    --space-accent: #3c424b;
    --space-accent-dark: #242930;
    --space-on-accent: #ffffff;
    --space-soft: #eceef1;
    --space-rail: #f0f2f4;
    --space-canvas: #f0f2f4;
    --space-outgoing: #e6e8ec;
}
:root[data-theme="dark"][data-appearance="graphite"], :root[data-theme="dark"] [data-appearance="graphite"] {
    --space-bg: #17191d;
    --space-surface: #22252b;
    --space-secondary: #2d323b;
    --space-ink: #f5f6f8;
    --space-muted: #adb6c4;
    --space-border: #3d4653;
    --space-accent: #c9cfd9;
    --space-accent-dark: #e1e5ec;
    --space-on-accent: #17191d;
    --space-soft: #303741;
    --space-rail: #1b1e23;
    --space-canvas: #1b2028;
    --space-outgoing: #353d48;
}
[data-appearance="cobalt"] {
    --space-bg: #f4f6fa;
    --space-surface: #ffffff;
    --space-secondary: #edf1f7;
    --space-ink: #223149;
    --space-muted: #54657c;
    --space-border: #d9e1ec;
    --space-accent: #2855b1;
    --space-accent-dark: #214895;
    --space-on-accent: #ffffff;
    --space-soft: #e8eefb;
    --space-rail: #eef2f8;
    --space-canvas: #edf1f8;
    --space-outgoing: #e1e9f9;
}
:root[data-theme="dark"][data-appearance="cobalt"], :root[data-theme="dark"] [data-appearance="cobalt"] {
    --space-bg: #121923;
    --space-surface: #1b2534;
    --space-secondary: #273449;
    --space-ink: #f0f5fc;
    --space-muted: #aabbd2;
    --space-border: #384b66;
    --space-accent: #9bbaff;
    --space-accent-dark: #c0d2ff;
    --space-on-accent: #121923;
    --space-soft: #2a3b59;
    --space-rail: #16202d;
    --space-canvas: #172231;
    --space-outgoing: #2c3d5b;
}
[data-appearance="jade"] {
    --space-bg: #f3f6f5;
    --space-surface: #fefffe;
    --space-secondary: #eaf1ef;
    --space-ink: #233a34;
    --space-muted: #506b61;
    --space-border: #d6e3dd;
    --space-accent: #13685e;
    --space-accent-dark: #10564e;
    --space-on-accent: #ffffff;
    --space-soft: #e4f0eb;
    --space-rail: #edf3f0;
    --space-canvas: #eaf1ed;
    --space-outgoing: #daece3;
}
:root[data-theme="dark"][data-appearance="jade"], :root[data-theme="dark"] [data-appearance="jade"] {
    --space-bg: #121d1c;
    --space-surface: #1b2a27;
    --space-secondary: #273a34;
    --space-ink: #eef7f3;
    --space-muted: #a6c2b7;
    --space-border: #375348;
    --space-accent: #8acdc0;
    --space-accent-dark: #b3e0d6;
    --space-on-accent: #121d1c;
    --space-soft: #29463e;
    --space-rail: #162420;
    --space-canvas: #172823;
    --space-outgoing: #2b4b40;
}
[data-appearance="terracotta"] {
    --space-bg: #f8f4ef;
    --space-surface: #fffdfa;
    --space-secondary: #f1ebe3;
    --space-ink: #3a2d26;
    --space-muted: #6c5d50;
    --space-border: #e5dad0;
    --space-accent: #994d35;
    --space-accent-dark: #803e2a;
    --space-on-accent: #ffffff;
    --space-soft: #f6e8df;
    --space-rail: #f3ede6;
    --space-canvas: #f3ebe2;
    --space-outgoing: #f0dfd3;
}
:root[data-theme="dark"][data-appearance="terracotta"], :root[data-theme="dark"] [data-appearance="terracotta"] {
    --space-bg: #211b18;
    --space-surface: #2c2520;
    --space-secondary: #3b3028;
    --space-ink: #faf2ea;
    --space-muted: #c7b5a4;
    --space-border: #514234;
    --space-accent: #e4ad93;
    --space-accent-dark: #f1c6b0;
    --space-on-accent: #211b18;
    --space-soft: #49352c;
    --space-rail: #261f1b;
    --space-canvas: #2a221c;
    --space-outgoing: #4e392c;
}
[data-appearance="iris"] {
    --space-bg: #f6f5f9;
    --space-surface: #fffefe;
    --space-secondary: #efedf5;
    --space-ink: #322d3f;
    --space-muted: #665c75;
    --space-border: #e0daeb;
    --space-accent: #754c9e;
    --space-accent-dark: #603c85;
    --space-on-accent: #ffffff;
    --space-soft: #eee7f5;
    --space-rail: #f1eff6;
    --space-canvas: #f0edf6;
    --space-outgoing: #e9e0f2;
}
:root[data-theme="dark"][data-appearance="iris"], :root[data-theme="dark"] [data-appearance="iris"] {
    --space-bg: #1b1822;
    --space-surface: #26212e;
    --space-secondary: #342c40;
    --space-ink: #f7f2fc;
    --space-muted: #beb0cf;
    --space-border: #493d59;
    --space-accent: #c8b0e7;
    --space-accent-dark: #e1ccf7;
    --space-on-accent: #1b1822;
    --space-soft: #403049;
    --space-rail: #201c28;
    --space-canvas: #241e2d;
    --space-outgoing: #44334e;
}
[data-appearance="rosewood"] {
    --space-bg: #f8f4f5;
    --space-surface: #fffdfd;
    --space-secondary: #f2ebed;
    --space-ink: #3f2c33;
    --space-muted: #715b65;
    --space-border: #e8d9df;
    --space-accent: #924b64;
    --space-accent-dark: #7c3d54;
    --space-on-accent: #ffffff;
    --space-soft: #f7e7ed;
    --space-rail: #f4edf0;
    --space-canvas: #f4ecef;
    --space-outgoing: #f1dee5;
}
:root[data-theme="dark"][data-appearance="rosewood"], :root[data-theme="dark"] [data-appearance="rosewood"] {
    --space-bg: #21191d;
    --space-surface: #2d2329;
    --space-secondary: #3b2d35;
    --space-ink: #fcf1f6;
    --space-muted: #ceb3c0;
    --space-border: #553f4c;
    --space-accent: #e0afc1;
    --space-accent-dark: #f1cbd9;
    --space-on-accent: #21191d;
    --space-soft: #49313f;
    --space-rail: #271e23;
    --space-canvas: #2c2128;
    --space-outgoing: #4d3542;
}
[data-appearance="espresso"] {
    --space-bg: #f7f5f0;
    --space-surface: #fffefa;
    --space-secondary: #f0ede5;
    --space-ink: #383126;
    --space-muted: #6c604e;
    --space-border: #e3dcce;
    --space-accent: #785b38;
    --space-accent-dark: #654b2e;
    --space-on-accent: #ffffff;
    --space-soft: #f1ebdf;
    --space-rail: #f3efe7;
    --space-canvas: #f2ede3;
    --space-outgoing: #ece3d3;
}
:root[data-theme="dark"][data-appearance="espresso"], :root[data-theme="dark"] [data-appearance="espresso"] {
    --space-bg: #201c17;
    --space-surface: #2b261f;
    --space-secondary: #393126;
    --space-ink: #f8f3e9;
    --space-muted: #c6b9a5;
    --space-border: #4f4335;
    --space-accent: #d5be9b;
    --space-accent-dark: #e9d8bb;
    --space-on-accent: #201c17;
    --space-soft: #453a2c;
    --space-rail: #251f1a;
    --space-canvas: #29231c;
    --space-outgoing: #483d2c;
}
[data-appearance="midnight"] {
    --space-bg: #f3f5f9;
    --space-surface: #ffffff;
    --space-secondary: #ecf0f6;
    --space-ink: #243149;
    --space-muted: #54647b;
    --space-border: #d8e0ec;
    --space-accent: #3e5474;
    --space-accent-dark: #31435e;
    --space-on-accent: #ffffff;
    --space-soft: #e8edf6;
    --space-rail: #edf1f7;
    --space-canvas: #eaf0f7;
    --space-outgoing: #dfe7f2;
}
:root[data-theme="dark"][data-appearance="midnight"], :root[data-theme="dark"] [data-appearance="midnight"] {
    --space-bg: #101722;
    --space-surface: #182331;
    --space-secondary: #253348;
    --space-ink: #eff4fc;
    --space-muted: #a8bbd4;
    --space-border: #354a66;
    --space-accent: #b0c0dc;
    --space-accent-dark: #cedbf0;
    --space-on-accent: #101722;
    --space-soft: #293b53;
    --space-rail: #141e2c;
    --space-canvas: #141f2f;
    --space-outgoing: #2b3e58;
}

[data-appearance="graphite"] { --wallpaper:none;--wallpaper-size:cover; }
[data-appearance="cobalt"] { --wallpaper:repeating-linear-gradient(135deg,transparent 0 90px,color-mix(in srgb,var(--space-accent) 3%,transparent) 91px 92px,transparent 93px 180px);--wallpaper-size:cover; }
[data-appearance="jade"] { --wallpaper:radial-gradient(ellipse at 0 100%,color-mix(in srgb,var(--space-accent) 3%,transparent),transparent 70%);--wallpaper-size:cover; }
[data-appearance="terracotta"] { --wallpaper:repeating-linear-gradient(2deg,transparent 0 8px,color-mix(in srgb,var(--space-muted) 3%,transparent) 8px 9px,transparent 9px 16px);--wallpaper-size:32px 32px; }
[data-appearance="iris"] { --wallpaper:radial-gradient(circle,color-mix(in srgb,var(--space-accent) 6%,transparent) .8px,transparent 1px);--wallpaper-size:36px 36px; }
[data-appearance="rosewood"] { --wallpaper:repeating-linear-gradient(30deg,transparent 0 120px,color-mix(in srgb,var(--space-accent) 3%,transparent) 121px 122px,transparent 123px 240px);--wallpaper-size:cover; }
[data-appearance="espresso"] { --wallpaper:repeating-linear-gradient(90deg,transparent 0 5px,color-mix(in srgb,var(--space-muted) 3%,transparent) 5px 6px);--wallpaper-size:6px 6px; }
[data-appearance="midnight"] { --wallpaper:radial-gradient(circle,color-mix(in srgb,var(--space-accent) 6%,transparent) 1px,transparent 1.5px);--wallpaper-size:52px 52px; }

/* Action sheets already supply an inset; avoid double padding and overflowing labels. */
.chat-shell .action-sheet .conversation-tools { padding:0; }
.chat-shell .action-sheet .conversation-tools button { min-width:0;white-space:normal;overflow-wrap:anywhere;font-size:14px;line-height:1.4;padding:10px 8px;gap:6px; }
