/* Global brand presets. This layer is intentionally loaded after the visual
   system so a single Super Admin choice reaches every page consistently. */
:root[data-brand-preset="lime"]{--accent:#7fa500;--accent-2:#5e8200;--accent-soft:rgba(127,165,0,.12);--accent-contrast:#0a0d08;--bg-grid:rgba(127,165,0,.035);--glow-accent:0 10px 24px rgba(127,165,0,.2)}
:root[data-brand-preset="cyan"]{--accent:#007f8a;--accent-2:#0067a3;--accent-soft:rgba(0,127,138,.12);--accent-contrast:#fff;--bg-grid:rgba(0,127,138,.035);--glow-accent:0 10px 24px rgba(0,127,138,.2)}
:root[data-brand-preset="blue"]{--accent:#2563eb;--accent-2:#007bb5;--accent-soft:rgba(37,99,235,.12);--accent-contrast:#fff;--bg-grid:rgba(37,99,235,.035);--glow-accent:0 10px 24px rgba(37,99,235,.2)}
:root[data-brand-preset="violet"]{--accent:#7c3aed;--accent-2:#6626d9;--accent-soft:rgba(124,58,237,.12);--accent-contrast:#fff;--bg-grid:rgba(124,58,237,.035);--glow-accent:0 10px 24px rgba(124,58,237,.2)}
:root[data-brand-preset="pink"]{--accent:#d000a6;--accent-2:#9d16d4;--accent-soft:rgba(208,0,166,.12);--accent-contrast:#fff;--bg-grid:rgba(208,0,166,.035);--glow-accent:0 10px 24px rgba(208,0,166,.2)}
:root[data-brand-preset="red"]{--accent:#dc274b;--accent-2:#c5163b;--accent-soft:rgba(220,39,75,.12);--accent-contrast:#fff;--bg-grid:rgba(220,39,75,.035);--glow-accent:0 10px 24px rgba(220,39,75,.2)}
:root[data-brand-preset="orange"]{--accent:#d86d00;--accent-2:#c94900;--accent-soft:rgba(216,109,0,.12);--accent-contrast:#fff;--bg-grid:rgba(216,109,0,.035);--glow-accent:0 10px 24px rgba(216,109,0,.2)}

:root[data-mode="dark"][data-brand-preset="lime"]{--accent:#c8ff00;--accent-2:#9bd400;--accent-soft:rgba(200,255,0,.105);--accent-contrast:#090c08;--bg-grid:rgba(200,255,0,.024);--glow-accent:0 10px 28px rgba(200,255,0,.16)}
:root[data-mode="dark"][data-brand-preset="cyan"]{--accent:#00f0ff;--accent-2:#00a9d4;--accent-soft:rgba(0,240,255,.105);--accent-contrast:#051012;--bg-grid:rgba(0,240,255,.024);--glow-accent:0 10px 28px rgba(0,240,255,.16)}
:root[data-mode="dark"][data-brand-preset="blue"]{--accent:#2f7bff;--accent-2:#00b7ff;--accent-soft:rgba(47,123,255,.115);--accent-contrast:#050b15;--bg-grid:rgba(47,123,255,.026);--glow-accent:0 10px 28px rgba(47,123,255,.18)}
:root[data-mode="dark"][data-brand-preset="violet"]{--accent:#a855f7;--accent-2:#7c3cff;--accent-soft:rgba(168,85,247,.115);--accent-contrast:#0d0713;--bg-grid:rgba(168,85,247,.026);--glow-accent:0 10px 28px rgba(168,85,247,.18)}
:root[data-mode="dark"][data-brand-preset="pink"]{--accent:#ff2bd6;--accent-2:#c514ff;--accent-soft:rgba(255,43,214,.11);--accent-contrast:#140710;--bg-grid:rgba(255,43,214,.025);--glow-accent:0 10px 28px rgba(255,43,214,.18)}
:root[data-mode="dark"][data-brand-preset="red"]{--accent:#ff365f;--accent-2:#ff1744;--accent-soft:rgba(255,54,95,.115);--accent-contrast:#15070a;--bg-grid:rgba(255,54,95,.025);--glow-accent:0 10px 28px rgba(255,54,95,.18)}
:root[data-mode="dark"][data-brand-preset="orange"]{--accent:#ff9f1c;--accent-2:#ff5f00;--accent-soft:rgba(255,159,28,.11);--accent-contrast:#160c03;--bg-grid:rgba(255,159,28,.025);--glow-accent:0 10px 28px rgba(255,159,28,.18)}

:root[data-brand-preset]{--chart-amber:var(--accent-2);--stat-1:var(--accent);--stat-2:var(--accent-2)}

.brand-mark{overflow:hidden}
.brand-mark [data-brand-logo-light],.brand-mark [data-brand-logo-dark]{display:block;width:100%;height:100%;object-fit:contain}
:root:not([data-mode="dark"]) .brand-logo-dark,:root[data-mode="dark"] .brand-logo-light{display:none!important}
.brand-mark.has-brand-logo{padding:0;background:transparent;border:0;box-shadow:none}
.auth-brand-logo{width:min(240px,100%)!important;height:74px!important;margin:0 auto 16px!important;border-radius:0!important}
.welcome-brand-logo{width:min(220px,100%);height:68px;margin:0 auto 18px;border-radius:0}
.auth-brand-logo:not(.has-brand-logo),.welcome-brand-logo:not(.has-brand-logo){width:56px!important;height:56px!important;border-radius:16px!important;background:var(--accent);box-shadow:var(--glow-accent)}
.auth-brand-logo .icon,.welcome-brand-logo .icon{width:28px;height:28px}

/* A assinatura no menu é exclusivamente visual: logo horizontal aberta e
   favicon no modo compacto. O nome da plataforma permanece no navegador/PWA. */
.sidebar{overflow-x:hidden}
.sidebar .brand{display:flex;align-items:center;width:100%;min-height:66px;padding:0 4px 24px;margin:0 0 10px}
.sidebar-brand-logo{display:grid;place-items:center start;width:100%;height:58px;overflow:hidden;color:var(--accent)}
.sidebar-brand-logo img{display:block;width:100%;height:100%;object-fit:contain;object-position:left center}
.sidebar-brand-logo>.icon{width:24px;height:24px;margin-left:10px}
.sidebar-brand-favicon{display:none;width:44px;height:44px;place-items:center;overflow:hidden;border-radius:12px;color:var(--accent)}
.sidebar-brand-favicon img{display:block;width:100%;height:100%;object-fit:contain}
.sidebar-brand-favicon:not(.has-brand-favicon){background:var(--accent);color:var(--accent-contrast);box-shadow:var(--glow-accent)}
.sidebar-brand-favicon>.icon{width:22px;height:22px}
.app,.sidebar,.main{transition:grid-template-columns .22s var(--ease),width .22s var(--ease),padding .22s var(--ease)}
.mobile-toggle{display:grid}

@media(min-width:1081px){
  .app.sidebar-collapsed{grid-template-columns:84px minmax(0,1fr)}
  .app.sidebar-collapsed .sidebar{padding-left:12px;padding-right:12px}
  .app.sidebar-collapsed .sidebar .brand{justify-content:center;padding-left:0;padding-right:0}
  .app.sidebar-collapsed .sidebar-brand-logo{display:none}
  .app.sidebar-collapsed .sidebar-brand-favicon{display:grid}
  .app.sidebar-collapsed .nav-label{display:none}
  .app.sidebar-collapsed .nav{gap:7px}
  .app.sidebar-collapsed .nav-btn{justify-content:center;width:100%;padding:13px 0;font-size:0;gap:0}
  .app.sidebar-collapsed .nav-btn .icon{width:20px;height:20px}
  .app.sidebar-collapsed .nav-btn .count{display:none}
  .app.sidebar-collapsed #orgNavGroups>.nav:first-of-type,
  .app.sidebar-collapsed #platformNavGroup>.nav{margin-top:5px}
  .app.sidebar-collapsed .sidebar-upgrade{display:none}
  .app.sidebar-collapsed .side-profile{justify-content:center;padding:8px;background:transparent;border:0}
  .app.sidebar-collapsed .side-profile-text,.app.sidebar-collapsed .side-profile .icon-btn{display:none}
}

.brand-studio{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr);gap:18px;align-items:start}
.brand-studio-form{display:grid;gap:18px;min-width:0}
.brand-config-card{min-width:0}
.brand-config-card>.field{max-width:560px}
.brand-help{margin:-4px 0 18px;color:var(--text-faint);font-size:13px;line-height:1.55}
.brand-assets{display:grid;gap:12px;margin-top:20px;padding-top:18px;border-top:1px solid var(--border)}
.brand-asset-row{display:grid;grid-template-columns:54px minmax(180px,1fr) auto auto;align-items:center;gap:13px;padding:13px;border:1px solid var(--border);border-radius:14px;background:var(--surface-2)}
.brand-asset-row.logo-asset-row{grid-template-columns:128px minmax(180px,1fr) auto auto}
.brand-asset-thumb{width:54px;height:54px;display:grid;place-items:center;border-radius:12px;background:var(--bg);border:1px solid var(--border);color:var(--accent);overflow:hidden}
.brand-asset-thumb.logo{width:128px;height:58px;border-radius:10px}
.brand-asset-thumb.favicon{width:44px;height:44px;margin:5px}
.brand-asset-thumb img{width:100%;height:100%;object-fit:contain;padding:5px}
.brand-asset-thumb .icon{width:25px;height:25px}
.brand-asset-copy{display:flex;flex-direction:column;min-width:0}
.brand-asset-copy b{font-size:13px}
.brand-asset-copy span{margin-top:3px;color:var(--text-faint);font-size:11.5px;line-height:1.4}
.brand-file-btn{white-space:nowrap}

.neon-presets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.neon-preset{display:grid;grid-template-columns:32px 1fr 18px;align-items:center;gap:10px;min-height:58px;padding:10px 13px;text-align:left;border:1px solid var(--border);border-radius:12px;background:var(--surface-2);color:var(--text-dim);font-size:13px;font-weight:700;transition:border-color .16s var(--ease),background-color .16s var(--ease),transform .16s var(--ease)}
.neon-preset:hover{border-color:color-mix(in srgb,var(--preset) 55%,var(--border));transform:translateY(-1px)}
.neon-preset.active{border-color:var(--preset);background:color-mix(in srgb,var(--preset) 8%,var(--surface));color:var(--text);box-shadow:0 0 0 3px color-mix(in srgb,var(--preset) 10%,transparent)}
.neon-swatch{width:27px;height:27px;border-radius:9px;background:linear-gradient(135deg,var(--preset),var(--preset-2));box-shadow:0 0 15px color-mix(in srgb,var(--preset) 45%,transparent)}
.neon-preset>.icon{opacity:0;color:var(--preset)}
.neon-preset.active>.icon{opacity:1}

.brand-live-preview{position:sticky;top:108px;overflow:hidden}
.brand-browser-preview{overflow:hidden;border:1px solid var(--border);border-radius:16px;background:var(--bg);box-shadow:var(--shadow-md)}
.brand-browser-bar{height:32px;display:flex;align-items:center;gap:5px;padding:0 10px;background:var(--surface-2);border-bottom:1px solid var(--border)}
.brand-browser-bar i{width:6px;height:6px;border-radius:50%;background:var(--border-strong)}
.brand-browser-bar span{min-width:0;margin-left:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-faint);font:500 8px var(--font-mono)}
.brand-preview-shell{display:grid;grid-template-columns:50px 1fr;min-height:300px}
.brand-preview-rail{display:flex;flex-direction:column;align-items:center;gap:15px;padding:15px 10px;border-right:1px solid var(--border);background:color-mix(in srgb,var(--bg) 88%,transparent)}
.brand-preview-logo{width:28px;height:28px;display:grid;place-items:center;margin-bottom:8px;border-radius:8px;background:var(--accent);color:var(--accent-contrast);overflow:hidden}
.brand-preview-logo img{width:100%;height:100%;object-fit:contain;padding:3px;background:var(--surface)}
.brand-preview-logo .icon{width:15px;height:15px}
.brand-preview-rail>i{width:20px;height:5px;border-radius:99px;background:var(--surface-3)}
.brand-preview-rail>i.active{background:var(--accent);box-shadow:0 0 12px var(--accent)}
.brand-preview-content{padding:25px 19px}
.brand-preview-content>span{color:var(--accent);font-size:7px;font-weight:800;letter-spacing:.12em}
.brand-preview-content h4{margin:5px 0 17px;font-size:16px;line-height:1.15}
.brand-preview-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}
.brand-preview-stats b{height:46px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}
.brand-preview-stats b:first-child{border-top:2px solid var(--accent)}
.brand-preview-chart{height:105px;margin-top:9px;border:1px solid var(--border);border-radius:9px;background:var(--surface);position:relative;overflow:hidden}
.brand-preview-chart::before,.brand-preview-chart::after{content:"";position:absolute;left:10px;right:10px;height:1px;background:var(--border)}
.brand-preview-chart::before{top:36%}.brand-preview-chart::after{top:69%}
.brand-preview-chart i{position:absolute;left:10%;right:8%;bottom:17%;height:55%;border-bottom:2px solid var(--accent);transform:skewY(-16deg);filter:drop-shadow(0 0 7px var(--accent))}
.pwa-readiness{display:grid;gap:12px;margin-top:18px}
.pwa-readiness>div{display:flex;align-items:center;gap:11px}
.pwa-readiness>.icon,.pwa-readiness>div>.icon{width:20px;height:20px;flex:none;padding:4px;border-radius:6px;background:var(--accent-soft);color:var(--accent)}
.pwa-readiness span{display:flex;flex-direction:column}
.pwa-readiness b{font-size:12.5px}.pwa-readiness small{margin-top:2px;color:var(--text-faint);font-size:10.5px}

@media(max-width:1180px){.brand-studio{grid-template-columns:1fr}.brand-live-preview{position:static}.brand-browser-preview{max-width:620px}}
@media(max-width:680px){.brand-asset-row,.brand-asset-row.logo-asset-row{grid-template-columns:54px 1fr}.brand-asset-thumb.logo{width:54px;height:54px}.brand-asset-row>.btn,.brand-asset-row>.link-action{justify-self:start}.neon-presets{grid-template-columns:1fr}}
