:root{
  --brand:#2B2C2E; --brand-deep:#1A1A1C; --cream:#F8F7F7; --sand:#F0EEEB; --gold:#D0A432; --gold-ink:#8C6A1C; --amber-600:#A87F22; --amber-300:#E6C170;
  --bg:#F8F7F7; --surface:#FFFFFF; --surface-2:#F0EEEB; --surface-3:#E3E0DB;
  --ink:#1A1A1C; --ink-2:#4E4F53; --muted:#6B6C70; --line:#E3E0DB; --line-2:#D3CFC8;
  --accent:#2B2C2E; --accent-ink:#FFFFFF; --focus:#D0A432;
  --side-bg:#1A1A1C; --side-ink:#F8F7F7; --side-muted:#9D9EA2;
  --hl-bg:#2B2C2E; --hl-line:#2B2C2E; --hl-ink:#F8F7F7; --hl-k:#9D9EA2; --hl-d:#C8C9CC;
  --on-bg:#2B2C2E; --on-ink:#FFFFFF;
  --good:#1B8A3A; --good-bg:#DDF0E0; --warn:#B87A12; --warn-bg:#F7E7C6; --bad:#C23B3B; --bad-bg:#F7DCDA; --info:#2A6FB8; --info-bg:#DCE8F6;
  --st-done:#1F8A48; --st-doing:#D0A432; --st-stuck:#C8453F; --st-todo:#8E8F93;
  --bar:#2B2C2E; --bar-2:#9D9EA2; --bar-soft:#E3E0DB;
  --shadow:0 1px 2px rgba(26,26,28,.06),0 4px 16px rgba(26,26,28,.06);
  --shadow-lg:0 12px 40px rgba(26,26,28,.18);
  --r:10px; --r-sm:7px;
  --ff-d:'Poppins',ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif;
  --ff-b:'Inter',ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif;
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){color-scheme:dark;
  --bg:#121213; --surface:#1C1C1E; --surface-2:#232326; --surface-3:#2E2F32;
  --ink:#F8F7F7; --ink-2:#C8C9CC; --muted:#9D9EA2; --line:#2E2F32; --line-2:#3A3B3E;
  --accent:#D0A432; --accent-ink:#1A1A1C; --focus:#D0A432; --gold-ink:#E6C170;
  --side-bg:#0E0E0F; --side-ink:#F8F7F7; --side-muted:#8E8F93;
  --hl-bg:#2B2C2E; --hl-line:#3A3B3E; --hl-ink:#F8F7F7; --hl-k:#9D9EA2; --hl-d:#C8C9CC;
  --on-bg:#D0A432; --on-ink:#1A1A1C;
  --good:#4CC06E; --good-bg:#153823; --warn:#E3AE4A; --warn-bg:#3A2C10; --bad:#EE7A73; --bad-bg:#3F1A18; --info:#78AEEA; --info-bg:#132B45;
  --st-done:#2E9E5A; --st-doing:#D0A432; --st-stuck:#D0534C; --st-todo:#6B6C70;
  --bar:#C8C9CC; --bar-2:#6B6C70; --bar-soft:#2E2F32;
  --shadow:0 1px 2px rgba(0,0,0,.3),0 4px 16px rgba(0,0,0,.25); --shadow-lg:0 12px 40px rgba(0,0,0,.5);
}}
:root[data-theme="dark"]{color-scheme:dark;
  --bg:#121213; --surface:#1C1C1E; --surface-2:#232326; --surface-3:#2E2F32;
  --ink:#F8F7F7; --ink-2:#C8C9CC; --muted:#9D9EA2; --line:#2E2F32; --line-2:#3A3B3E;
  --accent:#D0A432; --accent-ink:#1A1A1C; --focus:#D0A432; --gold-ink:#E6C170;
  --side-bg:#0E0E0F; --side-ink:#F8F7F7; --side-muted:#8E8F93;
  --hl-bg:#2B2C2E; --hl-line:#3A3B3E; --hl-ink:#F8F7F7; --hl-k:#9D9EA2; --hl-d:#C8C9CC;
  --on-bg:#D0A432; --on-ink:#1A1A1C;
  --good:#4CC06E; --good-bg:#153823; --warn:#E3AE4A; --warn-bg:#3A2C10; --bad:#EE7A73; --bad-bg:#3F1A18; --info:#78AEEA; --info-bg:#132B45;
  --st-done:#2E9E5A; --st-doing:#D0A432; --st-stuck:#D0534C; --st-todo:#6B6C70;
  --bar:#C8C9CC; --bar-2:#6B6C70; --bar-soft:#2E2F32;
  --shadow:0 1px 2px rgba(0,0,0,.3),0 4px 16px rgba(0,0,0,.25); --shadow-lg:0 12px 40px rgba(0,0,0,.5);
}
*{box-sizing:border-box}
html,body,#root{height:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.45 var(--ff-b);-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{font-family:var(--ff-d);margin:0;text-wrap:balance;font-weight:600;letter-spacing:-.01em}
h1{font-size:22px}h2{font-size:17px}h3{font-size:15px}h4{font-size:13px}
button,input,select,textarea{font:inherit;color:inherit}
a{color:inherit}
.num,td.n,.tnum{font-variant-numeric:tabular-nums}
:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}

/* ---------- shell ---------- */
.app{display:grid;grid-template-columns:232px 1fr;height:100%}
.side{background:var(--side-bg);color:var(--side-ink);display:flex;flex-direction:column;padding:20px 12px 14px;gap:4px;overflow-y:auto}
.side .brand{padding:6px 10px 18px;display:flex;flex-direction:column;gap:8px}
.side .brand img{width:150px;height:auto;display:block}
.side .brand small{font:500 10px/1.2 var(--ff-d);letter-spacing:.14em;text-transform:uppercase;color:var(--side-muted)}
.nav-sec{font:500 10px/1 var(--ff-d);letter-spacing:.14em;text-transform:uppercase;color:var(--side-muted);padding:16px 10px 6px}
.nav{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:8px;border:0;background:none;color:var(--side-ink);cursor:pointer;text-align:left;font:500 13.5px/1.2 var(--ff-d);width:100%}
.nav svg{width:18px;height:18px;flex:none;opacity:.8}
.nav:hover{background:rgba(255,255,255,.06)}
.nav.on{background:rgba(248,247,247,.1);color:#fff}
.nav.on svg{opacity:1;color:#D0A432}
.nav .cnt{margin-left:auto;font:600 11px/1 var(--ff-b);background:rgba(255,255,255,.1);padding:3px 7px;border-radius:99px;font-variant-numeric:tabular-nums}
.side .foot{margin-top:auto;padding:14px 10px 0;font-size:11.5px;color:var(--side-muted);display:flex;flex-direction:column;gap:6px}
.side .foot .dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#4CC06E;margin-right:6px}
.main{min-width:0;overflow-y:auto;display:flex;flex-direction:column}
.top{position:sticky;top:0;z-index:5;background:var(--bg);padding:18px 28px 12px;display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;border-bottom:1px solid var(--line)}
.top .ttl{display:flex;flex-direction:column;gap:2px;margin-right:auto;min-width:0}
.top .ttl .eyebrow{font:500 10.5px/1 var(--ff-d);letter-spacing:.14em;text-transform:uppercase;color:var(--gold-ink)}
.content{padding:20px 28px 48px;display:flex;flex-direction:column;gap:18px;min-width:0}
.mob-top{display:none}

/* ---------- controls ---------- */
.btn{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line-2);background:var(--surface);color:var(--ink);padding:7px 13px;border-radius:99px;cursor:pointer;font:500 13px/1.2 var(--ff-d);white-space:nowrap}
.btn:hover{border-color:var(--ink-2)}
.btn svg{width:15px;height:15px}
.btn.pri{background:var(--gold);border-color:var(--gold);color:#1A1A1C}
.btn.pri:hover{filter:brightness(1.06)}
.btn.dark{background:var(--brand);border-color:var(--brand);color:#fff}
.btn.good{background:var(--good);border-color:var(--good);color:#fff}
.btn.bad{background:transparent;border-color:var(--bad);color:var(--bad)}
.btn.ghost{background:transparent;border-color:transparent}
.btn.ghost:hover{background:var(--surface-3)}
.btn.sm{padding:5px 10px;font-size:12px}
.btn[disabled]{opacity:.45;cursor:not-allowed}
.seg{display:inline-flex;background:var(--surface-3);border-radius:99px;padding:3px;gap:2px;flex-wrap:wrap}
.seg button{border:0;background:none;padding:6px 12px;border-radius:99px;cursor:pointer;font:500 12.5px/1.2 var(--ff-d);color:var(--ink-2);white-space:nowrap}
.seg button.on{background:var(--surface);color:var(--ink);box-shadow:0 1px 3px rgba(0,0,0,.12)}
.inp,select.inp,textarea.inp{width:100%;border:1px solid var(--line-2);background:var(--surface);border-radius:var(--r-sm);padding:7px 10px;min-height:34px}
textarea.inp{min-height:70px;resize:vertical}
.inp:focus{outline:none;border-color:var(--focus);box-shadow:0 0 0 3px color-mix(in srgb,var(--focus) 25%,transparent)}
.search{position:relative}
.search input{padding-left:32px;border-radius:99px;min-width:200px}
.search svg{position:absolute;left:10px;top:50%;transform:translateY(-50%);width:15px;height:15px;color:var(--muted)}
.fld{display:flex;flex-direction:column;gap:5px;min-width:0}
.fld>label,.lbl{font:500 11px/1.2 var(--ff-d);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.fld .hint{font-size:11.5px;color:var(--muted)}
.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px}
.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 14px}
.row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.sp{flex:1}
.muted{color:var(--muted)}.ink2{color:var(--ink-2)}
.small{font-size:12px}
.chips{display:flex;gap:6px;flex-wrap:wrap}
.chip{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:99px;font:500 11.5px/1.3 var(--ff-b);background:var(--surface-3);color:var(--ink-2);white-space:nowrap}
.chip.ex{background:var(--info-bg);color:var(--info);font-weight:600;letter-spacing:.04em;text-transform:uppercase;font-size:10px}
.chip.good{background:var(--good-bg);color:var(--good)}
.chip.warn{background:var(--warn-bg);color:var(--warn)}
.chip.bad{background:var(--bad-bg);color:var(--bad)}
.chip.info{background:var(--info-bg);color:var(--info)}
.chip svg{width:12px;height:12px}
.grade{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:7px;font:700 12.5px/1 var(--ff-d);color:#fff;flex:none}
.grade.A{background:#1F8A48}.grade.B{background:#6E9A3A}.grade.C{background:#C98A1B}.grade.D{background:#C23B3B}.grade.X{background:#8C968F}.grade.R{background:#7E2A2A}
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow)}
.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:16px 18px;display:flex;flex-direction:column;gap:12px;min-width:0}
.panel>header{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.panel>header h3{margin-right:auto}
.panel>header .sub{font-size:12px;color:var(--muted)}
.empty{padding:28px;text-align:center;color:var(--muted);font-size:13px}

/* ---------- KPI ---------- */
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}
.kpi{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:14px 16px;display:flex;flex-direction:column;gap:6px;min-width:0}
.kpi .k{font:500 10.5px/1.2 var(--ff-d);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.kpi .v{font:600 26px/1.05 var(--ff-d);font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.kpi .d{font-size:12px;color:var(--ink-2)}
.kpi.hl{background:var(--hl-bg);border-color:var(--hl-line);color:var(--hl-ink)}
.kpi.hl .k{color:var(--hl-k)}.kpi.hl .d{color:var(--hl-d)}
.dash-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px}
.c4{grid-column:span 4}.c5{grid-column:span 5}.c6{grid-column:span 6}.c7{grid-column:span 7}.c8{grid-column:span 8}.c12{grid-column:span 12}

/* ---------- kanban ---------- */
.board-wrap{overflow-x:auto;margin:0 -28px;padding:0 28px 8px}
.board{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(272px,1fr);gap:14px;min-height:420px}
.col{background:var(--surface-2);border:1px solid var(--line);border-radius:12px;display:flex;flex-direction:column;min-width:0}
.col>header{padding:12px 14px 10px;display:flex;flex-direction:column;gap:4px;border-bottom:1px solid var(--line)}
.col>header .t{display:flex;align-items:center;gap:8px;font:600 13.5px/1.2 var(--ff-d)}
.col>header .t .n{font:600 11.5px/1 var(--ff-b);color:var(--muted);background:var(--surface-3);padding:3px 7px;border-radius:99px}
.col>header .m{font-size:11.5px;color:var(--muted);font-variant-numeric:tabular-nums}
.col .stripe{height:3px;border-radius:3px;margin-top:4px}
.col .list{padding:10px;display:flex;flex-direction:column;gap:9px;flex:1;min-height:80px}
.col.drop{outline:2px dashed var(--focus);outline-offset:-4px}
.dcard{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:11px 12px;display:flex;flex-direction:column;gap:8px;cursor:pointer;box-shadow:0 1px 2px rgba(26,26,28,.05);text-align:left;width:100%}
.dcard:hover{border-color:var(--line-2);box-shadow:var(--shadow)}
.dcard.dragging{opacity:.4}
.dcard .top1{display:flex;gap:9px;align-items:flex-start}
.dcard .nm{font:600 13.5px/1.25 var(--ff-d);min-width:0;overflow-wrap:anywhere}
.dcard .code{font:500 10.5px/1 var(--ff-b);color:var(--muted);letter-spacing:.04em}
.dcard .meta{display:flex;flex-wrap:wrap;gap:4px 10px;font-size:12px;color:var(--ink-2)}
.dcard .meta span{display:inline-flex;align-items:center;gap:4px}
.dcard .meta svg{width:13px;height:13px;color:var(--muted)}
.dcard .foot{display:flex;align-items:center;gap:6px;flex-wrap:wrap;border-top:1px dashed var(--line);padding-top:8px;font-size:11.5px}
.dcard .who{margin-left:auto;width:22px;height:22px;border-radius:50%;background:var(--hl-bg);color:var(--hl-ink);display:grid;place-items:center;font:600 9.5px/1 var(--ff-d)}
.dropzones{position:fixed;left:50%;bottom:22px;transform:translateX(-50%);display:flex;gap:12px;z-index:30}
.dz{min-width:180px;padding:16px 22px;border-radius:14px;font:600 14px/1 var(--ff-d);text-align:center;border:2px dashed;background:var(--surface);box-shadow:var(--shadow-lg)}
.dz.win{color:var(--good);border-color:var(--good)}.dz.lose{color:var(--bad);border-color:var(--bad)}
.dz.over{transform:scale(1.05)}
.dz.win.over{background:var(--good-bg)}.dz.lose.over{background:var(--bad-bg)}

/* ---------- tables ---------- */
.tbl-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r);background:var(--surface)}
table.tbl{border-collapse:collapse;width:100%;font-size:13px}
.tbl th{font:500 10.5px/1.2 var(--ff-d);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);background:var(--surface-2);white-space:nowrap;position:sticky;top:0}
.tbl th.s{cursor:pointer}.tbl th.s:hover{color:var(--ink)}
.tbl td{padding:9px 12px;border-bottom:1px solid var(--line);vertical-align:middle}
.tbl tr:last-child td{border-bottom:0}
.tbl tbody tr.click{cursor:pointer}
.tbl tbody tr.click:hover td{background:var(--surface-2)}
.tbl td.n,.tbl th.n{text-align:right;font-variant-numeric:tabular-nums}
.tbl .nm{font-weight:600;font-family:var(--ff-d);font-size:13px}

