/* =======================================================================
   Painel Nero · Design System
   Tokens → base → shell (barra lateral + cabeçalho) → componentes → telas.
   Regras: escala de 4px; controles de 36px; bordas de 6px; sombra só em camadas
   sobrepostas (menus, kanban arrastando); cor com função (estado, série de dado).
   ======================================================================= */

:root{
  /* superfícies e texto */
  --bg:#f5f6f8; --surface:#fff; --surface-2:#f9fafb; --surface-3:#eef0f3;
  --border:#e3e5ea; --border-strong:#cfd3da;
  --text:#14171c; --text-2:#4b515c; --muted:#6b7280;
  /* marca e ação */
  --ink:#111317; --primary:#111317; --primary-hover:#2b2f36;
  --link:#1f63b8; --focus:rgba(42,120,214,.35);
  /* estados */
  --ok:#1a7f37; --ok-bg:#e8f5ec; --warn:#9a5b00; --warn-bg:#fff4dc; --err:#b42318; --err-bg:#fdecea; --info:#1f63b8; --info-bg:#e9f1fb;
  /* séries de dados (paleta validada para daltonismo, ordem fixa) */
  --c1:#2a78d6; --c2:#eb6834; --c3:#1baf7a; --c4:#eda100; --c5:#e87ba4; --c6:#008300; --c7:#6250d6; --c8:#e34948; --c-gray:#9aa1ad;
  /* barra lateral */
  --side:#0f1115; --side-2:#181b21; --side-3:#22262e; --side-text:#c7cbd3; --side-muted:#8a909c;
  /* medidas */
  --r:6px; --r-lg:8px; --control:36px; --control-sm:30px; --pad:20px; --gap:16px;
  --shadow-1:0 1px 2px rgba(16,24,40,.05); --shadow-2:0 8px 24px rgba(16,24,40,.12);
  --side-w:248px; --bar-h:56px;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font:400 14px/1.5 "Inter",system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased}
