:root{--bg:#0D0D0D;--panel:#161616;--soft:#1F1F1F;--line:#2A2A2A;--text:#FFFFFF;--muted:#BFBFBF;--gold:#D4AF37;--green:#22c55e;--red:#ef4444;--blue:#D4AF37}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at top left,#1a2333,#090d14 45%);color:var(--text);font-family:Inter,Segoe UI,Arial,sans-serif;display:flex;min-height:100vh}.sidebar{width:270px;background:rgba(12,18,28,.94);border-right:1px solid var(--line);padding:22px;display:flex;flex-direction:column;gap:12px;position:sticky;top:0;height:100vh}.brand{display:flex;gap:12px;align-items:center;margin-bottom:20px}.logo{width:42px;height:42px;border-radius:14px;background:linear-gradient(135deg,var(--gold),#f59e0b);color:#111;font-weight:900;display:grid;place-items:center}.brand h1{font-size:18px;margin:0}.brand span,.eyebrow,.card span,p{color:var(--muted)}.nav,button,.file-btn{border:1px solid var(--line);background:#121a28;color:var(--text);padding:11px 13px;border-radius:12px;cursor:pointer;font-weight:700}.nav{text-align:left}.nav.active,.nav:hover{border-color:var(--gold);background:rgba(245,197,66,.13)}.sidebar-footer{margin-top:auto;background:#0b111b;border:1px solid var(--line);border-radius:16px;padding:16px}main{flex:1;padding:28px;min-width:0}.topbar{display:flex;justify-content:space-between;gap:18px;align-items:center;margin-bottom:24px}h2{font-size:34px;margin:4px 0 0}.actions{display:flex;gap:10px;flex-wrap:wrap}select,input,textarea{background:#0d1420;border:1px solid var(--line);border-radius:12px;color:var(--text);padding:11px;width:100%}.primary{background:linear-gradient(135deg,#2563eb,#0891b2);border:0}.danger{background:linear-gradient(135deg,#dc2626,#991b1b);border:0}.view{display:none}.view.active{display:block}.cards{display:grid;grid-template-columns:repeat(4,minmax(180px,1fr));gap:16px;margin-bottom:18px}.card,.panel{background:rgba(17,24,39,.88);border:1px solid var(--line);border-radius:22px;box-shadow:0 20px 60px rgba(0,0,0,.25)}.card{padding:20px}.card strong{display:block;font-size:25px;margin-top:10px}.panel{padding:20px;margin-bottom:20px}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:14px}.table-wrap{overflow:auto;border-radius:16px;border:1px solid var(--line)}table{width:100%;border-collapse:collapse;min-width:820px}th,td{padding:12px 14px;border-bottom:1px solid var(--line);text-align:left;white-space:nowrap}th{background:#0d1420;color:#cbd5e1;position:sticky;top:0}tr:hover td{background:rgba(255,255,255,.03)}.money.pos{color:var(--green)}.money.neg{color:#f87171}.backup-actions{display:flex;gap:10px;flex-wrap:wrap}pre{background:#060a10;border:1px solid var(--line);border-radius:14px;padding:14px;white-space:pre-wrap}dialog{border:1px solid var(--line);background:#0f172a;color:var(--text);border-radius:24px;width:min(560px,92vw);padding:0}dialog::backdrop{background:rgba(0,0,0,.65)}form{padding:22px;display:grid;gap:13px}label{display:grid;gap:6px;color:#cbd5e1}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:8px}@media(max-width:900px){body{display:block}.sidebar{width:auto;height:auto;position:relative}.cards{grid-template-columns:1fr}.topbar{display:block}.actions{margin-top:12px}}


/* Calendário profissional nos lançamentos */
input[type="date"]{
  cursor:pointer;
  color-scheme:dark;
}
input[type="date"]::-webkit-calendar-picker-indicator{
  cursor:pointer;
  opacity:.85;
  filter:invert(1);
}

/* Totais e filtros nas telas de entrada/despesa */
.mini-cards{grid-template-columns:repeat(2,minmax(220px,1fr));margin-bottom:16px}
.panel-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.panel-actions select{min-width:230px;width:auto}
#incomeFilterLabel,#expenseFilterLabel{font-size:20px;color:#cbd5e1}
@media(max-width:900px){.mini-cards{grid-template-columns:1fr}.panel-head{align-items:stretch;flex-direction:column}.panel-actions{width:100%}.panel-actions select,.panel-actions button{width:100%}}

/* Ações no histórico */
.action-btn{padding:7px 10px;border-radius:10px;font-size:13px}
.edit-btn{background:linear-gradient(135deg,#f59e0b,#b45309);border:0;color:#111;font-weight:900}
.history-actions{display:flex;gap:8px}

/* Ajustes responsivos e PWA mobile */
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{overflow-x:hidden}
button,.nav,.file-btn,select,input,textarea{font-size:15px;touch-action:manipulation}
input,select,textarea{min-height:44px}
button,.file-btn{min-height:44px}
.actions select{min-width:180px}

@media(max-width:900px){
  body{min-height:100svh;background:#090d14}
  .sidebar{position:sticky;top:0;z-index:50;border-right:0;border-bottom:1px solid var(--line);padding:14px;background:rgba(12,18,28,.98);backdrop-filter:blur(10px)}
  .brand{margin-bottom:12px}.brand h1{font-size:16px}.brand span{font-size:13px}.logo{width:38px;height:38px;border-radius:12px}
  .sidebar{display:block}.sidebar .nav{display:inline-flex;align-items:center;justify-content:center;margin:0 6px 8px 0;padding:10px 12px;white-space:nowrap;font-size:14px}
  .sidebar-footer{display:none}
  main{padding:16px;max-width:100vw}
  .topbar{display:grid;gap:14px;margin-bottom:18px}.topbar h2{font-size:28px}.eyebrow{margin:0 0 4px}
  .actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.actions select{grid-column:1/-1;width:100%}.actions button{width:100%}
  .cards{grid-template-columns:1fr;gap:12px}.card{padding:16px;border-radius:18px}.card strong{font-size:22px}
  .panel{padding:14px;border-radius:18px}.panel h3{margin-top:0}.panel-head{align-items:stretch;flex-direction:column}.panel-head>div{width:100%}
  .panel-head input,.panel-head button{width:100%;margin-top:8px}.panel-actions{display:grid;grid-template-columns:1fr;gap:10px}.panel-actions select,.panel-actions button{width:100%}
  .table-wrap{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
  table{min-width:760px}th,td{padding:11px 12px;font-size:14px}
  .backup-actions{display:grid;grid-template-columns:1fr}.backup-actions button,.backup-actions .file-btn{width:100%;text-align:center}
  dialog{width:calc(100vw - 22px);max-height:calc(100svh - 22px);overflow:auto;border-radius:20px}form{padding:18px;gap:12px}.modal-actions{position:sticky;bottom:0;background:#0f172a;padding-top:10px}.modal-actions button{flex:1}
}

@media(max-width:520px){
  main{padding:12px}.topbar h2{font-size:25px}.nav{font-size:13px}.card strong{font-size:20px}
  table{min-width:680px}th,td{font-size:13px;padding:10px}
  .history-actions{display:block}.action-btn{width:100%}
}


/* Comando de voz */
.voice{background:linear-gradient(135deg,#f5c542,#d97706);border:0;color:#111;font-weight:900}
.voice.listening{outline:2px solid var(--gold);box-shadow:0 0 0 4px rgba(245,197,66,.18)}

/* Personalização Samuel Tattoo Studio */
:root{--gold:#d6ad58;--amber:#f0b640;--ink:#07090d;--panel:#101722;--line:#3a2c1f}
body{background:radial-gradient(circle at 12% 0%,rgba(214,173,88,.16),transparent 28%),radial-gradient(circle at 85% 10%,rgba(120,53,15,.22),transparent 30%),linear-gradient(135deg,#05070b 0%,#0b1019 48%,#120c08 100%)}
.sidebar{background:linear-gradient(180deg,rgba(10,14,22,.98),rgba(7,9,13,.98));border-right:1px solid rgba(214,173,88,.28)}
.brand-logo{width:48px;height:48px;object-fit:contain;border-radius:14px;background:rgba(214,173,88,.08);border:1px solid rgba(214,173,88,.45);padding:3px;box-shadow:0 0 18px rgba(214,173,88,.16)}
.brand h1{letter-spacing:.2px}.brand span{color:#c9b58d}.eyebrow{color:#c9b58d}.nav,button,.file-btn{border-color:rgba(214,173,88,.25);background:#121723}.nav.active,.nav:hover{border-color:var(--gold);background:linear-gradient(135deg,rgba(214,173,88,.20),rgba(92,45,17,.20))}.primary{background:linear-gradient(135deg,#d6ad58,#8a5a1f);color:#080b10}.danger{background:linear-gradient(135deg,#8b1e1e,#4a0f0f)}.voice{background:linear-gradient(135deg,#f0c36a,#b96c17);color:#07090d}.card,.panel{background:linear-gradient(180deg,rgba(16,23,34,.94),rgba(10,15,23,.94));border-color:rgba(214,173,88,.22);box-shadow:0 20px 60px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.03)}.card strong{color:#fff7e3}th{background:#0b111b;color:#ead7af}.table-wrap{border-color:rgba(214,173,88,.22)}select,input,textarea{border-color:rgba(214,173,88,.22);background:#0a1019}.sidebar-footer{border-color:rgba(214,173,88,.24);background:rgba(8,12,18,.9)}
.hero-samuel{border:1px solid rgba(214,173,88,.32);border-radius:24px;overflow:hidden;margin-bottom:16px;background:#080b10;box-shadow:0 24px 70px rgba(0,0,0,.38)}
.hero-samuel img{display:block;width:100%;height:auto;max-height:330px;object-fit:cover}
.client-strip{display:flex;align-items:center;gap:15px;border:1px solid rgba(214,173,88,.25);background:linear-gradient(135deg,rgba(214,173,88,.12),rgba(17,24,39,.88));border-radius:20px;padding:12px 16px;margin-bottom:18px}
.client-strip img{width:74px;height:74px;object-fit:contain;object-position:center bottom;border-radius:16px;background:rgba(0,0,0,.25)}
.client-strip span{display:block;color:#c9b58d;font-size:13px}.client-strip strong{display:block;font-size:22px;color:#fff7e3}.client-strip small{display:block;color:#cbd5e1;margin-top:3px}
@media(max-width:900px){.brand-logo{width:42px;height:42px}.hero-samuel{border-radius:18px}.client-strip{align-items:center}.client-strip img{width:58px;height:58px}.client-strip strong{font-size:18px}}
@media(max-width:520px){.hero-samuel img{max-height:190px}.client-strip{padding:10px}.client-strip small{font-size:12px}}


/* Personalização MAKROS Tecnologia - visual azul metálico */
:root{--gold:#35b8ff;--makros-blue:#0067ff;--makros-cyan:#00c8ff;--makros-deep:#030711;--panel:#0b1322;--line:#173a68;--text:#f8fbff;--muted:#a9c2df;--green:#17f08b;--red:#ff4d5a}
body{background:radial-gradient(circle at 78% 8%,rgba(0,153,255,.34),transparent 28%),radial-gradient(circle at 12% 0%,rgba(0,78,180,.30),transparent 34%),linear-gradient(135deg,#02050b 0%,#07101f 45%,#02050b 100%);}
.sidebar{background:linear-gradient(180deg,rgba(5,10,19,.98),rgba(2,5,11,.99));border-right:1px solid rgba(0,150,255,.28)}
.brand-logo{width:54px;height:54px;object-fit:contain;border-radius:16px;background:linear-gradient(135deg,rgba(0,111,255,.18),rgba(255,255,255,.04));border:1px solid rgba(116,201,255,.45);padding:4px;box-shadow:0 0 26px rgba(0,126,255,.28)}
.brand h1{letter-spacing:.8px}.brand span{color:#9ecaff}.eyebrow{color:#9ecaff}.nav,button,.file-btn{border-color:rgba(71,161,255,.28);background:#0b1424}.nav.active,.nav:hover{border-color:#3bb7ff;background:linear-gradient(135deg,rgba(0,103,255,.28),rgba(0,200,255,.10));box-shadow:inset 0 0 18px rgba(0,103,255,.12)}
.primary{background:linear-gradient(135deg,#0075ff,#00b7ff);color:#fff;border:0}.danger{background:linear-gradient(135deg,#ef233c,#9d0208);border:0}.voice{background:linear-gradient(135deg,#e9f7ff,#0094ff 55%,#004bad);color:#02101f;border:0;text-shadow:0 1px 0 rgba(255,255,255,.35)}.voice.listening{outline:2px solid #6bd4ff;box-shadow:0 0 0 5px rgba(0,148,255,.18),0 0 28px rgba(0,148,255,.35)}
.card,.panel{background:linear-gradient(180deg,rgba(12,23,40,.94),rgba(5,12,24,.96));border-color:rgba(74,166,255,.24);box-shadow:0 22px 68px rgba(0,0,0,.42), inset 0 1px 0 rgba(255,255,255,.04)}.card strong{color:#fff;text-shadow:0 0 18px rgba(0,126,255,.18)}th{background:#07101d;color:#d7ecff}.table-wrap{border-color:rgba(74,166,255,.24)}select,input,textarea{border-color:rgba(74,166,255,.26);background:#07101d}.sidebar-footer{border-color:rgba(74,166,255,.26);background:rgba(4,9,18,.92)}
.hero-makros{border:1px solid rgba(74,166,255,.32);border-radius:26px;overflow:hidden;margin-bottom:16px;background:#02050b;box-shadow:0 28px 90px rgba(0,70,190,.28),0 20px 70px rgba(0,0,0,.42)}
.hero-makros img{display:block;width:100%;height:auto;max-height:360px;object-fit:cover;object-position:center}
.client-strip{display:flex;align-items:center;gap:15px;border:1px solid rgba(74,166,255,.30);background:linear-gradient(135deg,rgba(0,103,255,.15),rgba(7,16,29,.92));border-radius:22px;padding:12px 16px;margin-bottom:18px;box-shadow:inset 0 1px 0 rgba(255,255,255,.05)}
.client-strip img{width:82px;height:82px;object-fit:contain;border-radius:18px;background:rgba(0,0,0,.32);padding:5px}.client-strip span{display:block;color:#9ecaff;font-size:13px}.client-strip strong{display:block;font-size:23px;color:#fff}.client-strip small{display:block;color:#c9dff5;margin-top:3px}
@media(max-width:900px){.brand-logo{width:44px;height:44px}.hero-makros{border-radius:18px}.client-strip img{width:60px;height:60px}.client-strip strong{font-size:18px}}
@media(max-width:520px){.hero-makros img{max-height:210px}.client-strip{padding:10px}.client-strip small{font-size:12px}}

/* Informação discreta do último lançamento */
.last-launch-info{display:block;margin-top:6px;color:#93c5fd;font-size:12px;letter-spacing:.02em;opacity:.9}
.sidebar-footer small{display:block;margin-top:8px;color:#93c5fd;font-size:11px;line-height:1.35}

body{background:radial-gradient(circle at top right,rgba(34,197,94,.18),transparent 32%),linear-gradient(135deg,#010403,#06100b 48%,#000)!important}
.sidebar{background:linear-gradient(180deg,#020604,#000)!important;border-right:1px solid rgba(34,197,94,.45)!important}
.nav.active,.nav:hover{border-color:#22c55e!important;background:linear-gradient(135deg,rgba(34,197,94,.22),rgba(0,0,0,.25))!important}
.primary,.voice{background:linear-gradient(135deg,#22c55e,#16a34a)!important;color:#00150a!important}
.danger{background:linear-gradient(135deg,#ef4444,#991b1b)!important}
.card,.panel,.client-strip,.modal,.sidebar-footer{border-color:rgba(34,197,94,.35)!important;background:linear-gradient(180deg,rgba(7,17,12,.95),rgba(2,8,5,.95))!important}
.hero-makros img{object-fit:cover!important;filter:saturate(1.05) contrast(1.06)!important}
.client-strip strong,.eyebrow{color:#bbf7d0!important}

body{background:radial-gradient(circle at top right,rgba(212,175,55,.14),transparent 30%),linear-gradient(135deg,#0D0D0D,#161616 48%,#050505)!important;color:#fff!important}
.sidebar{background:linear-gradient(180deg,#0D0D0D,#050505)!important;border-right:1px solid rgba(212,175,55,.35)!important}
.brand-logo{object-fit:contain!important;background:#0D0D0D!important;border:1px solid rgba(212,175,55,.55)!important}
.nav.active,.nav:hover{border-color:#D4AF37!important;background:linear-gradient(135deg,rgba(212,175,55,.20),rgba(255,255,255,.04))!important}
.primary,.voice{background:linear-gradient(135deg,#3A3A3A,#161616)!important;color:#fff!important;border:1px solid rgba(212,175,55,.42)!important}
.danger{background:linear-gradient(135deg,#D4AF37,#8b6f1f)!important;color:#0D0D0D!important}
.card,.panel,.client-strip,.modal,.sidebar-footer{border-color:rgba(212,175,55,.30)!important;background:linear-gradient(180deg,rgba(31,31,31,.96),rgba(13,13,13,.96))!important;box-shadow:0 18px 60px rgba(0,0,0,.42)!important}
.hero-makros img{object-fit:cover!important;filter:saturate(.75) contrast(1.08)!important}
.client-strip strong,.eyebrow{color:#D4AF37!important}
button{font-weight:800}
input,select,textarea{background:#0D0D0D!important;color:#fff!important;border-color:rgba(212,175,55,.35)!important}
table th{color:#D4AF37!important}
.sidebar-footer strong{color:#fff!important}


/* Ajuste solicitado: banner com rosto visível e card lateral */
.hero-makros,
.premium-hero{
  height:auto!important;
  min-height:unset!important;
  border-radius:20px!important;
  overflow:hidden!important;
  background:#050505!important;
  border:1px solid rgba(212,175,55,.38)!important;
}
.hero-makros img,
.premium-hero img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
  filter:none!important;
}
.sidebar-quote-card{
  margin-top:14px!important;
  border-radius:14px!important;
  overflow:hidden!important;
  background:#050505!important;
  border:1px solid rgba(212,175,55,.20)!important;
  box-shadow:0 14px 36px rgba(0,0,0,.35)!important;
}
.sidebar-quote-card img{
  width:100%!important;
  display:block!important;
  object-fit:cover!important;
}

/* Card lateral substituído pela imagem enviada */
.sidebar-quote-card{
  margin-top:14px!important;
  border-radius:14px!important;
  overflow:hidden!important;
  background:#050505!important;
  border:1px solid rgba(212,175,55,.22)!important;
  box-shadow:0 14px 36px rgba(0,0,0,.35)!important;
}
.sidebar-quote-card img{
  width:100%!important;
  display:block!important;
  object-fit:cover!important;
}


/* Banner exato enviado pelo cliente */
.hero-makros,
.premium-hero{
  height:auto!important;
  min-height:unset!important;
  border-radius:18px!important;
  overflow:hidden!important;
  background:#0D0D0D!important;
}
.hero-makros img,
.premium-hero img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
  filter:none!important;
}


/* AJUSTE FINAL DO ROSTO NO BANNER */
.hero-makros img,
.premium-hero img,
.hero-banner img,
.banner-top img{
    object-fit: contain !important;
    object-position: center center !important;
    width: 100% !important;
    height: 100% !important;
    transform: scale(0.92) !important;
    background:#000 !important;
}

.hero-makros,
.premium-hero,
.hero-banner,
.banner-top{
    background:#000 !important;
    overflow:hidden !important;
}


/* FUNDO DO BANNER IGUAL AO DA FOTO */
.hero-makros,
.premium-hero,
.hero-banner,
.banner-top{
    background: radial-gradient(circle at center, #1c1c1c 0%, #0b0b0b 55%, #000000 100%) !important;
    border:1px solid rgba(212,175,55,.45)!important;
}

.hero-makros img,
.premium-hero img,
.hero-banner img,
.banner-top img{
    background: transparent !important;
    mix-blend-mode: normal !important;
}


/* FUNDO EXATO DO BANNER */
.hero-makros,
.premium-hero,
.hero-banner,
.banner-top{
    background:
        radial-gradient(circle at center, rgba(18,18,18,0.95) 0%, rgba(5,5,5,1) 70%, #000000 100%) !important;
    box-shadow:
        inset 0 0 80px rgba(0,0,0,0.95),
        0 0 35px rgba(212,175,55,0.12) !important;
    border:1px solid rgba(212,175,55,0.35)!important;
}

.hero-makros img,
.premium-hero img,
.hero-banner img,
.banner-top img{
    background: transparent !important;
    object-fit: contain !important;
    object-position:center center !important;
    filter: contrast(1.03) brightness(0.98) !important;
}


/* FUNDO REAL IGUAL AO DA IMAGEM DOS 3 HOMENS */
.hero-makros,
.premium-hero,
.hero-banner,
.banner-top{
    background:
        linear-gradient(90deg,
        #000000 0%,
        #05070c 20%,
        #07111f 38%,
        #0a0f16 55%,
        #090909 72%,
        #000000 100%) !important;

    border:1px solid rgba(212,175,55,0.35)!important;

    box-shadow:
        inset 0 0 120px rgba(0,0,0,0.98),
        inset 0 0 40px rgba(7,17,31,0.75),
        0 0 30px rgba(212,175,55,0.08)!important;
}

.hero-makros img,
.premium-hero img,
.hero-banner img,
.banner-top img{
    background: transparent !important;
    object-fit: contain !important;
    object-position:center center !important;
    mix-blend-mode: normal !important;
}


/* REMOVE BORDA INTERNA DA IMAGEM DO BANNER */
.hero-makros img,
.premium-hero img,
.hero-banner img,
.banner-top img{
    border:none !important;
    outline:none !important;
    box-shadow:none !important;
    border-radius:0 !important;
}

.hero-makros,
.premium-hero,
.hero-banner,
.banner-top{
    padding:0 !important;
}

.hero-makros::before,
.premium-hero::before,
.hero-banner::before,
.banner-top::before,
.hero-makros::after,
.premium-hero::after,
.hero-banner::after,
.banner-top::after{
    display:none !important;
    content:none !important;
}


/* Correção mobile: remove o card/imagem grande que aparecia abaixo do menu lateral. O banner principal permanece. */
.sidebar .sidebar-quote-card{display:none!important;}


/* AJUSTE CLEAN DO BANNER MOBILE */
.hero-makros,
.premium-hero,
.hero-banner,
.banner-top{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:0!important;
    height:auto!important;
    min-height:unset!important;
}

.hero-makros img,
.premium-hero img,
.hero-banner img,
.banner-top img{
    width:100%!important;
    height:auto!important;
    display:block!important;
    transform:none!important;
    object-fit:cover!important;
}

@media (max-width: 768px){
  .hero-makros,
  .premium-hero,
  .hero-banner,
  .banner-top{
      border-radius:22px!important;
      overflow:hidden!important;
  }
}

.history-export-actions{display:grid;grid-template-columns:minmax(180px,1fr) auto auto auto;gap:8px;align-items:center}
.history-export-actions input{min-width:220px}
.history-export-actions .primary{background:linear-gradient(135deg,#d6ad58,#8a5a1f);color:#080b10;border:0}
@media(max-width:900px){.history-export-actions{grid-template-columns:1fr}.history-export-actions input,.history-export-actions button{width:100%;margin-top:0}}
