/* Browser-local accent palette. The derived colors are written only on :root. */
.brand svg stop:first-child {stop-color:var(--brand-gradient-start,#159bff);}
.brand svg stop:last-child {stop-color:var(--brand-gradient-end,#0052ff);}
.input-row input:focus {box-shadow:0 0 0 3px var(--focus-halo,#2170e525);}
.generator-card {box-shadow:0 18px 60px var(--accent-shadow,#143a8712),0 2px 7px var(--accent-shadow-small,#143a8708);}
.promo-card {box-shadow:0 14px 38px var(--promo-shadow,#143a8710);}
.promo-card-premium {box-shadow:0 16px 42px var(--promo-premium-shadow,#1454bd20);}
.promo-theme-options input:checked+span {color:var(--button-text);}
.promo-future {background:linear-gradient(115deg,var(--promo-gradient-start,#10244b),var(--promo-gradient-end,#154a9e));box-shadow:0 15px 35px var(--promo-glow,#154a9e21);}
.promo-future-label {border-color:#ffffff6b;color:#ffffffdf;}
.promo-future p,.promo-price span {color:#ffffffe0;}
.promo-pricing {border-color:#ffffff4d;}
.promo-plus {color:#ffffffe0;}

.accent-control {position:relative;flex:none;}
.accent-toggle {width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:1px solid var(--line);border-radius:6px;background:var(--surface);cursor:pointer;}
.accent-toggle:hover,.accent-toggle[aria-expanded="true"] {background:var(--hover-surface);}
.accent-indicator {display:block;width:23px;height:23px;border:2px solid var(--surface);border-radius:50%;background:var(--selected-accent,#2563eb);box-shadow:0 0 0 1px var(--input-border);}
.accent-panel {position:absolute;z-index:30;top:calc(100% + 10px);right:0;width:min(290px,calc(100vw - 24px));padding:17px;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:0 18px 40px #0003;text-align:left;color:var(--ink);}
.accent-panel strong {display:block;font-size:15px;line-height:1.3;}
.accent-panel p {margin:4px 0 15px;color:var(--muted);font-size:12px;line-height:1.45;}
.accent-presets {display:flex;gap:10px;align-items:center;margin-bottom:18px;}
.accent-preset {width:32px;height:32px;flex:none;padding:0;border:2px solid var(--surface);border-radius:50%;background:var(--swatch);box-shadow:0 0 0 1px var(--input-border);cursor:pointer;}
.accent-preset[aria-pressed="true"] {box-shadow:0 0 0 2px var(--accent);}
.accent-preset:hover {transform:scale(1.1);}
.accent-custom {display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px;font-weight:700;}
.accent-custom input {width:54px;height:38px;padding:2px;border:1px solid var(--input-border);border-radius:7px;background:var(--input);cursor:pointer;}
@media(max-width:600px) {
  .header-inner {flex-wrap:wrap;gap:8px;}
  .header-inner nav {width:100%;justify-content:flex-end;}
  .accent-panel {right:-49px;}
}
@media(max-width:400px) {
  .header-inner nav {gap:7px;}
  #language-select {max-width:106px;}
}
