/*
 * Visual Seenbio — painel do cliente, painel administrativo e afiliados.
 * Cores da home da Seenbio (roxo-escuro, magenta e azul-violeta) e layout em blocos:
 * menu lateral flutuante, cartões arredondados e fundo com grade e brilho.
 * Carregado DEPOIS de admin.css / account.css / affiliates.css.
 */
:root {
  --sb-bg: #09070f; --sb-side: #110d1c; --sb-card: #151121; --sb-card-2: #1c1630; --sb-input: #0c0a14;
  --sb-line: #2a2342; --sb-line-2: #3a3156; --sb-text: #f4f0fb; --sb-muted: #a69ec0; --sb-faint: #756d8e;
  --sb-pink: #ff00ff; --sb-violet: #8b3dff; --sb-blue: #5b5bff; --sb-lilac: #b98bff;
  --sb-grad: linear-gradient(100deg, #ff00ff 0%, #b12cff 45%, #5b5bff 100%);
  --sb-grad-soft: linear-gradient(135deg, rgba(255, 0, 255, .14), rgba(91, 91, 255, .08));
  --sb-radius: 22px;
}

/* ---------- fundo com grade e brilho (como a home da Seenbio) ---------- */
body.adm, body.acc, body.af-body {
  background-color: var(--sb-bg);
  background-image:
    radial-gradient(900px 620px at 100% -8%, rgba(255, 0, 255, .15), transparent 62%),
    radial-gradient(760px 560px at -12% 108%, rgba(91, 91, 255, .12), transparent 62%),
    linear-gradient(rgba(255, 255, 255, .028) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, .028) 1px, transparent 1px);
  background-size: auto, auto, 46px 46px, 46px 46px;
  background-attachment: fixed;
}
.acc--editor .acc-main { background: transparent; }

