:root{--control:#111;--text-black:#000;--paper-white:#fff;--hint:#645900;--secondary:#484848;--line-rgb:0,0,0;--header-rgb:255,222,0;--pale:#eee}
:root[data-theme=soft]{--y:#e4dfd3;--ink:#30362f;--control:#30362f;--text-black:#30362f;--paper:#eae6dc;--paper-white:#eae6dc;--muted:#5e6358;--hint:#626457;--secondary:#50584c;--line-rgb:72,83,65;--header-rgb:220,216,203;--pale:#d7dacd;--soft-surface:#ede8dd;--soft-accent:#53634f;--soft-on-accent:#f2eee3;color-scheme:light}
:root[data-theme=dark]{--y:#191c20;--ink:#eeeae0;--control:#eeeae0;--text-black:#eeeae0;--paper:#20242a;--paper-white:#252a30;--muted:#b1b2ae;--hint:#b5b3a9;--secondary:#d1cec5;--line-rgb:238,234,224;--header-rgb:25,28,32;--pale:#2c3138;color-scheme:dark}
:root[data-theme=contrast]{--y:#111;--ink:#ffde00;--control:#ffde00;--text-black:#ffde00;--paper:#181818;--paper-white:#181818;--muted:#d4c878;--hint:#c8b957;--secondary:#e2d489;--line-rgb:255,222,0;--header-rgb:17,17,17;--pale:#252314;color-scheme:dark}
.appearance-control{position:relative;flex:0 0 auto}.appearance-control[hidden],.appearance-menu[hidden]{display:none}
.tools-footer .appearance-toggle{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:4px 0;font:inherit;line-height:1.4;border:0;color:var(--ink);background:transparent;cursor:pointer;text-decoration:none}.appearance-toggle>span{font-size:18px;line-height:1}
.appearance-menu{position:absolute;bottom:calc(100% + 8px);right:0;width:220px;background:var(--paper);color:var(--ink);border:1px solid rgba(var(--line-rgb),.3);border-radius:12px;padding:16px;box-shadow:0 8px 32px #0003;z-index:60}
.appearance-menu strong{display:block;margin-bottom:10px}.appearance-choices{display:grid;gap:6px}.appearance-choices button{display:flex;align-items:center;gap:12px;min-height:44px;width:100%;padding:8px 10px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--ink);text-align:left;cursor:pointer}.appearance-choices button span{width:20px;height:20px;border:1px solid #888;border-radius:50%}.appearance-choices button[aria-pressed=true]{border-color:var(--ink);font-weight:700}.appearance-menu p{font-size:12px;line-height:1.5;margin:10px 0 0;min-height:18px}
.appearance-toggle:focus-visible,.appearance-choices button:focus-visible{outline:2px solid currentColor;outline-offset:3px}.tools-footer>div{align-items:center;flex-wrap:wrap}
html[data-theme=soft] :is(.header-tools,.photo-choose,.video-primary,.utility-primary,.chat-compose-actions button[type=submit]),html[data-theme=dark] :is(.header-tools,.photo-choose,.video-primary,.utility-primary,.chat-compose-actions button[type=submit]){background:#ffde00;color:#111;border-color:#111}
html[data-theme=dark] :is(.utility-tab.active,.tool-tab.active,.ai-mode.selected,.chat-message-user){background:#2d333b;color:#f5efdd;border-color:#656970}
html[data-theme=dark] :is(.dark,.footer){background:var(--y);color:var(--ink)}
html[data-theme=dark] :is(.footer-bottom,.dark .section-head){color:var(--ink);border-color:rgba(var(--line-rgb),.3)}
html[data-theme=dark] .brand img{background:transparent;border-radius:0;padding:0;filter:brightness(0) saturate(100%) invert(87%) sepia(97%) saturate(2232%) hue-rotate(359deg) brightness(101%) contrast(104%)}
html[data-theme=dark] :is(.hero-logo,.big-logo-panel img){background:#c9b965;border-radius:24px}
html[data-theme=dark] .ai-feature-arrow{background:#f4e8bc;border-radius:2px}
html[data-theme=dark] :is(.video-preview,video,.photo-viewer,.photo-viewer-stage){background:#101010;color:#fff}
@media(max-width:600px){.appearance-menu{left:0;right:auto;max-width:calc(100vw - 40px)}.tools-footer>div{justify-content:flex-start;gap:12px}.tools-footer{align-items:flex-start}}

:root[data-theme=soft],:root[data-theme=dark],:root[data-theme=contrast]{--tone-111:var(--control);--tone-555:var(--muted);--tone-666:var(--muted);--tone-777:var(--muted);--tone-101010:var(--ink);--tone-111111:var(--control);--tone-484848:var(--secondary);--tone-645900:var(--hint);--tone-696969:var(--muted);--tone-777777:var(--muted);--tone-ffde00:var(--y);--tone-000:var(--text-black);--tone-000000:var(--text-black);--tone-ffffff:var(--paper-white);--tone-fff:var(--paper-white);--tone-eee:var(--pale);--tone-eeeeee:var(--pale);--tone-rgb:var(--line-rgb);--tone-header:var(--header-rgb)}
:root[data-theme=soft],:root[data-theme=dark],:root[data-theme=contrast]{--input-placeholder:var(--hint)}
html[data-theme=dark] :is(.tools-note,.chat-note,.utility-note,.video-preview-status){color:var(--hint)}
html[data-theme=dark] .tool-tabs button[aria-pressed=true]{background:#ffde00;color:#111;border-color:#ffde00}
html:is([data-theme=soft],[data-theme=dark]) #chat-send{background:#ffde00;color:#111;border-color:#111}
html[data-theme=contrast] :is(.header-tools,.photo-choose,.video-primary,.utility-primary,#chat-send,.tool-tabs button[aria-pressed=true],.chat-message-user){background:#ffde00;color:#111;border-color:#ffde00}
html[data-theme=contrast] :is(.tools-note,.chat-note,.utility-note,.video-preview-status){color:var(--hint)}
html[data-theme=contrast] :is(.dark,.footer){background:var(--y);color:var(--ink)}
html[data-theme=contrast] :is(.footer-bottom,.dark .section-head){color:var(--ink);border-color:rgba(var(--line-rgb),.3)}
html[data-theme=contrast] :is(.brand img,.ai-feature-arrow){filter:brightness(0) saturate(100%) invert(87%) sepia(97%) saturate(2232%) hue-rotate(359deg) brightness(101%) contrast(104%)}
html[data-theme=contrast] :is(.video-preview,video,.photo-viewer,.photo-viewer-stage){background:#080808;color:#fff}
.appearance-menu p:empty{display:none}
.site-footer .appearance-control *{color:inherit}
.home-appearance-slot .appearance-menu{left:auto;right:0}
html[data-theme=soft] :is(.video-input-row,.chat-composer,.ai-input textarea,.ai-form-actions select,.utility-workspace textarea,.utility-workspace select,.utility-workspace input:not([type=checkbox]),.video-result select){background:var(--soft-surface);border-color:#89917f}
html[data-theme=soft] :is(.utility-upload,.ai-photo-empty,.chat-empty){background:#d9ddcf;border-color:#909a86}
html[data-theme=soft] .chat-message-assistant{background:var(--soft-surface);border-color:#a5ad98}
html[data-theme=soft] :is(.header-tools,.photo-choose,.video-primary,.utility-primary,#chat-send,.tool-tabs button[aria-pressed=true],.chat-message-user,.chat-suggestions button[aria-pressed=true],.download-video){background:var(--soft-accent);color:var(--soft-on-accent);border-color:var(--soft-accent)}
html[data-theme=soft] :is(.tools-note,.chat-note,.utility-note,.video-preview-status,.video-result-meta,.ai-empty,.ai-photo-empty>span,.collage-preview-heading span){color:var(--hint)}
html[data-theme=soft] .appearance-choices button[aria-pressed=true]{background:#d9ddcf;border-color:#89917f}
@supports (mask-image:url("logo-ink.png")) or (-webkit-mask-image:url("logo-ink.png")){
 html:is([data-theme=dark],[data-theme=contrast]) .brand-icon{position:relative}
 html:is([data-theme=dark],[data-theme=contrast]) .brand-icon::before{content:"";position:absolute;inset:0;pointer-events:none;background:#ffde00;-webkit-mask:url("logo-ink.png") center/contain no-repeat;mask:url("logo-ink.png") center/contain no-repeat}
 html:is([data-theme=dark],[data-theme=contrast]) .brand-icon img{opacity:0;background:transparent;border-radius:0;padding:0}
}

/* Homepage has only two local palettes; media itself is never recolored. */
html[data-home-appearance][data-theme=contrast]{--tone-111:#ffde00;--tone-101010:#ffde00;--tone-ffde00:#111;--tone-rgb:255,222,0;--tone-header:17,17,17}
html[data-home-appearance][data-theme=contrast] .home-page{background:#111;color:#ffde00}
html[data-home-appearance][data-theme=contrast] .home-page .member-icon img{filter:brightness(0) saturate(100%) invert(87%) sepia(97%) saturate(2232%) hue-rotate(359deg) brightness(101%) contrast(104%)}
html[data-home-appearance][data-theme=contrast] .home-brand .hero-logo-frame::before{content:"";position:absolute;inset:0;background:#ffde00;-webkit-mask:url("logo-ink.png") center/contain no-repeat;mask:url("logo-ink.png") center/contain no-repeat;transform:scale(1.3);pointer-events:none}
html[data-home-appearance][data-theme=contrast] .home-brand .hero-logo{opacity:0;filter:none}
html[data-home-appearance][data-theme=contrast] .home-page .navlinks{background:#111}
html[data-home-appearance][data-theme=contrast] .home-journal-intro p{color:#d4c878}
html[data-home-appearance][data-theme=contrast] .home-page .journal-type{color:#ffde00;border-color:#ffde00;background:transparent}
html[data-home-appearance][data-theme=contrast] .home-page .journal-type[aria-pressed=true]{color:#111;background:#ffde00}
/* Contact and account pages follow the personal site's saved palette. */
html[data-home-appearance][data-theme=contrast] body{background:#111;color:#ffde00}
html[data-home-appearance][data-theme=contrast] :is(.member-icon img,.contact-platform-icon){filter:brightness(0) saturate(100%) invert(87%) sepia(97%) saturate(2232%) hue-rotate(359deg) brightness(101%) contrast(104%)}
html[data-home-appearance][data-theme=contrast] .navlinks{background:#111}
html[data-home-appearance][data-theme=contrast] .member-button:hover{background:#e6c800;color:#111}
html[data-home-appearance][data-theme=contrast] .simple-connect{border-top-color:#ffde00}
html[data-home-appearance][data-theme=contrast] .simple-socials>div{border-bottom-color:rgba(255,222,0,.25)}
html[data-home-appearance][data-theme=contrast] .simple-socials :is(a,button):focus-visible{outline-color:#ffde00}
