:root{
    --bg:#f4f7fb;--panel:#ffffff;--text:#111827;--muted:#6b7280;--line:#e5e7eb;--primary:#2563eb;--primary2:#7c3aed;--success:#16a34a;--warning:#f59e0b;--danger:#dc2626;--dark:#0f172a;--shadow:0 18px 50px rgba(15,23,42,.10);--radius:22px
}
*{box-sizing:border-box} body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--text)} a{color:inherit;text-decoration:none} img{max-width:100%} input,select,textarea,button{font:inherit} textarea{min-height:110px;resize:vertical}.app-shell{display:flex;min-height:100vh}.main{flex:1;padding:26px;min-width:0}.main-public{padding:0}.sidebar{width:292px;background:linear-gradient(180deg,#0f172a,#111827 60%,#111827);color:#fff;padding:22px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;z-index:20}.brand{display:flex;gap:12px;align-items:center;margin-bottom:28px}.brand-mark{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;font-weight:900;background:linear-gradient(135deg,var(--primary),var(--primary2));box-shadow:0 10px 25px rgba(37,99,235,.35)}.brand small{display:block;color:#b9c1d0;font-size:11px;line-height:1.2;margin-top:3px}.sidebar nav{display:grid;gap:6px}.sidebar nav a{padding:12px 14px;border-radius:14px;color:#e5e7eb}.sidebar nav a:hover,.sidebar nav a.active{background:rgba(255,255,255,.10)}.sidebar-footer{margin-top:auto;display:grid;gap:10px}.theme-toggle,.logout,.btn{border:0;border-radius:14px;padding:11px 14px;cursor:pointer;font-weight:700}.theme-toggle{background:rgba(255,255,255,.09);color:#fff;text-align:left}.logout{background:#fff;color:#111827;text-align:center}.topbar{display:flex;align-items:center;gap:14px;background:rgba(255,255,255,.86);backdrop-filter:blur(12px);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:14px 18px;margin-bottom:22px}.topbar small{display:block;color:var(--muted)}.menu-btn{display:none;border:0;background:var(--dark);color:#fff;border-radius:12px;padding:8px 11px}.container{max-width:1240px;margin:0 auto}.grid{display:grid;gap:18px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:22px;position:relative;overflow:hidden}.card h2,.card h3{margin-top:0}.stat{display:flex;align-items:center;justify-content:space-between}.stat strong{font-size:30px}.stat span{color:var(--muted)}.icon-bubble{width:48px;height:48px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(135deg,rgba(37,99,235,.16),rgba(124,58,237,.16));font-size:24px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:linear-gradient(135deg,var(--primary),var(--primary2));color:#fff;border:0}.btn.secondary{background:#111827;color:#fff}.btn.light{background:#eef2ff;color:#1e40af}.btn.danger{background:var(--danger)}.btn.success{background:var(--success)}.btn.warning{background:var(--warning);color:#111827}.btn.small{padding:8px 10px;border-radius:11px;font-size:13px}.actions{display:flex;flex-wrap:wrap;gap:8px}.form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.field{display:grid;gap:7px}.field label{font-weight:800;font-size:13px;color:#374151}.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);background:#fff;border-radius:14px;padding:12px 13px;color:var(--text);outline:none}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--primary);box-shadow:0 0 0 4px rgba(37,99,235,.12)}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:18px;background:var(--panel)}table{width:100%;border-collapse:collapse;min-width:850px}th,td{padding:13px 14px;text-align:left;border-bottom:1px solid var(--line);vertical-align:middle}th{font-size:12px;text-transform:uppercase;color:var(--muted);letter-spacing:.05em;background:rgba(15,23,42,.03)}tr:last-child td{border-bottom:0}.badge{display:inline-flex;align-items:center;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:900}.badge.success{background:#dcfce7;color:#166534}.badge.warning{background:#fef3c7;color:#92400e}.badge.danger{background:#fee2e2;color:#991b1b}.badge.muted{background:#f3f4f6;color:#4b5563}.badge.info{background:#dbeafe;color:#1d4ed8}.alert{padding:12px 14px;border-radius:14px;margin-bottom:14px;font-weight:700}.alert.success{background:#dcfce7;color:#166534}.alert.error{background:#fee2e2;color:#991b1b}.alert.info{background:#dbeafe;color:#1e40af}.hero{min-height:100vh;background:radial-gradient(circle at 12% 10%,rgba(37,99,235,.28),transparent 28%),radial-gradient(circle at 92% 22%,rgba(124,58,237,.26),transparent 28%),linear-gradient(135deg,#07111f,#111827 48%,#0b1020);color:#fff;overflow:hidden;position:relative}.hero:after{content:"";position:absolute;inset:auto -15% -30% -15%;height:45%;background:linear-gradient(135deg,rgba(37,99,235,.25),rgba(124,58,237,.12));filter:blur(40px)}.hero-nav{display:flex;align-items:center;justify-content:space-between;padding:24px min(6vw,70px);position:relative;z-index:2}.hero-brand{display:flex;align-items:center;gap:12px}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:38px;align-items:center;padding:40px min(6vw,70px) 70px;position:relative;z-index:2}.hero h1{font-size:clamp(38px,6vw,78px);line-height:.97;margin:18px 0}.hero p{font-size:18px;color:#cbd5e1;max-width:650px}.hero-buttons{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.hero-card{background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.14);box-shadow:0 25px 70px rgba(0,0,0,.38);backdrop-filter:blur(14px);border-radius:32px;padding:22px}.people-board{min-height:520px;border-radius:28px;background:linear-gradient(145deg,rgba(255,255,255,.15),rgba(255,255,255,.04));position:relative;overflow:hidden}.person{position:absolute;border-radius:26px;background:linear-gradient(135deg,#e0f2fe,#ede9fe);box-shadow:0 18px 50px rgba(0,0,0,.28);color:#111827;padding:18px}.person:before{content:"";display:block;width:70px;height:70px;border-radius:50%;background:linear-gradient(135deg,#fbbf24,#fb7185);margin-bottom:12px}.person.one{left:30px;top:32px;width:185px;height:205px}.person.two{right:32px;top:62px;width:210px;height:245px}.person.three{left:94px;bottom:44px;width:230px;height:230px}.floating-panel{position:absolute;right:52px;bottom:52px;width:260px;background:#fff;color:#111827;border-radius:22px;padding:18px;box-shadow:0 25px 70px rgba(0,0,0,.30)}.progress{height:10px;background:#e5e7eb;border-radius:999px;overflow:hidden}.progress span{display:block;height:100%;background:linear-gradient(135deg,var(--primary),var(--primary2));border-radius:999px}.login-page{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#0f172a,#111827)}.login-card{width:min(96vw,440px);background:#fff;border-radius:30px;padding:28px;box-shadow:0 30px 80px rgba(0,0,0,.35)}.login-card .brand{color:#111827}.tabs{display:flex;gap:8px;background:#f3f4f6;border-radius:16px;padding:6px;margin-bottom:18px}.tabs a{flex:1;text-align:center;border-radius:12px;padding:10px;font-weight:800;color:#4b5563}.tabs a.active{background:#fff;color:#111827;box-shadow:0 8px 20px rgba(15,23,42,.08)}.copybox{display:flex;gap:8px}.copybox input{flex:1}.qr-box{background:#fff;border:1px solid var(--line);border-radius:18px;padding:12px;display:inline-flex}.chat-box{height:430px;overflow:auto;background:linear-gradient(180deg,#f8fafc,#eef2ff);border-radius:20px;padding:18px;border:1px solid var(--line)}.message{max-width:78%;padding:12px 14px;border-radius:18px;margin-bottom:10px;background:#fff;box-shadow:0 8px 18px rgba(15,23,42,.07)}.message.me{margin-left:auto;background:linear-gradient(135deg,var(--primary),var(--primary2));color:#fff}.message small{display:block;opacity:.75;margin-top:4px}.empty{padding:26px;text-align:center;color:var(--muted)}.proof-img{width:70px;height:70px;object-fit:cover;border-radius:14px;border:1px solid var(--line)}.footer-note{text-align:center;color:#94a3b8;padding:20px}.install-banner{position:fixed;right:18px;bottom:18px;background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);padding:14px;max-width:320px;z-index:30;display:none}.install-banner.show{display:block}.install-banner .actions{margin-top:10px}.public-feature{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:26px}.public-feature div{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.14);border-radius:18px;padding:16px}.public-feature strong{display:block;margin-bottom:4px}.section-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.section-title h2{margin:0}.muted{color:var(--muted)}.pill{display:inline-flex;align-items:center;gap:8px;background:#eef2ff;color:#1e40af;border-radius:999px;padding:8px 12px;font-weight:900;font-size:13px}.danger-text{color:var(--danger)}.success-text{color:var(--success)}
body.dark{--bg:#0b1020;--panel:#111827;--text:#f8fafc;--muted:#94a3b8;--line:#1f2937;--shadow:0 18px 50px rgba(0,0,0,.28)}body.dark .topbar{background:rgba(17,24,39,.82)}body.dark .field input,body.dark .field select,body.dark .field textarea{background:#0f172a;color:#f8fafc;border-color:#263244}body.dark th{background:#0f172a}body.dark .login-card{background:#111827;color:#fff}body.dark .tabs{background:#0f172a}body.dark .tabs a.active{background:#1f2937;color:#fff}body.dark .chat-box{background:#0f172a}.mobile-overlay{display:none}
@media(max-width:980px){.sidebar{position:fixed;left:-310px;transition:.25s}.sidebar.open{left:0}.menu-btn{display:inline-flex}.main{padding:14px;padding-bottom:120px}.grid-2,.grid-3,.grid-4,.hero-grid,.public-feature{grid-template-columns:1fr}.hero-nav{padding:18px}.hero-grid{padding:10px 18px 42px}.people-board{min-height:440px}.person.two{right:18px}.person.three{left:18px}.floating-panel{right:18px;bottom:20px}.form-row{grid-template-columns:1fr}.mobile-overlay.show{display:block;position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:15}}
@media(max-width:560px){.hero-buttons .btn{width:100%}.actions .btn{width:100%}.card{padding:16px}.hero h1{font-size:38px}.person{transform:scale(.85);transform-origin:top left}.person.two{transform-origin:top right}.floating-panel{width:calc(100% - 36px)}}


/* === MaxClient PRO visual refinements v2 === */
.sidebar nav a{display:flex;align-items:center;gap:12px;font-weight:700;line-height:1.2}
.nav-icon{width:30px;height:30px;border-radius:10px;display:grid;place-items:center;background:rgba(255,255,255,.08);box-shadow:inset 0 0 0 1px rgba(255,255,255,.06);flex:none}
.sidebar nav a:hover .nav-icon,.sidebar nav a.active .nav-icon{background:rgba(255,255,255,.18)}
.theme-toggle,.logout{display:flex;align-items:center;justify-content:center;gap:10px}
.logout span,.theme-toggle span{white-space:nowrap}

.login-page{padding:22px;background:radial-gradient(circle at 12% 10%,rgba(37,99,235,.30),transparent 26%),radial-gradient(circle at 85% 25%,rgba(124,58,237,.30),transparent 24%),linear-gradient(135deg,#07111f,#111827 48%,#0b1020)}
.login-shell{width:min(1180px,96vw);display:grid;grid-template-columns:1.08fr .92fr;align-items:stretch;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.10);border-radius:34px;overflow:hidden;box-shadow:0 35px 90px rgba(0,0,0,.32);backdrop-filter:blur(10px)}
.login-visual{position:relative;padding:42px;background:linear-gradient(180deg,rgba(15,23,42,.86),rgba(17,24,39,.72));color:#fff}
.login-visual-content{height:100%;display:flex;flex-direction:column;justify-content:center}
.login-visual h1{font-size:clamp(34px,4vw,52px);line-height:1.02;margin:18px 0 14px}
.login-visual p{font-size:17px;color:#cbd5e1;max-width:560px}
.login-visual img{display:block;width:min(100%,460px);margin:24px auto 0;filter:drop-shadow(0 28px 60px rgba(0,0,0,.25))}
.visual-badges{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.visual-badges span{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.12);border-radius:999px;padding:10px 14px;font-weight:800}
.login-card{display:flex;flex-direction:column;justify-content:center;width:100%;max-width:none;border-radius:0;box-shadow:none;padding:40px;background:#fff}
.login-title{margin:4px 0 14px}
.login-title h2{margin:0 0 8px;font-size:31px;line-height:1.05}
.login-title p{margin:0}
.tabs a{display:flex;align-items:center;justify-content:center;gap:6px}
.form-note{padding:14px 16px;background:#f8fafc;border:1px solid #e5e7eb;border-radius:16px}
.form-note strong{display:block;margin-bottom:4px}
.form-note p{margin:0}

body.dark .login-shell{background:rgba(15,23,42,.45);border-color:rgba(148,163,184,.14)}
body.dark .login-card{background:#111827;color:#fff}
body.dark .form-note{background:#0f172a;border-color:#263244}
body.dark .brand{color:#fff}

@media(max-width:980px){
  .login-page{padding:14px}
  .login-shell{grid-template-columns:1fr}
  .login-visual{padding:26px 22px}
  .login-card{padding:28px}
}
@media(max-width:640px){
  .login-visual h1{font-size:32px}
  .visual-badges span{width:calc(50% - 6px);justify-content:center}
}
@media(max-width:440px){
  .visual-badges span{width:100%}
}


/* === Home profissional v3 + settings estendido === */
.landing-section{padding:78px 0}.landing-section:nth-child(even){background:rgba(255,255,255,.65)}
body.dark .landing-section:nth-child(even){background:rgba(17,24,39,.45)}
.section-title.centered{justify-content:center;text-align:center;flex-direction:column;align-items:center;margin-bottom:26px}.section-title.centered h2{font-size:34px}
.hero-pro .hero-grid{padding-bottom:80px}.hero-card-rich{position:relative}.rating-strip{display:grid;grid-template-columns:auto auto 1fr;gap:10px;align-items:center;margin-top:18px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.12);padding:14px 16px;border-radius:18px;max-width:700px}.stars{letter-spacing:2px;color:#fbbf24;font-size:20px}.stars.gold{font-size:18px}.public-feature-pro div{display:grid;gap:8px}.feature-chip{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:rgba(255,255,255,.14);font-size:18px}.floating-mini-card{position:absolute;left:24px;bottom:24px;background:#fff;color:#111827;border-radius:16px;padding:12px 14px;box-shadow:0 15px 45px rgba(0,0,0,.20)}.floating-mini-card span{display:block;font-weight:900}.floating-mini-card small{color:#6b7280}
.trust-grid{gap:18px}.trust-card{text-align:center;padding:26px 18px}.trust-card strong{font-size:34px;display:block;margin-bottom:8px}.trust-card span{color:var(--muted);font-weight:700}
.showcase-grid{display:grid;grid-template-columns:1fr .95fr;gap:26px;align-items:center}.section-kicker{display:inline-flex;align-items:center;gap:8px;background:#eef2ff;color:#1e40af;border-radius:999px;padding:8px 12px;font-weight:900;font-size:13px}.showcase-grid h2{font-size:42px;line-height:1.05;margin:14px 0}.showcase-list{display:grid;gap:12px;margin-top:20px}.showcase-list div{display:flex;gap:12px;align-items:flex-start;font-weight:700}.showcase-list span{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#dcfce7;color:#166534;flex:none}.showcase-panel{background:linear-gradient(135deg,#0f172a,#111827);color:#fff;border-radius:28px;padding:22px;box-shadow:0 20px 55px rgba(15,23,42,.24)}.showcase-panel-header{font-weight:900;font-size:22px;margin-bottom:16px}.showcase-panel-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.mini-stat{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:18px}.mini-stat strong{display:block;font-size:22px}.mini-stat span{color:#cbd5e1}
.testimonial-card{height:100%}.testimonial-card p{font-size:16px;line-height:1.6;color:var(--text)}.testimonial-user{display:flex;align-items:center;gap:12px;margin-top:18px}.testimonial-user span{display:block;color:var(--muted);font-size:14px}.avatar-badge{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;font-weight:900;background:linear-gradient(135deg,var(--primary),var(--primary2));color:#fff}
.faq-list{display:grid;gap:14px;max-width:940px;margin:0 auto}.faq-item{background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:0 18px;box-shadow:var(--shadow)}.faq-item summary{list-style:none;cursor:pointer;padding:20px 4px;font-weight:900;font-size:17px}.faq-item summary::-webkit-details-marker{display:none}.faq-item p{margin:0 4px 18px;color:var(--muted);line-height:1.6}
.cta-card-pro{background:linear-gradient(135deg,#0f172a,#111827 60%,#312e81);color:#fff;border-radius:34px;padding:32px;display:flex;justify-content:space-between;gap:20px;align-items:center;box-shadow:0 25px 70px rgba(15,23,42,.26)}.cta-card-pro h2{font-size:40px;line-height:1.02;margin:12px 0}.cta-card-pro p{max-width:680px;color:#cbd5e1}.cta-actions{align-items:center}
.settings-divider{height:1px;background:var(--line);margin:10px 0}.settings-subgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.settings-subgrid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.mini-card{background:rgba(37,99,235,.04);border:1px solid var(--line);border-radius:20px;padding:16px}.mini-card h3{margin:0 0 12px}

@media(max-width:980px){.showcase-grid,.cta-card-pro{grid-template-columns:1fr;display:grid}.settings-subgrid,.settings-subgrid-4{grid-template-columns:1fr 1fr}.rating-strip{grid-template-columns:1fr}.landing-section{padding:54px 0}.section-title.centered h2{font-size:28px}}
@media(max-width:640px){.settings-subgrid,.settings-subgrid-4,.showcase-panel-grid{grid-template-columns:1fr}.showcase-grid h2,.cta-card-pro h2{font-size:31px}.floating-mini-card{display:none}}

/* === V4 ajustes: logo upload, APK, notas e chat admin-revendedor === */
.brand-logo-img{overflow:hidden;background:#fff;padding:3px}
.brand-logo-img img{width:100%;height:100%;object-fit:contain;border-radius:12px}
.brand-mark.large{width:84px;height:84px;border-radius:24px;font-size:20px}
.brand-preview-box{display:flex;align-items:center;justify-content:space-between;gap:18px;background:linear-gradient(135deg,rgba(37,99,235,.08),rgba(124,58,237,.08));border:1px solid var(--line);border-radius:22px;padding:18px}
.brand-preview{display:flex;align-items:center;justify-content:center}
.note-card p{min-height:70px;color:var(--text);line-height:1.55}
.apk-card{text-align:center}
.apk-logo{width:86px;height:86px;object-fit:contain;border-radius:22px;background:#fff;border:1px solid var(--line);padding:8px;margin-bottom:12px;box-shadow:0 10px 26px rgba(15,23,42,.10)}
body.dark .brand-logo-img, body.dark .apk-logo{background:#0f172a}
@media(max-width:640px){.brand-preview-box{display:grid;text-align:center}.brand-preview{justify-content:center}}

/* === V5 melhorias gerais === */
.sidebar{overflow-y:auto;scrollbar-width:thin}
.sidebar::-webkit-scrollbar{width:8px}.sidebar::-webkit-scrollbar-thumb{background:rgba(255,255,255,.18);border-radius:999px}
.topbar{justify-content:flex-start}.install-topbar{margin-left:auto;white-space:nowrap}
body.dark .chat-box{background:#0f172a;color:#f8fafc;border-color:#263244}
body.dark .message:not(.me){background:#1f2937;color:#f8fafc}
body.dark .message:not(.me) strong, body.dark .message:not(.me) small{color:#e5e7eb}
.ticket-attachment{margin-top:10px}
.quick-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.panel-button-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.panel-open-card{display:flex;align-items:center;justify-content:center;min-height:96px;text-align:center;font-size:18px;font-weight:900}
.file-pill{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:6px 10px;background:#eef2ff;color:#1e40af;font-weight:800;font-size:12px}
@media(max-width:980px){.panel-button-grid{grid-template-columns:1fr}.install-topbar{display:none}}


/* === FIX V5.1: menu lateral mobile cobrindo a altura toda === */
@media(max-width:980px){
  body.sidebar-open::before{
    content:"";
    position:fixed;
    top:0;
    left:0;
    width:292px;
    height:100vh;
    height:100dvh;
    background:linear-gradient(180deg,#0f172a,#111827 60%,#111827);
    z-index:9998;
    pointer-events:none;
  }

  .sidebar{
    top:0 !important;
    bottom:0 !important;
    height:100vh !important;
    height:100dvh !important;
    min-height:100vh !important;
    max-height:100vh !important;
    background:linear-gradient(180deg,#0f172a,#111827 60%,#111827) !important;
    overflow-y:auto !important;
    overflow-x:hidden !important;
    z-index:9999 !important;
  }

  .sidebar.open{
    left:0 !important;
  }

  .sidebar nav,
  .sidebar-footer{
    position:relative;
    z-index:10000;
    background:transparent !important;
  }

  .sidebar-footer{
    padding-top:12px;
    padding-bottom:12px;
    margin-top:18px;
  }

  .mobile-overlay.show{
    z-index:9997 !important;
  }
}


/* === FIX V5.2 DEFINITIVO: drawer mobile 100% sólido e rolável === */
@media(max-width:980px){
  body.sidebar-open{
    overflow:hidden !important;
    touch-action:none;
  }

  .sidebar{
    position:fixed !important;
    top:0 !important;
    left:-90vw !important;
    bottom:auto !important;
    width:min(88vw,320px) !important;
    max-width:320px !important;
    height:100vh !important;
    height:100dvh !important;
    min-height:100vh !important;
    min-height:100dvh !important;
    max-height:100vh !important;
    max-height:100dvh !important;
    padding:22px !important;
    margin:0 !important;
    display:flex !important;
    flex-direction:column !important;
    background:#0f172a !important;
    background-image:linear-gradient(180deg,#0f172a 0%,#111827 62%,#111827 100%) !important;
    background-attachment:local !important;
    color:#fff !important;
    overflow-y:auto !important;
    overflow-x:hidden !important;
    -webkit-overflow-scrolling:touch !important;
    z-index:10020 !important;
    box-shadow:20px 0 70px rgba(0,0,0,.45) !important;
    transition:left .24s ease !important;
    contain:layout paint;
  }

  .sidebar.open{
    left:0 !important;
  }

  .sidebar::before{
    content:"" !important;
    position:fixed !important;
    top:0 !important;
    left:0 !important;
    width:min(88vw,320px) !important;
    max-width:320px !important;
    height:100vh !important;
    height:100dvh !important;
    background:#0f172a !important;
    background-image:linear-gradient(180deg,#0f172a 0%,#111827 62%,#111827 100%) !important;
    z-index:-1 !important;
    pointer-events:none !important;
  }

  .sidebar .brand,
  .sidebar nav,
  .sidebar .sidebar-footer{
    position:relative !important;
    z-index:2 !important;
    background:transparent !important;
  }

  .sidebar nav{
    display:flex !important;
    flex-direction:column !important;
    gap:6px !important;
    flex:0 0 auto !important;
    min-height:auto !important;
  }

  .sidebar nav a{
    width:100% !important;
    min-height:48px !important;
  }

  .sidebar-footer{
    margin-top:18px !important;
    padding:12px 0 20px !important;
    flex:0 0 auto !important;
  }

  .mobile-overlay{
    display:none !important;
  }

  .mobile-overlay.show{
    display:block !important;
    position:fixed !important;
    inset:0 !important;
    width:100vw !important;
    height:100vh !important;
    height:100dvh !important;
    background:rgba(0,0,0,.58) !important;
    z-index:10010 !important;
  }
}

@media(max-width:380px){
  .sidebar{
    width:90vw !important;
    left:-94vw !important;
  }
  .sidebar.open{
    left:0 !important;
  }
  .sidebar::before{
    width:90vw !important;
  }
}

/* MAXCLIENT_UPLOAD_FEEDBACK_V55 */
.btn:disabled{opacity:.65;cursor:not-allowed;filter:grayscale(.15)}


/* DOWNLOADER_AREA_MAXCLIENT */
.downloader-card h3{margin-bottom:8px}
.downloader-card details{border-top:1px solid var(--line);padding-top:10px}
.downloader-card summary{cursor:pointer;color:var(--text)}
body.dark .downloader-card details{border-top-color:#263244}


/* === Clientes prioritários e cobrança direta === */
.billing-priority{background:rgba(245,158,11,.08)}
body.dark .billing-priority{background:rgba(245,158,11,.12)}
.warning-btn{background:#f59e0b!important;color:#111827!important}
.billing-note{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:14px;background:rgba(245,158,11,.12);border:1px solid rgba(245,158,11,.28);font-weight:700}
.receipt-share-help{padding:12px 14px;border-radius:14px;background:#eff6ff;color:#1e3a8a;margin:14px 0;line-height:1.5}
body.dark .receipt-share-help{background:#172554;color:#dbeafe}

/* BANCOS_DE_PAGAMENTO_E_ENVIO_APP_V1 */
.btn.info{background:#2563eb;color:#fff}
.check-line{display:flex!important;align-items:center;gap:8px;min-height:46px;font-weight:700!important}
.check-line input{width:auto!important}
.app-delivery-status{border-left:4px solid var(--primary)}
.bank-image-preview{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:12px;border:1px solid var(--line);border-radius:16px}
.bank-image-preview img{width:110px;height:72px;object-fit:contain;border-radius:12px;background:#fff}
.bank-image-preview label{display:flex;gap:8px;align-items:center;font-weight:700}
.payment-bank-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.payment-bank-card{overflow:hidden;border:1px solid var(--line);border-radius:20px;background:var(--panel);box-shadow:0 10px 30px rgba(15,23,42,.07)}
.payment-bank-image{height:150px;display:grid;place-items:center;background:linear-gradient(135deg,#eef2ff,#f8fafc);border-bottom:1px solid var(--line)}
.payment-bank-image img{width:100%;height:100%;object-fit:contain;padding:18px}
.payment-bank-image span{font-size:58px}
.payment-bank-content{padding:18px;display:grid;gap:10px}
.payment-bank-content h3,.payment-bank-content p{margin:0}
body.dark .payment-bank-image{background:linear-gradient(135deg,#172554,#111827)}
@media(max-width:1100px){.payment-bank-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.payment-bank-grid{grid-template-columns:1fr}}


/* COBRANCA_POR_BANCO_E_PERIODO_V2 */
.action-picker{position:relative;display:inline-block}
.action-picker[open]{flex-basis:100%;width:100%}
.action-picker>summary{list-style:none;white-space:nowrap;width:max-content}
.action-picker>summary::-webkit-details-marker{display:none}
.action-picker-panel{position:relative;z-index:2;width:min(480px,100%);margin-top:8px;padding:14px;background:var(--panel);border:1px solid var(--line);border-radius:16px;box-shadow:0 12px 34px rgba(15,23,42,.16);display:grid;gap:12px}
.billing-bank-option{display:grid;gap:8px;padding:11px;border:1px solid var(--line);border-radius:14px;background:rgba(37,99,235,.04)}
.billing-bank-option>span{font-weight:900}
.period-buttons{display:flex;flex-wrap:wrap;gap:7px}
.period-buttons form{margin:0}
.renewal-picker .action-picker-panel{width:min(330px,88vw)}
.bank-period-editor{display:grid;gap:12px}
.bank-period-row{display:grid;grid-template-columns:135px 150px minmax(220px,1fr);gap:12px;align-items:end;padding:14px;border:1px solid var(--line);border-radius:16px;background:rgba(37,99,235,.035)}
.bank-period-row>strong{align-self:center}
.bank-plan-list{display:grid;gap:8px}
.bank-plan-list a{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:rgba(37,99,235,.06)}
.bank-plan-list a:hover{border-color:var(--primary)}
body.dark .billing-bank-option,body.dark .bank-period-row,body.dark .bank-plan-list a{background:rgba(37,99,235,.12)}
@media(max-width:760px){.bank-period-row{grid-template-columns:1fr}.action-picker-panel{width:100%;max-height:56vh;overflow:auto}.action-picker>summary{width:100%}}


.reseller-bank-config{margin-top:4px}
.reseller-bank-config>summary{cursor:pointer;list-style:none;text-align:center}
.reseller-bank-config>summary::-webkit-details-marker{display:none}
.reseller-bank-links-form{margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}

/* === GESTOR V6: Google, pagamentos, gavetas, aulas e MACs === */
#admin-payment,#video-lessons,#google-login,#mac-licenses{scroll-margin-top:24px}
.login-divider{display:flex;align-items:center;gap:12px;color:var(--muted);font-weight:800;font-size:12px;text-transform:uppercase;letter-spacing:.08em}
.login-divider:before,.login-divider:after{content:"";height:1px;background:var(--line);flex:1}
.google-login-btn{background:#fff;color:#1f2937;border:1px solid #d1d5db;box-shadow:0 8px 22px rgba(15,23,42,.08)}
.google-login-btn:hover{background:#f8fafc}
.google-g{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-weight:900;color:#2563eb;background:#eef2ff}
body.dark .google-login-btn{background:#0f172a;color:#f8fafc;border-color:#334155}

.oauth-callback-box{display:grid;gap:8px}
.oauth-callback-box code{display:block;overflow-wrap:anywhere;padding:10px 12px;border-radius:12px;background:var(--panel);border:1px dashed var(--line);font-size:13px}
.special-payment-box{display:grid;gap:12px;padding:16px;border:1px solid rgba(37,99,235,.25);border-radius:18px;background:rgba(37,99,235,.05)}
.special-payment-box h3{margin:0}
.bank-special-flag{padding:10px 12px;border-radius:12px;background:rgba(124,58,237,.10);font-weight:800;color:#5b21b6}
body.dark .bank-special-flag{color:#ddd6fe;background:rgba(124,58,237,.18)}

.panel-drawers{display:grid;gap:14px}
.panel-drawer{padding:0;overflow:hidden}
.panel-drawer>summary{list-style:none;cursor:pointer;padding:18px 20px;display:flex;align-items:center;justify-content:space-between;gap:14px;background:linear-gradient(135deg,rgba(37,99,235,.07),rgba(124,58,237,.05))}
.panel-drawer>summary::-webkit-details-marker{display:none}
.panel-drawer[open]>summary{border-bottom:1px solid var(--line)}
.panel-drawer-title{display:flex;align-items:center;gap:13px}
.panel-drawer-title strong,.panel-drawer-title small{display:block}
.panel-drawer-title small{margin-top:3px;color:var(--muted)}
.panel-folder-icon{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;font-size:24px;background:var(--panel);border:1px solid var(--line);box-shadow:0 8px 20px rgba(15,23,42,.08)}
.drawer-chevron{font-size:24px;transition:transform .2s ease}
.panel-drawer[open] .drawer-chevron{transform:rotate(180deg)}
.panel-drawer-content{padding:18px}
.panel-folder-preview{display:grid;gap:10px}
.panel-folder-preview span{padding:12px 14px;border:1px solid var(--line);border-radius:14px;font-weight:800;background:rgba(37,99,235,.04)}
.reseller-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.panel-list-identity{display:flex;align-items:center;gap:12px;min-width:230px}
.panel-list-identity img,.panel-list-identity>span{width:58px;height:46px;object-fit:contain;border-radius:10px;background:#fff;border:1px solid var(--line);padding:5px;display:grid;place-items:center;font-size:24px;flex:none}
.panel-list-identity small{display:block;margin-top:4px}
.access-drawer>summary{cursor:pointer;font-weight:800;color:var(--primary)}
.access-drawer form{margin-top:10px;min-width:220px}
.panel-access-card{display:grid;gap:10px;text-align:center;align-content:start;padding:16px;border:1px solid var(--line);border-radius:18px;background:var(--panel);box-shadow:0 10px 28px rgba(15,23,42,.07);transition:transform .18s ease,border-color .18s ease}
.panel-access-card:hover{transform:translateY(-2px);border-color:var(--primary)}
.panel-access-card img{width:100%;height:90px;object-fit:contain;border-radius:12px;background:#fff;padding:8px}
.panel-access-card small{color:var(--muted);min-height:34px}
.panel-access-icon{height:90px;display:grid;place-items:center;font-size:48px}
body.dark .panel-drawer>summary{background:linear-gradient(135deg,rgba(37,99,235,.14),rgba(124,58,237,.10))}
body.dark .panel-list-identity img,body.dark .panel-list-identity>span,body.dark .panel-access-card img{background:#0f172a}

.dashboard-shortcuts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.dashboard-shortcut{display:flex;align-items:center;gap:14px;padding:17px}
.dashboard-shortcut>span{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;font-size:24px;background:rgba(37,99,235,.10)}
.dashboard-shortcut strong,.dashboard-shortcut small{display:block}
.dashboard-shortcut small{margin-top:4px;color:var(--muted)}
.dashboard-feature-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.dashboard-feature-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px}
.dashboard-feature-card strong,.dashboard-feature-card small{display:block}
.dashboard-feature-card small{margin-top:5px;color:var(--muted)}
.feature-icon{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;font-size:30px;background:linear-gradient(135deg,rgba(37,99,235,.13),rgba(124,58,237,.13))}
.payment-feature{border-color:rgba(22,163,74,.35);background:linear-gradient(135deg,var(--panel),rgba(22,163,74,.06))}

.mac-license-section{margin-top:2px}
.mac-help-card{display:grid;place-items:center;text-align:center;align-content:center;min-height:280px}
.mac-summary-number{font-size:58px;line-height:1;font-weight:900;color:var(--primary);margin:12px 0 4px}
.mac-code{display:inline-block;padding:6px 8px;border-radius:9px;background:rgba(15,23,42,.06);font-weight:800;white-space:nowrap}
body.dark .mac-code{background:#0f172a}

.lesson-lock-wrap,.payment-admin-wrap{min-height:65vh;display:grid;place-items:center}
.lesson-lock-card,.payment-admin-card{width:min(100%,560px);text-align:center}
.lesson-lock-icon,.payment-admin-icon{width:86px;height:86px;margin:0 auto 16px;border-radius:26px;display:grid;place-items:center;font-size:42px;background:linear-gradient(135deg,rgba(37,99,235,.14),rgba(124,58,237,.14))}
.lesson-header-card{margin-bottom:16px}
.lesson-frame-wrap{height:calc(100vh - 190px);min-height:520px;border:1px solid var(--line);border-radius:22px;overflow:hidden;background:#0f172a;box-shadow:var(--shadow)}
.lesson-frame-wrap iframe{width:100%;height:100%;border:0;background:#fff}
.lesson-frame-help{text-align:center}
.payment-admin-card{display:grid;gap:16px}
.payment-admin-card h2,.payment-admin-card p{margin:0}
.payment-admin-main-btn{min-height:52px;font-size:16px}
.pix-payment-box{display:grid;gap:10px;text-align:left;padding:16px;border:1px solid var(--line);border-radius:18px;background:rgba(37,99,235,.05)}
.pix-payment-box textarea{width:100%;min-height:100px;border:1px solid var(--line);border-radius:13px;padding:12px;background:var(--panel);color:var(--text)}

@media(max-width:980px){
  .dashboard-shortcuts,.dashboard-feature-buttons{grid-template-columns:1fr}
  .reseller-check-grid{grid-template-columns:1fr}
  .dashboard-feature-card{grid-template-columns:auto 1fr}
  .dashboard-feature-card .btn{grid-column:1/-1}
  .lesson-frame-wrap{height:70vh;min-height:420px}
}
@media(max-width:640px){
  .panel-drawer>summary{padding:14px}
  .panel-drawer-content{padding:12px}
  .panel-folder-icon{width:42px;height:42px}
  .dashboard-shortcut{align-items:flex-start}
  .lesson-lock-card,.payment-admin-card{padding:18px}
}

/* === GESTOR V7: biblioteca de vídeo aulas + renovados hoje === */
[hidden]{display:none!important}
.lesson-admin-hero,.lesson-library-header{display:flex;align-items:center;justify-content:space-between;gap:18px;background:linear-gradient(135deg,var(--panel),rgba(37,99,235,.08),rgba(124,58,237,.08))}
.lesson-admin-hero h2,.lesson-admin-hero p,.lesson-library-header h2,.lesson-library-header p{margin:0}
.lesson-admin-hero p,.lesson-library-header p{margin-top:7px}
.lesson-admin-grid{align-items:start}
.lesson-admin-help{position:sticky;top:18px}
.lesson-help-list{display:grid;gap:13px;margin-top:16px}
.lesson-help-list>div{display:flex;align-items:flex-start;gap:12px;padding:13px;border:1px solid var(--line);border-radius:15px;background:rgba(37,99,235,.04)}
.lesson-help-list span{width:32px;height:32px;border-radius:11px;display:grid;place-items:center;background:linear-gradient(135deg,var(--primary),var(--primary2));color:#fff;font-weight:900;flex:none}
.lesson-help-list p{margin:2px 0 0;line-height:1.5}
.lesson-thumb-edit{display:flex;align-items:center;gap:15px;padding:12px;border:1px solid var(--line);border-radius:16px}
.lesson-thumb-edit img{width:130px;height:78px;object-fit:cover;border-radius:12px;background:#0f172a}
.lesson-admin-list{display:grid;gap:12px}
.lesson-admin-item{display:grid;grid-template-columns:150px minmax(0,1fr) auto;align-items:center;gap:16px;padding:14px;border:1px solid var(--line);border-radius:18px;background:rgba(37,99,235,.025)}
.lesson-admin-thumb{width:150px;height:90px;border-radius:14px;overflow:hidden;display:grid;place-items:center;background:linear-gradient(135deg,#0f172a,#312e81);color:#fff;font-size:38px}
.lesson-admin-thumb img{width:100%;height:100%;object-fit:cover}
.lesson-admin-info{min-width:0}
.lesson-admin-info p{margin:7px 0;line-height:1.45;color:var(--muted)}
.lesson-title-line{display:flex;align-items:center;gap:9px;flex-wrap:wrap;font-size:17px}
.lesson-admin-actions{justify-content:flex-end}
.video-settings-summary{display:flex;align-items:center;justify-content:space-between;gap:16px}
.video-settings-summary p{margin:5px 0 0}

.lesson-library-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}
.lesson-card{padding:0;overflow:hidden}
.lesson-card-cover{height:235px;position:relative;background:linear-gradient(135deg,#0f172a,#312e81);overflow:hidden}
.lesson-card-cover img{width:100%;height:100%;object-fit:cover;display:block}
.lesson-cover-placeholder{width:100%;height:100%;display:grid;place-items:center;font-size:76px;color:#fff}
.lesson-lock-badge{position:absolute;top:14px;right:14px;padding:8px 11px;border-radius:999px;background:rgba(15,23,42,.82);color:#fff;font-weight:900;font-size:12px;backdrop-filter:blur(8px)}
.lesson-card.unlocked .lesson-lock-badge{background:rgba(22,163,74,.9)}
.lesson-card-body{padding:18px;display:grid;gap:14px}
.lesson-card-body h3,.lesson-card-body p{margin:0}
.lesson-card-body h3{font-size:21px}
.lesson-password-form{display:grid;gap:11px;padding:14px;border-radius:16px;border:1px solid var(--line);background:rgba(37,99,235,.045)}
.lesson-player-wrap{position:relative;width:100%;aspect-ratio:16/9;border-radius:16px;overflow:hidden;background:#000;box-shadow:0 12px 30px rgba(15,23,42,.16)}
.lesson-player-wrap video,.lesson-player-wrap iframe{width:100%;height:100%;display:block;border:0;background:#000}
.lesson-view-actions{justify-content:space-between}
.lesson-view-actions form{margin:0}
body.dark .lesson-help-list>div,body.dark .lesson-admin-item,body.dark .lesson-password-form{background:rgba(37,99,235,.10)}

.today-renewals-card{scroll-margin-top:18px;border-color:rgba(22,163,74,.30);background:linear-gradient(135deg,var(--panel),rgba(22,163,74,.055))}
.today-renewal-count{min-width:46px;height:46px;padding:0 12px;border-radius:15px;display:grid;place-items:center;background:#dcfce7;color:#166534;font-size:20px;font-weight:900}
.today-renewals-list{display:grid;gap:11px}
.today-renewal-item{display:grid;grid-template-columns:auto minmax(170px,1.15fr) minmax(360px,1.4fr) auto;align-items:center;gap:15px;padding:14px;border:1px solid var(--line);border-radius:17px;background:var(--panel);box-shadow:0 7px 20px rgba(15,23,42,.045)}
.today-renewal-icon{width:43px;height:43px;border-radius:14px;display:grid;place-items:center;background:#dcfce7;color:#15803d;font-size:23px;font-weight:900}
.today-renewal-main{display:grid;gap:3px}
.today-renewal-main strong{font-size:16px}
.today-renewal-main span,.today-renewal-main small{color:var(--muted)}
.today-renewal-details{display:grid;grid-template-columns:repeat(3,minmax(100px,1fr));gap:9px}
.today-renewal-details>span{display:grid;gap:4px;padding:9px 11px;border-radius:12px;background:rgba(22,163,74,.055);border:1px solid rgba(22,163,74,.13)}
.today-renewal-details small{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.04em;font-weight:800}
.today-renewal-actions{justify-content:flex-end}
.today-renewals-empty{padding:18px;border:1px dashed rgba(22,163,74,.35);border-radius:15px;background:rgba(22,163,74,.035)}
body.dark .today-renewal-count,body.dark .today-renewal-icon{background:rgba(22,163,74,.18);color:#86efac}
body.dark .today-renewal-details>span{background:rgba(22,163,74,.10)}

@media(max-width:1180px){
  .today-renewal-item{grid-template-columns:auto 1fr auto}
  .today-renewal-details{grid-column:2/4;grid-row:2}
  .today-renewal-actions{grid-column:2/4;justify-content:flex-start}
}
@media(max-width:900px){
  .lesson-library-grid{grid-template-columns:1fr}
  .lesson-admin-item{grid-template-columns:120px 1fr}
  .lesson-admin-thumb{width:120px;height:78px}
  .lesson-admin-actions{grid-column:1/-1;justify-content:flex-start}
  .lesson-admin-help{position:static}
}
@media(max-width:680px){
  .lesson-admin-hero,.lesson-library-header,.video-settings-summary{display:grid}
  .lesson-card-cover{height:190px}
  .lesson-admin-item{grid-template-columns:1fr}
  .lesson-admin-thumb{width:100%;height:170px}
  .lesson-thumb-edit{display:grid}
  .lesson-thumb-edit img{width:100%;height:160px}
  .today-renewal-item{grid-template-columns:auto 1fr}
  .today-renewal-details,.today-renewal-actions{grid-column:1/-1}
  .today-renewal-details{grid-template-columns:1fr}
  .today-renewal-actions{display:grid}
  .today-renewal-actions .btn{width:100%}
}

/* === Melhorias de estética v5 === */
:root {
  --radius: 18px;
  --shadow: 0 10px 30px rgba(15, 23, 42, .08);
  --shadow-sm: 0 4px 12px rgba(15, 23, 42, .06);
}

.card {
  border-radius: var(--radius);
  box-shadow: var(--shadow);
  transition: box-shadow .2s ease, transform .2s ease;
}
.card:hover { box-shadow: 0 14px 40px rgba(15, 23, 42, .12); }

.stat {
  background: linear-gradient(135deg, #ffffff 0%, #f8fafc 100%);
  border: 1px solid #e2e8f0;
}
body.dark .stat { background: linear-gradient(135deg, #111827 0%, #1f2937 100%); }

.table-wrap {
  border-radius: 14px;
  overflow: hidden;
  border: 1px solid var(--line);
}
table {
  width: 100%;
  border-collapse: collapse;
}
th {
  background: #f8fafc;
  font-weight: 700;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: .03em;
  color: var(--muted);
  padding: 14px 16px;
}
td {
  padding: 16px;
  border-bottom: 1px solid var(--line);
  vertical-align: top;
}
tr:last-child td { border-bottom: none; }
tr:hover td { background: rgba(37, 99, 235, .03); }

.badge {
  display: inline-flex;
  align-items: center;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 700;
}
.badge.success { background: #dcfce7; color: #166534; }
.badge.warning { background: #fef3c7; color: #92400e; }
.badge.danger { background: #fee2e2; color: #991b1b; }

/* Cards de clientes */
.clients-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(340px, 1fr));
  gap: 16px;
  margin-top: 12px;
}
.client-card {
  background: var(--panel);
  border: 1px solid var(--line);
  border-radius: 16px;
  padding: 18px;
  box-shadow: var(--shadow-sm);
  display: flex;
  flex-direction: column;
  gap: 12px;
  transition: all .2s ease;
}
.client-card:hover {
  transform: translateY(-2px);
  box-shadow: var(--shadow);
}
.client-card.priority {
  border-left: 4px solid var(--warning);
}
.client-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 10px;
}
.client-name { font-weight: 800; font-size: 16px; }
.client-meta { font-size: 13px; color: var(--muted); line-height: 1.4; }
.client-details {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px 16px;
  font-size: 13px;
}
.client-details strong { display: block; color: var(--muted); font-size: 11px; text-transform: uppercase; letter-spacing: .04em; }
.client-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: auto;
  padding-top: 8px;
  border-top: 1px solid var(--line);
}
.client-actions .btn { font-size: 12px; padding: 6px 10px; }

@media (max-width: 720px) {
  .clients-grid { grid-template-columns: 1fr; }
  .client-details { grid-template-columns: 1fr; }
}

/* === Botões e animações aprimorados === */
.btn {
  position: relative;
  overflow: hidden;
  transition: all .22s cubic-bezier(.4, 0, .2, 1);
  transform: translateY(0);
}
.btn::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(120deg, transparent 0%, rgba(255,255,255,.25) 50%, transparent 100%);
  transform: translateX(-100%);
  transition: transform .5s ease;
  pointer-events: none;
}
.btn:hover::after { transform: translateX(100%); }
.btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 6px 16px rgba(37, 99, 235, .25);
  filter: brightness(1.05);
}
.btn:active {
  transform: translateY(0);
  box-shadow: 0 2px 6px rgba(0,0,0,.15);
  transition-duration: .08s;
}

.btn.small {
  transition: all .18s ease;
}
.btn.small:hover {
  transform: translateY(-1px) scale(1.02);
}

.btn.success:hover { box-shadow: 0 6px 16px rgba(22, 163, 74, .28); }
.btn.warning-btn:hover, .btn.warning:hover { box-shadow: 0 6px 16px rgba(245, 158, 11, .3); }
.btn.danger:hover { box-shadow: 0 6px 16px rgba(220, 38, 38, .28); }
.btn.light:hover { box-shadow: 0 4px 12px rgba(15, 23, 42, .12); }
.btn.info:hover { box-shadow: 0 6px 16px rgba(37, 99, 235, .3); }

/* Pulse sutil em botões de ação principal */
.btn:not(.small):not(.light):focus-visible {
  outline: 2px solid var(--primary);
  outline-offset: 2px;
}

/* Animações de entrada */
@keyframes fadeInUp {
  from { opacity: 0; transform: translateY(8px); }
  to { opacity: 1; transform: translateY(0); }
}
.card, .client-card, .stat {
  /* animation disabled */
}
.clients-grid .client-card:nth-child(1) { animation-delay: .02s; }
.clients-grid .client-card:nth-child(2) { animation-delay: .04s; }
.clients-grid .client-card:nth-child(3) { animation-delay: .06s; }
.clients-grid .client-card:nth-child(4) { animation-delay: .08s; }
.clients-grid .client-card:nth-child(5) { animation-delay: .10s; }
.clients-grid .client-card:nth-child(6) { animation-delay: .12s; }

/* Badge animado */
.badge {
  transition: transform .15s ease, box-shadow .15s ease;
}
.badge:hover { transform: scale(1.05); }

/* Inputs com foco mais bonito */
.field input:focus, .field select:focus, .field textarea:focus {
  border-color: var(--primary);
  box-shadow: 0 0 0 3px rgba(37, 99, 235, .15);
  outline: none;
  transition: box-shadow .2s ease, border-color .2s ease;
}

/* Sidebar links com transição suave */
.sidebar nav a {
  transition: background .2s ease, transform .15s ease;
}
.sidebar nav a:hover {
  transform: translateX(3px);
}

/* ============================================================
   LinkExpress Style — Gestor MaxClient
   Preto grafite + Azul elétrico + Prata
   ============================================================ */
:root {
  --bg: #0f0f12;
  --panel: #17171c;
  --panel2: #1f1f26;
  --soft: #2a2a32;
  --text: #f4f4f8;
  --muted: #b8b8c8;
  --line: rgba(255,255,255,0.10);
  --primary: #00A8FF;
  --primary2: #007ACC;
  --success: #2ee6a6;
  --warning: #ffb020;
  --danger: #ff4d6d;
  --dark: #0f0f12;
  --shadow: 0 12px 40px rgba(0,0,0,0.45);
  --radius: 20px;
  --lx-a: #00A8FF;
  --lx-b: #007ACC;
}

body {
  background: var(--bg) !important;
  color: var(--text) !important;
}

/* Sidebar */
.sidebar {
  background: linear-gradient(180deg, #121216, #0f0f12) !important;
  border-right: 1px solid var(--line);
}
.brand-mark {
  background: linear-gradient(135deg, var(--primary), var(--primary2)) !important;
  box-shadow: 0 8px 24px rgba(0,168,255,0.35) !important;
}
.sidebar nav a {
  color: #c8c8d4 !important;
  border-radius: 14px;
}
.sidebar nav a:hover,
.sidebar nav a.active {
  background: rgba(0,168,255,0.14) !important;
  color: #fff !important;
}
.sidebar nav a.active .nav-icon {
  background: rgba(0,168,255,0.25) !important;
}

/* Topbar */
.topbar {
  background: rgba(23,23,28,0.85) !important;
  border: 1px solid var(--line) !important;
  backdrop-filter: blur(12px);
  color: var(--text);
}
.topbar small { color: var(--muted) !important; }

/* Cards */
.card, .mini-card, .stat, .client-card {
  background: linear-gradient(155deg, #1c1c22, #141418) !important;
  border: 1px solid rgba(0,168,255,0.14) !important;
  border-radius: 20px !important;
  box-shadow: 0 10px 32px rgba(0,0,0,0.35) !important;
  color: var(--text);
}
.card:hover, .client-card:hover {
  border-color: rgba(0,168,255,0.45) !important;
  box-shadow: 0 16px 40px rgba(0,168,255,0.12), 0 10px 32px rgba(0,0,0,0.4) !important;
}

/* Buttons */
.btn {
  border-radius: 14px !important;
  font-weight: 700;
}
.btn:not(.light):not(.small) {
  background: linear-gradient(135deg, var(--primary), var(--primary2)) !important;
  color: #fff !important;
  box-shadow: 0 6px 20px rgba(0,168,255,0.3) !important;
}
.btn.success { background: linear-gradient(135deg, #2ee6a6, #1ab88a) !important; color: #0f0f12 !important; }
.btn.danger { background: linear-gradient(135deg, #ff4d6d, #e03555) !important; }
.btn.warning-btn, .btn.warning { background: linear-gradient(135deg, #ffb020, #e09000) !important; color: #0f0f12 !important; }
.btn.light {
  background: rgba(255,255,255,0.08) !important;
  color: var(--text) !important;
  border: 1px solid var(--line) !important;
}
.btn.info { background: linear-gradient(135deg, #00A8FF, #007ACC) !important; }

/* Inputs */
.field input, .field select, .field textarea {
  background: #1f1f26 !important;
  border: 1px solid var(--line) !important;
  color: var(--text) !important;
  border-radius: 14px !important;
}
.field input:focus, .field select:focus, .field textarea:focus {
  border-color: var(--primary) !important;
  box-shadow: 0 0 0 3px rgba(0,168,255,0.2) !important;
}
.field label { color: var(--muted); }

/* Tables */
th { background: #1f1f26 !important; color: var(--muted) !important; }
td { border-color: var(--line) !important; }
tr:hover td { background: rgba(0,168,255,0.06) !important; }

/* Badges */
.badge.success { background: rgba(46,230,166,0.15); color: #2ee6a6; }
.badge.warning { background: rgba(255,176,32,0.15); color: #ffb020; }
.badge.danger { background: rgba(255,77,109,0.15); color: #ff4d6d; }

/* Login */
.login-page {
  background: radial-gradient(circle at 20% 10%, rgba(0,168,255,0.18), transparent 40%),
              radial-gradient(circle at 80% 80%, rgba(0,122,204,0.15), transparent 40%),
              #0f0f12 !important;
}
.login-shell {
  background: rgba(23,23,28,0.6) !important;
  border: 1px solid rgba(0,168,255,0.2) !important;
}
.login-card { background: #17171c !important; color: var(--text); }
.login-visual { background: linear-gradient(180deg, #121216, #0f0f12) !important; }

/* Alerts */
.alert { border-radius: 14px; }
.alert.success { background: rgba(46,230,166,0.12); color: #2ee6a6; border: 1px solid rgba(46,230,166,0.3); }
.alert.error { background: rgba(255,77,109,0.12); color: #ff4d6d; border: 1px solid rgba(255,77,109,0.3); }

/* Theme toggle remains but dark is default */
body.dark .sidebar, body.dark .card, body.dark .topbar { /* already dark */ }

@media (max-width: 980px) {
  .sidebar { background: #0f0f12 !important; }
}

/* ============================================================
   Interface gráfica refinada — v6
   ============================================================ */

/* Tipografia e espaçamento */
h1, h2, h3 {
  letter-spacing: -0.02em;
  font-weight: 800;
}
.muted { color: #9ca3af !important; }

/* Cards com destaque sutil */
.card, .client-card, .stat {
  position: relative;
  overflow: hidden;
}
.card::before, .client-card::before {
  content: "";
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(0,168,255,0.4), transparent);
  opacity: 0.6;
}

/* Estatísticas mais impactantes */
.stat {
  background: linear-gradient(145deg, #1c1c22 0%, #141418 100%) !important;
  padding: 20px 22px;
}
.stat strong {
  font-size: 32px;
  background: linear-gradient(135deg, #fff, #00A8FF);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

/* Botões mais premium */
.btn {
  letter-spacing: 0.01em;
}
.btn:not(.small):hover {
  box-shadow: 0 8px 28px rgba(0,168,255,0.4) !important;
}

/* Sidebar mais clean */
.sidebar nav a {
  margin: 2px 0;
  transition: all 0.2s ease;
}
.sidebar nav a.active {
  background: linear-gradient(90deg, rgba(0,168,255,0.2), transparent) !important;
  border-left: 3px solid #00A8FF;
  padding-left: 11px;
}

/* Topbar glass */
.topbar {
  background: rgba(15,15,18,0.75) !important;
  border: 1px solid rgba(255,255,255,0.08) !important;
}

/* Empty states */
.empty {
  text-align: center;
  padding: 48px 20px;
  color: #6b7280;
  font-size: 15px;
}
.empty::before {
  content: "📭";
  display: block;
  font-size: 40px;
  margin-bottom: 12px;
  opacity: 0.6;
}

/* Tabelas mais leves */
.table-wrap {
  border-radius: 16px;
  background: #17171c;
}
th {
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

/* Client cards refinados */
.client-card {
  border-radius: 18px !important;
}
.client-name {
  font-size: 17px;
  letter-spacing: -0.01em;
}
.client-details strong {
  color: #6b7280;
  font-size: 10px;
}

/* Inputs com melhor foco */
.field input, .field select, .field textarea {
  transition: border-color 0.2s, box-shadow 0.2s, background 0.2s;
}
.field input:focus, .field select:focus, .field textarea:focus {
  background: #22222a !important;
}

/* Badges mais suaves */
.badge {
  font-weight: 700;
  letter-spacing: 0.02em;
}

/* Scrollbar */
::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-track { background: #0f0f12; }
::-webkit-scrollbar-thumb { background: #2a2a32; border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: #3a3a45; }

/* Melhor contraste em links */
a:hover { color: #00A8FF; }

/* Mobile refinements */
@media (max-width: 640px) {
  .main { padding: 12px !important; }
  .card { padding: 16px !important; }
  .stat strong { font-size: 26px; }
  .client-card { padding: 14px; }
}

/* URLs longas (webhook) quebram linha no celular */
code{word-break:break-all;overflow-wrap:anywhere;white-space:normal}


/* ===== Mobile: telas de configuração (evita corte lateral e layout de PC) ===== */
.grid>*,.form-row>*,.field,.card,.mini-card,.brand-preview-box>*{min-width:0}
.field input,.field select,.field textarea{max-width:100%}
.field input[type=file]{width:100%;max-width:100%;font-size:14px;white-space:normal}
.check-line{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.check-line input{width:auto;flex:0 0 auto}
@media(max-width:760px){
  .form-row{display:grid;grid-template-columns:1fr!important;gap:14px}
  .section-title{flex-direction:column;align-items:flex-start;gap:4px}
  .section-title h2{font-size:22px;line-height:1.2}
  .brand-preview-box{display:flex;flex-direction:column;align-items:center;text-align:center;padding:16px}
  .brand-preview-box p{font-size:14px}
  .settings-subgrid,.settings-subgrid-4{grid-template-columns:1fr}
  .card{padding:16px;overflow-x:hidden}
  .main{overflow-x:hidden}
  textarea{min-height:90px}
}

/* ===== Animações avançadas ===== */
@keyframes cardFadeUp {
  0% { opacity: 0; transform: translateY(18px) scale(0.98); }
  100% { opacity: 1; transform: translateY(0) scale(1); }
}
@keyframes softGlow {
  0%, 100% { box-shadow: 0 4px 12px rgba(0,0,0,0.08); }
  50% { box-shadow: 0 6px 20px rgba(37,99,235,0.12); }
}
.card, .mini-card, .client-card, .stat {
  /* animation disabled */
  will-change: transform, opacity;
}
.card:nth-child(1), .mini-card:nth-child(1) { animation-delay: 0.03s; }
.card:nth-child(2), .mini-card:nth-child(2) { animation-delay: 0.08s; }
.card:nth-child(3), .mini-card:nth-child(3) { animation-delay: 0.13s; }
.card:nth-child(4) { animation-delay: 0.18s; }
.card:nth-child(5) { animation-delay: 0.23s; }

.card, .mini-card {
  transition: transform 0.25s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.25s ease;
}
.card:hover, .mini-card:hover {
  transform: translateY(-4px) scale(1.01);
  box-shadow: 0 12px 28px rgba(0,0,0,0.16), 0 0 0 1px rgba(37,99,235,0.08);
}
.btn {
  position: relative;
  transition: transform 0.18s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.18s ease, background 0.18s ease;
  overflow: hidden;
}
.btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(0,0,0,0.12);
}
.btn:active {
  transform: translateY(0) scale(0.97);
  transition-duration: 0.08s;
}
.badge {
  transition: transform 0.2s ease;
}
.badge:hover {
  transform: scale(1.05);
}
@media (prefers-reduced-motion: reduce) {
  .card, .mini-card, .client-card, .stat, .btn {
    animation: none !important;
    transition: none !important;
  }
}

/* ===== Efeito parallax suave ===== */
.main {
  /* perspective: 1200px; */
}
.card, .mini-card {
  /* transform-style: preserve-3d; */
}
.card:hover, .mini-card:hover {
  transform: translateY(-2px);
}

/* ===== Animações de entrada extras ===== */
@keyframes fadeInLeft {
  from { opacity: 0; transform: translateX(-16px); }
  to { opacity: 1; transform: translateX(0); }
}
@keyframes fadeInScale {
  from { opacity: 0; transform: scale(0.96); }
  to { opacity: 1; transform: scale(1); }
}
.section-title, .topbar {
  /* animation disabled */
}
.table-wrap, .actions, .grid {
  /* animation disabled */
  animation-delay: 0.05s;
}
.btn, .badge, .field {
  animation: fadeInScale 0.35s cubic-bezier(0.22, 1, 0.36, 1) both;
}
.btn:nth-child(1) { animation-delay: 0.02s; }
.btn:nth-child(2) { animation-delay: 0.06s; }
.btn:nth-child(3) { animation-delay: 0.10s; }

/* ===== Feedback de toque nos botões ===== */
.btn, button, a.btn {
  -webkit-tap-highlight-color: transparent;
  touch-action: manipulation;
  user-select: none;
  min-height: 44px;
}
.btn:active, button:active, a.btn:active {
  transform: scale(0.96);
  transition: transform 0.08s ease;
  opacity: 0.92;
}
.btn.small:active {
  transform: scale(0.94);
}
@media (hover: none) {
  .btn:hover, .card:hover, .mini-card:hover {
    transform: none;
    box-shadow: none;
  }
  .btn:active {
    transform: scale(0.96);
    box-shadow: 0 2px 8px rgba(0,0,0,0.12);
  }
}

/* ===== Estilo melhorado dos botões ===== */
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  font-weight: 700;
  letter-spacing: 0.2px;
  border-radius: 12px;
  padding: 12px 18px;
  box-shadow: 0 2px 6px rgba(0,0,0,0.08);
  background: linear-gradient(180deg, var(--primary), #1d4ed8);
  color: #fff;
  border: 0;
}
.btn.light, a.btn.light {
  background: #f1f5f9;
  color: #1e293b;
  box-shadow: 0 1px 3px rgba(0,0,0,0.06);
}
.btn.success, a.btn.success {
  background: linear-gradient(180deg, #22c55e, #16a34a);
  color: #fff;
}
.btn.danger, a.btn.danger {
  background: linear-gradient(180deg, #ef4444, #dc2626);
  color: #fff;
}
.btn.warning-btn, .btn.warning {
  background: linear-gradient(180deg, #f59e0b, #d97706);
  color: #fff;
}
.btn.small {
  padding: 8px 12px;
  font-size: 13px;
  border-radius: 10px;
}
.btn:hover {
  filter: brightness(1.05);
}
body.dark .btn.light {
  background: #1f2937;
  color: #f8fafc;
}

/* ===== Menu lateral melhorado ===== */
.sidebar {
  background: #0b1220 !important;
  background-image: none !important;
}
.sidebar nav a {
  border-radius: 14px !important;
  -webkit-tap-highlight-color: transparent;
  transition: background .15s, color .15s;
}
.sidebar nav a:active,
.sidebar nav a:hover,
.sidebar nav a.active {
  background: rgba(96, 165, 250, 0.18) !important;
  border-radius: 14px !important;
}
.sidebar nav a.active {
  background: linear-gradient(90deg, rgba(37,99,235,.35), rgba(37,99,235,.12)) !important;
  color: #fff !important;
}
.sidebar nav a .nav-icon {
  border-radius: 10px;
  width: 32px;
  height: 32px;
  display: grid;
  place-items: center;
  background: rgba(255,255,255,.06);
}
.sidebar nav a.active .nav-icon {
  background: rgba(96,165,250,.25) !important;
}
.theme-toggle, .logout {
  border-radius: 14px !important;
  -webkit-tap-highlight-color: transparent;
}
.theme-toggle:active, .logout:active {
  transform: scale(0.97);
}

/* Força menu de cor única */
.sidebar,
.sidebar.open,
body.dark .sidebar,
body.dark .sidebar.open {
  background: #0b1220 !important;
  background-image: none !important;
  background-color: #0b1220 !important;
}
.sidebar nav,
.sidebar-footer {
  background: transparent !important;
}



/* Remove fundo dividido do menu */
.sidebar::before,
body.sidebar-open::before {
  display: none !important;
  background: none !important;
  content: none !important;
}
.sidebar {
  background: #0b1220 !important;
  background-image: none !important;
}

/* ===== Menu elegante ===== */
.sidebar {
  background: #0c1222 !important;
  padding: 20px 16px !important;
  border-right: 1px solid rgba(255,255,255,.06);
}
.sidebar .brand {
  margin-bottom: 22px;
  padding: 0 6px;
}
.sidebar nav {
  gap: 4px !important;
}
.sidebar nav a {
  padding: 11px 12px !important;
  border-radius: 12px !important;
  font-weight: 600 !important;
  letter-spacing: .1px;
  color: #cbd5e1 !important;
  transition: background .18s, color .18s;
}
.sidebar nav a .nav-icon {
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: rgba(255,255,255,.05);
  display: grid;
  place-items: center;
}
.sidebar nav a:hover {
  background: rgba(255,255,255,.06) !important;
  color: #fff !important;
}
.sidebar nav a.active {
  background: linear-gradient(90deg, rgba(59,130,246,.22), rgba(59,130,246,.08)) !important;
  color: #fff !important;
  box-shadow: inset 3px 0 0 #3b82f6;
}
.sidebar nav a.active .nav-icon {
  background: rgba(59,130,246,.25) !important;
  color: #93c5fd;
}
.sidebar-footer {
  padding-top: 16px !important;
  border-top: 1px solid rgba(255,255,255,.06);
}
.theme-toggle, .logout {
  border-radius: 12px !important;
  font-weight: 600 !important;
}

/* ===== Menu mobile melhorado ===== */
@media (max-width: 980px) {
  .sidebar {
    width: min(86vw, 300px) !important;
    padding: 18px 14px !important;
    border-radius: 0 18px 18px 0;
    box-shadow: 8px 0 30px rgba(0,0,0,.35);
  }
  .sidebar nav a {
    padding: 13px 12px !important;
    font-size: 15px !important;
    min-height: 48px;
    border-radius: 14px !important;
  }
  .sidebar nav a .nav-icon {
    width: 36px;
    height: 36px;
  }
  .sidebar-footer {
    padding-bottom: max(16px, env(safe-area-inset-bottom)) !important;
  }
  .theme-toggle, .logout {
    min-height: 46px;
    font-size: 15px;
  }
  .sidebar.open {
    animation: slideIn .22s cubic-bezier(.22,1,.36,1);
  }
}

@keyframes slideIn {
  from { transform: translateX(-12px); opacity: .6; }
  to { transform: translateX(0); opacity: 1; }
}

/* ===== Responsividade do menu ===== */
@media (max-width: 480px) {
  .sidebar {
    width: 88vw !important;
    padding: 16px 12px !important;
  }
  .sidebar nav a {
    padding: 12px 10px !important;
    font-size: 14.5px !important;
  }
  .sidebar .brand {
    margin-bottom: 16px;
  }
  .sidebar .brand-mark {
    width: 44px;
    height: 44px;
  }
}
@media (max-height: 640px) {
  .sidebar nav a {
    padding: 9px 10px !important;
    min-height: 42px;
  }
  .sidebar-footer {
    padding-top: 10px !important;
  }
}
@media (min-width: 981px) and (max-width: 1200px) {
  .sidebar {
    width: 260px !important;
  }
}

/* ===== Menu mobile reforçado ===== */
@media (max-width: 768px) {
  .sidebar {
    width: min(90vw, 310px) !important;
    max-height: 100dvh !important;
    height: 100dvh !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch;
    padding-bottom: max(20px, env(safe-area-inset-bottom)) !important;
  }
  .sidebar nav {
    gap: 2px !important;
  }
  .sidebar nav a {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  .sidebar .brand small {
    font-size: 10px;
  }
  .mobile-overlay.show {
    backdrop-filter: blur(2px);
  }
}

/* ===== Busca no menu ===== */
.menu-search { margin: 0 0 14px; }
.menu-search input {
  width: 100%;
  padding: 10px 12px;
  border-radius: 10px;
  border: 1px solid rgba(255,255,255,.1);
  background: rgba(255,255,255,.06);
  color: #fff;
  font-size: 14px;
}
.menu-search input::placeholder { color: #94a3b8; }
.nav-group {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .5px;
  color: #64748b;
  padding: 12px 12px 4px;
  text-transform: uppercase;
}

/* ===== Botão flutuante ===== */
.fab {
  position: fixed;
  right: 16px;
  left: auto;
  bottom: 80px;
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: linear-gradient(135deg, #2563eb, #1d4ed8);
  color: #fff;
  display: grid;
  place-items: center;
  box-shadow: 0 6px 20px rgba(37,99,235,.4);
  z-index: 40;
  text-decoration: none;
}
.fab:active { transform: scale(0.94); }
@media (min-width: 900px) { .fab { bottom: 24px; right: 24px; } }

/* ===== Badge de notificação ===== */
.quick-item { position: relative; }
.quick-badge {
  position: absolute;
  top: 2px;
  right: 8px;
  min-width: 16px;
  height: 16px;
  border-radius: 99px;
  background: #ef4444;
  color: #fff;
  font-size: 10px;
  font-weight: 800;
  display: grid;
  place-items: center;
  padding: 0 4px;
}

/* ===== Ícones do menu mais visíveis ===== */
.sidebar nav a {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
}
.sidebar nav a .nav-icon {
  width: 36px !important;
  height: 36px !important;
  min-width: 36px;
  border-radius: 10px;
  background: rgba(255,255,255,.07);
  display: grid !important;
  place-items: center;
  color: #94a3b8;
}
.sidebar nav a .nav-icon svg {
  width: 18px;
  height: 18px;
  stroke: currentColor;
}
.sidebar nav a.active .nav-icon {
  background: rgba(59,130,246,.28) !important;
  color: #93c5fd !important;
}
.sidebar nav a:hover .nav-icon {
  background: rgba(255,255,255,.12);
  color: #fff;
}

/* ===== Toque arredondado nos cards ===== */
.card, .mini-card, .stat, a.card, .panel-card, .dashboard-feature-card {
  -webkit-tap-highlight-color: transparent !important;
  border-radius: 16px !important;
}
.card:active, .mini-card:active, .stat:active, a.card:active {
  background: rgba(255,255,255,.06) !important;
  transform: scale(0.98);
  border-radius: 16px !important;
}

/* ===== Toque e animação melhorados ===== */
button, .btn, a.btn, .card, .mini-card, .stat, a.card,
.panel-drawer > summary, .dashboard-feature-card,
.quick-item, .sidebar nav a, .theme-toggle, .logout {
  -webkit-tap-highlight-color: transparent !important;
  touch-action: manipulation;
  transition: transform .12s cubic-bezier(.4,0,.2,1), 
              background .15s, box-shadow .15s !important;
}

button:active, .btn:active, a.btn:active,
.card:active, .mini-card:active, .stat:active, a.card:active,
.panel-drawer > summary:active, .dashboard-feature-card:active,
.quick-item:active, .sidebar nav a:active,
.theme-toggle:active, .logout:active {
  transform: scale(0.97) !important;
}

.card:active, .mini-card:active, .stat:active, a.card:active {
  background: rgba(255,255,255,.05) !important;
  box-shadow: 0 2px 8px rgba(0,0,0,.15) !important;
}

.btn:active, a.btn:active, button:active {
  filter: brightness(1.08);
}

.panel-drawer > summary:active {
  background: rgba(255,255,255,.06) !important;
  border-radius: 14px !important;
}

/* Remove destaque quadrado padrão do mobile */
* {
  -webkit-tap-highlight-color: transparent;
}

/* Touch glow - soft light on touch point */
.card, .btn, .reseller-card, .client-card, .stat, a.card {
  -webkit-tap-highlight-color: transparent;
  position: relative;
  overflow: hidden;
}
.card::before, .btn::before, .reseller-card::before, .client-card::before, .stat::before, a.card::before, .fab::before {
  content: '';
  position: absolute;
  width: 120px;
  height: 120px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255,255,255,.25) 0%, rgba(255,255,255,.08) 40%, transparent 70%);
  pointer-events: none;
  opacity: 0;
  transform: translate(-50%, -50%) scale(0);
  transition: opacity .3s ease, transform .3s ease;
}
.card:active::before, .btn:active::before, .reseller-card:active::before, .client-card:active::before, .stat:active::before, a.card:active::before, .fab:active::before {
  opacity: 1;
  transform: translate(-50%, -50%) scale(1.5);
  left: var(--touch-x, 50%);
  top: var(--touch-y, 50%);
}


/* ===== Correções (mobile) ===== */
/* 1) Botão "+" flutuante: ficava no fluxo da página por causa de position:relative */
.fab{position:fixed;right:16px;left:auto;bottom:80px;overflow:hidden;-webkit-tap-highlight-color:transparent}
@media (min-width:900px){.fab{bottom:24px;right:24px}}

/* 2) Tabelas cortadas: .table-wrap estava com overflow:hidden e sem rolagem lateral */
.table-wrap{overflow-x:auto !important;-webkit-overflow-scrolling:touch}
.table-wrap table{min-width:640px}
@media (min-width:981px){.table-wrap table{min-width:850px}}

/* Fix mobile: evita zoom e pulo ao digitar */
@media (max-width: 980px) {
  input, select, textarea {
    font-size: 16px !important;
  }
  .card, .mini-card {
    transform: none !important;
    transition: none !important;
  }
  body {
    overflow-x: hidden;
  }
}

/* force stable */
@media (max-width: 980px) {
  .card, .mini-card, .panel-access-card, .stat, .btn {
    animation: none !important;
    transform: none !important;
    transition: none !important;
  }
}