a{color:var(--link);text-underline-offset:2px}
h1,h2,h3{color:var(--text);margin:0;line-height:1.25}
h1{font-size:1.375rem;font-weight:800;letter-spacing:-.01em}
h2{font-size:.9375rem;font-weight:800}
h2 small,h1 small{font-weight:400;color:var(--muted);font-size:.8125rem;margin-left:6px}
h3{font-size:.875rem;font-weight:800;margin-top:16px}
p{margin:0}
small{color:var(--muted);font-size:.75rem}
code{font:.8125rem/1.4 ui-monospace,Consolas,monospace;background:var(--surface-3);padding:1px 6px;border-radius:4px}
:focus-visible{outline:3px solid var(--focus);outline-offset:1px}
[hidden]{display:none!important}
.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.muted{color:var(--muted)}
.nowrap{white-space:nowrap}
.trunc{max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* ===================== shell ===================== */
.app{display:grid;grid-template-columns:var(--side-w) minmax(0,1fr);min-height:100vh}
.side{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;background:var(--side);color:var(--side-text);border-right:1px solid #000;z-index:40}
.side__brand{display:flex;align-items:center;gap:10px;height:var(--bar-h);padding:0 16px;border-bottom:1px solid var(--side-2);text-decoration:none;color:#fff;flex:none}
.side__brand img{width:28px;height:30px}
.side__brand span{font:400 1.125rem/1 "Montserrat",sans-serif;letter-spacing:.08em}
.side__brand em{font-style:normal;font-size:.6875rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--side-muted);margin-left:auto;border:1px solid var(--side-3);padding:2px 6px;border-radius:4px}
.side__nav{flex:1;overflow-y:auto;padding:8px 8px 16px;scrollbar-width:thin;scrollbar-color:var(--side-3) transparent}
.side__group{display:block;padding:16px 10px 6px;font-size:.6875rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--side-muted)}
.side__nav a{display:flex;align-items:center;gap:10px;min-height:34px;padding:6px 10px;border-radius:var(--r);color:var(--side-text);text-decoration:none;font-size:.8125rem;font-weight:600}
.side__nav a svg{width:16px;height:16px;flex:none;opacity:.75}
.side__nav a:hover{background:var(--side-2);color:#fff}
.side__nav a[aria-current]{background:var(--side-3);color:#fff;box-shadow:inset 3px 0 0 #fff}
.side__nav a[aria-current] svg{opacity:1}
.side__foot{border-top:1px solid var(--side-2);padding:12px 16px;font-size:.75rem;color:var(--side-muted);flex:none}
.side__foot a{color:var(--side-text)}
.app__main{min-width:0;display:flex;flex-direction:column}
.appbar{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:12px;height:var(--bar-h);padding:0 24px;background:var(--surface);border-bottom:1px solid var(--border)}
.appbar__crumbs{display:flex;align-items:center;gap:6px;min-width:0;font-size:.8125rem;color:var(--muted)}
.appbar__crumbs b{color:var(--text);font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.appbar__crumbs span[aria-hidden]{color:var(--border-strong)}
.appbar__actions{margin-left:auto;display:flex;align-items:center;gap:8px}
.appbar__menu{display:none}
.user{position:relative}
.user summary{display:flex;align-items:center;gap:8px;list-style:none;cursor:pointer;height:var(--control);padding:0 8px 0 4px;border-radius:var(--r);font-weight:700;font-size:.8125rem}
.user summary::-webkit-details-marker{display:none}
.user summary:hover{background:var(--surface-3)}
.avatar{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--ink);color:#fff;font-size:.6875rem;font-weight:800;letter-spacing:.02em;flex:none}
.user__menu{position:absolute;right:0;top:calc(100% + 6px);min-width:200px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-2);padding:6px;z-index:50}
.user__menu a{display:block;padding:8px 10px;border-radius:var(--r);color:var(--text);text-decoration:none;font-size:.8125rem}
.user__menu a:hover{background:var(--surface-3)}
.user__menu hr{border:0;border-top:1px solid var(--border);margin:6px 0}
.adm-main{padding:24px;width:100%;max-width:1480px}
.scrim{display:none}

/* ===================== cabeçalho de página ===================== */
.adm-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px 16px;margin-bottom:20px}
.adm-head h1{margin:0}
.adm-head p{color:var(--muted);margin-top:4px;font-size:.8125rem}
.adm-back{display:inline-flex;align-items:center;gap:4px;font-size:.8125rem;text-decoration:none;color:var(--muted);margin-bottom:6px}
.adm-back:hover{color:var(--text)}
.adm-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 24px}
.adm-actions--head{margin:0}

/* ===================== botões ===================== */
.a-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:var(--control);padding:0 14px;border:1px solid var(--primary);border-radius:var(--r);background:var(--primary);color:#fff;font:700 .8125rem/1 "Inter",sans-serif;text-decoration:none;cursor:pointer;white-space:nowrap;transition:background .12s,border-color .12s,color .12s}
.a-btn:hover{background:var(--primary-hover);border-color:var(--primary-hover)}
.a-btn--ghost{background:var(--surface);color:var(--text);border-color:var(--border-strong)}
.a-btn--ghost:hover{background:var(--surface-3);border-color:var(--border-strong);color:var(--text)}
.a-btn--danger{background:var(--surface);color:var(--err);border-color:#f1b8b2}
.a-btn--danger:hover{background:var(--err-bg);border-color:var(--err);color:var(--err)}
.a-btn--sm{min-height:var(--control-sm);padding:0 10px;font-size:.75rem}
.a-btn--block{width:100%}
.a-btn[disabled],.a-btn.is-loading{opacity:.55;cursor:not-allowed}
.a-btn.is-loading::after{content:"";width:12px;height:12px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .7s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.a-link{background:none;border:0;padding:0;font:700 .8125rem "Inter",sans-serif;color:var(--link);cursor:pointer;text-decoration:none}
.a-link:hover{text-decoration:underline}
.a-link--danger{color:var(--err)}
.icon-btn{display:inline-grid;place-items:center;width:30px;height:30px;border:1px solid transparent;border-radius:var(--r);background:none;color:var(--muted);cursor:pointer;text-decoration:none}
.icon-btn:hover{background:var(--surface-3);color:var(--text);border-color:var(--border)}
.icon-btn--danger:hover{background:var(--err-bg);color:var(--err);border-color:#f1b8b2}
.icon-btn svg{width:16px;height:16px}
.row-actions{display:flex;gap:2px;justify-content:flex-end;white-space:nowrap}
.row-actions form{display:inline}

/* ===================== alertas ===================== */
.adm-flash{display:flex;gap:10px;align-items:flex-start;background:var(--ok-bg);border:1px solid #b7e1c1;border-left:4px solid var(--ok);color:#14532d;padding:10px 14px;border-radius:var(--r);margin:0 0 20px;font-weight:600;font-size:.8125rem}
.adm-flash--err{background:var(--err-bg);border-color:#f5c2bd;border-left-color:var(--err);color:#7a1a14}
.adm-flash--info{background:var(--info-bg);border-color:#bcd5f3;border-left-color:var(--info);color:#123e73}
.adm-flash a{color:inherit;font-weight:800}
.adm-note{font-size:.8125rem;color:var(--muted);margin:10px 0 0;overflow-wrap:anywhere}
.adm-empty{color:var(--muted);text-align:center;padding:32px 16px!important;font-size:.8125rem}
.adm-empty b{display:block;color:var(--text);margin-bottom:4px}

/* ===================== painéis ===================== */
.adm-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--pad);margin-bottom:var(--gap);box-shadow:var(--shadow-1);min-width:0}
.adm-card>h2,.adm-card>.card-head{margin-bottom:14px}
.adm-card--flush{padding:0;overflow:hidden}
.adm-card--flush>.card-head{padding:16px var(--pad) 0;margin-bottom:12px}
.card-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px}
.card-head h2{margin:0}
.card-head a{font-size:.8125rem;font-weight:700;text-decoration:none}
.card-head a:hover{text-decoration:underline}
.adm-scroll,.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
.adm-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:var(--gap);margin-bottom:var(--gap)}
.adm-grid>.adm-card{margin-bottom:0}
.adm-grid--even{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.adm-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.adm-list{list-style:none;margin:0;padding:0}
.adm-list li{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:9px 0;border-bottom:1px solid var(--border);font-size:.8125rem}
.adm-list li:last-child{border-bottom:0}
.adm-list li small{white-space:nowrap}
.dl-list{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:8px 16px;font-size:.8125rem;margin:0}
.dl-list dt{color:var(--muted)}
.dl-list dd{margin:0;overflow-wrap:anywhere}
.adm-danger{padding:4px 2px;margin-top:8px}
.src{display:block;margin-top:12px;font-size:.75rem;color:var(--muted)}
.src::before{content:"Fonte · ";font-weight:800}
.wait{display:grid;gap:8px;justify-items:center;padding:28px 16px;border:1px dashed var(--border-strong);border-radius:var(--r);background:var(--surface-2);text-align:center;color:var(--muted);font-size:.8125rem}
.wait b{color:var(--text)}

/* ===================== filtros e abas ===================== */
.flt{display:flex;flex-wrap:wrap;gap:10px 12px;align-items:flex-end;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:12px 14px;margin-bottom:var(--gap);box-shadow:var(--shadow-1)}
.flt label{display:grid;gap:4px;font-size:.6875rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}
.flt input,.flt select{height:var(--control);padding:0 10px;border:1px solid var(--border-strong);border-radius:var(--r);font:400 .8125rem "Inter",sans-serif;background:var(--surface);color:var(--text);min-width:0}
.flt input:focus,.flt select:focus{outline:0;border-color:var(--c1);box-shadow:0 0 0 3px var(--focus)}
.flt__info{margin-left:auto;font-size:.75rem;color:var(--muted);align-self:center}
.flt__period-select{display:none}
.adm-seg{display:inline-flex;flex-wrap:wrap;background:var(--surface-3);border-radius:var(--r);padding:3px;gap:2px}
.adm-seg a{display:inline-flex;align-items:center;height:30px;padding:0 10px;border-radius:4px;text-decoration:none;color:var(--text-2);font-weight:700;font-size:.75rem;white-space:nowrap}
.adm-seg a:hover{color:var(--text);background:rgba(255,255,255,.6)}
.adm-seg a[aria-current]{background:var(--surface);color:var(--text);box-shadow:var(--shadow-1)}
.adm-seg--wrap{margin-bottom:16px}
.tabs{display:flex;gap:4px;margin:-4px 0 20px;border-bottom:1px solid var(--border);overflow-x:auto;scrollbar-width:none}
.tabs a{padding:10px 12px;text-decoration:none;font-weight:700;font-size:.8125rem;color:var(--muted);border-bottom:2px solid transparent;margin-bottom:-1px;white-space:nowrap}
.tabs a:hover{color:var(--text)}
.tabs a[aria-current]{color:var(--text);border-color:var(--ink)}
.tabs a .count{display:inline-block;margin-left:6px;padding:0 6px;border-radius:10px;background:var(--surface-3);font-size:.6875rem;color:var(--text-2)}

/* ===================== indicadores ===================== */
.kp{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px;margin-bottom:var(--gap)}
.kp>div{position:relative;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:14px 16px 14px 18px;display:grid;gap:4px;align-content:start;box-shadow:var(--shadow-1);overflow:hidden;min-width:0}
.kp>div::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--tone,var(--c-gray))}
.kp span{font-size:.75rem;font-weight:700;color:var(--text-2)}
.kp b{font:400 1.875rem/1.05 "Montserrat",sans-serif;letter-spacing:.01em;color:var(--text);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.kp small{font-size:.6875rem}
.kp .kp__foot{display:flex;flex-wrap:wrap;gap:4px 8px;align-items:center}
.dl{display:inline-flex;align-items:center;gap:2px;padding:1px 6px;border-radius:10px;font-size:.6875rem;font-weight:800;white-space:nowrap}
.dl--up{color:var(--ok);background:var(--ok-bg)}.dl--down{color:var(--err);background:var(--err-bg)}.dl--eq,.dl--na{color:var(--muted);background:var(--surface-3)}
.adm-kpis{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin-bottom:var(--gap)}
.adm-kpis div{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:14px}
.adm-kpis b{display:block;font:400 1.75rem/1 "Montserrat",sans-serif}
.adm-kpis span{font-size:.75rem;color:var(--muted)}

/* ===================== gráficos ===================== */
.legend{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:.75rem;color:var(--text-2);margin-bottom:8px}
.legend span{display:inline-flex;align-items:center;gap:6px}
.legend i{display:inline-block;width:14px;height:0;border-top:2px solid var(--c1)}
.legend i.prev{border-top:2px dashed var(--c-gray)}
.legend i.sw{width:10px;height:10px;border:0;border-radius:2px}
.chart{width:100%;height:auto;display:block;overflow:visible}
.chart .grid{stroke:#eceef2;stroke-width:1}
.chart .ax{fill:var(--muted);font-size:11px;font-family:"Inter",sans-serif}
.chart .area{fill:var(--c1);opacity:.08}
.chart .ln{fill:none;stroke:var(--c1);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}
.chart .ln--prev{stroke:var(--c-gray);stroke-dasharray:4 4}
.chart .dot{fill:var(--c1);stroke:#fff;stroke-width:2}
.chart .hit{fill:transparent;cursor:crosshair}
.chart .cross{fill:var(--c1);stroke:#fff;stroke-width:2;pointer-events:none}
.bars,.funnel{display:grid;gap:8px}
.bar,.funnel__row{display:grid;grid-template-columns:minmax(96px,32%) minmax(0,1fr) minmax(44px,auto);gap:12px;align-items:center;font-size:.8125rem;border-radius:4px}
.bar:focus-visible,.funnel__row:focus-visible{outline:2px solid var(--focus)}
.funnel__row{grid-template-columns:minmax(110px,28%) minmax(0,1fr) minmax(48px,auto) 56px}
.funnel__row small{text-align:right;font-weight:700}
.bar__l,.funnel__l{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;align-items:center;gap:8px}
.bar__l i{width:8px;height:8px;border-radius:2px;flex:none}
.bar__t{height:10px;background:var(--surface-3);border-radius:0 4px 4px 0;overflow:hidden}
.bar__t i{display:block;height:100%;background:var(--bc,var(--c1));border-radius:0 4px 4px 0}
.funnel__row .bar__t{height:22px;border-radius:4px}
.funnel__row .bar__t i{border-radius:4px}
.bar b,.funnel__row b{text-align:right;font-variant-numeric:tabular-nums}
.stack{display:flex;height:14px;border-radius:4px;overflow:hidden;gap:2px;background:var(--surface);margin:4px 0 12px}
.stack i{display:block;height:100%;min-width:2px}
.tip{position:fixed;z-index:99;pointer-events:none;background:var(--ink);color:#fff;font-size:.75rem;padding:6px 10px;border-radius:var(--r);max-width:300px;box-shadow:var(--shadow-2)}

/* ===================== tabelas ===================== */
.adm-table{width:100%;border-collapse:collapse;font-size:.8125rem}
.adm-table th{text-align:left;font-size:.6875rem;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-weight:800;padding:10px 12px;background:var(--surface-2);border-bottom:1px solid var(--border);white-space:nowrap}
.adm-table td{padding:10px 12px;border-bottom:1px solid var(--border);vertical-align:middle}
.adm-table tr:last-child td{border-bottom:0}
.adm-table tbody tr:hover td{background:#fafbfc}
.adm-table td small{display:block;margin-top:2px}
.adm-table td a{font-weight:700;text-decoration:none}
.adm-table td a:hover{text-decoration:underline}
.adm-table .num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.adm-table th.num{text-align:right}
.adm-table th[data-sort]{cursor:pointer;user-select:none}
.adm-table th[data-sort]:hover{color:var(--text)}
.adm-table th[data-dir=asc]::after{content:" ↑"}.adm-table th[data-dir=desc]::after{content:" ↓"}
.adm-table td .pbar{display:block;height:4px;background:var(--surface-3);margin-top:4px;min-width:40px;border-radius:2px;overflow:hidden}
.adm-table td .pbar i{display:block;height:100%;background:var(--c1)}
.adm-table input,.adm-table select{height:var(--control-sm);padding:0 8px;border:1px solid var(--border-strong);border-radius:var(--r);font:inherit;width:100%;min-width:60px;background:var(--surface)}
.adm-table--rows td{padding:12px}
.adm-table .is-err td{color:var(--err)}
tr.is-muted td{opacity:.55}
.thumb{width:76px}
.thumb img{width:64px;height:40px;object-fit:cover;display:block;border-radius:4px}
.nocover{display:grid;place-items:center;width:64px;height:40px;background:var(--surface-3);font-size:.625rem;color:var(--muted);border-radius:4px}
.adm-card--flush .adm-table th:first-child,.adm-card--flush .adm-table td:first-child{padding-left:var(--pad)}
.adm-card--flush .adm-table th:last-child,.adm-card--flush .adm-table td:last-child{padding-right:var(--pad)}
.pager{display:flex;gap:4px;flex-wrap:wrap;margin-top:12px}

/* ===================== etiquetas ===================== */
.pill{display:inline-flex;align-items:center;gap:6px;font-size:.6875rem;font-weight:800;padding:2px 8px;border-radius:10px;background:var(--surface-3);color:var(--text-2);white-space:nowrap;line-height:1.5}
.pill::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.7}
.pill--publicado,.pill--ok{background:var(--ok-bg);color:var(--ok)}
.pill--rascunho,.pill--warn{background:var(--warn-bg);color:var(--warn)}
.pill--err{background:var(--err-bg);color:var(--err)}
.pill--off{background:var(--surface-3);color:var(--muted)}
.pill--info{background:var(--info-bg);color:var(--info)}
.pill-btn{border:0;cursor:pointer;font:800 .6875rem "Inter",sans-serif;padding:3px 10px;border-radius:10px}
.pill-btn.pill--publicado{background:var(--ok-bg);color:var(--ok)}
.pill-btn.pill--rascunho{background:var(--surface-3);color:var(--muted)}
.score{display:inline-grid;place-items:center;min-width:34px;height:22px;padding:0 6px;font-weight:800;font-size:.6875rem;background:var(--info-bg);color:var(--info);border-radius:11px;font-variant-numeric:tabular-nums}
.score--hi{background:var(--ink);color:#fff}
.tag{display:inline-block;font-size:.6875rem;font-weight:700;padding:1px 8px;border:1px solid var(--border);border-radius:10px;margin:2px 4px 2px 0;background:var(--surface-2);color:var(--text-2)}
.swatch{display:inline-block;width:10px;height:10px;border-radius:3px;vertical-align:middle;margin-right:6px}

/* ===================== formulários ===================== */
.adm-form{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:var(--gap);align-items:start}
.adm-form__main{min-width:0}
.adm-form__side{position:sticky;top:calc(var(--bar-h) + 16px);display:grid;gap:var(--gap)}
.adm-form__side>.adm-card{margin-bottom:0}
.f{display:block;margin-bottom:14px;font-weight:700;font-size:.8125rem;color:var(--text)}
.f small{display:block;font-weight:400;margin-top:2px}
.f-label{display:block;font-weight:700;font-size:.8125rem;margin-bottom:6px}
.f input:not([type=radio]):not([type=checkbox]):not([type=file]),.f select,.f textarea,.adm-login__box input{display:block;width:100%;min-height:var(--control);margin-top:6px;padding:7px 10px;border:1px solid var(--border-strong);border-radius:var(--r);background:var(--surface);color:var(--text);font:400 .875rem/1.4 "Inter",sans-serif;transition:border-color .12s,box-shadow .12s}
.f textarea{min-height:88px;resize:vertical}
.f input:hover,.f select:hover,.f textarea:hover{border-color:#b9bec7}
.f input:focus,.f select:focus,.f textarea:focus,.adm-login__box input:focus{outline:0;border-color:var(--c1);box-shadow:0 0 0 3px var(--focus)}
.f input:disabled,.f select:disabled{background:var(--surface-2);color:var(--muted)}
.f input[aria-invalid=true],.f .is-invalid{border-color:var(--err)}
.f input[type=file]{margin-top:6px;font-size:.8125rem}
.f input[type=color]{width:48px;height:var(--control);padding:2px;border:1px solid var(--border-strong);border-radius:var(--r);margin-top:6px;background:var(--surface)}
.f-title{font-size:1.125rem!important;font-weight:700!important}
.f-count{display:block;text-align:right;margin-top:4px}
.f-err{color:var(--err);font-style:normal;font-size:.75rem}
.f-check{display:flex;align-items:flex-start;gap:8px;margin:10px 0 14px;font-weight:600;font-size:.8125rem;cursor:pointer}
.f-check input{width:16px;height:16px;margin:2px 0 0;accent-color:var(--ink);flex:none}
.f-switch small{display:block;font-weight:400}
.f-inline{display:flex;gap:8px}
.f-radio{border:0;padding:0;margin:0 0 14px;display:flex;gap:16px}
.adm-settings .adm-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}
.adm-settings .adm-cols--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.adm-inline-form{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px 12px}
.adm-inline-form .f{margin:0;min-width:200px;flex:1}
.adm-inline-form .f-check{margin:0 0 8px}
.form-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding-top:14px;margin-top:4px;border-top:1px solid var(--border)}
.rows{display:grid;gap:8px;margin-bottom:12px}
.rowx{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr)) auto;gap:8px 12px;align-items:end;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r);padding:12px}
.rowx .f{margin:0}
.rowx .f-check{margin:0 0 8px}
.rowx .x{display:inline-grid;place-items:center;height:var(--control);width:var(--control);border:1px solid var(--border-strong);border-radius:var(--r);background:var(--surface);cursor:pointer;font-size:1rem;color:var(--text-2)}
.rowx .x:hover{background:var(--err-bg);color:var(--err);border-color:#f1b8b2}
.pre{white-space:pre-wrap;font:.75rem/1.5 ui-monospace,Consolas,monospace;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r);padding:12px;max-height:240px;overflow:auto}
.code{font:.75rem/1.5 ui-monospace,Consolas,monospace;background:var(--ink);color:#e6e6e6;padding:12px 14px;border-radius:var(--r);overflow-x:auto;white-space:pre-wrap;word-break:break-all}
details>summary.a-link{list-style:none}
details>summary.a-link::-webkit-details-marker{display:none}

/* editor */
.editor{background:var(--surface);min-height:420px;font-size:1rem}
.ql-toolbar.ql-snow{border:1px solid var(--border-strong)!important;border-radius:var(--r) var(--r) 0 0;background:var(--surface-2);font-family:"Inter",sans-serif;position:sticky;top:var(--bar-h);z-index:2}
.ql-container.ql-snow{border:1px solid var(--border-strong)!important;border-top:0!important;border-radius:0 0 var(--r) var(--r);font-family:"Inter",sans-serif}
.ql-editor{min-height:420px;line-height:1.7;padding:20px}
.ql-editor h2{font-size:1.375rem;margin:1.2em 0 .4em}
.ql-editor h3{font-size:1.125rem}
.ql-editor blockquote{border-left:4px solid var(--ink)!important}
.ql-editor img{max-width:100%}
.ql-snow .ql-picker.ql-header .ql-picker-label::before,.ql-snow .ql-picker.ql-header .ql-picker-item::before{content:"Parágrafo"}
.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="2"]::before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]::before{content:"Título"}
.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="3"]::before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]::before{content:"Subtítulo"}
.ql-snow .ql-tooltip[data-mode=link]::before{content:"Link:"}
.ql-snow .ql-tooltip.ql-editing a.ql-action::after{content:"Salvar"}
.ql-snow .ql-tooltip a.ql-action::after{content:"Editar"}
.ql-snow .ql-tooltip a.ql-remove::before{content:"Remover"}
.ql-snow .ql-tooltip::before{content:"Abrir:"}

/* permissões */
.perm-box{border:1px solid var(--border);min-width:0}
.perm-all{align-items:flex-start}
.perm-all small{display:block;font-weight:400;margin-top:2px}
.perm-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:0 24px;margin-top:12px;padding-top:12px;border-top:1px solid var(--border)}
.perm-list .f-label{grid-column:1/-1}
.perm-list .f-check{margin:6px 0}
.perm-list.is-off{opacity:.45}