/* monday-style groups */
.grp{border-radius:var(--r);background:var(--surface);border:1px solid var(--line);overflow:hidden}
.grp>header{display:flex;align-items:center;gap:10px;padding:10px 14px;cursor:pointer;flex-wrap:wrap}
.grp>header h3{font-size:14.5px;color:var(--gc)}
.grp>header .tw{width:16px;height:16px;color:var(--gc);transition:transform .15s}
.grp.closed>header .tw{transform:rotate(-90deg)}
.grp.closed .grp-body{display:none}
.grp .gprog{display:flex;align-items:center;gap:8px;margin-left:auto;font-size:12px;color:var(--ink-2)}
.grp-body{overflow-x:auto}
.mt{border-collapse:separate;border-spacing:0;width:100%;min-width:1180px;font-size:13px;table-layout:fixed}
.mt th{font:500 10.5px/1.2 var(--ff-d);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:8px 8px;text-align:left;border-bottom:1px solid var(--line);white-space:nowrap}
.mt td{border-bottom:1px solid var(--line);padding:0;height:40px}
.mt td:first-child{border-left:5px solid var(--gc);padding-left:8px}
.mt tr:last-child td{border-bottom:0}
.mt td>.cell{padding:0 8px;display:flex;align-items:center;height:100%}
.mt input.ci,.mt select.ci{border:1px solid transparent;background:transparent;padding:5px 6px;border-radius:5px;width:100%;min-width:0}
.mt input.ci:hover,.mt select.ci:hover{border-color:var(--line-2)}
.mt input.ci:focus,.mt select.ci:focus{border-color:var(--focus);background:var(--surface);outline:none}
.mt input[type=number].ci{text-align:right;font-variant-numeric:tabular-nums}
.mt td.stc{width:132px;padding:0}
.stsel{appearance:none;-webkit-appearance:none;border:0;width:100%;height:40px;text-align:center;text-align-last:center;font:600 12px/1 var(--ff-d);color:#fff;cursor:pointer;padding:0 6px}
.stsel.afazer{background:var(--st-todo)}.stsel.andamento{background:var(--st-doing);color:#241604}.stsel.bloqueado{background:var(--st-stuck)}.stsel.concluido{background:var(--st-done)}
.stsel option{background:var(--surface);color:var(--ink)}
.mt .late input{color:var(--bad);font-weight:600}
.mt .addrow td{height:36px}
.mt .addrow input{border:0;background:transparent;padding:6px 8px;width:100%;color:var(--ink-2)}
.pbar{height:7px;border-radius:99px;background:var(--surface-3);overflow:hidden;min-width:60px;flex:1}
.pbar>i{display:block;height:100%;background:var(--st-done);border-radius:99px}
.segbar{display:flex;gap:2px;height:8px;min-width:120px}
.segbar>i{flex:1;border-radius:2px;background:var(--surface-3);position:relative;overflow:hidden}
.segbar>i>b{position:absolute;inset:0 auto 0 0;background:var(--st-done)}
.pill{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:99px;font:600 11.5px/1.3 var(--ff-d);color:#fff;white-space:nowrap}
.pill.afazer{background:var(--st-todo)}.pill.andamento{background:var(--st-doing);color:#241604}.pill.bloqueado{background:var(--st-stuck)}.pill.concluido{background:var(--st-done)}
.pill.sup{background:var(--st-done)}.pill.ate{background:var(--st-doing);color:#241604}.pill.aba{background:var(--st-stuck)}.pill.nd{background:var(--st-todo)}

/* gantt */
.gantt{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r);background:var(--surface)}
.gantt .gi{display:grid;position:relative}
.gantt .gl{position:sticky;left:0;z-index:2;background:var(--surface);border-right:1px solid var(--line);font-size:12.5px;padding:0 10px;display:flex;align-items:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gantt .gl.ph{font:600 12.5px/1 var(--ff-d);color:var(--gc)}
.gantt .gh{font:500 10.5px/1 var(--ff-b);color:var(--muted);border-bottom:1px solid var(--line);display:flex;align-items:flex-end;padding-bottom:6px;justify-content:center}
.gantt .gh.wk{border-left:1px solid var(--line)}
.gantt .gtrack{position:relative;border-bottom:1px solid var(--line)}
.gantt .gb{position:absolute;top:7px;bottom:7px;border-radius:5px;background:var(--st-todo);display:flex;align-items:center;overflow:hidden;cursor:pointer}
.gantt .gb>b{position:absolute;inset:0 auto 0 0;background:rgba(0,0,0,.18)}
.gantt .gb.concluido{background:var(--st-done)}.gantt .gb.andamento{background:var(--st-doing)}.gantt .gb.bloqueado{background:var(--st-stuck)}
.gantt .gb.phase{top:11px;bottom:11px;opacity:.9;background:var(--gc)}
.gantt .today{position:absolute;top:0;bottom:0;width:2px;background:var(--bad);z-index:1;pointer-events:none}
.gantt .today span{position:absolute;top:2px;left:4px;font:600 10px/1 var(--ff-d);color:var(--bad);white-space:nowrap}
.gantt .wkline{position:absolute;top:0;bottom:0;width:1px;background:var(--line);pointer-events:none}

/* drawer & modal */
.scrim{position:fixed;inset:0;background:rgba(14,14,15,.45);z-index:40;animation:fade .15s}
.drawer{position:fixed;top:0;right:0;bottom:0;width:min(640px,100vw);background:var(--bg);z-index:41;display:flex;flex-direction:column;box-shadow:var(--shadow-lg);animation:slide .2s ease-out}
.drawer>header{padding:18px 22px 0;background:var(--surface);border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:12px;padding-top:calc(18px + env(safe-area-inset-top,0px))}
.drawer .dh{display:flex;gap:12px;align-items:flex-start}
.drawer .dh h2{font-size:19px}
.tabs{display:flex;gap:2px;overflow-x:auto}
.tabs button{border:0;background:none;padding:10px 12px;font:500 13px/1 var(--ff-d);color:var(--muted);border-bottom:2px solid transparent;cursor:pointer;white-space:nowrap}
.tabs button.on{color:var(--ink);border-color:var(--gold)}
.drawer .body{flex:1;overflow-y:auto;padding:18px 22px 40px;display:flex;flex-direction:column;gap:16px}
.stepper{display:flex;gap:4px}
.stepper button{flex:1;border:0;padding:8px 6px 8px 14px;background:var(--surface-3);color:var(--ink-2);font:500 11.5px/1.2 var(--ff-d);cursor:pointer;clip-path:polygon(0 0,calc(100% - 8px) 0,100% 50%,calc(100% - 8px) 100%,0 100%,8px 50%);min-width:0}
.stepper button:first-child{clip-path:polygon(0 0,calc(100% - 8px) 0,100% 50%,calc(100% - 8px) 100%,0 100%);padding-left:10px;border-radius:6px 0 0 6px}
.stepper button.done{background:color-mix(in srgb,var(--brand) 22%,var(--surface-3));color:var(--ink)}
.stepper button.cur{background:var(--on-bg);color:var(--on-ink)}
.modal{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);width:min(480px,calc(100vw - 32px));max-height:calc(100vh - 40px);overflow-y:auto;background:var(--surface);border-radius:14px;z-index:51;padding:22px;display:flex;flex-direction:column;gap:14px;box-shadow:var(--shadow-lg)}
.modal.wide{width:min(720px,calc(100vw - 32px))}
.scrim.m{z-index:50}
@keyframes fade{from{opacity:0}}
@keyframes slide{from{transform:translateX(30px);opacity:.4}}
.toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:var(--ink);color:var(--bg);padding:10px 18px;border-radius:99px;z-index:60;font:500 13px/1.3 var(--ff-d);box-shadow:var(--shadow-lg);animation:fade .2s}

/* qualification */
.qwrap{display:grid;grid-template-columns:1fr;gap:16px}
.qsec{display:flex;flex-direction:column;gap:10px;padding:14px 16px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r)}
.qsec>h4{display:flex;align-items:center;gap:8px}
.qsec>h4 .n{font:600 11px/1 var(--ff-b);color:var(--muted);margin-left:auto}
.opts{display:flex;flex-wrap:wrap;gap:6px}
.opts button{border:1px solid var(--line-2);background:var(--surface);padding:6px 11px;border-radius:99px;cursor:pointer;font-size:12.5px;color:var(--ink-2)}
.opts button.on{background:var(--on-bg);border-color:var(--on-bg);color:var(--on-ink)}
.opts button .m{font-size:10.5px;opacity:.7;margin-left:4px;font-variant-numeric:tabular-nums}
.yn{display:flex;align-items:center;gap:10px;justify-content:space-between;padding:6px 0;border-bottom:1px dashed var(--line)}
.yn:last-child{border-bottom:0}
.yn .opts button.on.no{background:var(--bad);border-color:var(--bad)}
.scorebox{position:sticky;top:-18px;z-index:3;background:var(--hl-bg);color:var(--hl-ink);border-radius:12px;padding:16px 18px;display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:center}
.scorebox .gauge{width:96px;height:96px}
.scorebox .sv{font:700 28px/1 var(--ff-d)}
.scorebox .cls{font:600 15px/1.2 var(--ff-d)}
.scorebox .facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px}
.scorebox .facts div{display:flex;flex-direction:column;gap:2px}
.scorebox .facts b{font:600 16px/1.1 var(--ff-d);font-variant-numeric:tabular-nums}
.scorebox .facts span{font-size:10.5px;color:var(--hl-k);text-transform:uppercase;letter-spacing:.06em;font-family:var(--ff-d)}
.factors{display:flex;flex-direction:column;gap:6px;font-size:12.5px}
.factors .f{display:grid;grid-template-columns:1fr 60px 52px;gap:8px;align-items:center}
.factors .f .fb{height:6px;border-radius:3px;background:var(--surface-3);position:relative}
.factors .f .fb i{position:absolute;top:0;bottom:0;border-radius:3px}
.factors .f .mv{text-align:right;font-variant-numeric:tabular-nums;font-weight:600}
.timeline{display:flex;flex-direction:column;gap:0}
.tl{display:grid;grid-template-columns:28px 1fr;gap:10px;padding-bottom:14px;position:relative}
.tl:before{content:"";position:absolute;left:13px;top:26px;bottom:0;width:2px;background:var(--line)}
.tl:last-child:before{display:none}
.tl .ic{width:28px;height:28px;border-radius:50%;background:var(--surface-3);display:grid;place-items:center;color:var(--ink-2)}
.tl .ic svg{width:14px;height:14px}
.tl .ic.sys{background:var(--hl-bg);color:var(--hl-ink)}
.tl .tx{font-size:13px}
.tl .tx small{display:block;color:var(--muted);font-size:11.5px;margin-top:2px}

/* charts */
.bars{display:flex;flex-direction:column;gap:9px}
.bar-r{display:grid;grid-template-columns:minmax(90px,38%) 1fr auto;gap:10px;align-items:center;font-size:12.5px}
.bar-r .bl{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink-2)}
.bar-r .bt{height:14px;position:relative;border-radius:0 4px 4px 0}
.bar-r .bt i{position:absolute;inset:0 auto 0 0;background:var(--bar);border-radius:0 4px 4px 0;min-width:2px}
.bar-r .bt i.w2{background:var(--st-done);border-radius:0}
.bar-r .bt i+i.w2{border-right:2px solid var(--surface)}
.bar-r .bv{font-variant-numeric:tabular-nums;font-weight:600;min-width:34px;text-align:right}
.funnel{display:flex;flex-direction:column;gap:6px}
.fn-r{display:grid;grid-template-columns:130px 1fr 150px;gap:12px;align-items:center}
.fn-r .fl{font:500 12.5px/1.2 var(--ff-d)}
.fn-r .fl small{display:block;font:400 11px/1.3 var(--ff-b);color:var(--muted)}
.fn-r .ft{display:flex;justify-content:center}
.fn-r .ft i{display:flex;align-items:center;justify-content:center;height:34px;border-radius:4px;color:#fff;font:600 13px/1 var(--ff-d);font-variant-numeric:tabular-nums;min-width:30px}
.fn-r .fc{font-size:12px;color:var(--ink-2);font-variant-numeric:tabular-nums}
.fn-r .fc b{font-family:var(--ff-d);color:var(--ink)}
.fn-conv{display:grid;grid-template-columns:130px 1fr 150px;gap:12px}
.fn-conv span{grid-column:2;text-align:center;font-size:11px;color:var(--muted)}
.legend{display:flex;gap:14px;flex-wrap:wrap;font-size:12px;color:var(--ink-2)}
.legend span{display:inline-flex;align-items:center;gap:6px}
.legend i{width:10px;height:10px;border-radius:50%;display:inline-block}
.map-wrap{position:relative}
.map-wrap svg{width:100%;height:auto;max-height:520px;display:block}
.map-st{fill:var(--surface-3);stroke:var(--surface);stroke-width:.8}
.map-st.has{fill:color-mix(in srgb,var(--bar) 18%,var(--surface-3))}
.map-lbl{font:600 9px var(--ff-d);fill:var(--muted);pointer-events:none}
.map-dot{stroke:var(--surface);stroke-width:1.5;cursor:pointer;fill-opacity:.88}
.tip{position:fixed;z-index:70;pointer-events:none;background:var(--ink);color:var(--bg);padding:8px 11px;border-radius:8px;font-size:12px;line-height:1.4;max-width:260px;box-shadow:var(--shadow-lg)}
.tip b{font-family:var(--ff-d)}
.heat{border-collapse:separate;border-spacing:3px;font-size:12px}
.heat td,.heat th{text-align:center;padding:0}
.heat th{font:500 10.5px/1.2 var(--ff-d);color:var(--muted);letter-spacing:.04em;padding:4px}
.heat th.rl{text-align:left;padding-right:10px;font-size:12.5px;color:var(--ink);text-transform:none;letter-spacing:0;white-space:nowrap}
.heat td i{display:grid;place-items:center;height:32px;min-width:56px;border-radius:6px;font-style:normal;font-weight:600;font-variant-numeric:tabular-nums}
.linechart svg{width:100%;height:auto;display:block}
.ax{font:500 10.5px var(--ff-b);fill:var(--muted)}
.gridl{stroke:var(--line);stroke-width:1}

/* tracking page */
.trk{min-height:100%;background:var(--cream);color:#1A1A1C}
.trk .hd{background:var(--brand);color:#F8F7F7;padding:28px 20px 90px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:14px}
.trk .hd img{width:170px}
.trk .hd .sel{font:500 10.5px/1 var(--ff-d);letter-spacing:.22em;text-transform:uppercase;color:#D0A432}
.trk .wrap{max-width:820px;margin:-70px auto 0;padding:0 16px 48px;display:flex;flex-direction:column;gap:16px}
.trk .box{background:#FFFFFF;border-radius:16px;box-shadow:0 10px 30px rgba(26,26,28,.10);padding:24px}
.trk h1{font-size:24px;color:#1A1A1C}
.trk .muted{color:#6B6C70}
.trk .bigp{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.trk .bigp .pc{font:700 44px/1 var(--ff-d);color:#1A1A1C;font-variant-numeric:tabular-nums}
.trk .tbar{height:12px;border-radius:99px;background:#E3E0DB;overflow:hidden;flex:1;min-width:180px}
.trk .tbar i{display:block;height:100%;background:linear-gradient(90deg,#1A1A1C,#4E4F53);border-radius:99px}
.trk .steps{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;position:relative;margin-top:8px}
.trk .stp{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;position:relative;z-index:1}
.trk .stp .ic{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:#E3E0DB;color:#8E8F93;border:3px solid #FFFFFF}
.trk .stp .ic svg{width:20px;height:20px}
.trk .stp.done .ic{background:#1A1A1C;color:#F8F7F7}
.trk .stp.cur .ic{background:#D0A432;color:#1A1A1C;box-shadow:0 0 0 6px rgba(208,164,50,.25)}
.trk .stp b{font:600 12px/1.2 var(--ff-d);color:#1A1A1C}
.trk .stp small{font-size:11px;color:#6B6C70}
.trk .steps:before{content:"";position:absolute;top:23px;left:8%;right:8%;height:3px;background:#E3E0DB}
.trk .steps .ln{position:absolute;top:23px;left:8%;height:3px;background:#1A1A1C;z-index:0}
.trk .ev{display:grid;grid-template-columns:90px 1fr;gap:12px;padding:10px 0;border-bottom:1px solid #E3E0DB;font-size:13.5px}
.trk .ev:last-child{border-bottom:0}
.trk .ev time{color:#8C6A1C;font:600 12px/1.4 var(--ff-d)}
.trk .foot{text-align:center;color:#6B6C70;font-size:12px;display:flex;flex-direction:column;align-items:center;gap:8px}
.trk .foot img{width:84px}

/* responsive */
@media (max-width:1100px){.c4,.c5,.c6,.c7,.c8{grid-column:span 12}}
@media (max-width:860px){
  .app{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr)}
  .mob-top{min-width:0}
  .side{display:none}
  .mob-top{display:flex;flex-direction:column;background:var(--side-bg);color:var(--side-ink);padding:10px 16px 0;gap:8px}
  .mob-top .r1{display:flex;align-items:center;gap:10px}
  .mob-top img{width:92px}
  .mob-top nav{display:flex;gap:4px;overflow-x:auto;padding-bottom:8px}
  .mob-top nav .nav{width:auto;white-space:nowrap;padding:8px 11px}
  .top{padding:14px 16px 10px;position:static}
  .content{padding:16px 16px 40px}
  .board-wrap{margin:0 -16px;padding:0 16px 8px}
  .grid2,.grid3{grid-template-columns:1fr}
  .fn-r,.fn-conv{grid-template-columns:92px 1fr 96px;gap:8px}
  .search input{min-width:0;width:100%}
  .scorebox{grid-template-columns:1fr;top:-18px}
  .scorebox .gauge{display:none}
  .trk .steps{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:18px}
  .trk .steps:before,.trk .steps .ln{display:none}
  .drawer .body{padding:16px 16px 40px}
  .drawer>header{padding-left:16px;padding-right:16px}
}

.sugg{position:absolute;top:100%;left:0;right:0;z-index:20;background:var(--surface);border:1px solid var(--line-2);border-radius:8px;box-shadow:var(--shadow-lg);margin-top:4px;overflow:hidden;display:flex;flex-direction:column}
.sugg button{border:0;background:none;text-align:left;padding:8px 12px;cursor:pointer;font-size:13px}
.sugg button:hover{background:var(--surface-2)}

.kpi .pbar{flex:none;height:7px}
.gantt .gi .today{top:0;bottom:0}
@media (max-width:860px){.content .row>.search,.content .row>select.inp{flex:1 1 170px;min-width:0;width:auto!important}.content .row>.seg{max-width:100%}.top .row{flex-wrap:wrap}}

.tbl td .row{flex-wrap:nowrap}
.tbl td .row{flex-wrap:nowrap}
.page-tabs{border-bottom:1px solid var(--line)}
.rec-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:20px;align-items:start}
.rec-main{display:flex;flex-direction:column;gap:16px;min-width:0}
.rec-aside{position:sticky;top:96px;display:flex;flex-direction:column;gap:14px;min-width:0}
.rec-aside .scorebox{position:static;grid-template-columns:78px 1fr;gap:12px;padding:14px}
.rec-aside .scorebox .gauge{width:78px;height:78px;display:block}
.rec-aside .scorebox .facts b{font-size:14px}
.facts-list{display:flex;flex-direction:column;gap:10px;font-size:13px}
.facts-list>div{display:flex;flex-direction:column;gap:3px;border-bottom:1px dashed var(--line);padding-bottom:8px}
.facts-list>div:last-child{border-bottom:0;padding-bottom:0}
.rec-main>.scorebox{position:static}
@media (max-width:1100px){.rec-grid{grid-template-columns:minmax(0,1fr)}.rec-aside{position:static;order:-1}}
@media (max-width:1100px){.rec-aside>.panel{display:none}}
.sc-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 0;border-bottom:1px dashed var(--line);font-size:13px}
.sc-row:last-child{border-bottom:0}
.sc-grp{display:flex;flex-direction:column;gap:2px;padding:8px 0 4px}
.sc-grp+.sc-grp{border-top:1px solid var(--line)}
.reps{display:flex;flex-direction:column;gap:8px;margin-top:8px}
.rep-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface-2)}
.rep-row>svg{flex:none;color:var(--gold)}
a.btn{text-decoration:none}
.sc-row .fld{width:110px;flex:none}
.sc-row .fld .inp{text-align:right}
.cfg-tabs button{display:inline-flex;align-items:center;gap:7px;font-size:14px;padding:12px 16px}
.cfg-tabs button svg{width:16px;height:16px}
.nav.sub{padding-left:38px;font-size:12.5px}
.nav.sub svg{width:15px;height:15px}
@media (max-width:860px){.nav.sub{padding-left:11px}}
@media (max-width:1100px){.rec-aside>.panel.reps-panel{display:flex}}
.rep-acts{display:flex;gap:6px;align-items:center;width:100%;padding-left:24px}
.rep-acts .btn.ghost{margin-left:auto}
.ned{border:1px solid var(--line-2);border-radius:var(--r-sm);background:var(--surface);display:flex;flex-direction:column}
.ned:focus-within{border-color:var(--focus);box-shadow:0 0 0 3px color-mix(in srgb,var(--focus) 20%,transparent)}
.ned-bar{display:flex;flex-wrap:wrap;gap:2px;padding:6px;border-bottom:1px solid var(--line);background:var(--surface-2);border-radius:var(--r-sm) var(--r-sm) 0 0;align-items:center}
.ned-b{border:0;background:none;min-width:30px;height:28px;padding:0 7px;border-radius:6px;cursor:pointer;font:500 13px/1 var(--ff-b);color:var(--ink-2)}
.ned-b:hover{background:var(--surface-3);color:var(--ink)}
.ned-sep{width:1px;height:18px;background:var(--line-2);margin:0 4px}
.ned-link{display:inline-flex;gap:6px;align-items:center;margin-left:6px}.ned-link .inp{min-height:28px;padding:3px 8px;width:220px}
.ned-body{min-height:150px;max-height:460px;overflow-y:auto;padding:12px 14px;outline:none;font-size:14px;line-height:1.55}
.ned-body{position:relative}
.ned-body.is-empty:before,.ned-body:empty:before{content:attr(data-ph);color:var(--muted);pointer-events:none;position:absolute;left:14px;top:12px}
.ned-body>*:first-child,.note-view>*:first-child{margin-top:0}
.ned-body h1,.note-view h1{font-size:20px;margin:14px 0 6px}.ned-body h2,.note-view h2{font-size:16px;margin:12px 0 4px}
.ned-body p,.note-view p{margin:0 0 6px}
.ned-body ul,.ned-body ol,.note-view ul,.note-view ol{margin:4px 0 8px;padding-left:22px}
.ned-body blockquote,.note-view blockquote{margin:6px 0;padding:4px 12px;border-left:3px solid var(--gold);color:var(--ink-2)}
.ned-body hr,.note-view hr{border:0;border-top:1px solid var(--line-2);margin:12px 0}
.ned-body a,.note-view a{color:var(--gold-ink);text-decoration:underline}
ul.chk{list-style:none;padding-left:2px!important}
ul.chk>li{position:relative;padding-left:26px;margin:3px 0}
ul.chk>li:before{content:"";position:absolute;left:0;top:3px;width:15px;height:15px;border:1.5px solid var(--line-2);border-radius:4px;background:var(--surface);cursor:pointer}
ul.chk>li[data-done]{color:var(--muted);text-decoration:line-through}
ul.chk>li[data-done]:before{background:var(--gold);border-color:var(--gold);content:"✓";color:#1A1A1C;font:700 11px/15px var(--ff-b);text-align:center}
table.ntbl{border-collapse:collapse;width:100%;margin:8px 0;font-size:13px}
table.ntbl th,table.ntbl td{border:1px solid var(--line-2);padding:6px 8px;text-align:left;vertical-align:top;min-width:60px}
table.ntbl th{background:var(--surface-2);font-weight:600}
.note-view{font-size:14px;line-height:1.6;max-height:60vh;overflow-y:auto;padding:4px 2px;overflow-wrap:anywhere}
.slash{position:fixed;z-index:80;background:var(--surface);border:1px solid var(--line-2);border-radius:10px;box-shadow:var(--shadow-lg);padding:4px;width:220px;display:flex;flex-direction:column}
.slash button{display:flex;align-items:center;gap:10px;border:0;background:none;padding:7px 10px;border-radius:6px;cursor:pointer;font-size:13px;text-align:left;color:var(--ink)}
.slash button.on,.slash button:hover{background:var(--surface-2)}
.slash .si{width:24px;height:24px;display:grid;place-items:center;border:1px solid var(--line-2);border-radius:6px;font-size:12px;color:var(--ink-2)}
.tl-card{display:flex;flex-direction:column;gap:4px;text-align:left;border:1px solid var(--line);background:var(--surface);border-radius:10px;padding:10px 12px;cursor:pointer;width:100%;min-width:0}
.tl-card:hover{border-color:var(--line-2);box-shadow:var(--shadow)}
.tl-h{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.tl-h b{font:600 13px/1.3 var(--ff-d)}.tl-h small{color:var(--muted);font-size:11.5px}
.tl-prev{font-size:13px;color:var(--ink-2);white-space:pre-line;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
.tl-more{font-size:11.5px;color:var(--gold-ink);font-weight:500}
.tl-ic-lg{width:40px;height:40px;border-radius:10px;background:var(--surface-2);display:grid;place-items:center;color:var(--ink-2)}
.tl-mini{display:flex;flex-direction:column;gap:2px;cursor:pointer;padding:4px 0;border-bottom:1px dashed var(--line)}
.tl-mini span{color:var(--ink-2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;white-space:pre-line}
.tl-mini:last-child{border-bottom:0}
.ned-link[hidden]{display:none!important}
.tl .ic.doc{background:color-mix(in srgb,var(--gold) 22%,var(--surface-3));color:var(--gold-ink)}
.tl-mini.doc{cursor:default}
.dcard .meta .money{font:600 12.5px/1.2 var(--ff-d);color:var(--ink);background:color-mix(in srgb,var(--gold) 18%,var(--surface));padding:2px 7px;border-radius:6px}
.col>header .m .colsum{color:var(--ink);font-family:var(--ff-d)}
.rec-h1{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.money-lg{display:inline-flex;align-items:baseline;gap:8px;font:600 16px/1.2 var(--ff-d);background:color-mix(in srgb,var(--gold) 20%,var(--surface));color:var(--ink);padding:4px 10px;border-radius:8px;letter-spacing:0}
.money-lg small{font:500 11.5px/1.2 var(--ff-b);color:var(--ink-2)}
.tpl-bar{position:relative;height:10px;background:var(--surface-2);border-radius:99px;flex:1;min-width:120px}
.tpl-bar i{position:absolute;top:0;bottom:0;border-radius:99px}
.tpl-ph{display:grid;grid-template-columns:200px 1fr 170px;gap:12px;align-items:center;padding:4px 0}
@media (max-width:860px){.tpl-ph{grid-template-columns:1fr}}
.col-closed{background:color-mix(in srgb,var(--surface-2) 70%,var(--bg))}
.col-closed.ganho{border-color:color-mix(in srgb,var(--st-done) 35%,var(--line))}
.col-closed.perdido{border-color:color-mix(in srgb,var(--st-stuck) 35%,var(--line))}
.col-closed>header .t svg{flex:none}
.dcard.closed-card{opacity:.92}
/* ---------- operação 2.0, análises, portal, financeiro, fiscal ---------- */
.inp.sm,select.inp.sm{min-height:30px;padding:4px 9px;font-size:12.5px;width:auto}
.op-filters{gap:8px}.op-filters .search input{min-width:240px}
.callout{display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:var(--info-bg);color:var(--ink);border-radius:var(--r);padding:12px 14px}
.callout>svg{width:18px;height:18px;color:var(--info);flex:none}
.an-head{flex-direction:row;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:12px 16px}
.an-ctl{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.an-ctl input[type=date]{width:150px}
.cap-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.cap-grid>div{display:flex;flex-direction:column;gap:3px;min-width:0}
.cap-grid .lbl{font:500 10px/1.2 var(--ff-d);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.cap-grid b{font:600 20px/1.1 var(--ff-d);font-variant-numeric:tabular-nums}
.cap-grid small{font-size:11px;color:var(--muted)}
.capbar{padding:22px 0 4px}
.cb-track{position:relative;height:14px;border-radius:99px;background:repeating-linear-gradient(45deg,var(--surface-3) 0 6px,var(--surface-2) 6px 12px)}
.cb-track>i{position:absolute;left:0;top:0;bottom:0;border-radius:99px;display:block}
.cb-track>b{position:absolute;top:-6px;bottom:-6px;width:2px;background:var(--ink);transform:translateX(-1px)}
.cb-track>b span{position:absolute;bottom:100%;left:50%;transform:translateX(-50%);font:600 10.5px/1 var(--ff-d);white-space:nowrap;padding-bottom:3px}
.rank{display:flex;flex-direction:column;gap:7px}
.rk{display:grid;grid-template-columns:22px minmax(110px,32%) 1fr 48px 40px 78px;gap:8px;align-items:center;font-size:12.5px}
.rk .pos{font:600 12px/1 var(--ff-d);color:var(--muted);text-align:center}
.rk:first-child .pos{color:var(--gold-ink)}
.rk .nm{display:flex;align-items:center;gap:7px;font-weight:600;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.rk .nm i,.dot{width:9px;height:9px;border-radius:50%;flex:none;display:inline-block}
.rk .bt{height:12px;background:var(--surface-2);border-radius:4px;overflow:hidden}.rk .bt i{display:block;height:100%;border-radius:4px}
.rk .q,.rk .sh,.rk .fv{text-align:right;font-variant-numeric:tabular-nums}.rk .sh{color:var(--muted)}.rk .q{font-weight:600}
.heat-wrap{overflow-x:auto}
.heat{border-collapse:separate;border-spacing:3px;font-size:10.5px;width:100%}
.heat th{font:500 10px/1 var(--ff-d);color:var(--muted);padding:2px 4px;text-align:center}
.heat tbody th{text-align:right}
.heat td{height:26px;min-width:24px;border-radius:4px;text-align:center;font-variant-numeric:tabular-nums;color:var(--ink)}
.op-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:14px}
.op-card{all:unset;box-sizing:border-box;cursor:pointer;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:14px 16px;display:flex;flex-direction:column;gap:12px;min-width:0}
.op-card:hover{border-color:var(--ink-2);box-shadow:var(--shadow)}
.op-card:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.op-card .nm{font:600 14px/1.25 var(--ff-d)}
.oc-big{display:flex;align-items:flex-end;justify-content:space-between;gap:10px}
.oc-big>div{display:flex;flex-direction:column;gap:2px;min-width:0}
.oc-big .lbl{font:500 10px/1.2 var(--ff-d);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.oc-big b{font:600 22px/1.1 var(--ff-d);font-variant-numeric:tabular-nums}
.oc-big small{font-size:11.5px;color:var(--ink-2)}
.oc-bar .pbar{position:relative;overflow:visible;margin-top:6px}.oc-bar .pbar b{position:absolute;top:-3px;bottom:-3px;width:2px;background:var(--ink)}
.spark{width:120px;height:34px;flex:none}
.big-pct{font:700 26px/1 var(--ff-d);color:var(--ink)}
.cls-mini{display:flex;gap:6px}.cls-mini .pill{font-size:16px;padding:2px 11px}
.asbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:var(--gold);color:#1A1A1C;padding:9px 28px;font-size:13px}
.asbar svg{width:16px;height:16px}
.asbar .btn{background:#1A1A1C;color:#fff;border-color:#1A1A1C}
.as-pick{display:flex;flex-direction:column;gap:6px;padding:10px;margin:10px 0 0;border:1px dashed #3A3B3E;border-radius:8px;font-size:11.5px;color:var(--side-muted)}
.as-pick span{display:flex;align-items:center;gap:6px;font:500 10px/1 var(--ff-d);letter-spacing:.12em;text-transform:uppercase}
.as-pick svg{width:13px;height:13px}
.as-pick select{background:#2B2C2E;color:#F8F7F7;border:1px solid #3A3B3E;border-radius:6px;padding:6px;font-size:12px;width:100%}
.portal-hero{display:flex;align-items:center;justify-content:space-between;gap:16px;background:var(--hl-bg);color:var(--hl-ink);border-radius:var(--r);padding:20px 24px}
.portal-hero .eyebrow{color:var(--gold)}.portal-hero h2{font-size:24px;margin:4px 0}.portal-hero .ink2{color:var(--hl-d);margin:0}
.portal-hero img{width:96px;flex:none}
.sec-h{font-size:15px;margin-top:4px}
.trk-embed{border-radius:var(--r);overflow:hidden;border:1px solid var(--line)}
.info-panel>div>svg{width:18px;height:18px;color:var(--info);flex:none;margin-top:2px}
.sug-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:10px}
.sug{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:var(--r-sm);padding:10px}
.sug>div{flex:1;min-width:0;display:flex;flex-direction:column}.sug small{color:var(--muted);font-size:11.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.av{width:32px;height:32px;border-radius:50%;background:var(--surface-3);display:grid;place-items:center;font:600 12px/1 var(--ff-d);flex:none}
.fin-ctl{gap:10px}
.split100{display:flex;flex-direction:column;gap:9px}
.sp-r{display:grid;grid-template-columns:12px 1fr auto;gap:8px;align-items:center;font-size:13px}.sp-r b{font-variant-numeric:tabular-nums}
.splitbar{display:flex;height:40px;border-radius:8px;overflow:hidden;gap:2px}
.splitbar>i{display:flex;flex-direction:column;justify-content:center;padding:0 10px;color:#fff;min-width:44px;font-style:normal}
.splitbar>i b{font:600 12px/1.1 var(--ff-d);white-space:nowrap}.splitbar>i small{font-size:11px;opacity:.85}
.splitbar>i:last-child{color:#1A1A1C}
.fin-mini{padding:6px 0;border-bottom:1px dashed var(--line);gap:10px;flex-wrap:nowrap}.fin-mini.click{cursor:pointer}.fin-mini:hover{background:var(--surface-2)}
.ell{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
button.kpi{all:unset;box-sizing:border-box;cursor:pointer;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:14px 16px;display:flex;flex-direction:column;gap:6px;min-width:0}
button.kpi.hl{background:var(--hl-bg);border-color:var(--hl-line);color:var(--hl-ink)}
button.kpi:focus-visible{outline:2px solid var(--focus)}
.tbl.dre td{padding:8px 12px}.tbl.dre tr.tt td{font-weight:600}
.tbl.dre tr.hl td{font:600 13.5px/1.3 var(--ff-d);background:var(--surface-2)}
.tbl.dre .cur{background:color-mix(in srgb,var(--gold) 10%,transparent)}
.model-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.model-card{all:unset;box-sizing:border-box;cursor:pointer;border:1.5px solid var(--line-2);border-radius:var(--r);padding:14px 16px 14px 44px;display:flex;flex-direction:column;gap:6px;position:relative}
.model-card .rd{position:absolute;left:16px;top:17px;width:16px;height:16px;border-radius:50%;border:2px solid var(--line-2)}
.model-card.on{border-color:var(--gold);background:color-mix(in srgb,var(--gold) 8%,var(--surface))}
.model-card.on .rd{border-color:var(--gold);box-shadow:inset 0 0 0 3px var(--surface);background:var(--gold)}
.model-card:focus-visible{outline:2px solid var(--focus)}
pre.code{background:#1A1A1C;color:#E3E0DB;border-radius:var(--r-sm);padding:14px;font:12px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace;overflow:auto;max-height:52vh;margin:0}
.chk{gap:8px;flex-wrap:nowrap}.chk svg{width:15px;height:15px;color:var(--warn);flex:none}.chk.ok svg{color:var(--good)}.chk a{margin-left:auto}
.chk-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 18px}
.panel.ready{border-left:4px solid var(--warn)}.panel.ready.ok{border-left-color:var(--good)}
.flow{margin:0;padding:0;list-style:none;counter-reset:f;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.flow li{counter-increment:f;background:var(--surface-2);border-radius:var(--r-sm);padding:12px 12px 12px 42px;position:relative;display:flex;flex-direction:column;gap:4px;font-size:12.5px;color:var(--ink-2)}
.flow li::before{content:counter(f);position:absolute;left:12px;top:12px;width:22px;height:22px;border-radius:50%;background:var(--ink);color:var(--bg);display:grid;place-items:center;font:600 11px/1 var(--ff-d)}
.flow li b{color:var(--ink);font-family:var(--ff-d)}
@media (max-width:1100px){.flow{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:860px){.asbar{padding:9px 16px}.cap-grid{grid-template-columns:1fr 1fr}.rk{grid-template-columns:18px minmax(90px,1fr) 60px 40px 34px}.rk .fv{display:none}.model-grid,.chk-grid,.flow{grid-template-columns:1fr}.portal-hero img{display:none}.op-filters .search{flex:1 1 100%}.op-filters .search input{min-width:0;width:100%}}
.search input.inp.sm{padding-left:30px}
.row.nt{flex-wrap:nowrap;align-items:flex-start}.row.nt>svg{flex:none;margin-top:2px}
.tbl td.n{white-space:nowrap}
.oc-big>div{flex:1}.oc-big b{white-space:nowrap}.oc-big .lbl{white-space:nowrap}.op-card .spark{width:84px}
.exp-opts{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.exp-opt{display:flex;gap:10px;align-items:flex-start;border:1.5px solid var(--line-2);border-radius:var(--r-sm);padding:10px 12px;cursor:pointer}
.exp-opt:has(input:checked){border-color:var(--gold);background:color-mix(in srgb,var(--gold) 8%,var(--surface))}
.exp-opt input{margin-top:3px;accent-color:var(--gold)}
.exp-opt span{display:flex;flex-direction:column;gap:3px}.exp-opt small{color:var(--muted);font-size:11.5px}
@media (max-width:860px){.exp-opts{grid-template-columns:1fr}}
/* ---------- indicadores do funil ---------- */
.fn-ind{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;border-top:1px solid var(--line);padding-top:14px}
.fn-ind .fi{background:var(--surface-2);border-radius:var(--r-sm);padding:12px 14px;display:flex;flex-direction:column;gap:4px;min-width:0}
.fn-ind .k,.fn-st>.k{font:500 10.5px/1.2 var(--ff-d);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.fn-ind b{font:600 24px/1.1 var(--ff-d);font-variant-numeric:tabular-nums}
.fn-ind small{font-size:11.5px;color:var(--ink-2)}
.fn-st{display:flex;flex-direction:column;gap:8px}
@media (max-width:860px){.fn-ind{grid-template-columns:1fr}}
.nav .cnt.alert{background:var(--bad);color:#fff}
/* ---------- tarefas ---------- */
.tk-wrap{display:flex;flex-direction:column;gap:16px;max-width:1080px}
.tk-sum{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.tk-s{all:unset;box-sizing:border-box;cursor:pointer;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:12px 14px;display:flex;align-items:baseline;gap:10px}
div.tk-s{cursor:default}.tk-s:focus-visible{outline:2px solid var(--focus)}
.tk-s b{font:600 26px/1 var(--ff-d);font-variant-numeric:tabular-nums}.tk-s span{font-size:12.5px;color:var(--ink-2)}
.tk-s.late b{color:var(--bad)}.tk-s.today b{color:var(--gold-ink)}.tk-s.ok b{color:var(--good)}
button.tk-s:hover{border-color:var(--ink-2)}
.tk-add{display:flex;align-items:center;gap:8px;background:var(--surface);border:1.5px solid var(--line-2);border-radius:var(--r);padding:6px 8px 6px 12px}
.tk-add:focus-within{border-color:var(--gold);box-shadow:0 0 0 3px color-mix(in srgb,var(--gold) 20%,transparent)}
.tk-add .inp{border:0;box-shadow:none;flex:1;min-width:0}.tk-add .inp:focus{box-shadow:none}.tk-add select.inp{flex:none;border:1px solid var(--line-2)}
.tk-add-ic svg{width:18px;height:18px;color:var(--gold-ink)}
.tk-g{display:flex;flex-direction:column;gap:8px}
.tk-g>h3{font-size:13px;display:flex;align-items:center;gap:8px;scroll-margin-top:90px}
.tk-g-late>h3{color:var(--bad)}.tk-g-today>h3{color:var(--gold-ink)}
.tk-cnt{font:600 11px/1 var(--ff-d);background:var(--surface-3);color:var(--ink-2);border-radius:99px;padding:3px 7px}
.tk-list{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.tk{display:flex;align-items:center;gap:12px;padding:10px 14px;border-bottom:1px solid var(--line);position:relative}
.tk:last-child{border-bottom:0}.tk:hover{background:var(--surface-2)}
.tk.late{box-shadow:inset 3px 0 0 var(--bad)}
.tk-chk{width:24px;height:24px;border-radius:50%;border:2px solid var(--line-2);background:var(--surface);display:grid;place-items:center;cursor:pointer;flex:none;padding:0;color:transparent;transition:all .15s}
.tk-chk svg{width:14px;height:14px}
.tk-chk:hover{border-color:var(--good);color:var(--good)}
.tk.done .tk-chk{background:var(--good);border-color:var(--good);color:#fff}
.tk.done .tk-tt{text-decoration:line-through;color:var(--muted)}
.tk-main{flex:1;min-width:0;cursor:pointer;display:flex;flex-direction:column;gap:3px}
.tk-t{display:flex;align-items:center;gap:8px;min-width:0}
.tk-tt{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tk-ic svg{width:14px;height:14px;color:var(--muted);display:block}
.tk-meta{display:flex;align-items:center;gap:10px;font-size:12px;min-width:0}
.tk-ref{display:inline-flex;align-items:center;gap:5px;color:var(--ink-2);text-decoration:none;max-width:260px;flex:none}
.tk-ref span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tk-ref:hover{color:var(--ink);text-decoration:underline}.tk-ref svg{width:12px;height:12px;flex:none}
.tk-side{display:flex;align-items:center;gap:10px;flex:none}
.tk-when{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:var(--ink-2);white-space:nowrap}.tk-when svg{width:12px;height:12px}
.tk-when.late{color:var(--bad);font-weight:600}.tk-when.today{color:var(--gold-ink);font-weight:600}
.av.sm{width:24px;height:24px;font-size:10px}
.tk-quick{display:none;gap:2px;position:absolute;right:12px;top:50%;transform:translateY(-50%);background:var(--surface-2);padding-left:8px}
.tk:hover .tk-quick,.tk:focus-within .tk-quick{display:flex}
.tk-toggle{all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:8px;font:600 13px/1 var(--ff-d);color:var(--ink-2)}.tk-toggle svg{width:14px;height:14px}
.tk-empty{display:flex;flex-direction:column;align-items:center;gap:6px;padding:40px;background:var(--surface);border:1px dashed var(--line-2);border-radius:var(--r);text-align:center}
.tk-empty svg{width:28px;height:28px;color:var(--good)}
@media (hover:none){.tk-quick{display:none!important}}
@media (max-width:860px){.tk-sum{grid-template-columns:1fr 1fr}.tk{flex-wrap:wrap}.tk-side{width:100%;padding-left:36px}.tk-add{flex-wrap:wrap}.tk-add .inp{flex:1 1 100%}}
@media (max-width:860px){.tk-add-ic{display:none}}
/* ---------- rosca (paleta categórica validada p/ daltonismo) ---------- */
:root{--cat-1:#D0A432;--cat-2:#2a78d6;--cat-3:#b0702a;--cat-4:#4a3aa7;--cat-5:#1baf7a;--cat-6:#d95926;--cat-x:#8E8F93}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--cat-1:#b08820;--cat-2:#3987e5;--cat-3:#c47f33;--cat-4:#7b6be0;--cat-5:#199e70;--cat-6:#d95926;--cat-x:#6B6C70}}
:root[data-theme="dark"]{--cat-1:#b08820;--cat-2:#3987e5;--cat-3:#c47f33;--cat-4:#7b6be0;--cat-5:#199e70;--cat-6:#d95926;--cat-x:#6B6C70}
.donut{display:grid;grid-template-columns:minmax(130px,160px) 1fr;gap:18px;align-items:center}
.donut svg{width:100%;height:auto;display:block}
.dn-seg{transition:stroke-width .15s;cursor:default}.dn-seg:hover{stroke-width:28}
.dn-v{font:600 30px/1 var(--ff-d);fill:var(--ink)}.dn-l{font:500 10px var(--ff-d);letter-spacing:.1em;text-transform:uppercase;fill:var(--muted)}
.dn-leg{display:flex;flex-direction:column;gap:8px;min-width:0}
.dn-r{display:grid;grid-template-columns:10px 1fr auto 40px;gap:8px;align-items:center;font-size:12.5px}
.dn-r i{width:10px;height:10px;border-radius:3px;align-self:start;margin-top:3px}.dn-r .dn-n{color:var(--ink-2);line-height:1.25}
.dn-r b{font-variant-numeric:tabular-nums}.dn-r .muted{text-align:right;font-variant-numeric:tabular-nums}
@media (max-width:1300px) and (min-width:1101px){.donut{grid-template-columns:1fr}.donut svg{max-width:200px;margin:0 auto}}
@media (max-width:480px){.donut{grid-template-columns:1fr}.donut svg{max-width:200px;margin:0 auto}}
/* ---------- filtros discretos dos gráficos ---------- */
.panel>header{row-gap:8px}
.chipf{display:inline-flex;flex-wrap:wrap;gap:2px;background:var(--surface-2);border-radius:99px;padding:2px}
.chipf button{all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:99px;font:500 11.5px/1.3 var(--ff-b);color:var(--muted);white-space:nowrap}
.chipf button:hover{color:var(--ink)}
.chipf button.on{background:var(--surface);color:var(--ink);box-shadow:0 1px 2px rgba(0,0,0,.1)}
.chipf button:focus-visible{outline:2px solid var(--focus)}
.chipf i{width:7px;height:7px;border-radius:50%;display:inline-block}
.self{display:inline-flex;align-items:center;gap:4px;font:500 11.5px/1.3 var(--ff-b);color:var(--muted);background:var(--surface-2);border-radius:99px;padding:3px 4px 3px 10px}
.self select{border:0;background:transparent;color:var(--ink-2);font:inherit;padding:0 2px;max-width:125px;cursor:pointer}
.self.on{background:color-mix(in srgb,var(--gold) 16%,var(--surface));color:var(--gold-ink)}.self.on select{color:var(--ink);font-weight:600}
.hf{display:inline-flex;gap:6px;flex-wrap:wrap}
.panel>header.hl-l h3{margin-right:0}
.panel>header .sp{flex:1}
/* rosca grande e centralizada, legenda embaixo */
.donut{display:flex!important;flex-direction:column;align-items:center;gap:16px}
.donut svg{width:min(260px,100%)!important;max-width:none!important;margin:0 auto}
.dn-v{font:600 34px/1 var(--ff-d)}
.dn-leg{width:100%;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 18px}
@media (max-width:480px){.dn-leg{grid-template-columns:1fr}}
/* ---------- tarefas + calendário ---------- */
.tk-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:20px;align-items:start}
.tk-layout .tk-wrap{max-width:none}
.tk-cal{position:sticky;top:96px}
.tk-cal .panel{gap:10px;padding:14px}
.cal-h{display:flex;align-items:center;gap:4px}.cal-h b{font:600 14px/1 var(--ff-d);min-width:130px;text-align:center}
.cal-g{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}
.cal-w{font:500 10.5px/1 var(--ff-d);color:var(--muted);text-align:center;padding:4px 0}
.cal-d{all:unset;box-sizing:border-box;cursor:pointer;aspect-ratio:1;border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font:500 12.5px/1 var(--ff-b);position:relative;color:var(--ink)}
.cal-d.empty{cursor:default}.cal-d.past{color:var(--muted)}
.cal-d:hover{background:var(--surface-2)}
.cal-d:focus-visible{outline:2px solid var(--focus)}
.cal-d.today>span{background:var(--ink);color:var(--bg);border-radius:99px;width:24px;height:24px;display:grid;place-items:center;font-weight:600}
.cal-d.sel{background:color-mix(in srgb,var(--gold) 22%,var(--surface));box-shadow:inset 0 0 0 1.5px var(--gold)}
.cal-n{font:600 9.5px/1 var(--ff-d);font-style:normal;background:var(--gold);color:#1A1A1C;border-radius:99px;min-width:15px;height:15px;padding:0 4px;display:inline-grid;place-items:center}
.cal-n.late{background:var(--bad);color:#fff}
.cal-ok{width:6px;height:6px;border-radius:50%;background:var(--good);display:inline-block}
.cal-leg{display:flex;gap:10px;flex-wrap:wrap;font-size:11px;color:var(--muted);border-top:1px solid var(--line);padding-top:8px}.cal-leg span{display:inline-flex;align-items:center;gap:4px}
.cal-ag{display:flex;flex-direction:column;gap:6px;border-top:1px solid var(--line);padding-top:10px}
.cal-it{display:flex;align-items:center;gap:8px;font-size:12.5px;min-width:0}.cal-it.done .ell{text-decoration:line-through;color:var(--muted)}
.tk-chk.sm{width:18px;height:18px;border-width:1.5px}.tk-chk.sm svg{width:11px;height:11px}
.cal-it.done .tk-chk{background:var(--good);border-color:var(--good);color:#fff}
.cal-hint{border-top:1px solid var(--line);padding-top:8px}
.tk-daybar{display:flex;align-items:center;gap:8px;background:color-mix(in srgb,var(--gold) 14%,var(--surface));border-radius:var(--r-sm);padding:6px 6px 6px 12px;font-size:13px}.tk-daybar svg{width:14px;height:14px}.tk-daybar .btn{margin-left:auto}
@media (max-width:1180px){.tk-layout{grid-template-columns:1fr}.tk-cal{position:static;order:-1}.tk-cal .panel{max-width:420px}}
.panel>.sub{font-size:12px;color:var(--muted)}
/* esconder/mostrar colunas de ganhos e perdidos */
.col-eye{all:unset;cursor:pointer;margin-left:auto;display:grid;place-items:center;width:26px;height:26px;border-radius:7px;color:var(--muted)}
.col-eye:hover{background:var(--surface-3);color:var(--ink)}.col-eye:focus-visible{outline:2px solid var(--focus)}
.col-eye svg{width:15px;height:15px}
.col-rail{all:unset;box-sizing:border-box;cursor:pointer;flex:0 0 44px;align-self:stretch;min-height:240px;border:1px dashed var(--line-2);border-radius:var(--r);background:color-mix(in srgb,var(--surface-2) 60%,var(--bg));display:flex;flex-direction:column;align-items:center;gap:10px;padding:12px 0;color:var(--muted)}
.col-rail:hover{border-color:var(--ink-2);color:var(--ink)}.col-rail:focus-visible{outline:2px solid var(--focus)}
.col-rail>svg{width:16px;height:16px}
.col-rail .rl-t{writing-mode:vertical-rl;transform:rotate(180deg);display:flex;align-items:center;gap:6px;font:600 12.5px/1 var(--ff-d);color:var(--ink-2)}
.col-rail .rl-t svg{width:14px;height:14px;transform:rotate(180deg)}
.col-rail .n{font:600 11px/1 var(--ff-d);background:var(--surface-3);border-radius:99px;padding:3px 7px;color:var(--ink-2)}
.col-rail.ganho{border-color:color-mix(in srgb,var(--st-done) 45%,var(--line-2))}.col-rail.perdido{border-color:color-mix(in srgb,var(--st-stuck) 45%,var(--line-2))}
.board{display:flex!important;gap:14px}
.board>.col{flex:1 1 272px;min-width:272px}
.board>.col-rail{flex:0 0 44px;min-width:44px}
/* anexos das contas */
.anx-box{gap:8px}
.anx-list{display:flex;flex-direction:column;gap:6px}
.anx{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:var(--r-sm);padding:6px 6px 6px 8px;min-width:0}
.anx a{flex:1;min-width:0;color:var(--ink);font-size:13px}.anx a:hover{text-decoration:underline}
.anx-t{font:700 9.5px/1 var(--ff-d);letter-spacing:.04em;background:var(--ink);color:var(--bg);border-radius:4px;padding:4px 5px;flex:none}
.anx-drop{display:flex;align-items:center;gap:10px;border:1.5px dashed var(--line-2);border-radius:var(--r-sm);padding:12px 14px;cursor:pointer;font-size:12.5px;color:var(--ink-2)}
.anx-drop:hover,.anx-drop.over{border-color:var(--gold);background:color-mix(in srgb,var(--gold) 8%,var(--surface))}
.anx-drop svg{width:18px;height:18px;color:var(--gold-ink);flex:none}
.anx-drop.busy{opacity:.6;pointer-events:none}.anx-drop.busy b::after{content:' · enviando…'}
.anx-cnt{display:inline-flex;align-items:center;gap:3px;font:600 12px/1 var(--ff-d);color:var(--good)}.anx-cnt svg{width:13px;height:13px}
.fld label.anx-drop{text-transform:none;letter-spacing:0;font:400 12.5px/1.4 var(--ff-b);color:var(--ink-2)}.fld label.anx-drop b{font-weight:600;color:var(--ink)}
.nf-chip{all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:4px;font:600 11.5px/1 var(--ff-d);padding:4px 8px;border-radius:99px;white-space:nowrap}
.nf-chip svg{width:12px;height:12px}.nf-chip:focus-visible{outline:2px solid var(--focus)}
.nf-chip.wait{background:var(--surface-3);color:var(--ink-2)}.nf-chip.ok{background:var(--good-bg);color:var(--good)}.nf-chip.bad{background:var(--bad-bg);color:var(--bad)}
/* ---------- estoque ---------- */
.est-cep{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:13px;color:var(--ink-2)}
.est-cep>svg{width:16px;height:16px;color:var(--gold-ink)}
.cep-in{display:inline-flex;align-items:center;gap:6px;font-weight:600}.cep-in input{width:110px}
.est-tbl td{vertical-align:middle}.est-tbl td:first-child{min-width:190px}
.est-tbl tr.row-bad td{background:color-mix(in srgb,var(--bad) 5%,var(--surface))}
.stk{display:flex;flex-direction:column;gap:5px;min-width:160px}
.stk-v{display:flex;align-items:baseline;gap:6px;white-space:nowrap}
.stk-bar{position:relative;height:8px;border-radius:99px;background:var(--surface-3)}
.stk-bar>i{position:absolute;inset:0 auto 0 0;border-radius:99px}
.stk-bar>b{position:absolute;top:-4px;bottom:-4px;width:2px;background:var(--ink);opacity:.7}
.est-tbl .btn{white-space:nowrap}
.calc-list{display:flex;flex-direction:column;gap:8px}
.cnt-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px;max-height:52vh;overflow:auto;padding-right:4px}
.cnt-r{display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px dashed var(--line);padding:6px 0}
.cnt-r>span:first-child{display:flex;flex-direction:column;min-width:0;font-size:13px}
.cnt-in{display:flex;align-items:center;gap:6px}.cnt-in input{width:100px;text-align:right}.cnt-in em{font-style:normal;font-size:12px;color:var(--muted);min-width:22px}
@media (max-width:860px){.cnt-grid{grid-template-columns:1fr}}
/* ---------- marketplace ---------- */
.mk-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:20px;align-items:start}
.mk-main{display:flex;flex-direction:column;gap:14px;min-width:0}
.mk-cart{position:sticky;top:96px}.mk-cart .panel{gap:12px}
.mk-cart h3{display:flex;align-items:center;gap:8px}.mk-cart h3 svg{width:16px;height:16px}
.pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}
.pcard{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:14px;display:flex;flex-direction:column;gap:6px;min-width:0}
.pcard.off{opacity:.6}
.pc-top{display:flex;align-items:center;gap:6px;justify-content:space-between}
.pc-cat{font:500 10px/1.2 var(--ff-d);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.pc-n{font:600 14px/1.3 var(--ff-d)}
.pc-f{font-size:12px;color:var(--ink-2);display:flex;align-items:center;gap:5px}
.pc-p{display:flex;align-items:baseline;gap:8px;margin-top:2px}.pc-p b{font:600 18px/1 var(--ff-d)}
.pc-d{font-size:12px;color:var(--good);display:flex;align-items:center;gap:5px}.pc-d.bad{color:var(--bad)}
.pc-a{margin-top:auto;padding-top:6px}
.qty{display:inline-flex;align-items:center;border:1px solid var(--line-2);border-radius:99px;overflow:hidden}
.qty button{all:unset;cursor:pointer;width:30px;height:28px;display:grid;place-items:center;font-weight:600}.qty button:hover{background:var(--surface-2)}.qty button:focus-visible{outline:2px solid var(--focus)}
.qty span{min-width:30px;text-align:center;font:600 13px/1 var(--ff-d)}
.qty.sm button{width:24px;height:22px}.qty.sm span{min-width:22px;font-size:12px}
.cg{border:1px solid var(--line);border-radius:var(--r-sm);padding:10px;display:flex;flex-direction:column;gap:7px}
.cg-h{display:flex;flex-direction:column}
.ci{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:8px;align-items:center;font-size:12.5px}
.ci-t{display:flex;justify-content:space-between;font-size:13px}
.minbar{display:flex;flex-direction:column;gap:4px}
.cart-tot{display:flex;justify-content:space-between;align-items:baseline;border-top:1px solid var(--line);padding-top:10px}.cart-tot b{font:600 20px/1 var(--ff-d)}
.sug-panel{border-left:4px solid var(--gold)}
.sug-panel h3{display:flex;align-items:center;gap:8px}.sug-panel h3 svg{width:16px;height:16px;color:var(--gold-ink)}
.sug-row{display:flex;flex-direction:column;gap:8px}
.sg{display:grid;grid-template-columns:44px 110px minmax(160px,1fr) minmax(0,1.4fr) auto;gap:10px;align-items:center;font-size:13px}
.sg .pill{justify-self:start}
.checkout-pay{display:flex;gap:12px;background:var(--surface-2);border-radius:var(--r-sm);padding:12px 14px}.checkout-pay svg{width:22px;height:22px;color:var(--gold-ink)}
/* pedidos */
.ped-list{display:flex;flex-direction:column;gap:12px}
.ped{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:14px 16px;display:flex;flex-direction:column;gap:12px}
.ped.late{border-left:4px solid var(--bad)}
.ped-h{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.ped-h b{font:600 15px/1 var(--ff-d)}
.ped-b{display:grid;grid-template-columns:1.2fr 2fr 1fr 1fr;gap:14px}
.ped-b>div{display:flex;flex-direction:column;gap:3px;min-width:0}
.ped-b .lbl{font:500 10px/1.2 var(--ff-d);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.ped-f{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ped-f a.chip{text-decoration:none}
.pstep{display:flex;align-items:flex-start}
.pstep>span{display:flex;flex-direction:column;align-items:center;gap:4px;width:74px;position:relative}
.pstep>span i{width:12px;height:12px;border-radius:50%;background:var(--surface-3);border:2px solid var(--surface);box-shadow:0 0 0 1px var(--line-2);z-index:1}
.pstep>span::before{content:'';position:absolute;top:5px;left:-50%;width:100%;height:2px;background:var(--surface-3)}
.pstep>span:first-child::before{display:none}
.pstep>span.on i{background:var(--st-done);box-shadow:0 0 0 1px var(--st-done)}.pstep>span.on::before{background:var(--st-done)}
.pstep>span.cur i{background:var(--gold);box-shadow:0 0 0 3px color-mix(in srgb,var(--gold) 35%,transparent)}
.pstep small{font-size:10.5px;color:var(--muted);white-space:nowrap}.pstep>span.on small{color:var(--ink-2)}
.reg-tbl input.inp.sm{width:100%}
.rec-tbl .rec-in{width:66px;text-align:right}
@media (max-width:1180px){.mk-layout{grid-template-columns:1fr}.mk-cart{position:static}}
@media (max-width:860px){.ped-b{grid-template-columns:1fr 1fr}.sg{grid-template-columns:44px minmax(0,1fr);gap:4px 10px}.sg>*:nth-child(n+2){grid-column:2}.sg>.pthumb{grid-row:span 4;align-self:start}.pstep>span{width:56px}.pstep small{font-size:9.5px}}
.reg-tbl td:first-child{min-width:170px}

/* fotos dos produtos */
.pcard{padding:0 0 14px;overflow:hidden}.pcard>*:not(.pc-img){margin-left:14px;margin-right:14px}
.pc-img{all:unset;box-sizing:border-box;display:block;position:relative;aspect-ratio:4/3;background:#F3F0EB;cursor:pointer;margin-bottom:6px;border-bottom:1px solid var(--line);overflow:hidden}
.pc-img img{width:100%;height:100%;object-fit:contain;display:block;transition:transform .25s ease}
.pc-img.ph{background:#fff}.pc-img.ph img{object-fit:cover}
.pc-img:hover img{transform:scale(1.04)}.pc-img:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}
.pc-nf{position:absolute;right:8px;bottom:8px;display:inline-flex;align-items:center;gap:4px;background:rgba(26,26,28,.72);color:#fff;font:500 11px/1 var(--ff-b);padding:4px 7px;border-radius:999px}
button.pc-n{all:unset;cursor:pointer;font:600 14px/1.3 var(--ff-d);color:var(--ink)}button.pc-n:hover{text-decoration:underline;text-decoration-color:var(--gold)}button.pc-n:focus-visible{outline:2px solid var(--focus);border-radius:3px}
.pthumb{flex:none;border-radius:6px;object-fit:contain;background:#F3F0EB;border:1px solid var(--line);display:block}.pthumb.ph{object-fit:cover;background:#fff}
.pt-nm{display:flex;align-items:center;gap:10px}
.ped-th{display:flex;gap:4px;margin:2px 0 4px}
.cnt-r{justify-content:flex-start}.cnt-r>span:first-child{flex:1}
.pf-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:8px}
.pf{position:relative;aspect-ratio:1;border-radius:var(--r-sm);overflow:hidden;background:#fff;border:1px solid var(--line)}
.pf>img{width:100%;height:100%;object-fit:cover;display:block}
.pf.capa{border:2px solid var(--gold)}
.pf-tag{position:absolute;left:6px;bottom:6px;background:var(--gold);color:#1A1A1C;font:600 10px/1 var(--ff-b);padding:3px 6px;border-radius:4px}
.pf-b{all:unset;position:absolute;top:5px;right:5px;width:24px;height:24px;border-radius:50%;background:rgba(26,26,28,.7);color:#fff;display:grid;place-items:center;cursor:pointer}.pf-b.l{right:auto;left:5px}
.pf-b svg{width:13px;height:13px}.pf-b:hover{background:#1A1A1C}.pf-b:focus-visible{outline:2px solid var(--focus)}
.pf.add{border:1.5px dashed var(--line-2);background:var(--surface-2);display:grid;place-items:center;cursor:pointer;text-align:center}
.pf.add>span{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;font-size:12px;color:var(--ink-2)}.pf.add>span svg{width:18px;height:18px;color:var(--gold-ink)}
.pf.add small{font-size:10.5px;color:var(--muted)}
.pf.add:hover,.pf.add.over{border-color:var(--gold);background:color-mix(in srgb,var(--gold) 8%,var(--surface))}
.pf.add.busy{opacity:.6;pointer-events:none}.pf.add.busy b::after{content:'…'}
.pf-ghost{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:.28}
.fld label.pf.add{text-transform:none;letter-spacing:0;font:400 12px/1.3 var(--ff-b)}.fld label.pf.add b{color:var(--ink);font-weight:600}
.pv{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:20px;align-items:start}
.pv-g{display:flex;flex-direction:column;gap:8px}
.pv-big{aspect-ratio:4/3;border-radius:var(--r);overflow:hidden;background:#F3F0EB;border:1px solid var(--line)}.pv-big.ph{background:#fff}
.pv-big img{width:100%;height:100%;object-fit:contain;display:block}
.pv-th{display:flex;gap:6px;flex-wrap:wrap}
.pv-th button{all:unset;width:56px;height:56px;border-radius:6px;overflow:hidden;border:2px solid transparent;cursor:pointer;background:#fff}.pv-th button.on{border-color:var(--gold)}.pv-th button:focus-visible{outline:2px solid var(--focus)}
.pv-th img{width:100%;height:100%;object-fit:cover;display:block}
.pv-i{display:flex;flex-direction:column;gap:12px}
.pv-dl{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;margin:0;font-size:13px}.pv-dl dt{color:var(--muted)}.pv-dl dd{margin:0}.pv-dl dd.bad{color:var(--bad)}
@media (max-width:700px){.pv{grid-template-columns:1fr}}
.ep-ops{display:flex;flex-direction:column;gap:6px;border:1px solid var(--line);border-radius:var(--r-sm);padding:10px 12px}.ep-ops label{gap:8px;flex-wrap:wrap}.ep-ops label .muted{margin-left:auto}
.est-cep .seg button{padding:5px 10px;font-size:12px}

/* propostas */
.prop-panel header h3{display:flex;align-items:center;gap:8px}.prop-panel header h3 svg{width:16px;height:16px;color:var(--gold-ink)}
.pp{display:flex;flex-direction:column;gap:4px;padding:10px 0;border-top:1px solid var(--line)}.pp:first-of-type{border-top:0;padding-top:2px}
.pp-h{display:flex;align-items:center;gap:8px;justify-content:space-between}
.pp-ab{display:flex;align-items:center;gap:6px;color:var(--ink-2)}.pp-ab svg{width:14px;height:14px;flex:none;color:var(--muted)}
.pp-a{display:flex;gap:6px;margin-top:2px}
.prop-send{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:18px;align-items:stretch}
.ps-form{display:flex;flex-direction:column;gap:12px;min-width:0}
.ps-prev{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;background:var(--surface-2);min-height:520px}
.ps-bar{display:flex;align-items:center;gap:8px;padding:6px 10px;border-bottom:1px solid var(--line);background:var(--surface)}
.ps-prev iframe{flex:1;width:100%;border:0;background:#fff;min-height:480px}
.ps-campos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.psc{display:flex;flex-direction:column;gap:3px;font-size:11.5px;color:var(--muted)}.psc.need span::after{content:' · preencher';color:var(--bad)}
.fld label.psc{text-transform:none;letter-spacing:0;font:500 11.5px/1.3 var(--ff-b)}
.prop-send .seg{flex-wrap:wrap}
.tl .ic.prop{background:color-mix(in srgb,var(--gold) 22%,var(--surface-3));color:var(--gold-ink)}
.tl .ic.ok{background:color-mix(in srgb,var(--good) 18%,var(--surface-3));color:var(--good)}
.tl-sm .tl{padding-bottom:6px}
.prop-ind{margin-top:8px;border-top:1px dashed var(--line);padding-top:10px}
.pm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}
.pm{border:1px solid var(--line);border-radius:var(--r);padding:14px;display:flex;flex-direction:column;gap:6px;background:var(--surface)}
.pm-h{display:flex;align-items:center;justify-content:space-between;gap:8px}.pm-h b{font:600 15px/1.2 var(--ff-d)}
.pm label.btn{cursor:pointer}.pm label.btn.busy{opacity:.6;pointer-events:none}
.pm-frame{width:100%;height:min(72vh,820px);border:1px solid var(--line);border-radius:var(--r);background:#fff}
.prop-full{position:fixed;inset:0;width:100%;height:100%;border:0;background:#fff}
.prop-page{display:grid;place-items:center;min-height:100vh;color:var(--muted)}
@media (max-width:860px){.prop-send{grid-template-columns:1fr}.ps-prev{min-height:420px}.ps-campos{grid-template-columns:1fr}}
.pm-pick{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.pm-pick button{all:unset;box-sizing:border-box;text-align:center;padding:8px 6px;border:1px solid var(--line);border-radius:var(--r-sm);font:500 12.5px/1.2 var(--ff-b);color:var(--ink-2);cursor:pointer;background:var(--surface);position:relative}
.pm-pick button:hover{border-color:var(--line-2);color:var(--ink)}.pm-pick button.on{border-color:var(--gold);background:color-mix(in srgb,var(--gold) 14%,var(--surface));color:var(--ink);font-weight:600}
.pm-pick button:focus-visible{outline:2px solid var(--focus);outline-offset:1px}
.pm-pick button i{position:absolute;top:5px;right:5px;width:6px;height:6px;border-radius:50%;background:var(--line-2)}
.ps-auto{border:1px solid var(--line);border-radius:var(--r-sm);padding:8px 10px;background:var(--surface-2)}
.ps-auto summary{cursor:pointer;font-size:12.5px;color:var(--ink-2);display:flex;align-items:center;gap:6px;list-style:none}.ps-auto summary::-webkit-details-marker{display:none}
.ps-auto summary svg{width:14px;height:14px;color:var(--good)}.ps-auto[open] summary{margin-bottom:8px}
#ps-campos{display:flex;flex-direction:column;gap:10px}
@media (max-width:860px){.pm-pick{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* documentos */
.docs-top{display:flex;align-items:flex-start;gap:8px;flex-wrap:wrap;margin-bottom:8px}.docs-h{font:600 16px/1.2 var(--ff-d);margin:0 0 2px}
.docs-top label.btn{cursor:pointer}.docs-top label.btn.busy,label.btn.busy{opacity:.6;pointer-events:none}
.docs-list{display:flex;flex-direction:column;gap:8px}
.doc-row{all:unset;box-sizing:border-box;display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:var(--r);background:var(--surface);cursor:pointer}
.doc-row:hover{border-color:var(--line-2);background:var(--surface-2)}.doc-row:focus-visible{outline:2px solid var(--focus)}
.doc-t{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.doc-t b{font:600 14px/1.3 var(--ff-d);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.doc-t small{font-size:12px;color:var(--muted)}
.doc-go svg{width:16px;height:16px;color:var(--muted)}
.doc-ic{flex:none;width:34px;height:34px;border-radius:9px;display:grid;place-items:center;background:var(--surface-3);color:var(--ink-2)}.doc-ic svg{width:17px;height:17px}
.doc-ic.contrato{background:color-mix(in srgb,var(--gold) 20%,var(--surface-3));color:var(--gold-ink)}.doc-ic.proposta{background:color-mix(in srgb,#3E7CB1 16%,var(--surface-3));color:#3E7CB1}
.docs-empty{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;padding:34px 16px;border:1.5px dashed var(--line-2);border-radius:var(--r);color:var(--ink-2)}.docs-empty>svg{width:26px;height:26px;color:var(--gold-ink)}
.tab-n{display:inline-block;min-width:18px;padding:1px 6px;margin-left:4px;border-radius:99px;background:var(--surface-3);font-size:11px;line-height:16px;text-align:center}
.docs-mini header h3{display:flex;align-items:center;gap:8px}.docs-mini header h3 svg{width:16px;height:16px;color:var(--gold-ink)}
.dm{all:unset;box-sizing:border-box;display:flex;align-items:center;gap:8px;justify-content:space-between;padding:7px 0;border-top:1px solid var(--line);cursor:pointer;font-size:13px;width:100%}.dm:first-of-type{border-top:0}.dm:hover .ell{text-decoration:underline}.dm .ell{min-width:0}
.dn-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:8px}
.dn-card{all:unset;box-sizing:border-box;display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:12px;border:1px solid var(--line);border-radius:var(--r);background:var(--surface);cursor:pointer}
.dn-card:hover{border-color:var(--gold);background:color-mix(in srgb,var(--gold) 6%,var(--surface))}.dn-card:focus-visible{outline:2px solid var(--focus)}
.dn-card>span:nth-child(2){flex:1;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:2px}.dn-card b{font:600 13px/1.3 var(--ff-d)}.dn-card small{font-size:11.5px;color:var(--muted)}.dn-card .chip{margin-top:4px}
.dc-head{flex-wrap:nowrap}.dc-title{font:600 17px/1.2 var(--ff-d);border-color:transparent;background:transparent;padding:6px 8px;flex:1;min-width:0}.dc-title:hover:not(:disabled),.dc-title:focus{border-color:var(--line)}
.dc-wrap{grid-template-columns:minmax(0,.95fr) minmax(0,1.2fr)}
.dc-form{max-height:calc(100vh - 240px);overflow:auto;padding-right:4px}
.dc-sec{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface)}.dc-sec>summary{cursor:pointer;padding:10px 12px;font:600 13px/1.2 var(--ff-d);display:flex;align-items:center;gap:8px;justify-content:space-between;list-style:none}.dc-sec>summary::-webkit-details-marker{display:none}
.dc-sec>summary .pill svg{width:11px;height:11px}.dc-sec[open]>summary{border-bottom:1px solid var(--line)}
.dc-sec .timeline{padding:10px 12px}
.dc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 10px;padding:10px 12px}
.dc-grid .fld>span,.dc-form>.dc-grid .fld>span{font:500 11.5px/1.3 var(--ff-b);color:var(--muted)}.dc-grid .fld.full{grid-column:1/-1}
.dc-grid .fld.need>span::after{content:' · falta';color:var(--bad)}.dc-grid .fld.need .inp{border-color:color-mix(in srgb,var(--bad) 45%,var(--line))}
.dc-chips{display:flex;flex-wrap:wrap;gap:4px;align-items:center;margin-top:6px}.dc-chips .chip{cursor:pointer;border:0;font:inherit;font-size:11.5px}
.callout.warn{background:color-mix(in srgb,var(--bad) 8%,var(--surface));border-color:color-mix(in srgb,var(--bad) 30%,var(--line))}.callout.warn svg{color:var(--bad)}
.callout.ok{background:color-mix(in srgb,var(--good) 8%,var(--surface))}.callout.ok svg{color:var(--good)}
.dc-prev{flex:1;overflow:auto;background:#EFEDEA;padding:16px;max-height:calc(100vh - 240px)}
.dc-img{max-width:100%;display:block;margin:0 auto;border-radius:6px}
.dc-prev .docs-empty{background:#fff}
@media (max-width:860px){.dc-wrap{grid-template-columns:1fr}.dc-form,.dc-prev{max-height:none}.dc-grid{grid-template-columns:1fr}}
.dc-prev .ctp{padding:22px 24px;font-size:11.5px;box-shadow:0 1px 3px rgba(0,0,0,.08)}.dc-prev .ctp h1{font-size:19px}.ctp table{table-layout:fixed}.ctp td,.ctp th{word-break:break-word}.ctp-pt th:first-child{width:24%}
.modal.wide:has(.dc-wrap){width:min(1280px,calc(100vw - 32px))}
.doc-go svg{transform:rotate(-90deg)}
.dc-pdf{width:100%;height:100%;min-height:520px;border:0;background:#fff;border-radius:4px}
/* fundo de marketing */
.fm-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:14px}
.fm-per{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.fm-per label{display:inline-flex;align-items:center;gap:6px}.fm-per input{width:150px}
.fm-flow{display:flex;flex-direction:column}.fm-flow>div{display:flex;justify-content:space-between;align-items:baseline;padding:9px 0;border-bottom:1px dashed var(--line);font-size:13.5px}
.fm-flow b{font:600 15px/1 var(--ff-d);font-variant-numeric:tabular-nums}.fm-flow .pos b{color:var(--good)}.fm-flow .neg b{color:var(--bad)}
.fm-flow .tot{border-bottom:0;border-top:2px solid var(--ink);margin-top:2px}.fm-flow .tot b{font-size:19px}
.fm-one{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:12px 0}.fm-one>div{display:flex;flex-direction:column;gap:4px}.fm-one b{font:600 22px/1 var(--ff-d)}
.fm-loc{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:10px}.fm-loc>div{display:flex;flex-direction:column;gap:3px;background:var(--surface-2);border-radius:var(--r-sm);padding:12px}.fm-loc b{font:600 19px/1.1 var(--ff-d)}
.fm-mini{display:flex;flex-direction:column}.fm-mini>div{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:baseline;padding:7px 0;border-top:1px solid var(--line);font-size:13px}.fm-mini>div:first-child{border-top:0}
.fm-camps{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:10px}
.fm-camp{border:1px solid var(--line);border-radius:var(--r);padding:12px 14px;display:flex;flex-direction:column;gap:6px;background:var(--surface)}
.fm-camp-h{display:flex;justify-content:space-between;gap:10px;align-items:baseline}.fm-camp-h b{font:600 14px/1.3 var(--ff-d)}.fm-camp-h .money{font:600 14px/1 var(--ff-d);white-space:nowrap}
.fm-res{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:12.5px;color:var(--ink-2)}.fm-res b{color:var(--ink);font-family:var(--ff-d)}
.fm-pick{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.fm-pick .chip{cursor:pointer;gap:6px}.fm-pick[hidden]{display:none}
.tbl tr.tot td{background:var(--surface-2)}
@media (max-width:860px){.fm-loc,.fm-one{grid-template-columns:1fr}.fm-per input{width:130px}}

body{margin:0;font-family:Inter,Arial,sans-serif;background:#F8F7F7;color:#1A1A1C}.hd{background:#1A1A1C;color:#F8F7F7;padding:48px 28px}.hd small{color:#D0A432;letter-spacing:.18em;text-transform:uppercase;font-size:11px}.hd h1{font:700 30px/1.15 Poppins,Arial,sans-serif;margin:10px 0 6px}.w{max-width:760px;margin:0 auto;padding:28px}.c{background:#fff;border:1px solid #E3E0DB;border-radius:14px;padding:22px;margin-bottom:16px}.c h2{font:600 18px Poppins,Arial,sans-serif;margin:0 0 8px}.tag{display:inline-block;background:#D0A432;color:#1A1A1C;font-weight:600;font-size:12px;padding:4px 10px;border-radius:99px}.demo{background:#FFF7E0;border:1px dashed #D0A432;border-radius:10px;padding:10px 14px;font-size:13px;color:#8C6A1C;margin-bottom:16px}
body{margin:0;background:#EFEDEA;padding:24px 0}${CTP_CSS} .ctf,.ctf.miss{background:none;border:0;color:inherit;font-style:normal;padding:0}@media print{body{background:#fff;padding:0}.ctp{max-width:none}}