/* ---------- menu lateral em bloco (cliente e admin) ---------- */
.sb-side {
  position: fixed; top: 16px; bottom: 16px; left: 16px; width: 260px; z-index: 30;
  display: flex; flex-direction: column; padding: 14px 12px;
  border-radius: var(--sb-radius); border: 1px solid var(--sb-line);
  background: linear-gradient(180deg, rgba(23, 18, 38, .96), rgba(14, 11, 24, .96));
  box-shadow: 0 24px 60px rgba(0, 0, 0, .45);
}
.sb-side__foot { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 14px 8px 2px; margin-top: 12px; border-top: 1px solid var(--sb-line); }
.sb-side__logo img { height: 24px; width: auto; display: block; opacity: .9; }
.sb-side__logo span { font-weight: 700; font-size: 17px; color: var(--sb-text); }
.sb-side__logo span i { color: var(--sb-pink); }
.sb-avatar { width: 40px; height: 40px; border-radius: 12px; display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; background: var(--sb-grad); color: #fff; font-weight: 700; font-size: 14px; box-shadow: 0 6px 18px rgba(177, 44, 255, .35); }
.sb-usercard {
  display: flex; align-items: center; gap: 12px; width: 100%; padding: 10px 12px; margin-bottom: 14px;
  border-radius: 16px; border: 1px solid var(--sb-line); background: rgba(255, 255, 255, .03);
  color: var(--sb-text); font: inherit; text-align: left; cursor: pointer; text-decoration: none;
}
.acc-side .acc-user { margin: 0; }
.acc-side .acc-user__btn.sb-usercard { height: auto; font-weight: 400; font-size: 14px; }
.sb-usercard:hover { border-color: var(--sb-line-2); background: rgba(255, 255, 255, .05); }
.sb-usercard__info { display: flex; flex-direction: column; min-width: 0; line-height: 1.25; flex: 1; }
.sb-usercard__info strong { font-size: 14.5px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.sb-usercard__info small { font-size: 12.5px; color: var(--sb-muted); }
.sb-usercard > i { color: var(--sb-muted); font-size: 12px; }

/* item ativo do menu: pílula com o degradê Seenbio */
.acc-nav__item.is-active, .adm-nav__item.is-active { background: var(--sb-grad) !important; color: #fff !important; font-weight: 600; box-shadow: 0 8px 22px rgba(177, 44, 255, .28); }
.acc-nav__item.is-active i, .adm-nav__item.is-active i { color: #fff !important; }

/* ---------- painel do cliente ---------- */
.acc-side { /* usa .sb-side */ border-right: 0 !important; }
.acc-wrap { margin-left: 292px !important; }
.acc-top { background: rgba(9, 7, 15, .72) !important; border-bottom: 0 !important; padding: 0 24px 0 8px !important; }
.acc-link { background: rgba(21, 17, 33, .9) !important; border-color: var(--sb-line) !important; }
.acc-link__copy { background: var(--sb-card-2) !important; }
.acc-user { position: relative; }
.acc-side .acc-user__menu { left: 0; right: 0; top: 64px; width: auto; z-index: 5; background: #181326; }
.acc-plan { background-image: linear-gradient(#151121, #151121), var(--sb-grad) !important; }
.acc-plan__icon { background: var(--sb-grad) !important; }
.acc-publish__btn { background: var(--sb-grad) !important; color: #fff !important; box-shadow: 0 8px 24px rgba(177, 44, 255, .35); }
.acc-publish__btn:hover { filter: brightness(1.08); }
.acc-card, .acc-plancard { background: rgba(21, 17, 33, .92) !important; border-radius: var(--sb-radius) !important; }
.acc-plancard.is-current { border-color: var(--sb-violet) !important; box-shadow: 0 0 0 1px var(--sb-violet) inset !important; }
.acc-pill { display: inline-flex; align-items: center; gap: 10px; padding: 12px 22px; border-radius: 999px; font-weight: 600; font-size: 15.5px; text-decoration: none !important; border: 0; cursor: pointer; }
.sb-side__logo, .sb-side__logo span { text-decoration: none !important; }
body.adm .field input[type=number], body.adm .field input[type=date], body.adm .field input[type=url] { width: 100%; padding: 9px 11px; font: 14px/1.4 'Poppins', sans-serif; }
.acc-pill--grad { background: var(--sb-grad); color: #fff !important; box-shadow: 0 10px 26px rgba(177, 44, 255, .35); }
.acc-pill--ghost { background: rgba(255, 255, 255, .06); color: var(--sb-text) !important; border: 1px solid var(--sb-line-2); }
.acc-pill--ghost:hover { background: rgba(255, 255, 255, .1); }

.sb-alert { margin: 0 0 14px; padding: 12px 16px; border-radius: 14px; font-size: 14px; }
.sb-alert--ok { background: #0f2d1d; color: #8ff0b6; border: 1px solid #1f5c3a; }
.acc-hero .acc-beta.acc-home__beta { position: static; max-width: none; margin-top: 18px; background: rgba(139, 61, 255, .14); border-color: rgba(185, 139, 255, .35); color: #d9c4ff; }

/* início do cliente: bloco de boas-vindas (estilo "hub") */
.acc-home { max-width: 1240px; margin: 0 auto; padding: 18px 24px 40px; }
.acc-hero {
  position: relative; overflow: hidden; border-radius: 28px; border: 1px solid var(--sb-line);
  background:
    radial-gradient(600px 420px at 85% 10%, rgba(255, 0, 255, .16), transparent 65%),
    radial-gradient(520px 380px at 10% 0%, rgba(91, 91, 255, .14), transparent 65%),
    linear-gradient(rgba(255, 255, 255, .03) 1px, transparent 1px) 0 0 / 40px 40px,
    linear-gradient(90deg, rgba(255, 255, 255, .03) 1px, transparent 1px) 0 0 / 40px 40px,
    linear-gradient(160deg, #1a1430, #110d1c);
}
.acc-hero__grid { display: grid; grid-template-columns: minmax(0, 1fr) 360px; gap: 30px; padding: 44px 48px 36px; align-items: center; }
.sb-chip { display: inline-flex; align-items: center; gap: 8px; padding: 7px 14px; border-radius: 999px; border: 1px solid rgba(185, 139, 255, .35); background: rgba(139, 61, 255, .14); color: #d9c4ff; font-size: 13px; font-weight: 600; }
.sb-chip i.dot { width: 8px; height: 8px; border-radius: 50%; background: #3ecf8e; box-shadow: 0 0 0 4px rgba(62, 207, 142, .18); }
.acc-hero h1 { margin: 18px 0 14px; font-size: clamp(38px, 5.2vw, 64px); line-height: 1; letter-spacing: -.035em; font-weight: 800; color: #fff; }
.acc-hero h1 span { background: var(--sb-grad); -webkit-background-clip: text; background-clip: text; color: transparent; }
.acc-hero p { margin: 0; max-width: 540px; color: #cfc6e6; font-size: 17px; line-height: 1.55; }
.acc-hero p a { color: #fff; font-weight: 600; }
.acc-hero__actions { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 26px; }
.acc-hero__phone { position: relative; justify-self: center; width: 300px; }
.acc-hero__phone::before { content: ''; position: absolute; inset: -40px; border-radius: 50%; border: 1px dashed rgba(185, 139, 255, .25); }
.acc-hero__phone::after { content: ''; position: absolute; inset: -90px; border-radius: 50%; border: 1px dashed rgba(185, 139, 255, .14); }
.acc-hero .acc-phone { width: 300px; height: 520px; min-height: 0; border-radius: 34px; border: 6px solid #241d3a; box-shadow: 0 30px 70px rgba(0, 0, 0, .55), 0 0 0 1px rgba(255, 255, 255, .06); z-index: 1; }
.acc-hero .acc-phone iframe { width: 390px; height: 676px; transform: scale(.7538); transform-origin: 0 0; }
.sb-stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-top: 1px solid var(--sb-line); }
.sb-stat { padding: 22px 26px; border-left: 1px solid var(--sb-line); min-width: 0; text-decoration: none; color: inherit; }
.sb-stat:first-child { border-left: 0; }
.sb-stat strong { display: block; font-size: 34px; font-weight: 700; letter-spacing: -.02em; line-height: 1.1; font-variant-numeric: tabular-nums; color: #fff; }
.sb-stat strong small { font-size: 18px; color: var(--sb-muted); font-weight: 600; }
.sb-stat span { display: flex; align-items: center; gap: 8px; margin-top: 8px; font-size: 14px; color: #cfc6e6; }
.sb-stat span i { width: 8px; height: 8px; border-radius: 50%; background: #3ecf8e; flex-shrink: 0; }
.sb-stat span i.is-pink { background: #ff00ff; }
.sb-stat span i.is-blue { background: #5b5bff; }
.sb-stat span i.is-yellow { background: #ffc857; }
.sb-stat span i.is-off { background: var(--sb-faint); }
a.sb-stat:hover strong { color: #e8d9ff; }
.acc-home__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin-top: 18px; }
.sb-tile { display: flex; gap: 14px; align-items: flex-start; padding: 20px; border-radius: 20px; border: 1px solid var(--sb-line); background: rgba(21, 17, 33, .9); text-decoration: none; color: inherit; transition: border-color .15s, transform .15s; }
.sb-tile:hover { border-color: var(--sb-line-2); transform: translateY(-2px); }
.sb-tile__icon { width: 46px; height: 46px; border-radius: 14px; display: flex; align-items: center; justify-content: center; font-size: 19px; color: #fff; background: var(--sb-grad); flex-shrink: 0; }
.sb-tile__icon--violet { background: linear-gradient(135deg, #8b3dff, #5b5bff); }
.sb-tile__icon--pink { background: linear-gradient(135deg, #ff00ff, #b12cff); }
.sb-tile strong { display: block; font-size: 15.5px; margin-bottom: 4px; }
.sb-tile small { color: var(--sb-muted); font-size: 13.5px; line-height: 1.45; display: block; }

/* ---------- painel administrativo (escuro) ---------- */
body.adm {
  --a-bg: var(--sb-bg); --a-card: var(--sb-card); --a-text: var(--sb-text); --a-muted: var(--sb-muted); --a-line: var(--sb-line);
  --a-primary: #8b3dff; --a-primary-d: #7a2df0; --a-accent: #ff00ff;
  --a-ok: #8ff0b6; --a-ok-bg: #0f2d1d; --a-err: #ff9aaa; --a-err-bg: #2d1015; --a-warn: #ffd27a; --a-warn-bg: #2d2410;
  --a-radius: 16px;
  color: var(--sb-text); font-family: 'Inter', 'Poppins', system-ui, sans-serif;
}
body.adm a { color: var(--sb-lilac); }
body.adm h1 { font-size: 26px; letter-spacing: -.02em; }
.adm-shell { min-height: 100vh; }
.adm-side { /* usa .sb-side */ }
.adm-brand { display: flex; align-items: center; gap: 10px; padding: 8px 10px 18px; margin-bottom: 8px; border-bottom: 1px solid var(--sb-line); text-decoration: none !important; }
.adm-brand img { height: 28px; width: auto; display: block; }
.adm-brand__word { font-weight: 800; font-size: 20px; color: #fff; }
.adm-brand__word i { color: var(--sb-pink); }
.adm-brand__tag { padding: 3px 9px; border-radius: 999px; background: rgba(139, 61, 255, .18); border: 1px solid rgba(185, 139, 255, .35); color: #d9c4ff; font-size: 11.5px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }
/* menu em seções que abrem e fecham (sem rolagem, a não ser que precise) */
.adm-nav { flex: 1; min-height: 0; overflow-y: auto; display: flex; flex-direction: column; gap: 6px; }
.adm-nav__sec { border-radius: 14px; }
.adm-nav__sec.is-open { background: rgba(255, 255, 255, .025); }
.adm-nav__group {
  display: flex; align-items: center; gap: 8px; width: 100%; padding: 10px 12px; border: 0; border-radius: 12px; background: none; cursor: pointer;
  font: 600 11.5px/1 'Inter', sans-serif; letter-spacing: .08em; text-transform: uppercase; color: var(--sb-faint); text-align: left;
}
.adm-nav__group:hover { color: var(--sb-muted); background: rgba(255, 255, 255, .03); }
.adm-nav__group i { margin-left: auto; font-size: 10px; transition: transform .2s; }
.adm-nav__sec.is-open .adm-nav__group { color: var(--sb-muted); }
.adm-nav__sec.is-open .adm-nav__group i { transform: rotate(180deg); }
.adm-nav__dot { width: 7px; height: 7px; border-radius: 50%; background: #ff00ff; box-shadow: 0 0 0 3px rgba(255, 0, 255, .2); }
.adm-nav__items { display: none; flex-direction: column; gap: 2px; padding: 0 4px 6px; }
.adm-nav__sec.is-open .adm-nav__items { display: flex; }
body.adm .adm-nav__item { display: flex; align-items: center; gap: 12px; padding: 10px 12px; border-radius: 12px; text-decoration: none; font-size: 14.5px; color: #e4ddf3; }
.adm-nav__item i { width: 18px; text-align: center; color: #bdb2d6; }
.adm-nav__item:hover { background: rgba(255, 255, 255, .05); }
.adm-nav__count { margin-left: auto; min-width: 22px; height: 22px; padding: 0 7px; border-radius: 999px; background: #ff00ff; color: #fff; font-size: 12px; font-weight: 700; display: inline-flex; align-items: center; justify-content: center; }
.adm-side__out { border: 0; background: none; color: var(--sb-muted); cursor: pointer; font: inherit; font-size: 13px; display: inline-flex; gap: 6px; align-items: center; padding: 6px 8px; border-radius: 8px; }
.adm-side__out:hover { color: #fff; background: rgba(255, 255, 255, .06); }
.adm-body { margin-left: 292px; min-height: 100vh; }
.adm-mtop { display: none; }
body.adm .adm-main { max-width: 1120px; padding: 28px 24px 120px; }
body.adm .adm-head { margin-bottom: 20px; }
body.adm .adm-head h1 { margin: 0; }

body.adm .abtn { background: var(--sb-card-2); border-color: var(--sb-line); color: var(--sb-text); border-radius: 12px; }
body.adm .abtn:hover { border-color: var(--sb-line-2); background: #221b3b; }
body.adm .abtn--primary { background: var(--sb-grad); border-color: transparent; color: #fff; box-shadow: 0 8px 22px rgba(177, 44, 255, .3); }
body.adm .abtn--primary:hover { filter: brightness(1.08); background: var(--sb-grad); }
body.adm .abtn--ghost { background: transparent; }
body.adm .abtn--add { color: var(--sb-lilac); background: transparent; }
body.adm .ibtn { background: var(--sb-card-2); border-color: var(--sb-line); color: var(--sb-muted); }
body.adm .ibtn:hover { color: #fff; border-color: var(--sb-line-2); }
body.adm .alert--ok { border-color: #1f5c3a; }
body.adm .alert--error { border-color: #5c1f2a; }
body.adm .alert--warn { border-color: #5c4a1f; }
body.adm .table-wrap { background: var(--sb-card); border-color: var(--sb-line); border-radius: 18px; }
body.adm .atable th { color: var(--sb-faint); }
body.adm .atable td { border-color: #221c36; }
body.adm .atable tr:hover td { background: rgba(255, 255, 255, .015); }
body.adm .atable tr.row-hl td { background: rgba(62, 207, 142, .07); }
body.adm .tag { background: #2a2342; color: #d5cbe9; }
body.adm .tag--published { background: var(--a-ok-bg); color: var(--a-ok); }
body.adm .tag--draft { background: var(--a-warn-bg); color: var(--a-warn); }
body.adm .empty { background: var(--sb-card); border-color: var(--sb-line-2); border-radius: 20px; }
body.adm .card { background: rgba(21, 17, 33, .94); border-color: var(--sb-line); border-radius: 20px; }
body.adm .card__num { background: var(--sb-grad); }
body.adm .field input[type=text], body.adm .field input[type=email], body.adm .field input[type=password], body.adm .field input[type=tel],
body.adm .field input[type=number], body.adm .field input[type=date], body.adm .field input[type=url], body.adm .field input:not([type]),
body.adm .field textarea, body.adm .field select, body.adm .color__inputs input[type=text], body.adm .atable input, body.adm .atable select {
  background: var(--sb-input); border: 1px solid var(--sb-line); color: var(--sb-text); border-radius: 10px;
}
body.adm .atable input, body.adm .atable select { padding: 8px 10px; font: 13.5px 'Inter', sans-serif; }
body.adm .field input:focus, body.adm .field textarea:focus, body.adm .field select:focus { outline: 2px solid rgba(139, 61, 255, .45); border-color: var(--sb-violet); }
body.adm select option { background: #151121; color: var(--sb-text); }
body.adm input[type=file] { color: var(--sb-muted); }
body.adm input[type=file]::file-selector-button { margin-right: 10px; padding: 7px 12px; border-radius: 9px; border: 1px solid var(--sb-line-2); background: var(--sb-card-2); color: var(--sb-text); cursor: pointer; }
body.adm .has-error input, body.adm .has-error textarea, body.adm .has-error select, body.adm input.is-invalid, body.adm textarea.is-invalid { background: #1e0d16; }
body.adm .slug { background: var(--sb-input); border-color: var(--sb-line); border-radius: 10px; }
body.adm .slug__prefix { background: var(--sb-card-2); }
body.adm .imgfield__preview { border-color: var(--sb-line); background: #120e1c repeating-conic-gradient(#1c1630 0 25%, transparent 0 50%) 0 0 / 14px 14px; }
body.adm .row { background: #120e1c; border-color: var(--sb-line); border-radius: 12px; }
body.adm .row__bar { border-color: var(--sb-line); }
body.adm .sec { background: var(--sb-card); border-color: var(--sb-line); border-radius: 16px; }
body.adm .sec--off { background: #110e1a; }
body.adm .sec--off .sec__state { background: #2a2342; }
body.adm .sec__body { border-color: var(--sb-line); }
body.adm .color__inputs input[type=color] { background: var(--sb-input); border-color: var(--sb-line); }
body.adm .savebar { background: rgba(9, 7, 15, .9); border-color: var(--sb-line); }
body.adm .code { background: var(--sb-input); border-color: var(--sb-line); color: var(--sb-text); }
body.adm .locked { background: #1b1530; border-color: #3b3360; color: #e6dcff; }
body.adm .sec__plan { background: #2a1d4a; color: var(--sb-lilac); }
body.adm .rte { background: var(--sb-input); border-color: var(--sb-line); }
body.adm .rte__bar { background: var(--sb-card-2); border-color: var(--sb-line); }
body.adm .rte__bar button { color: #d6d0e6; }
body.adm .rte__bar button:hover, body.adm .rte__bar button:focus-visible { background: #2a2342; color: #fff; }
body.adm .rte__sep { background: var(--sb-line); }
body.adm .rte__area { color: var(--sb-text); }
body.adm .sb-rich a { color: var(--sb-lilac); }
body.adm .bgroup { background: #120e1c; border-color: var(--sb-line-2); }
body.adm .sec--admin { background: #1a1230; border-color: #5b2a8a; }
body.adm .soc-box, body.adm .soc-edit__card, body.adm .cz-box { background: var(--sb-card); border-color: var(--sb-line); }
body.adm .soc-seg { background: var(--sb-input); border: 1px solid var(--sb-line); }
body.adm .soc-seg__opt.is-on, body.adm .cz-tab.is-on { background: #fff; color: #111; border-color: #fff; }
body.adm .soc-search input, body.adm .cz-hex input { background: var(--sb-input); border-color: var(--sb-line); color: var(--sb-text); }
body.adm .soc-preview { background: var(--sb-input); border: 1px solid var(--sb-line); }
body.adm .soc-net__ok { border-color: var(--sb-card); }
body.adm .soc-edit__back { color: var(--sb-text); }
body.adm .cz-theme__mini { border-color: var(--sb-line); }
body.adm .cz-theme.is-on .cz-theme__mini { border-color: #fff; box-shadow: 0 0 0 3px rgba(255, 255, 255, .18); }
body.adm .cz-theme__ok { background: #fff; color: #111; }
body.adm .cz-tab { border-color: var(--sb-line); color: #e7e2f3; }
body.adm .swatch { border-color: var(--sb-line); }
body.adm .vitrine-preview { background: #0b0913; border: 1px solid var(--sb-line); }

/* início do admin */
.adm-hero { margin-bottom: 22px; }
.adm-hero .acc-hero__grid { grid-template-columns: minmax(0, 1fr) auto; padding: 38px 42px 30px; }
.adm-hero h1 { margin: 16px 0 12px !important; font-size: clamp(34px, 4.6vw, 56px) !important; line-height: 1; letter-spacing: -.035em; font-weight: 800; color: #fff; }
.adm-hero h1 span { background: var(--sb-grad); -webkit-background-clip: text; background-clip: text; color: transparent; }
.adm-hero p { margin: 0; color: #cfc6e6; font-size: 16px; max-width: 560px; }
.adm-pulse { width: 340px; padding: 20px 22px 18px; border-radius: 22px; border: 1px solid rgba(185, 139, 255, .28); background: linear-gradient(160deg, rgba(139, 61, 255, .16), rgba(17, 13, 28, .7)); box-shadow: 0 20px 50px rgba(0, 0, 0, .35); }
.adm-hero .adm-pulse__k { margin: 0; font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--sb-muted); }
.adm-hero .adm-pulse__v { margin: 6px 0 2px; font-size: 34px; font-weight: 800; letter-spacing: -.02em; color: #fff; font-variant-numeric: tabular-nums; }
.adm-hero .adm-pulse__s { margin: 0; max-width: none; font-size: 12.5px; color: var(--sb-faint); }
.adm-pulse__bars { display: flex; align-items: flex-end; gap: 8px; height: 96px; margin-top: 18px; }
.adm-pulse__col { flex: 1; height: 100%; display: flex; flex-direction: column; align-items: center; justify-content: flex-end; gap: 4px; }
.adm-pulse__col i { display: block; width: 100%; border-radius: 6px 6px 3px 3px; background: rgba(185, 139, 255, .35); }
.adm-pulse__col i.is-now { background: var(--sb-grad); box-shadow: 0 6px 16px rgba(177, 44, 255, .35); }
.adm-pulse__n { font-size: 11.5px; font-weight: 700; color: #e4ddf3; font-variant-numeric: tabular-nums; }
.adm-pulse__col small { font-size: 11px; color: var(--sb-faint); }
.adm-hero .adm-pulse__cap { margin: 8px 0 0; max-width: none; font-size: 11.5px; color: var(--sb-faint); text-align: center; }
.adm-hero .adm-pulse__today { max-width: none; display: flex; justify-content: space-between; gap: 10px; margin-top: 14px; padding-top: 12px; border-top: 1px solid var(--sb-line); font-size: 13px; color: #cfc6e6; }
.adm-pulse__today i { color: var(--sb-lilac); margin-right: 4px; }
.adm-pulse__today strong { color: #fff; }
.adm-hero__orb { position: relative; width: 210px; height: 210px; border-radius: 50%; border: 1px dashed rgba(185, 139, 255, .3); display: flex; align-items: center; justify-content: center; }
.adm-hero__orb::before { content: ''; position: absolute; inset: 34px; border-radius: 50%; border: 1px dashed rgba(185, 139, 255, .2); }
.adm-hero__orb span { width: 92px; height: 92px; border-radius: 28px; background: var(--sb-grad); display: flex; align-items: center; justify-content: center; color: #fff; font-size: 36px; box-shadow: 0 18px 50px rgba(177, 44, 255, .45); }
.adm-hero__orb i.sat { position: absolute; width: 44px; height: 44px; border-radius: 14px; background: #1f1934; border: 1px solid var(--sb-line-2); color: #d9c4ff; display: flex; align-items: center; justify-content: center; font-size: 17px; }

/* ---------- celular ---------- */
@media (max-width: 1100px) {
  .acc-hero__grid { grid-template-columns: 1fr; }
  .acc-hero__phone { display: none; }
  .adm-hero__orb { display: none; }
  .adm-pulse { width: 100%; }
  .adm-hero .acc-hero__grid { grid-template-columns: 1fr; }
  .acc-home__grid { grid-template-columns: 1fr; }
}
@media (max-width: 900px) {
  .sb-side { top: 10px; bottom: 10px; left: 10px; width: min(300px, calc(100% - 50px)); }
  .acc-side.sb-side { transform: translateX(calc(-100% - 20px)); }
  .acc-side.sb-side.is-open { transform: none; }
  .acc-wrap { margin-left: 0 !important; }
  .acc-top { padding: 0 12px !important; }
  .acc-home { padding: 12px 12px 30px; }
  .acc-hero { border-radius: 22px; }
  .acc-hero__grid { padding: 26px 20px 22px; }
  .acc-hero p { font-size: 15.5px; }
  .sb-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sb-stat { padding: 16px 18px; }
  .sb-stat:nth-child(3) { border-left: 0; }
  .sb-stat:nth-child(n+3) { border-top: 1px solid var(--sb-line); }
  .sb-stat strong { font-size: 26px; }
  .adm-side.sb-side { transform: translateX(calc(-100% - 20px)); transition: transform .25s; }
  .adm-side.sb-side.is-open { transform: none; }
  .adm-body { margin-left: 0; }
  .adm-mtop { display: flex; align-items: center; gap: 12px; position: sticky; top: 0; z-index: 20; padding: 10px 14px; background: rgba(9, 7, 15, .85); backdrop-filter: blur(10px); border-bottom: 1px solid var(--sb-line); }
  .adm-mtop button { width: 40px; height: 40px; border-radius: 12px; border: 1px solid var(--sb-line); background: var(--sb-card); color: #fff; cursor: pointer; }
  .adm-mtop img { height: 24px; }
  .adm-shade { position: fixed; inset: 0; z-index: 25; background: rgba(0, 0, 0, .55); }
  body.adm .adm-main { padding: 18px 12px 100px; }
  .adm-hero .acc-hero__grid { padding: 26px 20px; }
}

/* ---------- LGPD ---------- */
.acc-page--tight { padding-top: 0; }
.acc-privacy { display: grid; grid-template-columns: 1fr 1fr; gap: 18px 28px; }
.abtn--danger { background: #2d1015; border: 1px solid #5c1f2a; color: #ffb3bd; }
.abtn--danger:hover { background: #3a1219; border-color: #8a2a3a; }
.acc-deleting { margin: 10px 24px 0; padding: 12px 16px; border-radius: 14px; background: #2d2410; border: 1px solid #5c4a1f; color: #ffd27a; font-size: 14px; }
.acc-deleting a { color: #fff; font-weight: 600; }
.sb-legal-links { display: flex; gap: 10px; flex-wrap: wrap; padding: 8px 8px 0; font-size: 12px; }
.sb-legal-links a { color: var(--sb-faint) !important; text-decoration: none; }
.sb-legal-links a:hover { color: var(--sb-muted) !important; }
@media (max-width: 760px) { .acc-privacy { grid-template-columns: 1fr; } .acc-deleting { margin: 10px 12px 0; } }

/* avisos e botões nas páginas de conta do cliente (mesmo tom do admin escuro) */
body.acc .alert--ok { background: #0f2d1d; color: #8ff0b6; border-color: #1f5c3a; }
body.acc .alert--error { background: #2d1015; color: #ffb3bd; border-color: #5c1f2a; }
body.acc .alert--warn { background: #2d2410; color: #ffd27a; border-color: #5c4a1f; }
body.acc .acc-page .abtn--primary { background: var(--sb-grad); border-color: transparent; color: #fff; }
body.acc .acc-page .abtn--primary:hover { filter: brightness(1.08); }
body.acc .acc-page a:not(.abtn) { color: #d9c4ff; }

/* ---------- admin: domínios próprios ---------- */
body.adm .tag--broken { background: rgba(255, 93, 122, .15); color: #ff8da2; }
.dm-cfg { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.dm-cfg i { width: 18px; color: var(--sb-lilac); }
.dm-cfg i.ok { color: #3ecf8e; }
.dm-cfg i.warn { color: #ffb84d; }
.dm-cfg code, .dm-todo code { word-break: break-all; }
.dm-todo { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr) auto; gap: 12px; align-items: center; padding: 12px 14px; margin-top: 10px; border: 1px solid var(--sb-line); border-radius: 14px; background: var(--sb-card-2); }
.dm-todo code { font-size: 15px; color: var(--sb-text); }
.dm-todo span { color: var(--sb-muted); font-size: 13px; }
@media (max-width: 760px) { .dm-todo { grid-template-columns: 1fr; } }