/* ===================== CRM ===================== */
.timeline{list-style:none;margin:0;padding:0;display:grid}
.timeline li{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;padding:10px 0 10px 18px;border-bottom:1px solid var(--border);font-size:.8125rem}
.timeline li:last-child{border-bottom:0}
.timeline li::before{content:"";position:absolute;left:2px;top:16px;width:8px;height:8px;border-radius:50%;background:var(--c-gray)}
.timeline li.t-nota::before{background:var(--c1)}.timeline li.t-ligacao::before{background:var(--c3)}.timeline li.t-reuniao::before{background:var(--c7)}
.timeline li.t-tarefa::before{background:var(--c4)}.timeline li.t-email::before{background:var(--c2)}
.timeline li.t-sistema{color:var(--text-2)}
.timeline time{display:block;font-size:.6875rem;color:var(--muted);margin-bottom:2px}
.timeline .is-done{text-decoration:line-through;color:var(--muted)}

/* funil de vendas */
.board-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-bottom:16px}
.board-bar .flt{margin:0;flex:1}
.board-stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px;margin-bottom:16px}
.kanban{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(264px,1fr);gap:12px;overflow-x:auto;padding-bottom:12px;align-items:start;scrollbar-width:thin}
.kanban__col{background:var(--surface-3);border-radius:var(--r-lg);min-height:320px;display:flex;flex-direction:column;border-top:3px solid var(--sc,var(--c-gray))}
.kanban__col.is-over{outline:2px dashed var(--sc,var(--c1));outline-offset:-2px;background:#e6e9ee}
.kanban__head{padding:10px 12px 8px;display:grid;gap:2px}
.kanban__head h3{margin:0;font-size:.8125rem;display:flex;align-items:center;gap:8px}
.kanban__head h3 .count{margin-left:auto;font-size:.6875rem;font-weight:800;background:var(--surface);padding:0 8px;border-radius:10px;color:var(--text-2)}
.kanban__head small{font-variant-numeric:tabular-nums}
.kanban__list{display:flex;flex-direction:column;gap:8px;padding:0 8px 8px;flex:1;min-height:60px}
.kanban__add{margin:0 8px 10px}
.kanban__add summary{list-style:none;cursor:pointer;font-size:.75rem;font-weight:700;color:var(--muted);padding:6px 4px;border-radius:var(--r)}
.kanban__add summary::-webkit-details-marker{display:none}
.kanban__add summary:hover{color:var(--text);background:rgba(255,255,255,.6)}
.kanban__add form{display:grid;gap:6px;background:var(--surface);padding:8px;border-radius:var(--r);border:1px solid var(--border)}
.kanban__add input,.kanban__add select{height:var(--control-sm);padding:0 8px;border:1px solid var(--border-strong);border-radius:var(--r);font:inherit;font-size:.8125rem;width:100%}
.deal{position:relative;background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--sc,var(--c-gray));border-radius:var(--r);padding:10px 10px 8px 12px;font-size:.75rem;cursor:grab;display:grid;gap:6px;box-shadow:var(--shadow-1)}
.deal:hover{border-color:var(--border-strong)}
.deal.is-drag{opacity:.5;box-shadow:var(--shadow-2)}
.deal__title{font-size:.8125rem;font-weight:800;color:var(--text);text-decoration:none;line-height:1.3}
.deal__title:hover{text-decoration:underline}
.deal__value{font-weight:800;font-size:.875rem;color:var(--text);font-variant-numeric:tabular-nums}
.deal__meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px;color:var(--muted)}
.deal__meta .avatar{width:22px;height:22px;font-size:.5625rem;background:var(--surface-3);color:var(--text-2)}
.deal__meta .late{color:var(--err);font-weight:800}
.deal select{height:26px;font:inherit;font-size:.6875rem;border:1px solid var(--border);border-radius:4px;background:var(--surface-2);width:100%;color:var(--text-2)}
.stage-editor .rowx{grid-template-columns:28px minmax(140px,2fr) 72px minmax(110px,1fr) 90px auto}
.stage-editor .handle{cursor:grab;color:var(--muted);display:grid;place-items:center;height:var(--control)}

