:root{--bg:var(--f-bg);--panel:var(--f-panel);--line:var(--f-line);--accent:var(--f-accent);--muted:var(--f-muted)}
body{background:radial-gradient(ellipse at 85% 0,var(--f-soft),transparent 60%),var(--f-bg);background-attachment:fixed}aside{background:linear-gradient(180deg,var(--f-sidebar),var(--f-bg));border-color:var(--f-line)}.brand{color:var(--f-accent);gap:10px;min-width:0}.brand>span:last-child{overflow-wrap:anywhere;font-size:17px;letter-spacing:.7px}.brand small{font-size:10px;letter-spacing:.3px;line-height:1.5;color:var(--f-muted);white-space:normal}.faction-brand-icon{font-size:32px!important;flex-shrink:0}.card,.auth{background:var(--f-panel);border-color:var(--f-line)}.hero{background:linear-gradient(120deg,var(--f-sidebar),var(--f-panel));border-color:var(--f-line)}nav a:hover,nav a.selected,.challenge-tabs a.selected{background:var(--f-soft);color:var(--f-accent);border-color:var(--f-accent)}.eyebrow,.muted,small{color:var(--f-muted)}label{color:var(--text)}input,select,textarea{background:var(--f-bg);border-color:var(--f-line)}input:focus,select:focus,textarea:focus{outline-color:var(--f-accent)}button:not(.secondary):not(.danger):not(.community-delete){background:var(--f-accent);color:#081513;text-shadow:none;box-shadow:0 0 12px #0003}button.secondary{background:var(--f-soft);color:var(--text);border-color:var(--f-line)}.auth-capital-link,.auth-entry-options>details,.challenge-description-box,.challenge-tabs a,.choices label,.vanilla-finance-summary{background:var(--f-soft);border-color:var(--f-line)}.challenge-description-box{border-left-color:var(--f-accent)}.frequency,.uniform strong{color:var(--f-accent)}.community-panel,.community-chat,.community-people{background:var(--f-panel);border-color:var(--f-line)}.accounts-table thead th{background:var(--f-sidebar);color:var(--f-accent)}.faction-theme-swatches{display:flex;flex-wrap:wrap;gap:12px;margin:18px 0}.faction-theme-swatches span{border-left:14px solid var(--swatch);border-radius:4px;padding:7px 10px;background:var(--f-bg);font-size:12px}.role-gm{background:#302a48!important;color:#e2d4ff!important;border:1px solid #bb9cff!important;box-shadow:0 0 10px #b99bff55}

.faction-brand-icon{color:var(--f-accent)!important}
