/* FlowCRM v3 — Design System */
:root{
  --bg:#070b11;--bg2:#0b1018;--bg3:#0f1520;
  --sur:#141d2e;--sur2:#1a2540;
  --bdr:#1e2d45;--bdr2:#263a56;
  --tx:#e8f0fb;--tx2:#8ba4c4;--tx3:#4e6380;
  --ac:#3b82f6;--ac2:#60a5fa;--ac3:#93c5fd;
  --green:#34d399;--yellow:#fbbf24;--red:#f87171;
  --pink:#f472b6;--purple:#a78bfa;--orange:#fb923c;
  --r:12px;--rs:8px;--rx:5px;
  --sh:0 4px 20px rgba(0,0,0,.5);
  --shl:0 12px 48px rgba(0,0,0,.7);
  --shxl:0 24px 80px rgba(0,0,0,.9);
  --sbw:230px;--tbh:56px;--tr:.16s ease;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{font-size:14px;scroll-behavior:smooth}
body{font-family:'DM Sans',sans-serif;background:var(--bg);color:var(--tx);min-height:100vh;overflow-x:hidden;-webkit-font-smoothing:antialiased}
::-webkit-scrollbar{width:4px;height:4px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:var(--bdr2);border-radius:99px}
.hidden{display:none!important}
.w100{width:100%}
.span2{grid-column:span 2}
.mt16{margin-top:16px}
.req{color:var(--red)}

/* ── LOADING ── */
.loading-screen{position:fixed;inset:0;background:var(--bg);display:flex;align-items:center;justify-content:center;z-index:9999}
.loading-screen.out{display:none!important}
.ls-content{display:flex;flex-direction:column;align-items:center;gap:20px}
.ls-brand{width:52px;height:52px;background:linear-gradient(135deg,var(--ac),#6366f1);border-radius:14px;display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 0 rgba(59,130,246,.4);animation:pulse-b 1.5s ease-in-out infinite}
@keyframes pulse-b{0%,100%{box-shadow:0 0 0 0 rgba(59,130,246,.4)}50%{box-shadow:0 0 0 14px rgba(59,130,246,0)}}
.ls-text{font-family:'Syne',sans-serif;font-weight:800;font-size:1.4rem;background:linear-gradient(135deg,#fff,var(--ac2));-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.ls-sub{font-family:'DM Sans',sans-serif;font-size:.82rem;color:var(--tx3);letter-spacing:.12em;text-transform:uppercase;margin-top:-10px}
.brand-agency{font-family:'DM Sans',sans-serif;font-size:.75rem;color:var(--ac3);letter-spacing:.14em;text-transform:uppercase;margin-bottom:6px;margin-top:-4px}
.brand-agency-sm{font-size:.62rem;color:var(--tx3);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap}
.sb-brand-text{display:flex;flex-direction:column;gap:0}
.brand-by-sm{font-size:.58rem;color:var(--tx3);letter-spacing:.06em;white-space:nowrap;margin-top:-1px}

/* ── Logo no footer da sidebar ── */
.sb-logo-footer{padding:10px 14px 6px;border-top:1px solid var(--bdr)}
.sb-logo-footer-img{width:100%;max-width:150px;opacity:.45;display:block;filter:brightness(1.3)}
.sidebar.collapsed .sb-logo-footer{display:none}
.ls-bar{width:160px;height:3px;background:var(--bdr2);border-radius:99px;overflow:hidden}
.ls-progress{height:100%;background:linear-gradient(90deg,var(--ac),var(--purple));border-radius:99px;animation:prog 1.6s ease-in-out infinite}
@keyframes prog{0%{width:0%;margin-left:0}50%{width:70%;margin-left:0}100%{width:0%;margin-left:100%}}

/* ── AUTH ── */
.auth-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;background:var(--bg)}
.auth-bg{position:absolute;inset:0;pointer-events:none}
.orb{position:absolute;border-radius:50%;filter:blur(90px);opacity:.28}
.o1{width:600px;height:600px;background:radial-gradient(circle,#1d4ed8,transparent 70%);top:-200px;left:-200px;animation:of 14s ease-in-out infinite alternate}
.o2{width:500px;height:500px;background:radial-gradient(circle,#5b21b6,transparent 70%);bottom:-150px;right:-150px;animation:of 18s ease-in-out infinite alternate-reverse}
.o3{width:350px;height:350px;background:radial-gradient(circle,#0284c7,transparent 70%);top:40%;left:45%;animation:of 11s ease-in-out infinite alternate}
@keyframes of{from{transform:translate(0,0) scale(1)}to{transform:translate(40px,-40px) scale(1.1)}}
.auth-card{position:relative;z-index:2;background:rgba(11,16,24,.9);backdrop-filter:blur(32px);border:1px solid var(--bdr2);border-radius:20px;padding:40px;width:100%;max-width:420px;box-shadow:var(--shxl);animation:ci .5s cubic-bezier(.22,1,.36,1)}
@keyframes ci{from{opacity:0;transform:translateY(28px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}
.auth-brand{display:flex;align-items:center;gap:10px;margin-bottom:6px}
.brand-icon{width:36px;height:36px;background:linear-gradient(135deg,var(--ac),#6366f1);border-radius:10px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px rgba(59,130,246,.4);flex-shrink:0}
.brand-icon.sm{width:28px;height:28px;border-radius:7px}
.brand-name{font-family:'Syne',sans-serif;font-weight:800;font-size:20px;letter-spacing:-.5px;background:linear-gradient(135deg,#fff 40%,var(--ac3));-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.brand-name.sm{font-size:15px}
.auth-sub{color:var(--tx3);font-size:.82rem;margin-bottom:26px}
.auth-tabs{display:flex;background:var(--bg3);border:1px solid var(--bdr);border-radius:var(--rs);padding:3px;margin-bottom:22px;gap:3px}
.atab{flex:1;padding:8px;background:transparent;border:none;border-radius:6px;color:var(--tx3);font-family:'DM Sans',sans-serif;font-size:.86rem;font-weight:500;cursor:pointer;transition:var(--tr)}
.atab.active{background:var(--sur2);color:var(--tx);box-shadow:0 2px 8px rgba(0,0,0,.4)}
.atab:hover:not(.active){color:var(--tx2)}
.auth-access-note{margin-top:16px;text-align:center;font-size:.76rem;color:var(--tx3)}
.auth-msg.error{background:rgba(248,113,113,.1);color:var(--red);border:1px solid rgba(248,113,113,.2)}
.auth-msg.success{background:rgba(52,211,153,.1);color:var(--green);border:1px solid rgba(52,211,153,.2)}

/* ── FORMS ── */
.field{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}
.field:last-child{margin-bottom:0}
.field label{font-size:.73rem;font-weight:700;color:var(--tx2);text-transform:uppercase;letter-spacing:.07em}
input,select,textarea{background:var(--bg3);border:1px solid var(--bdr);border-radius:var(--rs);color:var(--tx);font-family:'DM Sans',sans-serif;font-size:.86rem;padding:9px 12px;outline:none;transition:var(--tr);width:100%}
input:focus,select:focus,textarea:focus{border-color:var(--ac);background:rgba(59,130,246,.04);box-shadow:0 0 0 3px rgba(59,130,246,.1)}
input::placeholder,textarea::placeholder{color:var(--tx3)}
select option{background:var(--bg3);color:var(--tx)}
textarea{resize:vertical;line-height:1.5}

/* ── BUTTONS ── */
.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:9px 18px;background:var(--ac);color:#fff;border:none;border-radius:var(--rs);font-family:'DM Sans',sans-serif;font-size:.86rem;font-weight:600;cursor:pointer;transition:var(--tr);white-space:nowrap}
.btn-primary:hover{background:#2563eb;transform:translateY(-1px);box-shadow:0 6px 20px rgba(59,130,246,.4)}
.btn-primary:active{transform:translateY(0);box-shadow:none}
.btn-primary.sm{padding:6px 13px;font-size:.8rem}
.btn-ghost{display:inline-flex;align-items:center;gap:6px;padding:9px 16px;background:transparent;border:1px solid var(--bdr2);border-radius:var(--rs);color:var(--tx2);font-family:'DM Sans',sans-serif;font-size:.86rem;font-weight:500;cursor:pointer;transition:var(--tr)}
.btn-ghost:hover{background:var(--sur2);color:var(--tx);border-color:var(--tx3)}
.btn-ghost.sm{padding:6px 12px;font-size:.8rem}
.btn-danger{display:inline-flex;align-items:center;gap:6px;padding:9px 16px;background:rgba(248,113,113,.08);border:1px solid rgba(248,113,113,.2);border-radius:var(--rs);color:var(--red);font-family:'DM Sans',sans-serif;font-size:.86rem;font-weight:500;cursor:pointer;transition:var(--tr)}
.btn-danger:hover{background:rgba(248,113,113,.16);border-color:rgba(248,113,113,.4)}
.btn-icon{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:var(--rs);color:var(--tx2);cursor:pointer;transition:var(--tr);flex-shrink:0}
.btn-icon:hover{background:var(--sur2);color:var(--tx)}
.btn-logout{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--bdr);border-radius:7px;color:var(--tx3);cursor:pointer;transition:var(--tr);flex-shrink:0}
.btn-logout:hover{border-color:var(--red);color:var(--red);background:rgba(248,113,113,.08)}
.btn-clear{padding:6px 11px;background:rgba(248,113,113,.08);border:1px solid rgba(248,113,113,.2);border-radius:var(--rs);color:var(--red);font-family:'DM Sans',sans-serif;font-size:.78rem;cursor:pointer;transition:var(--tr);white-space:nowrap}
.btn-clear:hover{background:rgba(248,113,113,.16)}
.btn-today{padding:5px 11px;background:var(--sur2);border:1px solid var(--bdr2);border-radius:6px;color:var(--tx2);font-family:'DM Sans',sans-serif;font-size:.78rem;font-weight:500;cursor:pointer;transition:var(--tr)}
.btn-today:hover{background:var(--ac);color:#fff;border-color:var(--ac)}
.link-btn{font-size:.76rem;color:var(--ac2);background:none;border:none;cursor:pointer;font-family:'DM Sans',sans-serif;transition:var(--tr);flex-shrink:0}
.link-btn:hover{color:#fff}

/* ── CHIPS & BADGES ── */
.chip{font-size:.72rem;font-weight:600;color:var(--tx3);background:var(--bg3);padding:2px 8px;border-radius:99px;border:1px solid var(--bdr)}
.nbadge{background:var(--ac);color:#fff;font-size:.64rem;font-weight:700;padding:2px 6px;border-radius:99px;min-width:18px;text-align:center;margin-left:auto}
.nbadge.purple{background:var(--purple)}
.gcal-chip{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;background:rgba(52,211,153,.1);border:1px solid rgba(52,211,153,.2);border-radius:99px;color:var(--green);font-size:.76rem;font-weight:600}
.sync-chip{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;background:rgba(96,165,250,.08);border:1px solid rgba(96,165,250,.15);border-radius:99px;color:#60a5fa;font-size:.76rem;font-weight:500;transition:all .3s}
.sync-chip.syncing{background:rgba(251,191,36,.1);border-color:rgba(251,191,36,.2);color:#fbbf24}
.sync-chip.syncing svg{animation:spin 1s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}

/* ── APP LAYOUT ── */
.app{height:100vh;overflow:hidden}
/* #app começa escondido — JS adiciona .visible para mostrar */
#app{display:none!important}
#app.visible{display:flex!important}

/* ── SIDEBAR ── */
.sidebar{width:var(--sbw);background:var(--bg2);border-right:1px solid var(--bdr);display:flex;flex-direction:column;flex-shrink:0;transition:width .2s cubic-bezier(.22,1,.36,1),transform .2s cubic-bezier(.22,1,.36,1);position:relative;z-index:100}
.sidebar.collapsed{width:58px}
.sidebar.collapsed .brand-name.sm,.sidebar.collapsed .nav-label,.sidebar.collapsed .user-info,.sidebar.collapsed nav span:not(.nbadge){display:none}
.sidebar.collapsed .nav-item{justify-content:center;padding:9px}
.sidebar.collapsed .sb-brand{justify-content:center}
.sb-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:150;backdrop-filter:blur(2px)}
.sb-overlay.active{display:block}
.sb-brand{display:flex;align-items:center;gap:10px;padding:16px 13px;border-bottom:1px solid var(--bdr);overflow:hidden;flex-shrink:0}
.sb-nav{flex:1;padding:8px 7px;display:flex;flex-direction:column;gap:1px;overflow-y:auto}
.nav-label{font-size:.63rem;font-weight:700;letter-spacing:.1em;color:var(--tx3);padding:12px 9px 5px;text-transform:uppercase;white-space:nowrap}
.nav-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--rs);border:none;background:transparent;color:var(--tx3);font-family:'DM Sans',sans-serif;font-size:.86rem;font-weight:500;cursor:pointer;transition:var(--tr);text-align:left;width:100%;white-space:nowrap;position:relative}
.nav-item:hover{background:var(--sur);color:var(--tx2)}
.nav-item.active{background:linear-gradient(135deg,rgba(59,130,246,.16),rgba(99,102,241,.07));color:var(--ac2)}
.nav-item.active::before{content:'';position:absolute;left:0;top:22%;bottom:22%;width:2.5px;background:var(--ac);border-radius:0 2px 2px 0}
.nav-item svg{flex-shrink:0}
.sb-footer{display:flex;flex-direction:column;gap:0;flex-shrink:0;border-top:1px solid var(--bdr)}
.sb-footer-user{display:flex;align-items:center;gap:8px;padding:9px}
.user-row{display:flex;align-items:center;gap:8px;flex:1;overflow:hidden}
.avatar{width:28px;height:28px;border-radius:7px;background:linear-gradient(135deg,var(--ac),#6366f1);display:flex;align-items:center;justify-content:center;font-family:'Syne',sans-serif;font-weight:700;font-size:.8rem;flex-shrink:0;color:#fff}
.user-info{overflow:hidden}
.user-name{font-size:.82rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--tx)}
.user-role{font-size:.68rem;color:var(--tx3);white-space:nowrap}

/* ── TOPBAR ── */
.main-wrap{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0}
.topbar{height:var(--tbh);background:rgba(11,16,24,.88);backdrop-filter:blur(16px);border-bottom:1px solid var(--bdr);display:flex;align-items:center;justify-content:space-between;padding:0 18px;gap:14px;flex-shrink:0;z-index:50;position:relative}
.tb-left{display:flex;align-items:center;gap:11px}
.tb-right{display:flex;align-items:center;gap:8px}
.page-title{font-family:'Syne',sans-serif;font-size:1.05rem;font-weight:700;letter-spacing:-.3px}
.page-sub{font-size:.72rem;color:var(--tx3)}
.notif-wrap{position:relative}
.notif-dot{position:absolute;top:4px;right:4px;width:7px;height:7px;background:var(--red);border-radius:50%;border:2px solid var(--bg2);display:none;animation:np 2s ease-in-out infinite}
.notif-dot.active{display:block}
@keyframes np{0%,100%{box-shadow:0 0 0 0 rgba(248,113,113,.4)}50%{box-shadow:0 0 0 4px rgba(248,113,113,0)}}
.notif-panel{position:absolute;top:calc(100% + 8px);right:0;width:300px;background:var(--sur);border:1px solid var(--bdr2);border-radius:var(--r);box-shadow:var(--shl);overflow:hidden;z-index:200;animation:pan .14s ease}
@keyframes pan{from{opacity:0;transform:translateY(-6px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}
.notif-hdr{padding:11px 15px;font-family:'Syne',sans-serif;font-weight:600;font-size:.82rem;border-bottom:1px solid var(--bdr);color:var(--tx2);display:flex;align-items:center;justify-content:space-between}
.notif-item{padding:10px 15px;border-bottom:1px solid var(--bdr);font-size:.8rem;display:flex;gap:9px;align-items:flex-start;cursor:pointer;transition:var(--tr)}
.notif-item.new{background:linear-gradient(135deg,rgba(49,56,209,.08),rgba(90,103,216,.08));border-left:3px solid var(--ac);animation:notif-slide-in .3s ease}
@keyframes notif-slide-in{from{transform:translateX(-20px);opacity:0}to{transform:translateX(0);opacity:1}}
.notif-item:hover{background:var(--sur2)}
.notif-item:last-child{border-bottom:none}
.notif-ico{font-size:.86rem;flex-shrink:0;margin-top:1px}
.notif-text{color:var(--tx2);line-height:1.4}
.notif-text strong{color:var(--tx)}
.notif-empty{padding:22px 15px;text-align:center;color:var(--tx3);font-size:.82rem}

/* ── CONTENT ── */
.content{flex:1;overflow-y:auto;padding:22px;position:relative}
.page{display:none!important;animation:pi .2s ease}
.page.active{display:block!important}
@keyframes pi{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
.page-toolbar{margin-bottom:18px}
.filters-bar{display:flex;gap:9px;flex-wrap:wrap;align-items:center}
.search-wrap{position:relative;display:flex;align-items:center}
.search-wrap svg{position:absolute;left:10px;color:var(--tx3);pointer-events:none}
.search-inp{padding:7px 11px 7px 30px;background:var(--sur);border:1px solid var(--bdr);border-radius:var(--rs);color:var(--tx);font-family:'DM Sans',sans-serif;font-size:.82rem;min-width:200px;outline:none;transition:var(--tr)}
.search-inp:focus{border-color:var(--ac);box-shadow:0 0 0 3px rgba(59,130,246,.1)}
.search-inp::placeholder{color:var(--tx3)}
.sel{padding:7px 11px;background:var(--sur);border:1px solid var(--bdr);border-radius:var(--rs);color:var(--tx2);font-family:'DM Sans',sans-serif;font-size:.82rem;cursor:pointer;min-width:140px;outline:none;transition:var(--tr)}
.sel:focus{border-color:var(--ac)}
.sel:hover{border-color:var(--bdr2)}

/* ── DASHBOARD ── */
.stats-row{display:grid;grid-template-columns:repeat(6,1fr);gap:13px;margin-bottom:20px}
.stat-card{background:var(--sur);border:1px solid var(--bdr);border-radius:var(--r);padding:17px;transition:var(--tr);position:relative;overflow:hidden;cursor:default}
.stat-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--ac);transition:var(--tr)}
.stat-card:hover{border-color:var(--bdr2);transform:translateY(-2px);box-shadow:var(--sh)}
.stat-card:hover::before{height:3px}
.stat-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.stat-lbl{font-size:.7rem;font-weight:700;color:var(--tx3);text-transform:uppercase;letter-spacing:.07em}
.stat-ico{width:28px;height:28px;border-radius:7px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.stat-num{font-family:'Syne',sans-serif;font-size:1.8rem;font-weight:800;letter-spacing:-1px;line-height:1;margin-bottom:3px}
.stat-sub{font-size:.7rem;color:var(--tx3)}
.dash-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}
.dash-card{background:var(--sur);border:1px solid var(--bdr);border-radius:var(--r);padding:18px}
.dash-card.span2{grid-column:span 2}
.card-hdr{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px;gap:8px}
.card-hdr>span:first-child{font-family:'Syne',sans-serif;font-size:.8rem;font-weight:700;color:var(--tx2);text-transform:uppercase;letter-spacing:.07em}
.chart-wrap{position:relative;height:175px}
.act-list{display:flex;flex-direction:column;gap:5px}
.act-item{display:flex;gap:9px;align-items:flex-start;padding:7px 0;border-bottom:1px solid var(--bdr);font-size:.8rem}
.act-item:last-child{border-bottom:none}
.act-icon{font-size:.82rem;flex-shrink:0;margin-top:2px}
.act-text{color:var(--tx2);line-height:1.4;flex:1}
.act-text strong{color:var(--tx)}
.act-time{font-size:.68rem;color:var(--tx3);margin-top:1px}
.today-list{display:flex;flex-direction:column;gap:5px}
.today-item{display:flex;align-items:center;gap:9px;padding:7px 9px;background:var(--bg3);border-radius:var(--rs);font-size:.8rem;border:1px solid var(--bdr);transition:var(--tr)}
.today-item:hover{border-color:var(--bdr2)}
.today-badge{padding:2px 7px;border-radius:99px;font-size:.66rem;font-weight:700;white-space:nowrap}
.today-badge.alta{background:rgba(248,113,113,.12);color:var(--red)}
.today-badge.média,.today-badge.media{background:rgba(251,191,36,.12);color:var(--yellow)}
.today-badge.baixa{background:rgba(52,211,153,.12);color:var(--green)}
.today-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* ── KANBAN ── */
.kanban{display:flex;gap:13px;align-items:flex-start;min-height:calc(100vh - 175px);overflow-x:auto;padding-bottom:20px}
.k-col{background:var(--bg2);border:1px solid var(--bdr);border-radius:var(--r);width:300px;flex-shrink:0;display:flex;flex-direction:column;max-height:calc(100vh - 175px)}
.k-col-hdr{padding:12px 13px;display:flex;align-items:center;gap:8px;font-family:'Syne',sans-serif;font-weight:700;font-size:.82rem;border-bottom:1px solid var(--bdr);flex-shrink:0}
.k-cnt,.ig-cnt{margin-left:auto;background:var(--sur2);color:var(--tx2);font-size:.68rem;font-weight:700;padding:2px 7px;border-radius:99px;font-family:'DM Sans',sans-serif}
.k-dot,.ig-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}
.k-dot.pend{background:var(--tx3)}
.k-dot.prog{background:var(--yellow);box-shadow:0 0 5px rgba(251,191,36,.4)}
.k-dot.done{background:var(--green);box-shadow:0 0 5px rgba(52,211,153,.4)}
.k-cards,.ig-cards{flex:1;overflow-y:auto !important;overflow-x:hidden;padding:9px;display:flex;flex-direction:column;gap:7px;min-height:70px;transition:background .12s ease}
.k-cards.dov,.ig-cards.dov{background:rgba(59,130,246,.05);outline:2px dashed rgba(59,130,246,.22);outline-offset:-3px;border-radius:7px}
.k-card{background:var(--sur);border:1px solid var(--bdr);border-radius:var(--rs);padding:12px;cursor:grab;transition:var(--tr);position:relative;overflow:visible !important;width:100%;min-width:270px;box-sizing:border-box;flex-shrink:0}
.k-card::before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--prio-color,var(--bdr2))}
.k-card:hover{border-color:var(--bdr2);box-shadow:var(--sh);transform:translateY(-1px)}
.k-card:active{cursor:grabbing;transform:translateY(0)}
.k-card.dragging{opacity:.35;transform:scale(.96)}
.k-card-title{font-weight:500;font-size:.84rem;margin-bottom:8px;line-height:1.4;padding-right:20px;white-space:normal;word-wrap:break-word;overflow:visible}
.k-card-meta{display:flex;flex-wrap:wrap;gap:4px;align-items:center;overflow:visible}
.k-card-actions{position:absolute;top:9px;right:9px;display:flex;gap:3px;opacity:0;transition:var(--tr)}
.k-card:hover .k-card-actions{opacity:1}
.btn-card{width:20px;height:20px;display:flex;align-items:center;justify-content:center;background:var(--sur2);border:1px solid var(--bdr2);border-radius:4px;color:var(--tx3);cursor:pointer;font-size:.7rem;transition:var(--tr)}
.btn-card:hover{background:var(--ac);color:#fff;border-color:var(--ac)}
.tag{padding:2px 7px;border-radius:99px;font-size:.66rem;font-weight:600;white-space:nowrap;flex-shrink:0;display:inline-flex;align-items:center}
.tag-resp{background:rgba(96,165,250,.1);color:var(--ac2)}
.tag-client{background:rgba(167,139,250,.1);color:var(--purple)}
.tag-prio-Alta{background:rgba(248,113,113,.1);color:var(--red)}
.tag-prio-Média{background:rgba(251,191,36,.1);color:var(--yellow)}
.tag-prio-Baixa{background:rgba(52,211,153,.1);color:var(--green)}
.tag-prazo{background:rgba(90,116,148,.1);color:var(--tx3);font-size:.66rem}
.tag-prazo.urgent{background:rgba(248,113,113,.1);color:var(--red);animation:bu 2s ease-in-out infinite}
@keyframes bu{0%,100%{opacity:1}50%{opacity:.6}}
.btn-add-k{margin:5px 9px 9px;padding:7px;background:transparent;border:1px dashed var(--bdr2);border-radius:var(--rs);color:var(--tx3);font-family:'DM Sans',sans-serif;font-size:.78rem;cursor:pointer;transition:var(--tr);text-align:center;flex-shrink:0;display:flex;align-items:center;justify-content:center;gap:5px}
.btn-add-k:hover{border-color:var(--ac);color:var(--ac2);background:rgba(59,130,246,.04)}
.empty-col{padding:18px;text-align:center;color:var(--tx3);font-size:.78rem}

/* ── CLIENTS ── */
.clients-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(265px,1fr));gap:13px}
.client-card{background:var(--sur);border:1px solid var(--bdr);border-radius:var(--r);padding:18px;cursor:pointer;transition:var(--tr);position:relative;overflow:hidden}
.client-card::after{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--ac),var(--purple));opacity:0;transition:var(--tr)}
.client-card:hover{border-color:var(--bdr2);box-shadow:var(--sh);transform:translateY(-2px)}
.client-card:hover::after{opacity:1}
.cc-top{display:flex;align-items:center;gap:11px;margin-bottom:13px}
.cc-avatar{width:40px;height:40px;border-radius:10px;background:linear-gradient(135deg,var(--ac),var(--purple));display:flex;align-items:center;justify-content:center;font-family:'Syne',sans-serif;font-weight:800;font-size:.95rem;flex-shrink:0;color:#fff}
.cc-name{font-family:'Syne',sans-serif;font-weight:700;font-size:.9rem;margin-bottom:2px}
.cc-ig{font-size:.74rem;color:var(--pink)}
.cc-info{display:flex;flex-direction:column;gap:4px;margin-bottom:11px}
.cc-row{display:flex;gap:7px;font-size:.77rem;color:var(--tx2);align-items:flex-start}
.cc-lbl{color:var(--tx3);min-width:52px;flex-shrink:0;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}
.cc-tags{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:11px}
.cc-tag{padding:2px 8px;border-radius:99px;font-size:.68rem;font-weight:500;background:rgba(99,102,241,.08);color:var(--purple);border:1px solid rgba(99,102,241,.16)}
.cc-footer{display:flex;align-items:center;justify-content:space-between;padding-top:11px;border-top:1px solid var(--bdr)}
.cc-tasks-count{font-size:.74rem;color:var(--tx3)}
.cc-resp-badge{font-size:.7rem;color:var(--ac2);background:rgba(59,130,246,.08);padding:2px 7px;border-radius:99px;border:1px solid rgba(59,130,246,.14)}
.empty-state{text-align:center;padding:60px 20px;color:var(--tx3);grid-column:1/-1}
.empty-state .ei{font-size:2.8rem;margin-bottom:12px;opacity:.3}
.empty-state p{font-size:.84rem;margin-bottom:18px}

/* ── INSTAGRAM ── */
.ig-board{display:flex;gap:13px;align-items:flex-start;min-height:calc(100vh - 175px);overflow-x:auto;padding-bottom:20px}
.ig-col{background:var(--bg2);border:1px solid var(--bdr);border-radius:var(--r);width:230px;flex-shrink:0;display:flex;flex-direction:column;max-height:calc(100vh - 175px)}
.ig-col-hdr{padding:11px 12px;display:flex;align-items:center;gap:7px;font-family:'Syne',sans-serif;font-weight:700;font-size:.8rem;border-bottom:1px solid var(--bdr);flex-shrink:0}
.ig-dot.ideia{background:var(--tx3)}
.ig-dot.prod{background:var(--yellow);box-shadow:0 0 5px rgba(251,191,36,.4)}
.ig-dot.edit{background:var(--pink);box-shadow:0 0 5px rgba(244,114,182,.4)}
.ig-dot.aprov{background:var(--orange);box-shadow:0 0 5px rgba(251,146,60,.4)}
.ig-dot.post{background:var(--green);box-shadow:0 0 5px rgba(52,211,153,.4)}
.ig-card{background:var(--sur);border:1px solid var(--bdr);border-radius:var(--rs);padding:10px;cursor:grab;transition:var(--tr);position:relative}
.ig-card:hover{border-color:var(--bdr2);box-shadow:var(--sh);transform:translateY(-1px)}
.ig-card:active{cursor:grabbing;transform:translateY(0)}
.ig-card.dragging{opacity:.35;transform:scale(.96)}
.ig-card-type{display:inline-block;padding:2px 7px;border-radius:99px;font-size:.64rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;margin-bottom:5px}
.ig-card-type.Reels{background:rgba(248,113,113,.12);color:var(--red)}
.ig-card-type.Estático,.ig-card-type.Estatico{background:rgba(96,165,250,.12);color:var(--ac2)}
.ig-card-type.Carrossel{background:rgba(251,191,36,.12);color:var(--yellow)}
.ig-card-type.Story{background:rgba(167,139,250,.12);color:var(--purple)}
.ig-card-title{font-size:.82rem;font-weight:500;margin-bottom:7px;line-height:1.35;padding-right:18px}
.ig-card-meta{font-size:.72rem;color:var(--tx3);display:flex;flex-direction:column;gap:2px}
.ig-card-client{font-size:.7rem;color:var(--purple);font-weight:600;margin-top:4px}
.ig-card-actions{position:absolute;top:8px;right:8px;opacity:0;transition:var(--tr)}
.ig-card:hover .ig-card-actions{opacity:1}
.ig-card-link{color:var(--ac2);font-size:.7rem;text-decoration:none;display:inline-flex;align-items:center;gap:3px;margin-top:4px}
.ig-card-link:hover{text-decoration:underline}

/* ── CALENDAR ── */
.cal-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;gap:12px;flex-wrap:wrap}
.cal-nav{display:flex;align-items:center;gap:10px}
.cal-title-wrap{display:flex;align-items:center;gap:10px;min-width:200px;justify-content:center}
.cal-title-wrap h2{font-family:'Syne',sans-serif;font-size:1rem;font-weight:700}
.cal-views{display:flex;background:var(--bg3);border:1px solid var(--bdr);border-radius:var(--rs);padding:3px;gap:2px}
.view-btn{padding:5px 12px;background:transparent;border:none;border-radius:6px;color:var(--tx3);font-family:'DM Sans',sans-serif;font-size:.8rem;font-weight:500;cursor:pointer;transition:var(--tr)}
.view-btn.active{background:var(--sur2);color:var(--tx);box-shadow:0 1px 6px rgba(0,0,0,.3)}
.view-btn:hover:not(.active){color:var(--tx2)}
.cal-legend{display:flex;gap:12px;align-items:center}
.leg-item{display:flex;align-items:center;gap:5px;font-size:.76rem;color:var(--tx3)}
.leg-dot{width:8px;height:8px;border-radius:2px;flex-shrink:0}
.leg-dot.task{background:var(--ac2)}
.leg-dot.ig{background:var(--pink)}
.leg-dot.gcal{background:var(--green)}

/* Month view */
.cal-month{background:var(--sur);border:1px solid var(--bdr);border-radius:var(--r);overflow:hidden}
.cal-wdays{display:grid;grid-template-columns:repeat(7,1fr);background:var(--bg3);border-bottom:1px solid var(--bdr)}
.cal-wday{padding:9px;text-align:center;font-size:.68rem;font-weight:700;color:var(--tx3);text-transform:uppercase;letter-spacing:.07em;border-right:1px solid var(--bdr)}
.cal-wday:last-child{border-right:none}
.cal-days-grid{display:grid;grid-template-columns:repeat(7,1fr)}
.cal-day{min-height:90px;border-right:1px solid var(--bdr);border-bottom:1px solid var(--bdr);padding:7px;position:relative;cursor:pointer;transition:background .1s ease}
.cal-day:hover{background:var(--sur2)}
.cal-day:nth-child(7n){border-right:none}
.cal-day.other{opacity:.28;pointer-events:none}
.cal-day.today{background:rgba(59,130,246,.04)}
.cal-day.today .cal-dnum{background:var(--ac);color:#fff;box-shadow:0 2px 8px rgba(59,130,246,.4)}
.cal-dnum{width:23px;height:23px;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:.76rem;font-weight:600;margin-bottom:4px;font-family:'Syne',sans-serif}
.cal-devents{display:flex;flex-direction:column;gap:2px}
.cal-devent{font-size:.61rem;padding:2px 4px;border-radius:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500}
.cal-devent.task{background:rgba(59,130,246,.18);color:var(--ac2)}
.cal-devent.ig{background:rgba(244,114,182,.18);color:var(--pink)}
.cal-devent.gcal{background:rgba(52,211,153,.18);color:var(--green)}
.cal-devent.more{background:transparent;color:var(--tx3);font-weight:400}

/* Week view */
.cal-week{background:var(--sur);border:1px solid var(--bdr);border-radius:var(--r);overflow:hidden}
.cal-week-hdr{display:grid;grid-template-columns:60px repeat(7,1fr);background:var(--bg3);border-bottom:1px solid var(--bdr)}
.cal-week-day{padding:9px 6px;text-align:center;border-right:1px solid var(--bdr)}
.cal-week-day:last-child{border-right:none}
.cal-wday-name{font-size:.68rem;font-weight:700;color:var(--tx3);text-transform:uppercase}
.cal-wday-num{font-family:'Syne',sans-serif;font-weight:700;font-size:.92rem;margin-top:2px}
.cal-wday-num.today-num{background:var(--ac);color:#fff;width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:2px auto 0}
.cal-week-body{display:grid;grid-template-columns:60px repeat(7,1fr)}
.cal-hour-col{border-right:1px solid var(--bdr)}
.cal-hour-label{height:44px;display:flex;align-items:center;justify-content:flex-end;padding-right:10px;font-size:.68rem;color:var(--tx3);border-bottom:1px solid rgba(30,45,69,.4)}
.cal-week-col{border-right:1px solid var(--bdr);position:relative}
.cal-week-col:last-child{border-right:none}
.cal-week-cell{height:44px;border-bottom:1px solid rgba(30,45,69,.4)}
.cal-week-event{position:absolute;left:2px;right:2px;border-radius:4px;padding:2px 5px;font-size:.68rem;font-weight:500;overflow:hidden;cursor:pointer;transition:var(--tr);z-index:1}
.cal-week-event.task{background:rgba(59,130,246,.25);border-left:3px solid var(--ac2);color:var(--ac3)}
.cal-week-event.ig{background:rgba(244,114,182,.2);border-left:3px solid var(--pink);color:var(--pink)}
.cal-week-event:hover{filter:brightness(1.2)}

/* Day view */
.cal-day-view{background:var(--sur);border:1px solid var(--bdr);border-radius:var(--r);overflow:hidden}
.cal-day-hdr{padding:14px 16px;border-bottom:1px solid var(--bdr);font-family:'Syne',sans-serif;font-weight:700;font-size:.9rem;background:var(--bg3)}
.cal-day-body{display:grid;grid-template-columns:60px 1fr}
.cal-day-events{padding:12px;display:flex;flex-direction:column;gap:7px}
.cal-day-event{display:flex;gap:10px;align-items:flex-start;padding:10px;background:var(--bg3);border:1px solid var(--bdr);border-radius:var(--rs);cursor:pointer;transition:var(--tr)}
.cal-day-event:hover{border-color:var(--bdr2);background:var(--sur2)}
.cal-day-event-dot{width:8px;height:8px;border-radius:50%;margin-top:4px;flex-shrink:0}
.cal-day-event-dot.task{background:var(--ac2)}
.cal-day-event-dot.ig{background:var(--pink)}
.cal-day-event-name{font-weight:500;font-size:.84rem;color:var(--tx)}
.cal-day-event-meta{font-size:.74rem;color:var(--tx3);margin-top:2px}

/* Year view */
.cal-year{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}
.cal-year-month{background:var(--sur);border:1px solid var(--bdr);border-radius:var(--r);padding:13px;cursor:pointer;transition:var(--tr)}
.cal-year-month:hover{border-color:var(--bdr2);transform:translateY(-1px)}
.cal-year-month-title{font-family:'Syne',sans-serif;font-weight:700;font-size:.82rem;margin-bottom:9px;text-align:center}
.cal-mini-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:1px}
.cal-mini-wday{font-size:.56rem;text-align:center;color:var(--tx3);padding:2px 0}
.cal-mini-day{font-size:.62rem;text-align:center;padding:2px 0;border-radius:3px;cursor:default}
.cal-mini-day.today{background:var(--ac);color:#fff;border-radius:3px}
.cal-mini-day.has-events{background:rgba(59,130,246,.2);color:var(--ac2)}
.cal-mini-day.other{opacity:.25}

/* ── METRICS ── */
.connect-banner{display:flex;align-items:center;gap:14px;padding:16px 20px;background:linear-gradient(135deg,rgba(59,130,246,.08),rgba(99,102,241,.05));border:1px solid rgba(59,130,246,.15);border-radius:var(--r);margin-bottom:20px}
.connect-banner-icon{font-size:1.8rem;flex-shrink:0}
.connect-banner-title{font-family:'Syne',sans-serif;font-weight:700;font-size:.92rem;margin-bottom:2px}
.connect-banner-sub{font-size:.8rem;color:var(--tx2)}
.metrics-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:20px}
.metrics-charts{display:grid;grid-template-columns:repeat(2,1fr);gap:13px;margin-bottom:20px}
.metrics-table-wrap{overflow-x:auto;background:var(--sur);border:1px solid var(--bdr);border-radius:var(--r)}
.metrics-table{width:100%;border-collapse:collapse;font-size:.8rem}
.metrics-table th{padding:10px 12px;text-align:left;font-family:'Syne',sans-serif;font-weight:700;font-size:.7rem;color:var(--tx3);text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--bdr);background:var(--bg3);white-space:nowrap}
.metrics-table td{padding:10px 12px;border-bottom:1px solid var(--bdr);color:var(--tx2);white-space:nowrap}
.metrics-table tr:last-child td{border-bottom:none}
.metrics-table tr:hover td{background:var(--sur2)}
.platform-badge{display:inline-block;padding:2px 8px;border-radius:99px;font-size:.68rem;font-weight:600}
.platform-badge.meta{background:rgba(59,130,246,.12);color:var(--ac2)}
.platform-badge.google{background:rgba(52,211,153,.12);color:var(--green)}

/* Botões de seleção de plataforma */
.platform-btn {
  transition: all 0.2s ease !important;
}
.platform-btn:hover:not(.selected) {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}
.platform-btn:active {
  transform: translateY(0);
}
.platform-btn.selected {
  box-shadow: 0 4px 16px rgba(0,0,0,0.15);
}
.platform-badge.manual{background:rgba(167,139,250,.12);color:var(--purple)}

/* ── SETTINGS ── */
.settings-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(420px,1fr));gap:16px}
.settings-card{background:var(--sur);border:1px solid var(--bdr);border-radius:var(--r);overflow:hidden}
.settings-card-hdr{display:flex;align-items:center;gap:13px;padding:18px 20px;border-bottom:1px solid var(--bdr);background:var(--bg3)}
.settings-icon{width:36px;height:36px;border-radius:9px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.settings-icon.gcal{background:rgba(52,211,153,.12);color:var(--green)}
.settings-icon.meta{background:rgba(59,130,246,.12);color:var(--ac2)}
.settings-icon.team{background:rgba(167,139,250,.12);color:var(--purple)}
.settings-card-title{font-family:'Syne',sans-serif;font-weight:700;font-size:.9rem;margin-bottom:2px}
.settings-card-sub{font-size:.78rem;color:var(--tx3)}
.status-badge{padding:3px 10px;border-radius:99px;font-size:.72rem;font-weight:600;margin-left:auto;flex-shrink:0}
.status-badge.connected{background:rgba(52,211,153,.12);color:var(--green);border:1px solid rgba(52,211,153,.2)}
.status-badge.disconnected{background:rgba(90,116,148,.1);color:var(--tx3);border:1px solid var(--bdr)}
.settings-body{padding:20px;display:flex;flex-direction:column;gap:14px}
.settings-actions{display:flex;gap:8px;justify-content:flex-end}
.settings-msg{padding:9px 13px;border-radius:var(--rs);font-size:.8rem;margin-top:4px}
.settings-msg.ok{background:rgba(52,211,153,.1);color:var(--green);border:1px solid rgba(52,211,153,.2)}
.settings-msg.err{background:rgba(248,113,113,.1);color:var(--red);border:1px solid rgba(248,113,113,.2)}
.settings-info{font-size:.78rem;color:var(--tx3);line-height:1.6;padding:12px;background:var(--bg3);border-radius:var(--rs);border:1px solid var(--bdr)}
.settings-info a{color:var(--ac2);text-decoration:none}
.settings-info a:hover{text-decoration:underline}
.settings-info code{background:var(--sur2);color:var(--ac3);padding:1px 5px;border-radius:4px;font-size:.75rem}

/* ── MODALS ── */
.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.78);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:18px;animation:ov .14s ease}
@keyframes ov{from{opacity:0}to{opacity:1}}
.modal{background:var(--bg2);border:1px solid var(--bdr2);border-radius:16px;width:100%;max-width:560px;max-height:92vh;overflow-y:auto;box-shadow:var(--shxl);animation:mi .18s cubic-bezier(.22,1,.36,1)}
.modal.modal-sm{max-width:420px}
@keyframes mi{from{opacity:0;transform:scale(.94) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}
.modal-hdr{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--bdr);position:sticky;top:0;background:var(--bg2);z-index:1}
.mhdr-left{display:flex;align-items:center;gap:9px}
.modal-ico{width:26px;height:26px;border-radius:6px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.modal-ico.tasks{background:rgba(59,130,246,.14);color:var(--ac2)}
.modal-ico.clients{background:rgba(167,139,250,.14);color:var(--purple)}
.modal-ico.ig{background:rgba(244,114,182,.14);color:var(--pink)}
.modal-ico.calendar{background:rgba(52,211,153,.14);color:var(--green)}
.modal-ico.metrics{background:rgba(251,191,36,.14);color:var(--yellow)}
.modal-hdr h2{font-family:'Syne',sans-serif;font-size:.96rem;font-weight:700}
.modal-close{width:26px;height:26px;display:flex;align-items:center;justify-content:center;background:var(--sur2);border:1px solid var(--bdr);border-radius:6px;color:var(--tx3);cursor:pointer;transition:var(--tr);flex-shrink:0}
.modal-close:hover{background:rgba(248,113,113,.12);color:var(--red);border-color:rgba(248,113,113,.2)}
.modal-body{padding:20px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-bottom:0}
.modal-actions{display:flex;gap:7px;justify-content:flex-end;padding-top:16px;border-top:1px solid var(--bdr);margin-top:18px}
.gcal-sync-row{margin-top:13px;padding:10px 12px;background:var(--bg3);border:1px solid var(--bdr);border-radius:var(--rs)}
.toggle-row{display:flex;align-items:center;gap:8px;cursor:pointer}
.toggle-label{display:flex;align-items:center;gap:6px;font-size:.8rem;color:var(--tx2)}
.comments-section{background:var(--bg3);border:1px solid var(--bdr);border-radius:var(--rs);padding:13px;margin-top:14px}
.comments-hdr{font-family:'Syne',sans-serif;font-size:.73rem;font-weight:700;color:var(--tx2);text-transform:uppercase;letter-spacing:.07em;margin-bottom:11px;display:flex;align-items:center;gap:5px}
.comments-list{display:flex;flex-direction:column;gap:6px;margin-bottom:11px;min-height:36px}
.comment-bubble{background:var(--sur);border:1px solid var(--bdr);border-radius:var(--rs);padding:8px 11px;font-size:.8rem}
.comment-meta{font-size:.68rem;color:var(--tx3);margin-bottom:3px}
.comment-text{color:var(--tx2);line-height:1.4}
.comment-input-row{display:flex;gap:7px}
.comment-input-row input{flex:1}

/* ── SECTION DIVIDER (modal cliente) ── */
.section-divider{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:18px 0 12px;padding-bottom:8px;border-bottom:1px solid var(--bdr)}
.section-divider span{font-family:'Syne',sans-serif;font-size:.82rem;font-weight:700;color:var(--tx2)}
.section-divider small{font-size:.72rem;color:var(--tx3)}

/* ── POSTING DAYS BUILDER ── */
.posting-days-grid{display:flex;flex-direction:column;gap:7px;margin-bottom:10px}
.posting-day-row{display:flex;align-items:center;gap:8px;background:var(--bg3);border:1px solid var(--bdr);border-radius:var(--rs);padding:9px 11px;flex-wrap:wrap}
.posting-day-row select{flex:1;min-width:130px;padding:5px 8px;font-size:.82rem}
.posting-types{display:flex;gap:5px;flex-shrink:0;flex-wrap:wrap}
.type-check{display:flex;align-items:center;gap:4px;padding:4px 9px;border:1px solid var(--bdr2);border-radius:99px;cursor:pointer;font-size:.76rem;color:var(--tx3);transition:var(--tr);user-select:none;white-space:nowrap}
.type-check input{display:none}
.type-check.checked-reels{border-color:var(--red);background:rgba(248,113,113,.12);color:var(--red)}
.type-check.checked-estatico{border-color:var(--ac2);background:rgba(96,165,250,.12);color:var(--ac2)}
.type-check.checked-carrossel{border-color:var(--yellow);background:rgba(251,191,36,.12);color:var(--yellow)}
.btn-rm-row{width:22px;height:22px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--bdr);border-radius:5px;color:var(--tx3);cursor:pointer;font-size:.8rem;flex-shrink:0;transition:var(--tr)}
.btn-rm-row:hover{border-color:var(--red);color:var(--red);background:rgba(248,113,113,.08)}
.btn-add-posting-day{width:100%;padding:8px;background:transparent;border:1px dashed var(--bdr2);border-radius:var(--rs);color:var(--tx3);font-family:'DM Sans',sans-serif;font-size:.8rem;cursor:pointer;transition:var(--tr);display:flex;align-items:center;justify-content:center;gap:5px}
.btn-add-posting-day:hover{border-color:var(--ac);color:var(--ac2);background:rgba(59,130,246,.04)}

/* ── SEASONAL DATES BUILDER (modal cliente) ── */
.seasonal-dates-list{display:flex;flex-direction:column;gap:7px;margin-bottom:10px}
.seasonal-date-row{display:flex;align-items:center;gap:8px;background:var(--bg3);border:1px solid var(--bdr);border-radius:var(--rs);padding:9px 11px}
.seasonal-date-row input[type="text"]{flex:1;min-width:0;padding:5px 8px;font-size:.82rem}
.seasonal-date-row input[type="date"]{width:140px;flex-shrink:0;padding:5px 8px;font-size:.82rem}

/* ── DEMANDA SEMANAL ── */
.demanda-semanal-wrap{background:var(--sur);border:1px solid var(--bdr);border-radius:var(--r);padding:18px;margin-bottom:16px}
.demanda-hdr{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.demanda-title{font-family:'Syne',sans-serif;font-size:.88rem;font-weight:700;color:var(--tx)}
.demanda-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}
.demanda-col{display:flex;flex-direction:column;gap:6px}
.demanda-day-hdr{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--tx3);text-align:center;padding-bottom:6px;border-bottom:2px solid var(--bdr)}
.demanda-day-hdr.today{color:var(--ac2);border-color:var(--ac)}
.demanda-card{padding:7px 9px;border-radius:var(--rs);border:1px solid;font-size:.76rem;font-weight:500;line-height:1.3;cursor:pointer;transition:var(--tr)}
.demanda-card:hover{filter:brightness(1.1)}
.demanda-card.Reels{background:rgba(248,113,113,.1);border-color:rgba(248,113,113,.25);color:var(--red)}
.demanda-card.Estatico,.demanda-card.Estático{background:rgba(96,165,250,.1);border-color:rgba(96,165,250,.25);color:var(--ac2)}
.demanda-card.Carrossel{background:rgba(251,191,36,.1);border-color:rgba(251,191,36,.25);color:var(--yellow)}
.demanda-card.Repost{background:rgba(52,211,153,.1);border-color:rgba(52,211,153,.25);color:var(--green)}
.demanda-card.Direct{background:rgba(167,139,250,.1);border-color:rgba(167,139,250,.25);color:var(--purple)}
.demanda-card-client{font-weight:700;display:block;font-size:.78rem}
.demanda-card-type{font-size:.68rem;opacity:.8}
.demanda-empty{color:var(--tx3);font-size:.74rem;text-align:center;padding:12px 0;font-style:italic}

/* ── DATAS SAZONAIS DASHBOARD ── */
.sazonais-wrap{background:var(--sur);border:1px solid var(--bdr);border-radius:var(--r);padding:18px;margin-bottom:16px}
.sazonais-hdr{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.sazonais-title{font-family:'Syne',sans-serif;font-size:.88rem;font-weight:700;color:var(--tx)}
.sazonais-list{display:flex;flex-direction:column}
.sazonais-item{display:flex;align-items:center;gap:11px;padding:9px 0;border-bottom:1px solid var(--bdr);transition:var(--tr)}
.sazonais-item:last-child{border-bottom:none}
.sazonais-date{font-family:'Syne',sans-serif;font-size:.78rem;font-weight:700;color:var(--ac2);min-width:50px;flex-shrink:0}
.sazonais-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}
.sazonais-dot.cliente{background:var(--purple);box-shadow:0 0 7px rgba(167,139,250,.5)}
.sazonais-dot.nacional{background:var(--yellow)}
.sazonais-dot.feriado{background:var(--red)}
.sazonais-dot.aniversario{background:var(--pink);box-shadow:0 0 7px rgba(244,114,182,.5)}
.sazonais-text{font-size:.82rem;color:var(--tx2);flex:1;line-height:1.3}
.sazonais-badge{padding:2px 8px;border-radius:99px;font-size:.66rem;font-weight:600;flex-shrink:0;white-space:nowrap}
.sazonais-badge.cliente{background:rgba(167,139,250,.12);color:var(--purple);border:1px solid rgba(167,139,250,.2)}
.sazonais-badge.feriado{background:rgba(248,113,113,.12);color:var(--red)}
.sazonais-badge.particular{background:rgba(251,191,36,.12);color:var(--yellow);border:1px solid rgba(251,191,36,.2)}
.sazonais-badge.hoje{background:rgba(59,130,246,.15);color:var(--ac2);border:1px solid rgba(59,130,246,.25)}
.sazonais-item.destaque{background:linear-gradient(90deg,rgba(167,139,250,.06),transparent);border-radius:var(--rs);margin:0 -4px;padding:9px 4px}
.sazonais-item.destaque .sazonais-text{color:var(--tx);font-weight:500}

/* ── SAZONAIS EDITOR MODAL ── */
.sazonais-editor-list{display:flex;flex-direction:column;gap:6px;max-height:420px;overflow-y:auto;margin-bottom:4px}
.sazonais-editor-row{display:flex;gap:8px;align-items:center;padding:8px 10px;background:var(--bg3);border-radius:var(--rs);border:1px solid var(--bdr)}
.sazonais-editor-row input[type="date"]{width:135px;flex-shrink:0;font-size:.8rem;padding:5px 8px}
.sazonais-editor-row input[type="text"]{flex:1;font-size:.8rem;padding:5px 8px}
.sazonais-editor-row select{width:120px;flex-shrink:0;font-size:.8rem;padding:5px 8px}

@media(max-width:900px){.demanda-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:600px){.demanda-grid{grid-template-columns:repeat(2,1fr)}.posting-day-row{flex-wrap:wrap}}

/* ── PRAZO ÚNICO ── */
.prazo-input{color-scheme:dark}
input[type="datetime-local"].prazo-input::-webkit-calendar-picker-indicator{
  filter:brightness(0) saturate(100%) invert(62%) sepia(60%) saturate(400%) hue-rotate(190deg) brightness(110%);
  cursor:pointer;
  opacity:1;
  scale:1.1;
}
input[type="datetime-local"]{color-scheme:dark}
input[type="datetime-local"]::-webkit-calendar-picker-indicator{
  filter:brightness(1.8) saturate(0.4);
  cursor:pointer;opacity:.7;
}
input[type="date"]::-webkit-calendar-picker-indicator{
  filter:brightness(1.8) saturate(0.4);cursor:pointer;opacity:.7;
}

/* ── PROFILE FOTO ── */
.profile-avatar-row{display:flex;align-items:center;gap:14px;padding:14px;background:var(--bg3);border:1px solid var(--bdr);border-radius:var(--r)}
.profile-avatar-wrap{position:relative;cursor:pointer;border-radius:14px;overflow:hidden;width:64px;height:64px;flex-shrink:0}
.profile-avatar{width:64px;height:64px;border-radius:14px;background:linear-gradient(135deg,var(--ac),#6366f1);display:flex;align-items:center;justify-content:center;font-family:'Syne',sans-serif;font-weight:800;font-size:1.5rem;color:#fff}
.profile-avatar-img{width:64px;height:64px;border-radius:14px;object-fit:cover;position:absolute;top:0;left:0}
.profile-avatar-overlay{position:absolute;inset:0;background:rgba(0,0,0,.55);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;opacity:0;transition:opacity .2s;border-radius:14px}
.profile-avatar-wrap:hover .profile-avatar-overlay{opacity:1}
.profile-avatar-overlay span{font-size:.6rem;font-weight:600;color:#fff;white-space:nowrap}
/* Avatar pequeno na sidebar */
.avatar{overflow:hidden;position:relative}
.avatar img.avatar-photo{width:100%;height:100%;object-fit:cover;position:absolute;top:0;left:0;border-radius:inherit}

/* ── GOOGLE CALENDAR STYLE ── */
.gcal-wrap{background:var(--bg);border:1px solid var(--bdr);border-radius:var(--r);overflow:hidden;height:calc(100vh - 155px);display:flex;flex-direction:column}

/* Mês */
.gcal-month{display:flex;flex-direction:column;height:100%}
.gcal-month-wdays{display:grid;grid-template-columns:repeat(7,1fr);border-bottom:1px solid var(--bdr);background:var(--bg2)}
.gcal-month-wday{padding:8px 0;text-align:center;font-size:.7rem;font-weight:700;color:var(--tx3);text-transform:uppercase;letter-spacing:.08em}
.gcal-month-grid{display:grid;grid-template-columns:repeat(7,1fr);grid-auto-rows:minmax(110px,auto);flex:1;overflow:auto}
.gcal-cell{border-right:1px solid var(--bdr);border-bottom:1px solid var(--bdr);padding:6px;min-height:100px;overflow:hidden;cursor:pointer;transition:background .12s;display:flex;flex-direction:column}
.gcal-cell:nth-child(7n){border-right:none}
.gcal-cell:hover{background:rgba(255,255,255,.03)}
.gcal-cell.other-month .gcal-cell-num{color:var(--tx3);opacity:.4}
.gcal-cell.today .gcal-cell-num{background:var(--ac);color:#fff;border-radius:50%}
.gcal-cell-num{width:26px;height:26px;display:flex;align-items:center;justify-content:center;font-size:.82rem;font-weight:600;border-radius:50%;margin-bottom:6px;font-family:'DM Sans',sans-serif;flex-shrink:0}
.gcal-cell-events{display:flex;flex-direction:column;gap:3px;max-height:calc(100% - 20px);overflow-y:auto;overflow-x:hidden;flex:1;padding-right:2px}
.gcal-ev{font-size:.72rem;padding:3px 6px;border-radius:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500;line-height:1.5;cursor:pointer;transition:all .15s;box-shadow:0 1px 2px rgba(0,0,0,0.05)}
.gcal-ev:hover{transform:translateX(2px);box-shadow:0 2px 6px rgba(0,0,0,0.1);filter:brightness(1.05)}
.gcal-ev.task{background:#1a73e8;color:#fff}
.gcal-ev.ig{background:#e91e8c;color:#fff}
.gcal-ev.gcal{background:#0f9d58;color:#fff}
.gcal-ev.more{background:transparent;color:var(--tx3);font-size:.66rem;padding:0 5px}

/* Semana */
.gcal-week-wrap{display:flex;flex-direction:column;height:100%;overflow:hidden}
.gcal-week-hdr{display:grid;grid-template-columns:52px repeat(7,1fr);border-bottom:1px solid var(--bdr);flex-shrink:0;background:var(--bg2)}
.gcal-week-hdr-time{padding:8px}
.gcal-week-hdr-day{padding:6px 4px;text-align:center;border-left:1px solid var(--bdr)}
.gcal-week-hdr-dayname{font-size:.7rem;font-weight:600;color:var(--tx3);text-transform:uppercase;letter-spacing:.06em}
.gcal-week-hdr-daynum{font-size:1.5rem;font-weight:400;font-family:'DM Sans',sans-serif;line-height:1.2;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;margin:0 auto}
.gcal-week-hdr-daynum.today{background:var(--ac);color:#fff}
.gcal-week-body{display:flex;flex:1;overflow-y:auto}
.gcal-week-times{width:52px;flex-shrink:0;padding-top:8px}
.gcal-week-time-label{height:48px;display:flex;align-items:flex-start;justify-content:flex-end;padding-right:8px;font-size:.68rem;color:var(--tx3);margin-top:-8px}
.gcal-week-cols{display:grid;grid-template-columns:repeat(7,1fr);flex:1;border-left:1px solid var(--bdr)}
.gcal-week-col{border-right:1px solid var(--bdr);position:relative}
.gcal-week-col:last-child{border-right:none}
.gcal-week-hour{height:48px;border-bottom:1px solid rgba(30,45,69,.5)}
.gcal-week-hour.half{border-bottom:1px dashed rgba(30,45,69,.3)}
.gcal-time-now{position:absolute;left:0;right:0;height:2px;background:var(--red);z-index:2;pointer-events:none}
.gcal-time-now::before{content:'';position:absolute;left:-4px;top:-4px;width:10px;height:10px;background:var(--red);border-radius:50%}
.gcal-week-ev{position:absolute;left:2px;right:2px;border-radius:4px;padding:2px 5px;font-size:.72rem;font-weight:500;overflow:hidden;cursor:pointer;z-index:1;border-left:3px solid rgba(255,255,255,.4)}
.gcal-week-ev.task{background:#1a73e8;color:#fff}
.gcal-week-ev.ig{background:#e91e8c;color:#fff}
.gcal-week-ev.gcal-ev-week{background:#0f9d58;color:#fff}
.gcal-week-ev:hover{filter:brightness(1.12);z-index:3}
.gcal-week-ev-title{font-weight:600;font-size:.72rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gcal-week-ev-time{font-size:.64rem;opacity:.85}

/* Dia */
.gcal-day-wrap{display:flex;flex-direction:column;height:100%;overflow:hidden}
.gcal-day-hdr{padding:12px 16px;border-bottom:1px solid var(--bdr);background:var(--bg2);flex-shrink:0}
.gcal-day-hdr-date{font-size:1.4rem;font-weight:300;font-family:'DM Sans',sans-serif;color:var(--tx)}
.gcal-day-hdr-date strong{font-weight:700;color:var(--ac2)}
.gcal-day-body{display:flex;flex:1;overflow-y:auto;max-height:calc(100vh - 250px);position:relative}
.gcal-day-times{width:52px;flex-shrink:0;padding-top:8px}
.gcal-day-col{flex:1;border-left:1px solid var(--bdr);position:relative}
.gcal-day-hour{height:48px;border-bottom:1px solid rgba(30,45,69,.5);cursor:pointer;transition:background .1s}
.gcal-day-hour:hover{background:rgba(59,130,246,.04)}
.gcal-day-ev{position:absolute;left:4px;right:4px;border-radius:6px;padding:4px 8px;font-size:.78rem;font-weight:500;overflow:hidden;cursor:pointer;z-index:1}
.gcal-day-ev.task{background:#1a73e8;color:#fff}
.gcal-day-ev.ig{background:#e91e8c;color:#fff}
.gcal-day-ev:hover{filter:brightness(1.1);z-index:3}

/* Ano */
.gcal-year{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;padding:4px}
.gcal-year-card{background:var(--sur);border:1px solid var(--bdr);border-radius:var(--r);padding:14px;cursor:pointer;transition:var(--tr)}
.gcal-year-card:hover{border-color:var(--bdr2);box-shadow:var(--sh)}
.gcal-year-card-title{font-weight:700;font-size:.82rem;margin-bottom:10px;font-family:'Syne',sans-serif}
.gcal-mini{display:grid;grid-template-columns:repeat(7,1fr);gap:1px}
.gcal-mini-h{font-size:.56rem;text-align:center;color:var(--tx3);padding:1px 0;font-weight:600}
.gcal-mini-d{font-size:.65rem;text-align:center;padding:2px 1px;border-radius:50%;line-height:1.4;cursor:default}
.gcal-mini-d.today{background:var(--ac);color:#fff}
.gcal-mini-d.has-ev{color:var(--ac2);font-weight:700}
.gcal-mini-d.other{opacity:.25}



/* ── TOAST ── */
.toast{position:fixed;bottom:22px;right:22px;padding:10px 16px;background:var(--sur2);border:1px solid var(--bdr2);border-radius:var(--rs);color:var(--tx);font-size:.84rem;font-weight:500;box-shadow:var(--shl);z-index:9999;animation:ti .3s cubic-bezier(.22,1,.36,1);max-width:290px}
@keyframes ti{from{opacity:0;transform:translateX(14px) scale(.95)}to{opacity:1;transform:translateX(0) scale(1)}}
.toast.success{border-left:3px solid var(--green)}
.toast.error{border-left:3px solid var(--red)}
.toast.info{border-left:3px solid var(--ac)}

/* ══════════════════════════════════════════════
   RESPONSIVE — MOBILE FIRST
══════════════════════════════════════════════ */

/* Tablet largo */
@media(max-width:1400px){
  .stats-row{grid-template-columns:repeat(3,1fr)}
}

/* Tablet */
@media(max-width:1100px){
  .stats-row{grid-template-columns:repeat(3,1fr)}
  .dash-grid{grid-template-columns:1fr 1fr}
  .dash-card.span2{grid-column:span 2}
  .metrics-charts{grid-template-columns:1fr}
  .cal-year{grid-template-columns:repeat(3,1fr)}
}

@media(max-width:900px){
  .stats-row{grid-template-columns:repeat(2,1fr)}
  .cal-year{grid-template-columns:repeat(2,1fr)}
  .settings-grid{grid-template-columns:1fr}
  .dash-grid{grid-template-columns:1fr}
  .dash-card.span2{grid-column:span 1}
}

/* Mobile */
@media(max-width:768px){
  /* Sidebar: drawer lateral */
  .sidebar{
    position:fixed;left:0;top:0;bottom:0;
    transform:translateX(-100%);
    z-index:200;
    box-shadow:var(--shxl);
    transition:transform .25s cubic-bezier(.22,1,.36,1);
    width:260px!important;
  }
  .sidebar.mobile-open{transform:translateX(0)}
  .sidebar.collapsed{width:260px!important}
  /* Força itens visíveis mesmo se collapsed */
  .sidebar .brand-name.sm,
  .sidebar .nav-label,
  .sidebar .user-info,
  .sidebar nav span{display:initial!important}
  .sidebar .nav-item{justify-content:flex-start!important;padding:8px 10px!important}
  .sidebar .sb-brand{justify-content:flex-start!important}

  .sb-overlay{display:block}

  /* Layout */
  .main-wrap{width:100%}
  .content{padding:12px}

  /* Stats */
  .stats-row{grid-template-columns:repeat(2,1fr);gap:10px}
  .stat-card{padding:13px}
  .stat-num{font-size:1.6rem}

  /* Dashboard */
  .dash-grid{grid-template-columns:1fr;gap:10px}
  .dash-card.span2{grid-column:span 1}

  /* Topbar */
  .topbar{padding:0 12px;gap:8px}
  .page-title{font-size:.92rem}

  /* Kanban — scroll horizontal */
  .kanban{gap:10px}
  .k-col{width:260px}

  /* Instagram board */
  .ig-board{gap:10px}
  .ig-col{width:210px}

  /* Clients grid */
  .clients-grid{grid-template-columns:1fr}

  /* Formulários */
  .form-grid{grid-template-columns:1fr}
  .span2{grid-column:span 1}
  .prazo-range{flex-direction:column;gap:6px}
  .prazo-sep{display:none}

  /* Filtros */
  .filters-bar{gap:7px}
  .search-inp{min-width:150px}
  .sel{min-width:120px}

  /* Calendário */
  .cal-toolbar{flex-direction:column;align-items:flex-start;gap:10px}
  .cal-views{width:100%}
  .view-btn{flex:1;text-align:center}
  .cal-year{grid-template-columns:repeat(2,1fr)}
  .cal-wday{font-size:.6rem;padding:6px 2px}
  .cal-day{min-height:60px;padding:4px}
  .cal-dnum{font-size:.7rem;width:20px;height:20px}
  .cal-devent{font-size:.56rem}

  /* Metrics */
  .metrics-stats{grid-template-columns:repeat(2,1fr)}
  .metrics-table-wrap{font-size:.74rem}
  .metrics-table th,.metrics-table td{padding:7px 8px}

  /* Settings */
  .settings-grid{grid-template-columns:1fr}

  /* Toast */
  .toast{bottom:16px;right:12px;left:12px;max-width:100%}
}

/* Mobile pequeno */
@media(max-width:480px){
  .stats-row{grid-template-columns:1fr 1fr;gap:8px}
  .stat-num{font-size:1.4rem}
  .stat-card{padding:11px}

  /* Modal sobe do fundo */
  .modal-overlay{align-items:flex-end;padding:0;backdrop-filter:none}
  .modal{
    border-radius:20px 20px 0 0;
    max-height:92vh;
    width:100%;
    max-width:100%;
  }
  .modal-hdr{border-radius:20px 20px 0 0}

  /* Botões de ação no modal */
  .modal-actions{flex-wrap:wrap}
  .modal-actions .btn-ghost{order:3;width:100%;justify-content:center}

  /* Topbar */
  .tb-right gap{gap:6px}
  .gcal-chip{display:none}
  .sync-chip{display:none}

  /* Kanban mais estreito */
  .k-col{width:240px}
  .ig-col{width:190px}

  /* Calendário mensal simplificado */
  .cal-devent{display:none}
  .cal-day.has-ev::after{
    content:'•';
    position:absolute;bottom:3px;left:50%;transform:translateX(-50%);
    color:var(--ac2);font-size:10px;line-height:1
  }

  /* Filters scroll horizontal */
  .filters-bar{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px}
  .filters-bar::-webkit-scrollbar{height:2px}

  /* Settings cards */
  .settings-card-hdr{flex-wrap:wrap;gap:8px}
  .status-badge{margin-left:0}
}

/* Fix blur no mobile — desativa backdrop-filter em dispositivos lentos */
@media(max-width:768px){
  .modal-overlay{backdrop-filter:none;-webkit-backdrop-filter:none;background:rgba(0,0,0,.82)}
  .topbar{backdrop-filter:none;-webkit-backdrop-filter:none;background:var(--bg2)}
  .auth-screen .auth-bg .orb{filter:blur(60px)}
}

/* ── HISTÓRICO DE ATIVIDADES ── */
.hist-wrap{display:flex;flex-direction:column;gap:14px}
.hist-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:4px}
.hist-stat{background:var(--sur);border:1px solid var(--bdr);border-radius:var(--r);padding:13px 16px;display:flex;align-items:center;gap:11px}
.hist-stat-ico{font-size:1.2rem;flex-shrink:0}
.hist-stat-val{font-family:'Syne',sans-serif;font-size:1.3rem;font-weight:800;line-height:1}
.hist-stat-lbl{font-size:.7rem;color:var(--tx3);text-transform:uppercase;letter-spacing:.07em;margin-top:2px}

.hist-list{background:var(--sur);border:1px solid var(--bdr);border-radius:var(--r);overflow:hidden}
.hist-day-group{border-bottom:1px solid var(--bdr)}
.hist-day-group:last-child{border-bottom:none}
.hist-day-hdr{padding:9px 18px;background:var(--bg3);font-family:'Syne',sans-serif;font-size:.72rem;font-weight:700;color:var(--tx3);text-transform:uppercase;letter-spacing:.08em;border-bottom:1px solid var(--bdr);display:flex;align-items:center;justify-content:space-between}
.hist-day-count{background:var(--sur2);color:var(--tx2);padding:1px 8px;border-radius:99px;font-family:'DM Sans',sans-serif;font-size:.68rem;font-weight:600}

.hist-item{display:flex;align-items:flex-start;gap:13px;padding:11px 18px;border-bottom:1px solid var(--bdr);transition:background .1s}
.hist-item:last-child{border-bottom:none}
.hist-item:hover{background:var(--bg3)}
.hist-item-ico{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:.9rem;flex-shrink:0;margin-top:1px}
.hist-item-ico.auth{background:rgba(96,165,250,.12)}
.hist-item-ico.tarefa{background:rgba(59,130,246,.12)}
.hist-item-ico.cliente{background:rgba(167,139,250,.12)}
.hist-item-ico.instagram{background:rgba(244,114,182,.12)}
.hist-item-ico.calendario{background:rgba(52,211,153,.12)}
.hist-item-ico.metrica{background:rgba(251,191,36,.12)}
.hist-item-ico.sazonais{background:rgba(251,146,60,.12)}
.hist-item-ico.config{background:rgba(90,116,148,.12)}
.hist-item-ico.perfil{background:rgba(52,211,153,.12)}

.hist-item-body{flex:1;min-width:0}
.hist-item-acao{font-size:.84rem;font-weight:500;color:var(--tx);margin-bottom:3px}
.hist-item-acao strong{color:var(--ac2)}
.hist-item-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.hist-item-user{font-size:.74rem;color:var(--tx2);display:flex;align-items:center;gap:4px}
.hist-item-user::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--ac);flex-shrink:0}
.hist-item-detalhe{font-size:.72rem;color:var(--tx3);background:var(--bg3);padding:1px 7px;border-radius:4px;max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hist-item-time{font-size:.72rem;color:var(--tx3);margin-left:auto;flex-shrink:0;font-family:'DM Sans',sans-serif}

.hist-pagination{display:flex;align-items:center;justify-content:center;gap:8px;padding:14px}
.hist-page-btn{padding:5px 12px;background:var(--sur);border:1px solid var(--bdr);border-radius:var(--rs);color:var(--tx2);font-family:'DM Sans',sans-serif;font-size:.8rem;cursor:pointer;transition:var(--tr)}
.hist-page-btn:hover{background:var(--sur2);color:var(--tx)}
.hist-page-btn.active{background:var(--ac);color:#fff;border-color:var(--ac)}
.hist-page-info{font-size:.78rem;color:var(--tx3);padding:0 8px}

@media(max-width:900px){.hist-stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.hist-stats{grid-template-columns:1fr 1fr}.hist-item-detalhe{display:none}}

/* ═══════════════════════════════════════════════════════
   MOBILE COMPLETO — iPhone / Android
   ═══════════════════════════════════════════════════════ */

/* ── Base iOS: evita zoom em inputs ── */
@media(max-width:768px){
  input,select,textarea{font-size:16px!important}

  /* ── Sidebar como drawer ── */
  .sidebar{
    position:fixed;left:0;top:0;bottom:0;
    transform:translateX(-100%);
    z-index:300;
    width:280px!important;
    transition:transform .28s cubic-bezier(.22,1,.36,1);
    box-shadow:0 0 40px rgba(0,0,0,.5);
  }
  .sidebar.mobile-open{transform:translateX(0)!important}
  .sidebar.collapsed{transform:translateX(-100%);width:280px!important}
  .sidebar.collapsed.mobile-open{transform:translateX(0)!important}

  /* Força textos visíveis na sidebar mesmo collapsed */
  .sidebar .brand-name.sm,
  .sidebar .brand-by-sm,
  .sidebar .nav-label,
  .sidebar .user-info,
  .sidebar nav span:not(.nbadge){display:initial!important}
  .sidebar .nav-item{justify-content:flex-start!important;padding:12px 14px!important;min-height:44px}
  .sidebar .sb-brand{justify-content:flex-start!important}
  .sidebar .sb-logo-footer{display:block!important}

  /* Overlay escurece o conteúdo atrás */
  .sb-overlay{display:block;position:fixed;inset:0;z-index:299;background:rgba(0,0,0,0);pointer-events:none;transition:background .28s}
  .sb-overlay.active{background:rgba(0,0,0,.55);pointer-events:all}

  /* ── Layout principal ── */
  .app{flex-direction:column}
  .main-wrap{width:100%;min-width:0}
  .content{padding:10px;overflow-x:hidden}

  /* ── Topbar ── */
  .topbar{padding:0 10px;gap:8px;height:52px;backdrop-filter:none;-webkit-backdrop-filter:none;background:var(--bg2)}
  .page-title{font-size:.88rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:160px}
  .page-sub{display:none}
  .tb-right{gap:6px}
  .gcal-chip,.meta-chip{display:none}
  .sync-chip{display:none}
  .btn-main{padding:7px 12px;font-size:.8rem}

  /* ── Stats ── */
  .stats-row{grid-template-columns:repeat(2,1fr);gap:8px}
  .stat-card{padding:12px 10px}
  .stat-num{font-size:1.5rem}
  .stat-label{font-size:.68rem}

  /* ── Demanda Semanal ── */
  .demanda-grid{grid-template-columns:repeat(3,1fr);gap:7px}

  /* ── Dashboard cards ── */
  .dash-grid{grid-template-columns:1fr;gap:10px}
  .dash-card.span2{grid-column:span 1}

  /* ── Kanban — scroll horizontal ── */
  .kanban{
    display:flex;flex-direction:row;gap:10px;
    overflow-x:auto;padding-bottom:12px;
    -webkit-overflow-scrolling:touch;
    scroll-snap-type:x mandatory;
  }
  .k-col{
    min-width:270px;width:270px;flex-shrink:0;
    scroll-snap-align:start;
  }
  .k-col-hdr{position:sticky;top:0;z-index:2;background:var(--sur)}

  /* ── Instagram board ── */
  .ig-board{
    display:flex;flex-direction:row;gap:10px;
    overflow-x:auto;padding-bottom:12px;
    -webkit-overflow-scrolling:touch;
  }
  .ig-col{min-width:220px;width:220px;flex-shrink:0}

  /* ── Clientes ── */
  .clients-grid{grid-template-columns:1fr}
  .client-card{padding:14px}

  /* ── Filtros ── */
  .page-toolbar{padding:0 0 10px}
  .filters-bar{
    flex-wrap:nowrap;overflow-x:auto;gap:7px;
    padding-bottom:4px;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
  }
  .filters-bar::-webkit-scrollbar{display:none}
  .sel{min-width:110px;font-size:14px}
  .search-inp{min-width:140px}

  /* ── Calendário ── */
  .cal-toolbar{flex-direction:column;gap:8px;align-items:stretch}
  .cal-views{display:flex;width:100%}
  .view-btn{flex:1;text-align:center;padding:6px 4px;font-size:.74rem}
  .gcal-wrap{height:auto;min-height:70vh}

  /* Vista mensal mobile */
  .gcal-month-wday{font-size:.62rem;padding:6px 2px}
  .gcal-cell{min-height:56px;padding:3px 2px}
  .gcal-cell-num{font-size:.7rem;width:20px;height:20px;font-weight:600}
  .gcal-ev{font-size:.62rem;padding:1px 3px;margin-bottom:1px}
  .gcal-ev strong{display:none}

  /* Vista semanal mobile — mostra só 3 dias */
  .gcal-week-hdr{grid-template-columns:36px repeat(3,1fr)}
  .gcal-week-cols{grid-template-columns:repeat(3,1fr)}
  .gcal-week-col:nth-child(n+4){display:none}
  .gcal-week-hdr-day:nth-child(n+5){display:none}
  .gcal-week-times{width:36px}
  .gcal-week-time-label{font-size:.6rem;padding-right:4px}

  /* Vista diária mobile */
  .gcal-day-wrap{padding:0}
  .gcal-day-hdr{padding:10px 12px}

  /* Calendário anual mobile */
  .gcal-year{grid-template-columns:repeat(2,1fr);gap:10px}

  /* ── Métricas ── */
  .metrics-stats{grid-template-columns:repeat(2,1fr);gap:8px}
  .metrics-charts{grid-template-columns:1fr}
  .metrics-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
  .metrics-table{min-width:600px}
  .metrics-table th,.metrics-table td{padding:7px 8px;font-size:.74rem}

  /* ── Settings ── */
  .settings-grid{grid-template-columns:1fr}
  .settings-card-hdr{flex-wrap:wrap;gap:8px}

  /* ── Histórico ── */
  .hist-stats{grid-template-columns:repeat(2,1fr);gap:8px}
  .hist-item-detalhe{max-width:180px}
  .hist-item-time{display:none}

  /* ── Modal — sobe do fundo ── */
  .modal-overlay{
    align-items:flex-end;
    padding:0;
    backdrop-filter:none;
    -webkit-backdrop-filter:none;
    background:rgba(0,0,0,.7);
  }
  .modal{
    border-radius:20px 20px 0 0;
    max-height:90vh;
    width:100%;
    max-width:100%;
    margin:0;
  }
  .modal-hdr{border-radius:20px 20px 0 0;padding:14px 16px}
  .modal-body{padding:14px 16px 24px;overflow-y:auto;max-height:calc(90vh - 56px);-webkit-overflow-scrolling:touch}
  .modal-actions{flex-wrap:wrap;gap:8px}
  .modal-actions .btn-ghost{order:3;width:100%;justify-content:center}

  /* ── Formulários em modal ── */
  .form-grid{grid-template-columns:1fr}
  .span2{grid-column:span 1!important}
  .posting-day-row{flex-wrap:wrap}

  /* ── Toast ── */
  .toast{bottom:env(safe-area-inset-bottom,16px);right:10px;left:10px;max-width:100%;font-size:.84rem}

  /* ── Safe area iOS ── */
  .sidebar{padding-bottom:env(safe-area-inset-bottom,0)}
  .sb-footer{padding-bottom:calc(env(safe-area-inset-bottom,0) + 6px)}
}

/* ── iPhone SE / telas muito pequenas ── */
@media(max-width:390px){
  .stats-row{grid-template-columns:1fr 1fr;gap:6px}
  .stat-num{font-size:1.3rem}
  .demanda-grid{grid-template-columns:repeat(2,1fr)}
  .gcal-year{grid-template-columns:1fr 1fr}
  .k-col{min-width:240px;width:240px}
  .ig-col{min-width:200px;width:200px}
  .hist-stats{grid-template-columns:1fr 1fr}
  .page-title{max-width:120px}
}

/* ── Landscape mobile ── */
@media(max-width:900px) and (orientation:landscape) and (max-height:500px){
  .modal{max-height:95vh;border-radius:12px;margin:10px auto;width:94%;max-width:600px}
  .modal-overlay{align-items:center;padding:0 10px}
  .sidebar{width:240px!important}
  .gcal-wrap{min-height:60vh}
}

/* ═══════════════════════════════════════════════════════
   REMOVE TODOS OS BLURS NO MOBILE — causa "borrado" no iOS
   ═══════════════════════════════════════════════════════ */
@media(max-width:768px){
  *,*::before,*::after{
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
  .orb{filter:none!important;display:none}
  .auth-card{background:var(--bg2)!important}
  .topbar{background:var(--bg2)!important}
  .sb-overlay{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
  .modal-overlay{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;background:rgba(0,0,0,.85)!important}
  .notif-panel{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;background:var(--sur)!important}
}

/* ═══════════════════════════════════════════════════════
   COPYWRITER IA
   ═══════════════════════════════════════════════════════ */

/* ── Hero / Setup ── */
.cw-home{display:flex;flex-direction:column;gap:24px;max-width:800px;margin:0 auto;padding:8px 0}
.cw-hero{text-align:center;padding:32px 20px 16px}
.cw-hero-icon{width:60px;height:60px;border-radius:18px;background:linear-gradient(135deg,#6366f1,#8b5cf6);display:flex;align-items:center;justify-content:center;margin:0 auto 14px;box-shadow:0 8px 24px rgba(99,102,241,.35)}
.cw-hero-icon svg{stroke:#fff}
.cw-hero-title{font-family:'Syne',sans-serif;font-size:1.6rem;font-weight:800;background:linear-gradient(135deg,#6366f1,#8b5cf6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:6px}
.cw-hero-sub{color:var(--tx3);font-size:.88rem}

.cw-setup{background:var(--sur);border:1px solid var(--bdr);border-radius:var(--r);padding:22px}
.cw-field{margin-bottom:16px}
.cw-label{font-family:'Syne',sans-serif;font-size:.78rem;font-weight:700;color:var(--tx2);text-transform:uppercase;letter-spacing:.07em;display:block;margin-bottom:8px}
.cw-select{width:100%;padding:10px 12px;background:var(--bg3);border:1px solid var(--bdr2);border-radius:var(--rs);color:var(--tx);font-family:'DM Sans',sans-serif;font-size:.88rem;cursor:pointer;transition:var(--tr)}
.cw-select:focus{border-color:var(--ac);outline:none}

/* ── Agent Cards ── */
.cw-agents{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.cw-agent-card{background:var(--bg3);border:2px solid var(--bdr);border-radius:var(--r);padding:14px;text-align:left;cursor:pointer;transition:var(--tr);display:flex;flex-direction:column;gap:4px}
.cw-agent-card:hover{border-color:var(--bdr2);background:var(--sur2)}
.cw-agent-card.selected{border-color:#6366f1;background:rgba(99,102,241,.08)}
.cw-agent-ico{font-size:1.4rem;margin-bottom:4px}
.cw-agent-name{font-family:'Syne',sans-serif;font-size:.84rem;font-weight:700;color:var(--tx)}
.cw-agent-desc{font-size:.74rem;color:var(--tx3);line-height:1.4}

.cw-setup-actions{display:flex;gap:10px;margin-top:20px;padding-top:16px;border-top:1px solid var(--bdr)}

/* ── Conversas recentes ── */
.cw-recentes{margin-top:8px}
.cw-recentes-hdr{margin-bottom:10px}
.cw-recentes-list{display:flex;flex-direction:column;gap:6px}
.cw-recente-item{display:flex;align-items:center;gap:10px;padding:10px 12px;background:var(--bg3);border:1px solid var(--bdr);border-radius:var(--rs);cursor:pointer;transition:var(--tr)}
.cw-recente-item:hover{border-color:var(--bdr2);background:var(--sur2)}
.cw-recente-ico{font-size:1rem;flex-shrink:0}
.cw-recente-info{flex:1;min-width:0}
.cw-recente-cliente{font-size:.82rem;font-weight:600;color:var(--tx);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cw-recente-meta{font-size:.72rem;color:var(--tx3)}
.cw-recente-time{font-size:.7rem;color:var(--tx3);flex-shrink:0}

/* ── Chat ── */
.cw-chat{display:flex;flex-direction:column;height:calc(100vh - 100px);background:var(--bg)}
.cw-chat-hdr{display:flex;align-items:center;gap:10px;padding:12px 16px;background:var(--sur);border-bottom:1px solid var(--bdr);flex-shrink:0}
.cw-chat-hdr-info{flex:1;min-width:0}
.cw-chat-cliente{font-family:'Syne',sans-serif;font-size:.9rem;font-weight:700;color:var(--tx);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cw-chat-agente{font-size:.74rem;color:#8b5cf6;font-weight:600}

.cw-messages{flex:1;overflow-y:auto;padding:20px 16px;display:flex;flex-direction:column;gap:16px;scroll-behavior:smooth}

/* Welcome state */
.cw-welcome{text-align:center;padding:40px 20px;max-width:400px;margin:auto}
.cw-welcome-ico{font-size:2.5rem;margin-bottom:12px}
.cw-welcome-title{font-family:'Syne',sans-serif;font-size:1.1rem;font-weight:700;color:var(--tx);margin-bottom:8px}
.cw-welcome-msg{font-size:.84rem;color:var(--tx3);line-height:1.6}

/* Mensagens */
.cw-msg{display:flex;gap:10px;animation:ci .2s ease}
.cw-msg.user{flex-direction:row-reverse}
.cw-msg-avatar{width:30px;height:30px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:.82rem;font-weight:700;margin-top:2px}
.cw-msg.assistant .cw-msg-avatar{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff}
.cw-msg.user .cw-msg-avatar{background:var(--ac);color:#fff;font-size:.7rem}
.cw-msg-bubble{max-width:75%;padding:12px 14px;border-radius:14px;font-size:.84rem;line-height:1.65;white-space:pre-wrap;word-break:break-word}
.cw-msg.assistant .cw-msg-bubble{background:var(--sur);border:1px solid var(--bdr);border-radius:4px 14px 14px 14px;color:var(--tx)}
.cw-msg.user .cw-msg-bubble{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border-radius:14px 4px 14px 14px}
.cw-msg-time{font-size:.66rem;color:var(--tx3);margin-top:4px;text-align:right}
.cw-msg.user .cw-msg-time{text-align:left}

/* Typing indicator */
.cw-typing{display:flex;align-items:center;gap:4px;padding:14px;background:var(--sur);border:1px solid var(--bdr);border-radius:4px 14px 14px 14px;width:fit-content}
.cw-typing span{width:7px;height:7px;border-radius:50%;background:#8b5cf6;animation:cwtype .9s ease-in-out infinite}
.cw-typing span:nth-child(2){animation-delay:.15s}
.cw-typing span:nth-child(3){animation-delay:.3s}
@keyframes cwtype{0%,60%,100%{transform:translateY(0)}30%{transform:translateY(-6px)}}

/* Copy button na mensagem */
.cw-msg-actions{display:flex;gap:6px;margin-top:6px;opacity:0;transition:opacity .15s}
.cw-msg:hover .cw-msg-actions{opacity:1}
.cw-copy-btn{padding:3px 8px;font-size:.7rem;background:var(--bg3);border:1px solid var(--bdr);border-radius:5px;color:var(--tx3);cursor:pointer;transition:var(--tr)}
.cw-copy-btn:hover{color:var(--tx);border-color:var(--bdr2)}

/* Input área */
.cw-input-wrap{flex-shrink:0;padding:12px 16px 16px;border-top:1px solid var(--bdr);background:var(--bg)}
.cw-input-box{display:flex;align-items:flex-end;gap:8px;background:var(--sur);border:1px solid var(--bdr2);border-radius:14px;padding:8px 8px 8px 14px;transition:border-color .15s}
.cw-input-box:focus-within{border-color:#6366f1}
.cw-textarea{flex:1;background:transparent;border:none;outline:none;resize:none;color:var(--tx);font-family:'DM Sans',sans-serif;font-size:.88rem;line-height:1.5;max-height:160px;min-height:24px;overflow-y:auto}
.cw-textarea::placeholder{color:var(--tx3)}
.cw-send-btn{width:36px;height:36px;border-radius:10px;background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:var(--tr)}
.cw-send-btn:hover{opacity:.88;transform:scale(1.05)}
.cw-send-btn:disabled{opacity:.4;cursor:not-allowed;transform:none}
.cw-send-btn svg{stroke:#fff}
.cw-input-hint{font-size:.68rem;color:var(--tx3);margin-top:6px;text-align:center}

/* ── Knowledge Base modal list ── */
.kb-list{display:flex;flex-direction:column;gap:8px;max-height:280px;overflow-y:auto}
.kb-item{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;background:var(--bg3);border:1px solid var(--bdr);border-radius:var(--rs)}
.kb-item-info{flex:1;min-width:0}
.kb-item-tipo{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#8b5cf6;margin-bottom:2px}
.kb-item-titulo{font-size:.82rem;font-weight:600;color:var(--tx);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.kb-item-preview{font-size:.74rem;color:var(--tx3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.kb-item-del{width:22px;height:22px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border:1px solid var(--bdr);border-radius:5px;cursor:pointer;color:var(--tx3);background:transparent;transition:var(--tr);font-size:.7rem}
.kb-item-del:hover{border-color:var(--red);color:var(--red);background:rgba(248,113,113,.08)}

/* ── Config OpenAI banner ── */
.cw-openai-banner{display:flex;align-items:center;gap:12px;padding:12px 16px;background:rgba(99,102,241,.08);border:1px solid rgba(99,102,241,.2);border-radius:var(--rs);margin-bottom:0}
.cw-openai-banner svg{stroke:#6366f1;flex-shrink:0}
.cw-openai-banner p{font-size:.82rem;color:var(--tx2);flex:1}

/* ── Responsive ── */
@media(max-width:768px){
  .cw-agents{grid-template-columns:1fr 1fr}
  .cw-chat{height:calc(100vh - 52px)}
  .cw-msg-bubble{max-width:90%}
  .cw-welcome{padding:24px 16px}
  .cw-setup-actions{flex-direction:column}
  .cw-setup-actions .btn-primary,.cw-setup-actions .btn-ghost{width:100%;justify-content:center}
}
@media(max-width:400px){
  .cw-agents{grid-template-columns:1fr}
}

/* ═══════════════════════════════════════════════════════
   MODAL TABS (Dados / Identidade / Logos)
   ═══════════════════════════════════════════════════════ */
.modal-tabs{display:flex;gap:0;border-bottom:1px solid var(--bdr);padding:0 20px;background:var(--sur);flex-shrink:0}
.modal-tab{padding:10px 14px;font-family:'Syne',sans-serif;font-size:.78rem;font-weight:600;color:var(--tx3);background:transparent;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:var(--tr);white-space:nowrap}
.modal-tab:hover{color:var(--tx)}
.modal-tab.active{color:var(--ac);border-bottom-color:var(--ac)}
.tab-content{display:none}
.tab-content.active{display:block}

/* ═══════════════════════════════════════════════════════
   IDENTIDADE VISUAL
   ═══════════════════════════════════════════════════════ */
.iv-preview{border-radius:12px;overflow:hidden;margin-bottom:4px;position:relative}
.iv-preview-bar{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:rgba(0,0,0,.4);backdrop-filter:blur(4px);position:absolute;top:0;left:0;right:0;z-index:2}
.iv-preview-label{font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:rgba(255,255,255,.5)}
.iv-preview-style{font-size:.7rem;color:rgba(255,255,255,.6)}
.iv-preview-card{height:160px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:40px 20px 20px;transition:all .2s}
.iv-preview-titulo{font-family:'Syne',sans-serif;font-size:1.2rem;font-weight:900;text-align:center;letter-spacing:.04em;transition:all .2s}
.iv-preview-sub{font-size:.78rem;text-align:center;opacity:.75;transition:all .2s}
.iv-preview-cta{font-size:.72rem;font-weight:700;letter-spacing:.1em;padding:6px 16px;border-radius:20px;margin-top:4px;transition:all .2s}
.iv-preview-cores{display:flex;gap:6px;padding:10px 12px;background:rgba(0,0,0,.2)}
.iv-cor-chip{width:28px;height:28px;border-radius:50%;border:2px solid rgba(255,255,255,.15);transition:transform .15s;cursor:default}
.iv-cor-chip:hover{transform:scale(1.15)}

.iv-color-field .iv-color-row{display:flex;align-items:center;gap:8px}
.iv-color-field input[type=color]{width:40px;height:36px;padding:2px;border:1px solid var(--bdr2);border-radius:8px;cursor:pointer;background:var(--bg3)}
.iv-color-field input[type=text]{flex:1;font-family:'DM Mono',monospace;font-size:.82rem}

.iv-options{display:flex;flex-wrap:wrap;gap:7px}
.iv-opt-btn{padding:6px 14px;background:var(--bg3);border:1.5px solid var(--bdr);border-radius:20px;color:var(--tx2);font-size:.78rem;font-weight:500;cursor:pointer;transition:var(--tr)}
.iv-opt-btn:hover{border-color:var(--bdr2);color:var(--tx)}
.iv-opt-btn.active{border-color:var(--ac);color:var(--ac);background:rgba(96,165,250,.08)}

.iv-ai-row{display:flex;align-items:center;gap:12px;margin-top:16px;padding:12px;background:var(--bg3);border:1px solid var(--bdr);border-radius:var(--rs)}

/* ═══════════════════════════════════════════════════════
   LOGOS
   ═══════════════════════════════════════════════════════ */
.logos-upload-area{border:2px dashed var(--bdr2);border-radius:var(--r);padding:28px;text-align:center;cursor:pointer;transition:var(--tr);background:var(--bg3)}
.logos-upload-area:hover{border-color:var(--ac);background:rgba(96,165,250,.04)}
.logos-upload-area p{font-size:.84rem;color:var(--tx2);margin:8px 0 4px;font-weight:500}
.logos-upload-area span{font-size:.72rem;color:var(--tx3)}
.logos-config-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:14px 0}
.logos-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;margin-top:4px}
.logo-item{background:var(--bg3);border:1px solid var(--bdr);border-radius:var(--rs);padding:10px;position:relative;display:flex;flex-direction:column;align-items:center;gap:6px}
.logo-item-img{width:100%;height:80px;object-fit:contain;border-radius:6px}
.logo-item-meta{font-size:.68rem;color:var(--tx3);text-align:center}
.logo-item-tipo{font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;padding:2px 6px;border-radius:4px;background:var(--bg2)}
.logo-item-del{position:absolute;top:6px;right:6px;width:18px;height:18px;border-radius:4px;background:var(--bg2);border:1px solid var(--bdr);color:var(--tx3);font-size:.65rem;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--tr)}
.logo-item-del:hover{background:rgba(248,113,113,.15);border-color:var(--red);color:var(--red)}

@media(max-width:600px){
  .dg-artes-grid{grid-template-columns:1fr}
  .modal-tabs{overflow-x:auto;scrollbar-width:none}
  .modal-tabs::-webkit-scrollbar{display:none}
  .iv-options{gap:5px}
  .iv-opt-btn{padding:5px 10px;font-size:.72rem}
}

/* ── Upload de imagens para análise de identidade visual ── */
.iv-upload-section{margin-top:4px}
.iv-upload-area{border:2px dashed var(--bdr2);border-radius:var(--r);padding:22px;text-align:center;cursor:pointer;transition:var(--tr);background:var(--bg3);display:flex;flex-direction:column;align-items:center;gap:6px}
.iv-upload-area:hover{border-color:var(--ac);background:rgba(96,165,250,.04)}
.iv-upload-area p{font-size:.84rem;color:var(--tx2);font-weight:500;margin:0}
.iv-upload-area span{font-size:.72rem;color:var(--tx3)}
.iv-img-preview{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}
.iv-img-thumb{position:relative;width:72px;height:72px;border-radius:8px;overflow:hidden;border:2px solid var(--bdr);flex-shrink:0}
.iv-img-thumb img{width:100%;height:100%;object-fit:cover}
.iv-img-thumb-del{position:absolute;top:2px;right:2px;width:16px;height:16px;background:rgba(0,0,0,.7);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:.6rem;color:#fff;line-height:1}
.iv-img-thumb-del:hover{background:var(--red)}

/* ── IV Upload tabs ── */
.iv-upload-tabs{display:flex;gap:0;margin-bottom:10px;border-bottom:1px solid var(--bdr)}
.iv-upload-tab{padding:8px 14px;font-size:.78rem;font-weight:600;color:var(--tx3);background:transparent;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:var(--tr)}
.iv-upload-tab:hover{color:var(--tx)}
.iv-upload-tab.active{color:var(--ac);border-bottom-color:var(--ac)}
.iv-upload-panel{display:block}
.iv-upload-panel.hidden{display:none}

/* ── Meta BM list ── */
.meta-bm-title{font-family:'Syne',sans-serif;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--tx2);margin-bottom:8px}
.meta-bm-list{display:flex;flex-direction:column;gap:6px;max-height:280px;overflow-y:auto}
.meta-bm-item{display:flex;align-items:center;gap:12px;padding:10px 12px;background:var(--bg3);border:1.5px solid var(--bdr);border-radius:var(--rs);cursor:pointer;transition:var(--tr)}
.meta-bm-item:hover{border-color:var(--bdr2);background:var(--sur2)}
.meta-bm-item.selected{border-color:#1877f2;background:rgba(24,119,242,.08)}
.meta-bm-info{flex:1;min-width:0}
.meta-bm-nome{font-size:.83rem;font-weight:600;color:var(--tx);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.meta-bm-id{font-size:.72rem;color:var(--tx3);margin-top:1px}
.meta-bm-status{font-size:.7rem;font-weight:700;padding:3px 8px;border-radius:10px;flex-shrink:0}
.meta-bm-status.ok{background:rgba(52,211,153,.15);color:#34d399}
.meta-bm-status.warn{background:rgba(251,191,36,.15);color:#fbbf24}

/* ═══════════════════════════════════════════════════════
   WHATSAPP IA
   ═══════════════════════════════════════════════════════ */
.wpp-topbar-btn{display:flex;align-items:center;gap:7px;padding:7px 14px;background:#25d366;border:none;border-radius:20px;color:#fff;font-family:'Syne',sans-serif;font-size:.78rem;font-weight:700;cursor:pointer;transition:var(--tr);position:relative}
.wpp-topbar-btn:hover{background:#20c05a;transform:scale(1.02)}
.wpp-badge{position:absolute;top:-5px;right:-5px;background:#ef4444;color:#fff;font-size:.6rem;font-weight:800;border-radius:50%;min-width:18px;height:18px;display:flex;align-items:center;justify-content:center;padding:0 4px}

.wpp-layout{display:grid;grid-template-columns:320px 1fr;height:calc(100vh - 100px);background:var(--bg);border:1px solid var(--bdr);border-radius:var(--r);overflow:hidden}
.wpp-sidebar{display:flex;flex-direction:column;border-right:1px solid var(--bdr);background:var(--sur)}
.wpp-sidebar-hdr{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--bdr);flex-shrink:0}
.wpp-search{padding:10px 12px;border-bottom:1px solid var(--bdr);flex-shrink:0}
.wpp-search-input{width:100%;padding:8px 12px;background:var(--bg3);border:1px solid var(--bdr);border-radius:20px;color:var(--tx);font-size:.82rem}
.wpp-search-input:focus{outline:none;border-color:var(--ac)}
.wpp-lista{flex:1;overflow-y:auto}
.wpp-conv-item{display:flex;align-items:center;gap:10px;padding:12px 14px;cursor:pointer;border-bottom:1px solid var(--bdr);transition:background .15s}
.wpp-conv-item:hover{background:var(--sur2)}
.wpp-conv-item.active{background:rgba(37,211,102,.1);border-left:3px solid #25d366}
.wpp-conv-avatar{width:38px;height:38px;border-radius:50%;background:var(--ac);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.88rem;color:#fff;flex-shrink:0}
.wpp-conv-info{flex:1;min-width:0}
.wpp-conv-nome{font-size:.84rem;font-weight:600;color:var(--tx);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.wpp-conv-preview{font-size:.72rem;color:var(--tx3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}
.wpp-conv-meta{display:flex;flex-direction:column;align-items:flex-end;gap:4px;flex-shrink:0}
.wpp-conv-time{font-size:.66rem;color:var(--tx3)}
.wpp-conv-unread{background:#25d366;color:#fff;border-radius:50%;min-width:18px;height:18px;font-size:.62rem;font-weight:800;display:flex;align-items:center;justify-content:center}

/* Temperatura badges */
.wpp-temp-badge{padding:3px 10px;border-radius:20px;font-size:.7rem;font-weight:700;flex-shrink:0}
.wpp-temp-badge.frio{background:rgba(96,165,250,.15);color:#60a5fa}
.wpp-temp-badge.morno{background:rgba(251,191,36,.15);color:#fbbf24}
.wpp-temp-badge.quente{background:rgba(239,68,68,.15);color:#ef4444;animation:pulse 2s infinite}
.wpp-temp-badge.cliente{background:rgba(52,211,153,.15);color:#34d399}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.6}}

/* Chat area */
.wpp-main{display:flex;flex-direction:column;background:var(--bg)}
.wpp-empty-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:var(--tx3)}
.wpp-empty-state p{font-size:.9rem;font-weight:500;color:var(--tx2);margin:0}
.wpp-empty-state span{font-size:.78rem}
.wpp-chat-wrap{display:flex;flex-direction:column;height:100%}
.wpp-chat-hdr{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid var(--bdr);background:var(--sur);flex-shrink:0}
.wpp-chat-avatar{width:36px;height:36px;border-radius:50%;background:#25d366;display:flex;align-items:center;justify-content:center;font-weight:700;color:#fff;font-size:.88rem;flex-shrink:0}
.wpp-chat-info{flex:1;min-width:0}
.wpp-chat-nome{font-size:.88rem;font-weight:700;color:var(--tx)}
.wpp-chat-num{font-size:.72rem;color:var(--tx3)}
.wpp-msgs{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:8px;background:var(--bg2)}
.wpp-msg{max-width:72%;display:flex;flex-direction:column;gap:2px}
.wpp-msg.recebida{align-self:flex-start}
.wpp-msg.enviada{align-self:flex-end}
.wpp-msg.ia{align-self:flex-start}
.wpp-msg-bubble{padding:8px 12px;border-radius:12px;font-size:.83rem;line-height:1.5;word-break:break-word;white-space:pre-wrap}
.wpp-msg.recebida .wpp-msg-bubble{background:var(--sur);border:1px solid var(--bdr);border-radius:4px 12px 12px 12px}
.wpp-msg.enviada .wpp-msg-bubble{background:#25d366;color:#fff;border-radius:12px 4px 12px 12px}
.wpp-msg.ia .wpp-msg-bubble{background:rgba(99,102,241,.12);border:1px solid rgba(99,102,241,.2);border-radius:4px 12px 12px 12px;font-size:.78rem}
.wpp-msg-time{font-size:.64rem;color:var(--tx3);padding:0 4px}
.wpp-msg-sender{font-size:.66rem;font-weight:700;color:var(--tx3);padding:0 4px;margin-bottom:2px}
.wpp-input-area{display:flex;align-items:flex-end;gap:8px;padding:10px 14px;border-top:1px solid var(--bdr);background:var(--sur);flex-shrink:0}
.wpp-textarea{flex:1;background:var(--bg3);border:1px solid var(--bdr2);border-radius:20px;padding:8px 14px;color:var(--tx);font-family:'DM Sans',sans-serif;font-size:.84rem;resize:none;max-height:120px;line-height:1.4}
.wpp-textarea:focus{outline:none;border-color:#25d366}
.wpp-send{width:38px;height:38px;border-radius:50%;background:#25d366;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:var(--tr)}
.wpp-send:hover{background:#20c05a}
.wpp-send svg{stroke:#fff}
.wpp-config-info{display:flex;gap:10px;padding:10px 12px;background:rgba(96,165,250,.08);border:1px solid rgba(96,165,250,.2);border-radius:var(--rs);font-size:.78rem;color:var(--tx2);margin-bottom:4px}

/* Lead quente notification */
.wpp-lead-quente{padding:10px 14px;background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.3);border-radius:var(--rs);font-size:.78rem;color:#ef4444;font-weight:600;margin:6px 14px;animation:pulse 2s infinite}

/* ═══════════════════════════════════════════════════════
   PROPOSTAS
   ═══════════════════════════════════════════════════════ */
.propostas-list{display:flex;flex-direction:column;gap:10px}
.proposta-card{background:var(--sur);border:1px solid var(--bdr);border-radius:var(--r);padding:16px;display:flex;align-items:center;gap:14px;cursor:pointer;transition:var(--tr)}
.proposta-card:hover{border-color:var(--bdr2);transform:translateY(-1px)}
.proposta-ico{width:40px;height:40px;border-radius:12px;background:linear-gradient(135deg,#3b82f6,#6366f1);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.proposta-ico svg{stroke:#fff}
.proposta-info{flex:1;min-width:0}
.proposta-cliente{font-family:'Syne',sans-serif;font-size:.9rem;font-weight:700;color:var(--tx)}
.proposta-meta{font-size:.75rem;color:var(--tx3);margin-top:2px}
.proposta-valor{font-family:'Syne',sans-serif;font-size:1rem;font-weight:800;color:var(--green)}
.proposta-status{padding:3px 10px;border-radius:20px;font-size:.7rem;font-weight:700;flex-shrink:0}
.proposta-status.rascunho{background:var(--bg3);color:var(--tx3)}
.proposta-status.enviada{background:rgba(96,165,250,.15);color:#60a5fa}
.proposta-status.aceita{background:rgba(52,211,153,.15);color:#34d399}
.proposta-status.recusada{background:rgba(248,113,113,.15);color:#f87171}

.prop-itens{display:flex;flex-direction:column;gap:8px}
.prop-item{display:grid;grid-template-columns:1fr 120px 80px 30px;gap:8px;align-items:center;background:var(--bg3);border:1px solid var(--bdr);border-radius:var(--rs);padding:10px 12px}
.prop-item select,.prop-item input{background:var(--bg2);border:1px solid var(--bdr);border-radius:var(--rs);color:var(--tx);padding:5px 8px;font-size:.82rem}
.prop-item-del{width:24px;height:24px;background:transparent;border:1px solid var(--bdr);border-radius:5px;color:var(--tx3);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.7rem;transition:var(--tr)}
.prop-item-del:hover{border-color:var(--red);color:var(--red);background:rgba(248,113,113,.08)}

.prop-totais{border-top:1px solid var(--bdr);margin-top:14px;padding-top:12px;display:flex;flex-direction:column;gap:8px}
.prop-total-row{display:flex;align-items:center;justify-content:space-between;font-size:.84rem;color:var(--tx2)}
.prop-total-row.total-liq{border-top:1px solid var(--bdr);padding-top:10px;margin-top:4px}

/* Proposta preview document */
.prop-preview-doc{padding:32px;font-family:'DM Sans',Arial,sans-serif;background:#fff;color:#1a1a1a}
.prop-prev-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:32px;padding-bottom:20px;border-bottom:3px solid #6366f1}
.prop-prev-logo{font-family:'Syne',sans-serif;font-size:1.4rem;font-weight:900;color:#6366f1}
.prop-prev-meta{font-size:.78rem;color:#666;text-align:right;line-height:1.7}
.prop-prev-title{font-family:'Syne',sans-serif;font-size:1.6rem;font-weight:800;color:#1a1a1a;margin-bottom:6px}
.prop-prev-cliente{font-size:.88rem;color:#444;margin-bottom:24px}
.prop-prev-table{width:100%;border-collapse:collapse;margin:16px 0}
.prop-prev-table th{background:#f8f9fa;padding:10px 14px;font-size:.78rem;font-weight:700;text-align:left;text-transform:uppercase;letter-spacing:.06em;color:#666;border-bottom:2px solid #e5e7eb}
.prop-prev-table td{padding:10px 14px;font-size:.84rem;border-bottom:1px solid #f3f4f6;color:#374151}
.prop-prev-table tr:last-child td{border-bottom:none}
.prop-prev-totais{margin-top:20px;display:flex;flex-direction:column;gap:6px;align-items:flex-end}
.prop-prev-total-row{display:flex;gap:40px;font-size:.84rem;color:#666}
.prop-prev-total-final{font-family:'Syne',sans-serif;font-size:1.2rem;font-weight:800;color:#059669;border-top:2px solid #e5e7eb;padding-top:10px;margin-top:6px}
.prop-prev-validade{margin-top:28px;padding:14px;background:#fefce8;border:1px solid #fde047;border-radius:8px;font-size:.8rem;color:#854d0e}
.prop-prev-obs{margin-top:16px;font-size:.82rem;color:#666;font-style:italic}
.prop-prev-footer{margin-top:32px;padding-top:16px;border-top:1px solid #e5e7eb;font-size:.74rem;color:#9ca3af;text-align:center}

/* ═══════════════════════════════════════════════════════
   CONTRATOS
   ═══════════════════════════════════════════════════════ */
.contratos-list{display:flex;flex-direction:column;gap:10px}
.contrato-card{background:var(--sur);border:1px solid var(--bdr);border-radius:var(--r);padding:16px;display:flex;align-items:center;gap:14px;cursor:pointer;transition:var(--tr)}
.contrato-card:hover{border-color:var(--bdr2);transform:translateY(-1px)}
.contrato-ico{width:40px;height:40px;border-radius:12px;background:linear-gradient(135deg,#10b981,#059669);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.contrato-ico svg{stroke:#fff}
.contrato-info{flex:1;min-width:0}
.contrato-cliente{font-family:'Syne',sans-serif;font-size:.9rem;font-weight:700;color:var(--tx)}
.contrato-meta{font-size:.75rem;color:var(--tx3);margin-top:2px}
.contrato-valor{font-family:'Syne',sans-serif;font-size:1rem;font-weight:800;color:var(--green)}
.contrato-status{padding:3px 10px;border-radius:20px;font-size:.7rem;font-weight:700;flex-shrink:0}
.contrato-status.ativo{background:rgba(52,211,153,.15);color:#34d399}
.contrato-status.encerrado{background:rgba(248,113,113,.15);color:#f87171}
.contrato-status.rascunho{background:var(--bg3);color:var(--tx3)}

/* ── Responsive ── */
@media(max-width:768px){
  .wpp-layout{grid-template-columns:1fr;height:auto}
  .wpp-sidebar{height:300px}
  .wpp-chat-wrap{height:calc(100vh - 400px)}
  .prop-item{grid-template-columns:1fr 90px 70px 28px}
}

/* ═══════════════════════════════════════════════════════
   WHATSAPP IA v2 — Redesigned Module
   ═══════════════════════════════════════════════════════ */

/* Sidebar brand */
.wpp-sidebar-brand{display:flex;align-items:center;gap:8px;font-family:'Syne',sans-serif;font-weight:700;font-size:.92rem;color:var(--tx)}
.wpp-sidebar-actions{display:flex;gap:4px}
.wpp-icon-btn{width:32px;height:32px;border-radius:8px;border:1px solid var(--bdr);background:transparent;color:var(--tx2);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s}
.wpp-icon-btn:hover{background:var(--bg3);border-color:var(--bdr2);color:var(--tx)}
.wpp-icon-btn.sm{width:24px;height:24px;border:none}

/* Connection status */
.wpp-conn-status{display:flex;align-items:center;gap:8px;padding:8px 16px;font-size:.72rem;color:var(--tx3);border-bottom:1px solid var(--bdr);background:var(--bg3)}
.wpp-conn-dot{width:7px;height:7px;border-radius:50%;background:#ef4444;flex-shrink:0}
.wpp-conn-dot.connected{background:#25d366;box-shadow:0 0 6px rgba(37,211,102,.5)}
.wpp-conn-dot.checking{background:#fbbf24;animation:pulse 1.5s infinite}

/* Search redesign */
.wpp-search-inner{display:flex;align-items:center;gap:8px;padding:6px 12px;background:var(--bg3);border:1px solid var(--bdr);border-radius:20px}
.wpp-search-inner:focus-within{border-color:#25d366}
.wpp-search-inner svg{flex-shrink:0;color:var(--tx3)}
.wpp-search-inner .wpp-search-input{border:none;background:none;padding:2px 0}

/* Temperature filters */
.wpp-temp-filters{display:flex;gap:4px;padding:8px 12px;border-bottom:1px solid var(--bdr);overflow-x:auto;flex-shrink:0}
.wpp-temp-filter{padding:4px 10px;border-radius:14px;border:1px solid var(--bdr);background:transparent;color:var(--tx3);font-size:.68rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:all .15s}
.wpp-temp-filter:hover{background:var(--bg3);color:var(--tx2)}
.wpp-temp-filter.active{background:rgba(37,211,102,.12);color:#25d366;border-color:rgba(37,211,102,.3)}

/* Mini stats */
.wpp-mini-stats{display:flex;gap:0;border-bottom:1px solid var(--bdr);flex-shrink:0}
.wpp-mini-stat{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 4px;border-right:1px solid var(--bdr);font-size:.62rem;color:var(--tx3)}
.wpp-mini-stat:last-child{border-right:none}
.wpp-mini-stat-num{font-size:1rem;font-weight:800;font-family:'Syne',sans-serif;color:var(--tx)}

/* Empty state redesign */
.wpp-empty-icon{width:80px;height:80px;background:var(--bg3);border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:8px}
.wpp-empty-tips{margin-top:16px;display:flex;flex-direction:column;gap:8px;max-width:380px}
.wpp-tip{font-size:.76rem;color:var(--tx3);padding:10px 14px;background:var(--bg3);border:1px solid var(--bdr);border-radius:10px;line-height:1.45}

/* Chat header actions */
.wpp-chat-actions{display:flex;gap:4px;margin-left:auto}
.wpp-action-btn{width:30px;height:30px;border-radius:7px;border:1px solid var(--bdr);background:transparent;color:var(--tx2);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s}
.wpp-action-btn:hover{background:var(--bg3);border-color:#25d366;color:#25d366}
.wpp-action-btn.danger:hover{border-color:#ef4444;color:#ef4444;background:rgba(239,68,68,.06)}
.wpp-back-btn{display:none}

/* Lead summary */
.wpp-lead-summary{padding:10px 16px;background:linear-gradient(135deg,rgba(99,102,241,.06),rgba(37,211,102,.06));border-bottom:1px solid var(--bdr);flex-shrink:0}
.wpp-summary-hdr{display:flex;align-items:center;justify-content:space-between;font-size:.74rem;font-weight:700;color:var(--tx2);margin-bottom:6px}
.wpp-summary-text{font-size:.78rem;color:var(--tx2);line-height:1.5}

/* IA toggle and hints */
.wpp-input-row{display:flex;align-items:flex-end;gap:8px}
.wpp-input-hints{display:flex;justify-content:space-between;font-size:.64rem;color:var(--tx3);padding:4px 8px 0}
.wpp-ia-active{color:#25d366;font-weight:600}
.wpp-ia-paused{color:#fbbf24;font-weight:600}

/* ═══ WIZARD MODAL ═══ */
.wpp-wizard-steps{display:flex;align-items:center;justify-content:center;gap:0;margin-bottom:20px;padding:4px 0}
.wpp-step{display:flex;align-items:center;gap:6px;padding:6px 14px;border-radius:20px;font-size:.76rem;color:var(--tx3);transition:all .2s}
.wpp-step.active{background:rgba(37,211,102,.12);color:#25d366}
.wpp-step.done{color:#25d366}
.wpp-step-num{width:22px;height:22px;border-radius:50%;background:var(--bg3);border:1.5px solid var(--bdr);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:.7rem}
.wpp-step.active .wpp-step-num{background:#25d366;color:#fff;border-color:#25d366}
.wpp-step.done .wpp-step-num{background:#25d366;color:#fff;border-color:#25d366}
.wpp-step-label{font-weight:600}
.wpp-step-line{width:28px;height:2px;background:var(--bdr);border-radius:2px}

.wpp-wizard-panel{animation:pi .2s ease}
.wpp-wizard-panel.hidden{display:none!important}

/* Guide cards */
.wpp-guide-card{display:flex;gap:12px;padding:14px 16px;background:var(--bg3);border:1px solid var(--bdr);border-radius:var(--r);margin-bottom:16px}
.wpp-guide-card.info{background:rgba(96,165,250,.06);border-color:rgba(96,165,250,.2)}
.wpp-guide-card.success{background:rgba(37,211,102,.06);border-color:rgba(37,211,102,.2)}
.wpp-guide-icon{font-size:1.3rem;flex-shrink:0;line-height:1}
.wpp-guide-title{font-size:.88rem;font-weight:700;color:var(--tx);margin-bottom:3px}
.wpp-guide-desc{font-size:.78rem;color:var(--tx2);line-height:1.45}

/* Assisted fields */
.wpp-field-group{display:flex;flex-direction:column;gap:14px;margin-bottom:16px}
.wpp-field-assisted{display:flex;flex-direction:column;gap:5px}
.wpp-field-assisted label{font-size:.78rem;font-weight:600;color:var(--tx)}
.wpp-field-assisted input,.wpp-field-assisted textarea{padding:9px 12px;background:var(--bg);border:1px solid var(--bdr);border-radius:8px;color:var(--tx);font-family:'DM Sans',sans-serif;font-size:.84rem;transition:border-color .15s}
.wpp-field-assisted input:focus,.wpp-field-assisted textarea:focus{outline:none;border-color:#25d366;box-shadow:0 0 0 3px rgba(37,211,102,.08)}
.wpp-field-help{display:flex;align-items:flex-start;gap:6px;font-size:.72rem;color:var(--tx3);line-height:1.4;padding:2px 0}
.wpp-field-help svg{flex-shrink:0;margin-top:1px}
.wpp-field-help strong{color:var(--tx2)}
.wpp-field-help code{background:var(--bg3);padding:1px 5px;border-radius:4px;font-size:.68rem}
.wpp-field-help a{color:#25d366;text-decoration:underline}

.wpp-input-with-toggle{position:relative}
.wpp-input-with-toggle input{width:100%;padding-right:40px}
.wpp-toggle-vis{position:absolute;right:4px;top:50%;transform:translateY(-50%);width:30px;height:30px;border:none;background:none;cursor:pointer;color:var(--tx3);display:flex;align-items:center;justify-content:center;border-radius:6px}
.wpp-toggle-vis:hover{background:var(--bg3);color:var(--tx)}

/* Steps list */
.wpp-steps-list{margin:8px 0 0;padding-left:18px;font-size:.78rem;color:var(--tx2);line-height:1.7}
.wpp-steps-list a{color:#60a5fa;text-decoration:underline}

/* Wizard nav */
.wpp-wizard-nav{display:flex;justify-content:space-between;align-items:center;margin-top:18px;padding-top:14px;border-top:1px solid var(--bdr)}

/* Review grid */
.wpp-review-grid{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}
.wpp-review-item{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--bg3);border:1px solid var(--bdr);border-radius:8px}
.wpp-review-label{font-size:.76rem;font-weight:600;color:var(--tx3);width:80px;flex-shrink:0}
.wpp-review-value{font-size:.82rem;color:var(--tx);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.wpp-review-status{font-size:.82rem;flex-shrink:0}

/* Test button */
.wpp-test-btn{width:100%;padding:11px 16px;background:var(--bg3);border:1.5px dashed var(--bdr2);border-radius:10px;color:var(--tx2);font-size:.84rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .2s;margin-bottom:10px}
.wpp-test-btn:hover{border-color:#25d366;color:#25d366;background:rgba(37,211,102,.04)}
.wpp-test-result{padding:10px 14px;border-radius:8px;font-size:.82rem;line-height:1.5}
.wpp-test-result.success{background:rgba(37,211,102,.1);border:1px solid rgba(37,211,102,.25);color:#25d366}
.wpp-test-result.error{background:rgba(239,68,68,.08);border:1px solid rgba(239,68,68,.2);color:#f87171}

/* Mobile adjustments */
@media(max-width:768px){
  .wpp-back-btn{display:flex!important}
  .wpp-layout{grid-template-columns:1fr!important;height:calc(100vh - 56px)!important}
  .wpp-sidebar{display:flex!important}
  .wpp-main{display:none!important}
  .wpp-layout.chat-open .wpp-sidebar{display:none!important}
  .wpp-layout.chat-open .wpp-main{display:flex!important}
  .wpp-chat-actions{gap:2px}
  .wpp-action-btn{width:28px;height:28px}
  .wpp-temp-filters{padding:6px 8px;gap:3px}
  .wpp-wizard-steps{gap:0;padding:0}
  .wpp-step{padding:4px 8px;font-size:.68rem}
  .wpp-step-label{display:none}
}

/* ═══════════════════════════════════════════════════════
   METRICS v2 — Redesigned
   ═══════════════════════════════════════════════════════ */
.met-top-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-bottom:16px}
.met-filters{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.met-sel{padding:7px 12px;background:var(--sur);border:1px solid var(--bdr);border-radius:8px;color:var(--tx);font-size:.8rem;font-family:'DM Sans',sans-serif}
.met-sel:focus{outline:none;border-color:var(--ac)}
.met-actions{display:flex;gap:8px;align-items:center}

/* Period quick select */
.met-period-group{display:flex;background:var(--sur);border:1px solid var(--bdr);border-radius:8px;overflow:hidden}
.met-period-btn{padding:6px 11px;border:none;background:transparent;color:var(--tx3);font-size:.72rem;font-weight:700;cursor:pointer;transition:all .15s;font-family:'DM Sans',sans-serif;border-right:1px solid var(--bdr)}
.met-period-btn:last-child{border-right:none}
.met-period-btn:hover{color:var(--tx);background:var(--bg3)}
.met-period-btn.active{background:var(--ac);color:#fff}
.met-custom-dates{display:flex;align-items:center;gap:6px}
.met-custom-dates.hidden{display:none!important}

/* Column customizer */
.met-col-btn{display:flex;align-items:center;gap:5px;padding:6px 12px;border:1px solid var(--bdr);border-radius:8px;background:var(--sur);color:var(--tx2);font-size:.76rem;font-weight:600;cursor:pointer;transition:all .15s;font-family:'DM Sans',sans-serif}
.met-col-btn:hover{border-color:var(--ac);color:var(--ac)}
.met-columns-panel{padding:12px 16px;background:var(--sur);border:1px solid var(--bdr);border-radius:var(--r);margin-bottom:14px;animation:pi .15s ease}
.met-columns-panel.hidden{display:none!important}
.met-col-title{font-size:.76rem;font-weight:700;color:var(--tx3);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}
.met-col-grid{display:flex;flex-wrap:wrap;gap:6px}
.met-col-check{display:flex;align-items:center;gap:5px;padding:5px 10px;border:1px solid var(--bdr);border-radius:6px;cursor:pointer;font-size:.74rem;color:var(--tx2);transition:all .12s;user-select:none}
.met-col-check:hover{border-color:var(--ac);color:var(--tx)}
.met-col-check.active{background:rgba(49,56,209,.1);border-color:rgba(49,56,209,.3);color:#3138d1}
.met-col-check input{display:none}

/* KPI grid — replaces metrics-stats */
.met-kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:16px}
.met-kpi{background:var(--sur);border:1px solid var(--bdr);border-radius:var(--r);padding:14px 16px;position:relative;overflow:hidden;transition:var(--tr)}
.met-kpi::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--kpi-color,var(--ac))}
.met-kpi:hover{border-color:var(--bdr2);transform:translateY(-1px);box-shadow:var(--sh)}
.met-kpi-label{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--tx3);margin-bottom:6px}
.met-kpi-value{font-size:1.35rem;font-weight:800;font-family:'Syne',sans-serif;color:var(--tx);line-height:1}
.met-kpi-sub{font-size:.68rem;color:var(--tx3);margin-top:4px}
.met-kpi-delta{font-size:.68rem;font-weight:700;margin-top:4px}
.met-kpi-delta.up{color:#34d399}
.met-kpi-delta.down{color:#f87171}

@media(max-width:768px){
  .met-top-bar{flex-direction:column;align-items:stretch}
  .met-filters{flex-direction:column}
  .met-period-group{width:100%}
  .met-period-btn{flex:1;text-align:center}
  .met-actions{justify-content:flex-end}
  .met-kpi-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:480px){
  .met-kpi-grid{grid-template-columns:1fr}
}

/* ═══ METRICS DATA VIEW v2 ═══ */
.met-data-view{background:var(--sur);border:1px solid var(--bdr);border-radius:var(--r);overflow:hidden}
.met-view-bar{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid var(--bdr);background:var(--bg3);gap:10px;flex-wrap:wrap}
.met-view-left{flex:1;min-width:0}
.met-summary-inline{font-size:.78rem;color:var(--tx2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.met-summary-inline strong{color:var(--tx)}
.met-view-toggle{display:flex;align-items:center;gap:6px;flex-shrink:0}
.met-view-btn{width:32px;height:32px;border:1px solid var(--bdr);border-radius:7px;background:transparent;color:var(--tx3);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .12s}
.met-view-btn:hover{color:var(--tx);border-color:var(--bdr2)}
.met-view-btn.active{background:var(--ac);color:#fff;border-color:var(--ac)}
.met-count{font-size:.7rem;color:var(--tx3);font-weight:600;margin-left:4px}

/* Table */
.met-table-container{overflow-x:auto}
.met-table-container.hidden{display:none!important}
.met-table{width:100%;border-collapse:collapse;font-size:.8rem}
.met-table th{padding:10px 12px;text-align:left;font-family:'Syne',sans-serif;font-weight:700;font-size:.68rem;color:var(--tx3);text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--bdr);background:var(--sur);white-space:nowrap;cursor:pointer;user-select:none;transition:color .12s}
.met-table th:hover{color:var(--tx)}
.met-table th .sort-icon{margin-left:3px;opacity:.4;font-size:.6rem}
.met-table th.sorted .sort-icon{opacity:1;color:var(--ac)}
.met-table td{padding:10px 12px;border-bottom:1px solid var(--bdr);color:var(--tx2);white-space:nowrap;transition:background .1s}
.met-table tr:last-child td{border-bottom:none}
.met-table tr:hover td{background:rgba(49,56,209,.03)}
.met-table .cell-value{font-weight:600;color:var(--tx);font-variant-numeric:tabular-nums}
.met-table .cell-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 9px;border-radius:6px;font-size:.7rem;font-weight:700}
.met-table .cell-badge.meta{background:rgba(59,130,246,.1);color:#3b82f6}
.met-table .cell-badge.google{background:rgba(52,211,153,.1);color:#059669}
.met-table .cell-badge.manual{background:rgba(167,139,250,.1);color:#8b5cf6}
.met-table .cell-roas{font-weight:800;font-size:.82rem}
.met-table .cell-roas.good{color:#34d399}
.met-table .cell-roas.ok{color:#fbbf24}
.met-table .cell-roas.bad{color:#f87171}
.met-table .cell-bar{display:flex;align-items:center;gap:6px}
.met-table .cell-bar-fill{height:6px;border-radius:3px;min-width:4px}
.met-table .cell-actions{display:flex;gap:4px}
.met-table .cell-actions button{width:26px;height:26px;border-radius:6px;border:1px solid var(--bdr);background:transparent;color:var(--tx3);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .12s}
.met-table .cell-actions button:hover{border-color:var(--ac);color:var(--ac)}

/* Cards view */
.met-cards-container{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px;padding:14px}
.met-cards-container.hidden{display:none!important}
.met-card-item{background:var(--bg);border:1px solid var(--bdr);border-radius:var(--r);padding:14px 16px;transition:all .15s;cursor:pointer;position:relative;overflow:hidden}
.met-card-item::before{content:'';position:absolute;top:0;left:0;right:0;height:3px}
.met-card-item.meta::before{background:#3b82f6}
.met-card-item.google::before{background:#059669}
.met-card-item.manual::before{background:#8b5cf6}
.met-card-item:hover{border-color:var(--bdr2);transform:translateY(-1px);box-shadow:var(--sh)}
.met-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.met-card-client{font-weight:700;font-size:.88rem;color:var(--tx)}
.met-card-period{font-size:.68rem;color:var(--tx3)}
.met-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.met-card-metric{display:flex;flex-direction:column;gap:2px}
.met-card-metric-label{font-size:.62rem;text-transform:uppercase;letter-spacing:.04em;color:var(--tx3);font-weight:600}
.met-card-metric-value{font-size:.92rem;font-weight:800;font-family:'Syne',sans-serif;color:var(--tx)}
.met-card-footer{display:flex;align-items:center;justify-content:space-between;margin-top:10px;padding-top:8px;border-top:1px solid var(--bdr)}
.met-card-roas{font-size:1rem;font-weight:800;font-family:'Syne',sans-serif}

@media(max-width:768px){
  .met-cards-container{grid-template-columns:1fr;padding:10px}
  .met-view-bar{flex-direction:column;align-items:stretch}
}

/* ═══ ADS REPORT PAGE ═══ */
.ads-header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px}
.ads-controls{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.ads-sel{padding:7px 12px;background:var(--sur);border:1px solid var(--bdr);border-radius:8px;color:var(--tx);font-size:.8rem;font-family:'DM Sans',sans-serif}
.ads-sel:focus{outline:none;border-color:#3138d1}
.ads-period-bar{display:flex;background:var(--sur);border:1px solid var(--bdr);border-radius:8px;overflow:hidden}
.ads-per{padding:6px 10px;border:none;background:transparent;color:var(--tx3);font-size:.7rem;font-weight:700;cursor:pointer;transition:all .12s;border-right:1px solid var(--bdr);font-family:'DM Sans',sans-serif;white-space:nowrap}
.ads-per:last-child{border-right:none}
.ads-per:hover{color:var(--tx);background:var(--bg3)}
.ads-per.active{background:#3138d1;color:#fff}
.ads-custom{display:flex;align-items:center;gap:6px}
.ads-custom.hidden{display:none!important}
.ads-sep{color:var(--tx3);font-size:.76rem}
.ads-actions{display:flex;gap:8px;align-items:center}
.ads-btn-cols{display:flex;align-items:center;gap:5px;padding:6px 12px;border:1px solid var(--bdr);border-radius:8px;background:var(--sur);color:var(--tx2);font-size:.76rem;font-weight:600;cursor:pointer;transition:all .12s;font-family:'DM Sans',sans-serif}
.ads-btn-cols:hover{border-color:#3138d1;color:#3138d1}

/* Col panel */
.ads-col-panel{padding:12px 16px;background:var(--sur);border:1px solid var(--bdr);border-radius:var(--r);margin-bottom:14px;display:flex;flex-wrap:wrap;gap:6px}
.ads-col-panel.hidden{display:none!important}
.ads-col-tag{padding:5px 10px;border:1px solid var(--bdr);border-radius:6px;cursor:pointer;font-size:.72rem;color:var(--tx2);font-weight:600;transition:all .1s;user-select:none}
.ads-col-tag:hover{border-color:#3138d1}
.ads-col-tag.on{background:rgba(49,56,209,.1);border-color:rgba(49,56,209,.3);color:#3138d1}

/* Status bar */
.ads-status{padding:10px 14px;border-radius:var(--r);margin-bottom:14px;font-size:.8rem;display:flex;align-items:center;gap:8px}
.ads-status.ok{background:rgba(52,211,153,.08);border:1px solid rgba(52,211,153,.2);color:#34d399}
.ads-status.warn{background:rgba(251,191,36,.08);border:1px solid rgba(251,191,36,.2);color:#fbbf24}
.ads-status.err{background:rgba(248,113,113,.08);border:1px solid rgba(248,113,113,.2);color:#f87171}
.ads-status.loading{background:var(--bg3);border:1px solid var(--bdr);color:var(--tx3)}

/* KPIs */
.ads-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:10px;margin-bottom:16px}
.ads-kpi{background:var(--sur);border:1px solid var(--bdr);border-radius:var(--r);padding:14px 16px;position:relative;overflow:hidden;transition:var(--tr)}
.ads-kpi::after{content:'';position:absolute;top:0;left:0;right:0;height:2.5px;background:var(--k-color,#3138d1)}
.ads-kpi:hover{border-color:var(--bdr2);transform:translateY(-1px);box-shadow:var(--sh)}
.ads-kpi-lbl{font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--tx3);margin-bottom:5px}
.ads-kpi-val{font-size:1.3rem;font-weight:800;font-family:'Syne',sans-serif;color:var(--tx);line-height:1}
.ads-kpi-sub{font-size:.66rem;color:var(--tx3);margin-top:4px}

/* Dual layout */
.ads-dual{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}
.ads-card{background:var(--sur);border:1px solid var(--bdr);border-radius:var(--r);padding:14px 16px}
.ads-card-hdr{font-family:'Syne',sans-serif;font-weight:700;font-size:.82rem;color:var(--tx);margin-bottom:12px}

/* Table */
.ads-table-wrap{background:var(--sur);border:1px solid var(--bdr);border-radius:var(--r);overflow:hidden}
.ads-table-bar{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid var(--bdr);background:var(--bg3)}
.ads-table-title{font-family:'Syne',sans-serif;font-weight:700;font-size:.82rem;color:var(--tx)}
.ads-table-count{font-size:.7rem;color:var(--tx3)}
.ads-table-scroll{overflow-x:auto}
.ads-table{width:100%;border-collapse:collapse;font-size:.78rem}
.ads-table th{padding:9px 12px;text-align:left;font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--tx3);border-bottom:1px solid var(--bdr);white-space:nowrap;cursor:pointer;user-select:none;transition:color .1s}
.ads-table th:hover{color:var(--tx)}
.ads-table th.sorted{color:#3138d1}
.ads-table td{padding:9px 12px;border-bottom:1px solid var(--bdr);color:var(--tx2);white-space:nowrap}
.ads-table tr:hover td{background:rgba(49,56,209,.02)}
.ads-table tr:last-child td{border-bottom:none}
.ads-roas{font-weight:800;font-variant-numeric:tabular-nums}
.ads-roas.good{color:#34d399}.ads-roas.ok{color:#fbbf24}.ads-roas.bad{color:#f87171}
.ads-bar{display:inline-block;height:6px;border-radius:3px;min-width:3px;vertical-align:middle;margin-left:6px}

/* Events grid */
.ads-events-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}
.ads-event{background:var(--bg);border:1px solid var(--bdr);border-radius:10px;padding:12px 14px;text-align:center;transition:var(--tr)}
.ads-event:hover{border-color:var(--bdr2);transform:translateY(-1px)}
.ads-event-name{font-size:.7rem;color:var(--tx3);font-weight:600;text-transform:uppercase;letter-spacing:.03em;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ads-event-val{font-size:1.2rem;font-weight:800;font-family:'Syne',sans-serif;color:var(--tx)}
.ads-event-money{font-size:.78rem;color:#34d399;font-weight:700;margin-top:2px}

@media(max-width:768px){
  .ads-header{flex-direction:column}
  .ads-period-bar{flex-wrap:wrap}
  .ads-dual{grid-template-columns:1fr}
  .ads-kpis{grid-template-columns:repeat(2,1fr)}
  .ads-events-grid{grid-template-columns:repeat(2,1fr)}
}

/* ══════════════════════════════════════════════
   DASHBOARD — Mini Calendário Semanal
   ══════════════════════════════════════════════ */
.dash-mini-week{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin-bottom:12px}
.dash-mini-day{display:flex;flex-direction:column;align-items:center;gap:3px;padding:8px 4px;border-radius:10px;border:1px solid var(--bdr);background:var(--bg3);transition:var(--tr);cursor:default}
.dash-mini-day.today{border-color:var(--ac);background:rgba(59,130,246,.12);box-shadow:0 0 0 2px rgba(59,130,246,.25)}
.dash-mini-day-name{font-size:.62rem;font-weight:600;color:var(--tx3);text-transform:uppercase;letter-spacing:.06em}
.dash-mini-day-num{font-size:1.1rem;font-weight:800;color:var(--tx);font-family:'Syne',sans-serif;line-height:1}
.dash-mini-day.today .dash-mini-day-num{color:var(--ac)}
.dash-mini-day.today .dash-mini-day-name{color:var(--ac2)}
.dash-mini-day-dots{display:flex;gap:3px;flex-wrap:wrap;justify-content:center;min-height:8px}
.dash-mini-dot{width:5px;height:5px;border-radius:50%;background:var(--ac2)}
.dash-mini-dot.task{background:var(--yellow)}
.dash-mini-dot.ig{background:var(--pink)}
.dash-mini-day.has-next{animation:pulse-next 2s ease-in-out infinite}
@keyframes pulse-next{0%,100%{transform:scale(1)}50%{transform:scale(1.04)}}

.dash-proximo{background:linear-gradient(135deg,rgba(59,130,246,.08),rgba(99,102,241,.08));border:1px solid rgba(59,130,246,.25);border-radius:10px;padding:10px 14px;margin-bottom:10px;display:flex;align-items:center;gap:10px}
.dash-proximo-ico{font-size:1.3rem}
.dash-proximo-info{flex:1;min-width:0}
.dash-proximo-label{font-size:.68rem;color:var(--ac2);font-weight:600;text-transform:uppercase;letter-spacing:.06em}
.dash-proximo-titulo{font-size:.9rem;font-weight:700;color:var(--tx);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dash-proximo-meta{font-size:.73rem;color:var(--tx3);margin-top:1px}

/* ══════════════════════════════════════════════
   BRIEFING
   ══════════════════════════════════════════════ */
.check-tag{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:20px;border:1px solid var(--bdr2);background:var(--bg3);cursor:pointer;font-size:.78rem;transition:var(--tr)}
.check-tag input{accent-color:var(--ac)}
.check-tag:has(input:checked){border-color:var(--ac);background:rgba(59,130,246,.1);color:var(--ac2)}

/* ══════════════════════════════════════════════
   FINANCEIRO / CONTABILIDADE
   ══════════════════════════════════════════════ */
.fin-subnav{display:flex;gap:4px;margin-bottom:16px;border-bottom:1px solid var(--bdr);padding-bottom:0}
.fin-tab{padding:8px 16px;border-radius:8px 8px 0 0;border:1px solid transparent;border-bottom:none;font-size:.82rem;font-weight:600;color:var(--tx3);background:transparent;cursor:pointer;transition:var(--tr);margin-bottom:-1px}
.fin-tab.active{background:var(--bg2);border-color:var(--bdr);border-bottom-color:var(--bg2);color:var(--tx)}
.fin-section{animation:fadeIn .2s ease}
.fin-kpi-row{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}
.fin-kpi{background:var(--bg2);border:1px solid var(--bdr);border-radius:12px;padding:16px;border-left:3px solid var(--kc,var(--ac))}
.fin-kpi-lbl{font-size:.72rem;font-weight:600;color:var(--tx3);text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px}
.fin-kpi-val{font-size:1.3rem;font-weight:800;font-family:'Syne',sans-serif;color:var(--tx)}
.fin-kpi-sub{font-size:.68rem;color:var(--tx3);margin-top:2px}
.fin-table-wrap{background:var(--bg2);border:1px solid var(--bdr);border-radius:12px;overflow:hidden}
.fin-table{width:100%;border-collapse:collapse}
.fin-table th{background:var(--bg3);padding:10px 14px;font-size:.72rem;font-weight:700;color:var(--tx2);text-align:left;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--bdr)}
.fin-table td{padding:10px 14px;font-size:.83rem;border-bottom:1px solid var(--bdr);color:var(--tx);vertical-align:middle}
.fin-table tr:last-child td{border-bottom:none}
.fin-table tr:hover td{background:rgba(255,255,255,.02)}
.fin-status-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:20px;font-size:.7rem;font-weight:700}
.fin-status-badge.pago{background:rgba(52,211,153,.1);color:#34d399;border:1px solid rgba(52,211,153,.2)}
.fin-status-badge.pendente{background:rgba(251,191,36,.1);color:#fbbf24;border:1px solid rgba(251,191,36,.2)}
.fin-action-btn{padding:4px 8px;border-radius:6px;border:1px solid var(--bdr2);background:transparent;color:var(--tx3);cursor:pointer;font-size:.72rem;transition:var(--tr)}
.fin-action-btn:hover{background:var(--bdr);color:var(--tx)}
.check-label{display:flex;align-items:center;gap:6px;font-size:.82rem;color:var(--tx2);cursor:pointer}
.check-label input{accent-color:var(--ac)}

@media(max-width:768px){
  .dash-mini-week{grid-template-columns:repeat(7,1fr);gap:3px}
  .dash-mini-day-name{font-size:.55rem}
  .dash-mini-day-num{font-size:.9rem}
  .fin-kpi-row{grid-template-columns:repeat(2,1fr)}
  .fin-subnav{overflow-x:auto}
}

/* ═══ SPLIT DE IMAGENS ═══ */
.mode-tabs-crm{display:flex;gap:8px}
.mode-tabs-crm{display:flex;gap:8px}
.mode-tab-crm{padding:10px 16px;background:var(--bg);border:1px solid var(--bdr2);border-radius:8px;color:var(--tx2);font-size:.85rem;font-weight:600;cursor:pointer;transition:all .3s;position:relative;overflow:hidden}
.mode-tab-crm::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,var(--ac),#5a67d8);opacity:0;transition:opacity .3s}
.mode-tab-crm:hover{border-color:var(--ac);color:var(--tx);transform:translateY(-2px);box-shadow:0 4px 12px rgba(49,56,209,.2)}
.mode-tab-crm.active{background:linear-gradient(135deg,var(--ac),#5a67d8);border-color:var(--ac);color:#fff;box-shadow:0 4px 16px rgba(49,56,209,.3)}
.mode-tab-crm.active::before{opacity:1}
.split-sidebar{width:280px;background:var(--bg2);border-right:1px solid var(--bdr);padding:20px;overflow-y:auto;flex-shrink:0}
.split-config-section{margin-bottom:20px;padding:16px;background:var(--bg);border:1px solid var(--bdr2);border-radius:8px;transition:all .2s}
.split-config-section:hover{border-color:rgba(49,56,209,.3);box-shadow:0 2px 8px rgba(49,56,209,.1)}
.split-config-title{font-size:.75rem;font-weight:700;color:var(--tx);text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px;display:flex;align-items:center;gap:6px}
.split-config-title::before{content:'';width:3px;height:12px;background:linear-gradient(135deg,var(--ac),#5a67d8);border-radius:99px}
.split-canvas-area{flex:1;background:var(--bg);position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;padding:40px}
.split-canvas-container{position:relative;display:inline-block;max-width:90%;max-height:90%;box-shadow:0 8px 32px rgba(0,0,0,.3);border-radius:8px;overflow:hidden}
#split-canvas{display:block;max-width:100%;max-height:calc(100vh - 200px);width:auto;height:auto;object-fit:contain;cursor:crosshair}
#split-overlay{position:absolute;top:0;left:0;pointer-events:none}
.split-canvas-controls{position:absolute;bottom:16px;right:16px;display:flex;gap:8px;z-index:10}
.split-zoom-btn{width:36px;height:36px;background:rgba(0,0,0,.8);border:1px solid rgba(255,255,255,.1);border-radius:6px;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;font-size:.9rem;font-weight:600}
.split-zoom-btn:hover{background:rgba(49,56,209,.9);border-color:var(--ac)}
.split-canvas-info{position:absolute;top:16px;left:16px;background:rgba(0,0,0,.8);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:8px 12px;color:#fff;font-size:.8rem;display:flex;gap:12px;z-index:10}
.split-canvas-info-item{display:flex;align-items:center;gap:6px}
.split-canvas-info-label{color:rgba(255,255,255,.6);font-size:.75rem}
.split-canvas-info-value{font-weight:600}
.split-upload-zone{width:100%;max-width:500px;padding:60px 40px;border:2px dashed var(--bdr2);border-radius:16px;text-align:center;cursor:pointer;transition:all .3s;background:linear-gradient(135deg,rgba(49,56,209,.02),rgba(90,103,216,.02))}
.split-upload-zone:hover{border-color:var(--ac);background:linear-gradient(135deg,rgba(49,56,209,.08),rgba(90,103,216,.08));transform:translateY(-2px)}
.split-upload-zone h3{font-family:'Syne',sans-serif;font-weight:600;color:var(--tx);margin-bottom:8px}
.split-upload-zone p{color:var(--tx3)}
.split-upload-icon{font-size:3.5rem;margin-bottom:16px;animation:float 3s ease-in-out infinite}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
.split-crop-box{position:absolute;border:2px solid var(--ac);background:rgba(49,56,209,.1);cursor:move}
.split-crop-box.selected{border-color:#fbbf24;box-shadow:0 0 0 2px rgba(251,191,36,.3)}
.split-crop-handle{width:10px;height:10px;background:#fff;border:2px solid var(--ac);position:absolute;border-radius:50%}
.split-handle-tl{top:-5px;left:-5px;cursor:nw-resize}
.split-handle-tr{top:-5px;right:-5px;cursor:ne-resize}
.split-handle-bl{bottom:-5px;left:-5px;cursor:sw-resize}
.split-handle-br{bottom:-5px;right:-5px;cursor:se-resize}
.split-crop-info{position:absolute;top:-24px;left:0;background:rgba(0,0,0,.8);color:#fff;padding:2px 8px;font-size:.7rem;border-radius:4px;white-space:nowrap}
.split-crop-delete{position:absolute;top:-10px;right:-10px;width:20px;height:20px;background:#ef4444;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.7rem;cursor:pointer;border:2px solid var(--bg);pointer-events:all}
.split-crop-copy{position:absolute;bottom:-10px;left:-10px;width:20px;height:20px;background:var(--ac);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.7rem;cursor:pointer;border:2px solid var(--bg);pointer-events:all}
.split-line{position:absolute;background:var(--ac);pointer-events:all}
.split-line.horizontal{height:2px;width:100%;cursor:ns-resize}
.split-line.vertical{width:2px;height:100%;cursor:ew-resize}
.split-grid-cell{border:1px dashed rgba(49,56,209,.5);pointer-events:none}
.split-info-box{padding:16px;background:linear-gradient(135deg,rgba(49,56,209,.05),rgba(90,103,216,.05));border:1px solid rgba(49,56,209,.2);border-radius:8px;margin-bottom:20px;position:relative;overflow:hidden}
.split-info-box::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--ac),#5a67d8)}
.split-info-title{font-size:.75rem;font-weight:700;color:var(--tx);text-transform:uppercase;margin-bottom:12px;display:flex;align-items:center;gap:6px}
.split-info-title::before{content:'📊';font-size:1rem}
.split-info-row{display:flex;justify-content:space-between;margin-bottom:8px;font-size:.85rem;padding:6px 0}
.split-info-row:not(:last-child){border-bottom:1px solid var(--bdr2)}
.split-info-row span:first-child{color:var(--tx3);font-size:.8rem}
.split-info-row span:last-child{color:var(--tx);font-weight:700;font-size:.9rem}
.split-results-section{margin-top:20px}
.split-results-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:12px;max-height:400px;overflow-y:auto}
.split-result-item{position:relative;aspect-ratio:1;background:var(--bg);border:1px solid var(--bdr2);border-radius:6px;overflow:hidden}
.split-result-item img{width:100%;height:100%;object-fit:cover}
.split-result-download{position:absolute;top:4px;right:4px;width:24px;height:24px;background:rgba(0,0,0,.7);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transition:opacity .2s;font-size:.7rem}
.split-result-item:hover .split-result-download{opacity:1}
.w100{width:100%}
.mb8{margin-bottom:8px}
.mb12{margin-bottom:12px}

/* ═══ POPUP DE NOTIFICAÇÃO ═══ */
.notification-popup{position:fixed;top:20px;right:20px;width:380px;background:#fff;border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,.3),0 0 0 1px rgba(0,0,0,.1);transform:translateX(450px);opacity:0;transition:all .4s cubic-bezier(.68,-.55,.265,1.55);z-index:10000;overflow:hidden}
.notification-popup.show{transform:translateX(0);opacity:1}
.notification-content{display:flex;align-items:flex-start;gap:14px;padding:18px 20px;position:relative}
.notification-icon{width:48px;height:48px;background:linear-gradient(135deg,#3138d1,#5a67d8);border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:24px;flex-shrink:0;animation:notif-bounce .6s ease}
@keyframes notif-bounce{0%,100%{transform:scale(1)}50%{transform:scale(1.1)}}
.notification-body{flex:1;min-width:0}
.notification-title{font-family:'Syne',sans-serif;font-size:1rem;font-weight:700;color:#1a1a1a;margin-bottom:4px}
.notification-message{font-size:.875rem;color:#666;line-height:1.4}
.notification-close{position:absolute;top:14px;right:14px;width:24px;height:24px;background:rgba(0,0,0,.05);border:none;border-radius:6px;color:#999;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;transition:all .2s}
.notification-close:hover{background:rgba(0,0,0,.1);color:#333}
.notification-progress{height:3px;background:linear-gradient(90deg,#3138d1,#5a67d8);width:0;transition:width 5s linear;position:absolute;bottom:0;left:0;right:0}
.notification-popup.show .notification-progress{width:100%}

/* Animação do sino */
@keyframes ring{0%,100%{transform:rotate(0)}10%,30%{transform:rotate(-10deg)}20%,40%{transform:rotate(10deg)}}
.notif-dot.pulse{animation:pulse-dot 2s infinite}
@keyframes pulse-dot{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.3);opacity:.8}}

/* Mobile */
@media(max-width:768px){
  .notification-popup{width:calc(100% - 40px);right:20px}
}

/* ═══ GERENCIAMENTO DE RECORRÊNCIA ═══ */
.ger-rec-item{display:flex;align-items:center;gap:12px;padding:12px;background:var(--bg);border:1px solid var(--bdr2);border-radius:8px;margin-bottom:8px;transition:all .2s}
.ger-rec-item:hover{border-color:var(--ac);box-shadow:0 2px 8px rgba(49,56,209,.1)}
.ger-rec-item.past{opacity:.6;background:var(--bg2)}
.ger-rec-mes{flex:1;font-weight:600;color:var(--tx);text-transform:capitalize;font-size:.9rem}
.ger-rec-valor{font-weight:700;color:var(--ac);font-size:.95rem;min-width:100px;text-align:right}
.ger-rec-status{min-width:80px}
.ger-rec-del-btn{width:32px;height:32px;background:rgba(220,38,38,.1);border:1px solid rgba(220,38,38,.3);border-radius:6px;color:var(--red);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;font-size:.9rem}
.ger-rec-del-btn:hover:not(:disabled){background:var(--red);color:#fff;transform:scale(1.1)}
.ger-rec-del-btn:disabled{opacity:.4;cursor:not-allowed}

/* ═══════════════════════════════════════════════════════════════════════
   ELABORAR RELATÓRIO - STYLES
   Design moderno e profissional para upload CSV e dashboard
   ═══════════════════════════════════════════════════════════════════════ */

/* HEADER */
.relatorio-header {
  background: var(--bg);
  border-bottom: 1px solid var(--border);
  padding: 24px 32px;
  position: sticky;
  top: 0;
  z-index: 10;
  backdrop-filter: blur(20px);
  background: rgba(11, 16, 24, 0.9);
}

.rh-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.rh-title-area .page-title {
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 28px;
  font-weight: 700;
  color: var(--tx);
  margin: 0 0 8px 0;
}

.rh-title-area .page-subtitle {
  font-size: 14px;
  color: var(--tx3);
  margin: 0;
}

.rh-actions {
  display: flex;
  gap: 12px;
}

.btn-rel-action {
  padding: 10px 20px;
  background: var(--bg2);
  border: 1px solid var(--border);
  border-radius: 10px;
  color: var(--tx);
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 8px;
  transition: all 0.2s ease;
}

.btn-rel-action:hover {
  border-color: rgba(99, 102, 241, 0.3);
  background: rgba(99, 102, 241, 0.05);
}

.btn-rel-action.primary {
  background: linear-gradient(135deg, #6366f1, #8b5cf6);
  border: none;
  color: #fff;
  box-shadow: 0 4px 12px rgba(99, 102, 241, 0.3);
}

.btn-rel-action.primary:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(99, 102, 241, 0.4);
}

/* UPLOAD AREA */
.relatorio-upload-area {
  padding: 40px 32px;
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: calc(100vh - 140px); /* Ajustado para considerar header */
}

.upload-card {
  max-width: 600px;
  width: 100%;
  background: var(--bg2);
  border: 2px dashed var(--border);
  border-radius: 20px;
  padding: 60px 40px;
  text-align: center;
  transition: all 0.3s ease;
}

.upload-card:hover {
  border-color: rgba(99, 102, 241, 0.5);
  background: rgba(99, 102, 241, 0.02);
}

.upload-icon {
  width: 80px;
  height: 80px;
  margin: 0 auto 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, rgba(99, 102, 241, 0.1), rgba(139, 92, 246, 0.1));
  border-radius: 20px;
}

.upload-icon svg {
  color: #818cf8;
}

.upload-card h3 {
  font-size: 24px;
  font-weight: 700;
  color: var(--tx);
  margin: 0 0 12px 0;
}

.upload-card > p {
  font-size: 14px;
  color: var(--tx3);
  margin: 0 0 32px 0;
}

.btn-upload {
  padding: 14px 28px;
  background: linear-gradient(135deg, #6366f1, #8b5cf6);
  border: none;
  border-radius: 12px;
  color: #fff;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  transition: all 0.3s ease;
  box-shadow: 0 4px 12px rgba(99, 102, 241, 0.3);
}

.btn-upload:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(99, 102, 241, 0.4);
}

.upload-platforms {
  display: flex;
  justify-content: center;
  gap: 16px;
  margin: 32px 0;
  padding: 24px 0;
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
}

.platform-badge {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 16px;
  background: var(--bg);
  border-radius: 10px;
  font-size: 13px;
  font-weight: 600;
  color: var(--tx2);
}

.platform-badge svg {
  opacity: 0.7;
}

.upload-help {
  margin-top: 24px;
}

.upload-help small {
  font-size: 12px;
  color: var(--tx3);
  line-height: 1.6;
}

/* INFO BAR */
.rel-info-bar {
  display: flex;
  gap: 24px;
  padding: 20px 32px;
  background: var(--bg2);
  border-bottom: 1px solid var(--border);
  flex-wrap: wrap;
}

.rel-info-item {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  color: var(--tx2);
  font-weight: 500;
}

.rel-info-item svg {
  opacity: 0.5;
}

.rel-info-item span {
  color: var(--tx);
  font-weight: 600;
}

/* DASHBOARD */
.relatorio-dashboard {
  padding: 32px;
}

/* KPIs GRID */
.rel-kpis-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 20px;
  margin-bottom: 32px;
}

.rel-kpi-card {
  background: var(--bg2);
  border: 1px solid var(--border);
  border-radius: 16px;
  padding: 24px;
  display: flex;
  align-items: flex-start;
  gap: 20px;
  transition: all 0.3s ease;
  position: relative;
  overflow: hidden;
}

.rel-kpi-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: linear-gradient(90deg, transparent, var(--accent), transparent);
  opacity: 0;
  transition: opacity 0.3s ease;
}

.rel-kpi-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 24px rgba(0, 0, 0, 0.2);
  border-color: rgba(99, 102, 241, 0.3);
}

.rel-kpi-card:hover::before {
  opacity: 1;
}

.rel-kpi-card.impressions { --accent: #818cf8; }
.rel-kpi-card.alcance { --accent: #34d399; }
.rel-kpi-card.cliques { --accent: #f59e0b; }
.rel-kpi-card.conversoes { --accent: #8b5cf6; }
.rel-kpi-card.investimento { --accent: #ef4444; }
.rel-kpi-card.ctr { --accent: #06b6d4; }
.rel-kpi-card.receita { --accent: #10b981; }
.rel-kpi-card.roas { --accent: #a855f7; }
.rel-kpi-card.whatsapp { --accent: #25d366; }

.kpi-icon {
  width: 56px;
  height: 56px;
  border-radius: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.rel-kpi-card.impressions .kpi-icon { background: rgba(129, 140, 248, 0.1); color: #818cf8; }
.rel-kpi-card.alcance .kpi-icon { background: rgba(52, 211, 153, 0.1); color: #34d399; }
.rel-kpi-card.cliques .kpi-icon { background: rgba(245, 158, 11, 0.1); color: #f59e0b; }
.rel-kpi-card.conversoes .kpi-icon { background: rgba(139, 92, 246, 0.1); color: #8b5cf6; }
.rel-kpi-card.investimento .kpi-icon { background: rgba(239, 68, 68, 0.1); color: #ef4444; }
.rel-kpi-card.ctr .kpi-icon { background: rgba(6, 182, 212, 0.1); color: #06b6d4; }
.rel-kpi-card.receita .kpi-icon { background: rgba(16, 185, 129, 0.1); color: #10b981; }
.rel-kpi-card.roas .kpi-icon { background: rgba(168, 85, 247, 0.1); color: #a855f7; }
.rel-kpi-card.whatsapp .kpi-icon { background: rgba(37, 211, 102, 0.1); color: #25d366; }

.kpi-content {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.kpi-label {
  font-size: 12px;
  font-weight: 600;
  color: var(--tx3);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.kpi-value {
  font-size: 32px;
  font-weight: 700;
  color: var(--tx);
  line-height: 1;
  font-family: 'Syne', sans-serif;
}

.kpi-desc {
  font-size: 12px;
  color: var(--tx3);
}

/* CHARTS */
.rel-charts-row {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 24px;
  margin-bottom: 32px;
}

.rel-chart-card {
  background: var(--bg2);
  border: 1px solid var(--border);
  border-radius: 16px;
  padding: 24px;
}

.chart-header {
  margin-bottom: 20px;
}

.chart-header h3 {
  font-size: 16px;
  font-weight: 700;
  color: var(--tx);
  margin: 0;
}

.chart-container {
  position: relative;
  height: 300px;
}

/* TABELA */
.rel-campaigns-section {
  margin-top: 32px;
}

.section-header h2 {
  font-size: 20px;
  font-weight: 700;
  color: var(--tx);
  margin: 0 0 20px 0;
}

.rel-table-wrapper {
  background: var(--bg2);
  border: 1px solid var(--border);
  border-radius: 16px;
  overflow: hidden;
}

.rel-campaigns-table {
  width: 100%;
  border-collapse: collapse;
}

.rel-campaigns-table thead {
  background: rgba(99, 102, 241, 0.05);
  border-bottom: 1px solid var(--border);
}

.rel-campaigns-table th {
  padding: 16px 20px;
  text-align: left;
  font-size: 11px;
  font-weight: 700;
  color: var(--tx2);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.rel-campaigns-table tbody tr {
  border-bottom: 1px solid var(--border);
  transition: all 0.2s ease;
}

.rel-campaigns-table tbody tr:hover {
  background: rgba(99, 102, 241, 0.03);
}

.rel-campaigns-table tbody tr:last-child {
  border-bottom: none;
}

.rel-campaigns-table td {
  padding: 16px 20px;
  font-size: 13px;
  color: var(--tx);
}

.rel-campaigns-table td:first-child {
  font-weight: 600;
}

/* LOADING & ERROR */
.rel-loading,
.rel-error {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 80px 40px;
  text-align: center;
}

.loading-spinner {
  width: 48px;
  height: 48px;
  border: 4px solid rgba(99, 102, 241, 0.1);
  border-top-color: #6366f1;
  border-radius: 50%;
  animation: spin 1s linear infinite;
  margin-bottom: 24px;
}

.rel-loading p,
.rel-error p {
  color: var(--tx3);
  margin: 8px 0 0 0;
}

.rel-error svg {
  opacity: 0.2;
  margin-bottom: 24px;
}

.rel-error h3 {
  color: var(--tx);
  margin: 16px 0 8px 0;
}

/* ═══════════════════════════════════════════════════════════
   HISTÓRICO DE RELATÓRIOS
   ═══════════════════════════════════════════════════════════ */

.relatorio-historico {
  padding: 32px;
  max-width: 1400px;
  margin: 0 auto;
}

.historico-header {
  margin-bottom: 24px;
}

.historico-header h2 {
  font-size: 24px;
  font-weight: 700;
  color: #1a202c;
  margin: 0 0 8px 0;
}

.historico-subtitle {
  font-size: 14px;
  color: #64748b;
  margin: 0;
}

.historico-lista {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(380px, 1fr));
  gap: 20px;
}

.historico-card {
  background: white;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  padding: 20px;
  transition: all 0.2s;
  cursor: pointer;
}

.historico-card:hover {
  border-color: #3138d1;
  box-shadow: 0 4px 12px rgba(49, 56, 209, 0.1);
  transform: translateY(-2px);
}

.historico-card-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 16px;
}

.historico-card-title {
  font-size: 16px;
  font-weight: 600;
  color: #1a202c;
  margin: 0 0 4px 0;
}

.historico-card-plataforma {
  display: inline-block;
  padding: 4px 10px;
  background: #eff6ff;
  color: #3138d1;
  border-radius: 6px;
  font-size: 12px;
  font-weight: 500;
}

.historico-card-info {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-bottom: 16px;
}

.historico-info-item {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  color: #64748b;
}

.historico-info-item svg {
  width: 14px;
  height: 14px;
  stroke: #94a3b8;
}

.historico-card-metricas {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
  margin-bottom: 16px;
  padding: 12px;
  background: #f8fafc;
  border-radius: 8px;
}

.historico-metrica {
  text-align: center;
}

.historico-metrica-label {
  display: block;
  font-size: 11px;
  color: #94a3b8;
  text-transform: uppercase;
  margin-bottom: 4px;
}

.historico-metrica-valor {
  display: block;
  font-size: 15px;
  font-weight: 700;
  color: #1a202c;
}

.historico-card-actions {
  display: flex;
  gap: 8px;
}

.historico-btn {
  flex: 1;
  padding: 10px;
  border: 1px solid #e2e8f0;
  background: white;
  border-radius: 8px;
  font-size: 13px;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
}

.historico-btn:hover {
  background: #f8fafc;
  border-color: #cbd5e1;
}

.historico-btn.primary {
  background: #3138d1;
  color: white;
  border-color: #3138d1;
}

.historico-btn.primary:hover {
  background: #2730b0;
}

.historico-btn.danger {
  color: #ef4444;
  border-color: #fecaca;
}

.historico-btn.danger:hover {
  background: #fef2f2;
  border-color: #fca5a5;
}

.historico-btn svg {
  width: 14px;
  height: 14px;
}

.historico-vazio {
  text-align: center;
  padding: 80px 20px;
  color: #94a3b8;
}

.historico-vazio svg {
  margin: 0 auto 16px;
  opacity: 0.3;
}

.historico-vazio p {
  font-size: 16px;
  font-weight: 500;
  color: #64748b;
  margin: 0 0 8px 0;
}

.historico-vazio small {
  font-size: 14px;
  color: #94a3b8;
}

@keyframes spin {
  to { transform: rotate(360deg); }
}

/* RESPONSIVO */
@media (max-width: 1200px) {
  .rel-charts-row {
    grid-template-columns: 1fr;
  }
  
  .historico-lista {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 768px) {
  .relatorio-header {
    padding: 16px;
  }
  
  .rh-top {
    flex-direction: column;
    gap: 16px;
    align-items: flex-start;
  }
  
  .relatorio-upload-area {
    padding: 20px 16px;
    min-height: calc(100vh - 120px);
  }
  
  .upload-card {
    padding: 40px 24px;
  }
  
  .relatorio-dashboard {
    padding: 16px;
  }
  
  .rel-kpis-grid {
    grid-template-columns: 1fr;
  }
  
  .rel-table-wrapper {
    overflow-x: auto;
  }
  
  .rel-campaigns-table {
    min-width: 1000px;
  }
  
  .relatorio-historico {
    padding: 20px 16px;
  }
  
  .historico-card-metricas {
    grid-template-columns: 1fr;
  }
}

/* Scrollbar personalizada para eventos do calendário */
.gcal-cell-events::-webkit-scrollbar {
  width: 4px;
}

.gcal-cell-events::-webkit-scrollbar-track {
  background: transparent;
}

.gcal-cell-events::-webkit-scrollbar-thumb {
  background: rgba(0,0,0,0.15);
  border-radius: 2px;
}

.gcal-cell-events::-webkit-scrollbar-thumb:hover {
  background: rgba(0,0,0,0.25);
}