/* ===================== login ===================== */
.adm-login{display:grid;place-items:center;min-height:100vh;background:var(--side);padding:16px}
.adm-login__box{background:var(--surface);padding:32px 28px;width:min(380px,100%);display:grid;gap:14px;border-radius:var(--r-lg);box-shadow:var(--shadow-2)}
.adm-login__box h1{font-size:1.125rem;margin:4px 0 0}
.adm-login__box label{display:grid;gap:0;font-weight:700;font-size:.8125rem}
.adm-login__box>a{font-size:.8125rem;text-align:center;color:var(--muted)}

/* ===================== impressão ===================== */
.print-only{display:none}
@media print{
  .side,.appbar,.flt,.no-print,.adm-flash{display:none!important}
  .app{display:block}.adm-main{padding:0;max-width:none}
  .adm-card,.kp>div{break-inside:avoid;box-shadow:none}
  .print-only{display:block}
}

/* ===================== responsivo ===================== */
@media (max-width:1180px){
  .adm-grid,.adm-grid--3,.adm-grid--even,.adm-form{grid-template-columns:minmax(0,1fr)}
  .adm-form__side{position:static}
}
@media (max-width:900px){
  .app{grid-template-columns:minmax(0,1fr)}
  .side{position:fixed;left:0;top:0;bottom:0;width:min(300px,86vw);transform:translateX(-100%);transition:transform .2s ease;box-shadow:var(--shadow-2)}
  .side.is-open{transform:none}
  .scrim{position:fixed;inset:0;background:rgba(15,17,21,.45);z-index:35}
  .side.is-open~.scrim{display:block}
  .appbar{padding:0 12px}
  .appbar__menu{display:inline-grid}
  .appbar .a-btn--ghost span{display:none}
  .adm-main{padding:16px 12px}
  .adm-settings .adm-cols,.adm-settings .adm-cols--3{grid-template-columns:minmax(0,1fr)}
  .flt .adm-seg{display:none}
  .flt__period-select{display:grid}
  .flt__info{margin-left:0;width:100%}
  .kp{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .kp>div{padding:12px 12px 12px 14px}
  .kp b{font-size:1.5rem}
  .adm-table--rows,.table-wrap .adm-table{min-width:640px}
  .adm-card--flush{overflow-x:auto}
  .bar{grid-template-columns:minmax(80px,40%) minmax(0,1fr) auto}
  .funnel__row{grid-template-columns:minmax(90px,36%) minmax(0,1fr) auto}
  .funnel__row small{display:none}
  .user summary>span:not(.avatar){display:none}
  .adm-inline-form .f{min-width:100%}
  .stage-editor .rowx{grid-template-columns:minmax(0,1fr) 64px;}
}

/* blog: dias da semana para programar */
.weekdays{border:0;padding:0;margin:0;display:flex;gap:4px;align-items:flex-end;flex-wrap:wrap}
.weekdays legend{font-size:.6875rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin-bottom:4px;padding:0}
.weekdays label{display:block;cursor:pointer}
.weekdays input{position:absolute;opacity:0}
.weekdays span{display:grid;place-items:center;height:var(--control);min-width:44px;padding:0 8px;border:1px solid var(--border-strong);border-radius:var(--r);font-size:.75rem;font-weight:700;color:var(--text-2);background:var(--surface)}
.weekdays input:checked+span{background:var(--ink);color:#fff;border-color:var(--ink)}
.weekdays input:focus-visible+span{box-shadow:0 0 0 3px var(--focus)}
.ic{width:16px;height:16px;flex:none;vertical-align:-3px}
.deal__meta .ic{width:13px;height:13px;vertical-align:-2px}
.a-btn .ic{width:15px;height:15px}
.kanban__list{max-height:calc(100vh - 260px);overflow-y:auto;scrollbar-width:thin}
.adm-table input[type=checkbox],.adm-table input[type=radio]{width:16px;height:16px;min-width:0;padding:0;accent-color:var(--ink);vertical-align:middle}
.adm-table input[type=date]{width:150px}
.flt .flt__period-select{display:none}
@media (max-width:900px){.flt .flt__period-select{display:grid}}
.rowx [data-up] svg{transform:rotate(-90deg)}
.user summary .avatar{display:inline-grid!important}
@media (max-width:900px){.user summary span:not(.avatar){display:none}}

/* ajuda */
.help-panel{position:fixed;top:var(--bar-h);right:0;bottom:0;z-index:45;width:min(380px,100vw);overflow-y:auto;background:var(--surface);border-left:1px solid var(--border);box-shadow:var(--shadow-2);padding:16px 20px 24px;font-size:.875rem;color:var(--text-2)}
.help-panel__head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;color:var(--text);font-size:.9375rem}
.help-item{border-top:1px solid var(--border);padding:12px 0}
.help-item summary{cursor:pointer;list-style:none;display:flex;flex-wrap:wrap;gap:4px 10px;align-items:baseline}
.help-item summary::-webkit-details-marker{display:none}
.help-item summary::before{content:"+";font-weight:800;width:14px;color:var(--muted)}
.help-item[open] summary::before{content:"−"}

/* campo de imagem no editor de conteúdo */
.img-field>span{display:block;margin-bottom:6px}
.img-field__row{display:flex;gap:14px;align-items:flex-start;flex-wrap:wrap}
.img-field__row img{width:160px;max-height:110px;object-fit:cover;border-radius:6px;border:1px solid var(--border);background:var(--surface-3)}
.img-field__row small{display:block;font-weight:400;margin-top:4px}
.rowx textarea{display:block;width:100%;margin-top:6px;padding:7px 10px;border:1px solid var(--border-strong);border-radius:var(--r);font:400 .875rem/1.4 "Inter",sans-serif;min-height:60px;resize:vertical}
.rowx input{display:block;width:100%;min-height:var(--control);margin-top:6px;padding:7px 10px;border:1px solid var(--border-strong);border-radius:var(--r);font:400 .875rem "Inter",sans-serif}

/* mapa de visitantes: páginas visitadas em sequência */
td.pages{min-width:220px;max-width:420px;font-size:.8125rem;line-height:1.7}
td.pages a{display:inline-block;padding:0 6px;border-radius:4px;background:var(--surface-3);color:inherit;text-decoration:none;white-space:nowrap}
td.pages a:hover{text-decoration:underline}
td.pages i{font-style:normal;color:var(--text-3,#888);margin:0 3px}
#visit-map{z-index:0}

/* ---------- mapa 3D de visitantes ---------- */
.geo3d-card .card-head{flex-wrap:wrap;gap:8px}
.geo3d-crumb{display:inline-flex;gap:6px;align-items:center;margin-left:10px;font-weight:500}
.geo3d-crumb i{font-style:normal;opacity:.5}
.geo3d-tools{display:flex;gap:6px}
.geo3d-tools [aria-pressed="true"]{background:#0f1115;color:#fff;border-color:#0f1115}
.geo3d{position:relative;overflow:hidden;perspective:1600px;
  background-color:#e9edf2;
  background-image:radial-gradient(120% 90% at 50% 35%,rgba(251,252,253,.92) 0%,rgba(233,237,242,.9) 70%,rgba(223,228,234,.96) 100%),linear-gradient(rgba(15,17,21,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(15,17,21,.05) 1px,transparent 1px);
  background-size:auto,32px 32px,32px 32px}
.geo3d__stage{display:grid;place-items:center;min-height:420px;padding:18px 12px 40px}
.geo3d__svg{width:100%;max-height:560px;overflow:visible;transform:rotateX(28deg) scale(1.04);transform-origin:50% 62%;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.geo3d__svg--br{max-width:640px}
.geo3d.is-flat .geo3d__svg{transform:none}
.geo3d__land{filter:drop-shadow(0 1.5px 0 #2b2f36) drop-shadow(0 3px 0 #3b4048) drop-shadow(0 4.5px 0 #4b515a) drop-shadow(0 16px 14px rgba(15,17,21,.35))}
.geo3d.is-flat .geo3d__land{filter:drop-shadow(0 6px 10px rgba(15,17,21,.25))}
.geo3d__area{fill:#0f1115;stroke:#2d323a;stroke-width:.5;transition:fill .2s}
.geo3d__area.is-hit{cursor:pointer;stroke:#fff;stroke-width:.6}
.geo3d__area.is-hit:hover,.geo3d__area.is-sel{fill:#eb6834!important}
.geo3d__area:not(.is-hit):hover{fill:#262a31}
.geo3d__uf{font:600 11px/1 Inter,system-ui,sans-serif;fill:rgba(255,255,255,.5);text-anchor:middle;pointer-events:none}
.geo3d__uf.is-hit{fill:#fff}
.geo3d__pin{cursor:pointer}
.geo3d__core{fill:#eb6834;stroke:#fff;stroke-width:1.2}
.geo3d__pin:hover .geo3d__core,.geo3d__pin.is-sel .geo3d__core{fill:#fff;stroke:#eb6834;stroke-width:2}
.geo3d__pulse{fill:#eb6834;opacity:.5;transform-box:fill-box;transform-origin:center;animation:geoPulse 2.2s ease-out infinite;pointer-events:none}
@keyframes geoPulse{from{transform:scale(1);opacity:.55}to{transform:scale(3.2);opacity:0}}
.geo3d__tip{position:absolute;z-index:3;min-width:150px;max-width:240px;padding:8px 10px;border-radius:8px;background:#0f1115;color:#fff;font-size:.8125rem;line-height:1.4;pointer-events:none;box-shadow:0 8px 24px rgba(0,0,0,.25)}
.geo3d__tip b{display:block;font-size:.875rem}
.geo3d__tip small{display:block;margin-top:3px;color:#9aa3ad}
.geo3d__legend{position:absolute;left:14px;bottom:10px;display:flex;flex-wrap:wrap;gap:14px;font-size:.75rem;color:#4b515a}
.geo3d__legend span{display:inline-flex;align-items:center;gap:6px}
.geo3d__dot{width:10px;height:10px;border-radius:50%;background:#eb6834;border:1.5px solid #fff;box-shadow:0 0 0 1px #eb6834}
.geo3d__sw{width:14px;height:10px;border-radius:2px;background:hsl(213 70% 45%)}
@media (prefers-reduced-motion:reduce){.geo3d__pulse{animation:none;opacity:0}.geo3d__svg{transition:none}}
@media (max-width:640px){.geo3d__svg{transform:rotateX(18deg)}.geo3d__stage{min-height:260px}}

/* ---------- celular: tabelas viram cartões (um por linha, cada valor com o nome da coluna) ---------- */
@media (max-width:760px){
  .table-wrap .adm-table.adm-table--stack,.table-wrap .adm-table.adm-table--flow,.adm-table--rows.adm-table--stack{min-width:0}
  .adm-card--flush{overflow-x:visible}
  .adm-table--stack thead{display:none}
  .adm-table--stack,.adm-table--stack tbody,.adm-table--stack tr{display:block;width:100%}
  .adm-table--stack tr{padding:10px 14px;border-bottom:1px solid var(--border)}
  .adm-table--stack tr:last-child{border-bottom:0}
  .adm-table--stack td{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:4px 0;border:0;text-align:right;white-space:normal;min-width:0}
  .adm-table--stack td::before{content:attr(data-label);flex:0 0 auto;max-width:42%;text-align:left;font-size:.6875rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);padding-top:2px}
  .adm-table--stack td[data-label=""]::before{display:none}
  .adm-table--stack td[data-label=""]{justify-content:flex-start;text-align:left}
  .adm-table--stack td:first-child{font-size:.875rem}
  .adm-table--stack td>*{min-width:0;overflow-wrap:anywhere}
  .adm-table--stack td small{text-align:right}
  .adm-table--stack td .pbar{flex:0 0 72px;margin:0 0 0 auto;align-self:center}
  .adm-table--stack td.num{white-space:normal}
  .adm-table--stack td:has(img),.adm-table--stack td.pages,.adm-table--stack td:has(> * + *:not(.pbar)){display:block;text-align:left;max-width:none}
  .adm-table--stack td:has(> * + *:not(.pbar))>*{display:block}
  .adm-table--stack td:has(> * + *:not(.pbar))::before{display:block;max-width:none;margin-bottom:4px}
  .adm-table--stack td:has(img)::before,.adm-table--stack td.pages::before{display:block;max-width:none;margin-bottom:4px}
  .adm-table--stack td img{max-width:100%;height:auto}
  .adm-table--stack .row-actions,.adm-table--stack td form{justify-content:flex-end}
  .adm-table--stack tbody tr:hover td{background:none}
  /* tabelas sem cabeçalho (listas): os itens quebram de linha em vez de cortar */
  .adm-table--flow,.adm-table--flow tbody{display:block;width:100%}
  .adm-table--flow tr{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;padding:10px 14px;border-bottom:1px solid var(--border)}
  .adm-table--flow tr:last-child{border-bottom:0}
  .adm-table--flow td{display:block;padding:0;border:0;width:auto!important;min-width:0}
  .adm-table--flow td:has(b),.adm-table--flow td:has(strong){flex:1 1 55%}
  .adm-table--flow td.num{margin-left:auto}
  /* filtros: campos dividem a linha por igual; botões ocupam a largura */
  .flt>label,.flt>.flt__period-select{flex:1 1 140px}
  .flt>label input,.flt>label select{width:100%}
  .flt>button,.flt>.a-btn{flex:1 1 100%;justify-content:center}
  .flt>label.f-check{display:flex;align-items:center;gap:8px;flex:1 1 100%}
  .flt>label.f-check input{width:16px;flex:none}
  .flt>.f-label{flex:1 1 100%}
  /* formulários dentro de uma célula (data, visível, salvar): quebram a linha em vez de espremer */
  .adm-table--stack td:has(form.inline-row){display:block;text-align:left}
  .adm-table--stack td:has(form.inline-row)::before{display:block;max-width:none;margin-bottom:6px}
  .adm-table--stack form.inline-row{flex-wrap:wrap!important;justify-content:flex-start}
  .adm-table--stack form.inline-row input[type=date]{width:auto!important;flex:1 1 140px}
  .adm-table--stack .f-check{white-space:nowrap;display:inline-flex;align-items:center;gap:6px}
}

/* ---------- diagnóstico de site ---------- */
.adm-alert{padding:12px 16px;border-radius:var(--r-lg);margin-bottom:var(--gap);font-size:.875rem;line-height:1.5;border:1px solid var(--border)}
.adm-alert--warn{background:var(--warn-bg);border-color:transparent;color:var(--text)}
.adm-alert a{font-weight:700}
.adm-list--plain{list-style:none;padding:0;display:grid;gap:8px;font-size:.875rem}
.adm-list--plain li{padding-left:18px;position:relative}
.adm-list--plain li::before{content:"";position:absolute;left:0;top:.55em;width:8px;height:8px;border-radius:50%;background:var(--c1)}
.seg-radio{display:flex;flex-wrap:wrap;gap:8px}
.seg-radio label{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border:1px solid var(--border-strong);border-radius:var(--r);font-size:.8125rem;font-weight:700;cursor:pointer;text-transform:none;letter-spacing:0;color:var(--text)}
.seg-radio label:has(input:checked){background:#0f1115;color:#fff;border-color:#0f1115}
.seg-radio input{accent-color:#eb6834}
fieldset.f{border:0;padding:0;margin:0 0 14px}
fieldset.f legend{font-size:.6875rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}
details.f summary{cursor:pointer;font-weight:700;font-size:.875rem;padding:6px 0}
.diag-run{max-width:720px}
.diag-bar{height:12px;border-radius:6px;background:var(--surface-3);overflow:hidden;margin:14px 0 10px}
.diag-bar i{display:block;height:100%;background:linear-gradient(90deg,#eb6834,#f39a6d);border-radius:6px;transition:width .6s ease}
.diag-run__label{font-weight:700}
.diag-list{margin:0;padding-left:20px;display:grid;gap:8px;font-size:.875rem;line-height:1.5}
.diag-list--ok{list-style:none;padding-left:0}
.diag-list--ok li{padding-left:22px;position:relative}
.diag-list--ok li::before{content:"✓";position:absolute;left:0;color:var(--ok);font-weight:800}
.adm-card h3{font-size:.875rem;margin:16px 0 8px}
.chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}
.chip{display:inline-block;padding:5px 10px;border-radius:999px;background:var(--err-bg);color:var(--text);font-size:.8125rem}
.chips--ok .chip{background:var(--ok-bg)}
.adm-table tr.is-me td{background:#fde7dc}
