/* Shared public geometry and preferences, including the compact bot catalog. */
.public-brand { --site-width:1356px; --site-gutter:clamp(20px,5.85vw,90px); --site-content:min(var(--site-width),calc(100% - 2 * var(--site-gutter))); }
.public-brand .site-header-inner,.public-brand .creator-header,.public-brand .creator-main,.public-brand .creator-footer,.public-brand .site-footer,.public-brand .information-page { width:var(--site-content); max-width:none; margin-inline:auto; }
.public-brand .brand-logo { padding:0; }
.public-brand .brand-logo img { width:144px; }
.public-brand .theme-switch { border:0; border-radius:50%; background:transparent; width:40px; height:40px; padding:10px; }
.public-brand .theme-switch:hover { background:var(--accent-soft); }
.public-brand .theme-switch [data-theme-label] { display:none; }
.public-brand .theme-switch svg { width:22px; height:22px; }
/* Public mockup shows the current theme; override the shared action icon's hidden state. */
.public-brand .theme-switch [data-theme-sun] { display:block!important; }
.public-brand .theme-switch [data-theme-moon] { display:none!important; }
:root[data-theme=dark] .public-brand .theme-switch [data-theme-sun] { display:none!important; }
:root[data-theme=dark] .public-brand .theme-switch [data-theme-moon] { display:block!important; }
@media(prefers-color-scheme:dark) {
 :root:not([data-theme=light]) .public-brand .theme-switch [data-theme-sun] { display:none!important; }
 :root:not([data-theme=light]) .public-brand .theme-switch [data-theme-moon] { display:block!important; }
}
.public-brand .ui-language-switch { padding:0 0 0 20px; gap:8px; border:0; border-left:1px solid var(--accent-border); border-radius:0; background:transparent; }
.public-brand .ui-language-switch button { min-height:40px; padding:10px 18px; border-radius:24px; font-size:14px; }
.public-brand .ui-language-switch button[aria-pressed=true] { background:var(--accent-soft); }
.public-brand .creator-header { border:0; }
@media(max-width:640px) {
 .public-brand .brand-logo img { width:96px; }
 .public-brand .theme-switch { width:32px; min-height:36px; height:36px; padding:6px; }
 .public-brand .ui-language-switch { padding-left:6px; gap:0; }
 .public-brand .ui-language-switch button { min-height:36px; padding:8px 7px; font-size:11px; }
}
