/* Identidade visual da plataforma no painel (login + painel).
   Carregado depois do admin.css: só troca cores, fontes e acabamento. Nome da marca continua vindo das configurações. */
@font-face{font-family:"Sora";font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/sora-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:"Sora";font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/sora-latin-700-normal.woff2) format("woff2")}
@font-face{font-family:"Inter";font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/inter-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Inter";font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fonts/inter-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"Inter";font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/inter-latin-600-normal.woff2) format("woff2")}

:root{
  --brand:#6366F1;--brand-dark:#4F46E5;--brand-soft:#EEEEFE;
  --ameixa:#292335;--ink:#292335;--muted:#6E6980;--line:#E6E4EC;--bg:#F5F5F7;
  --grad:linear-gradient(135deg,#6366F1 0%,#F43F5E 60%,#FB923C 100%);
  --glow:rgba(244,63,94,.28);
  --f-title:"Sora",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --f-body:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --radius:14px
}
body{font-family:var(--f-body);-webkit-font-smoothing:antialiased}
h1,h2,h3,.dlg-head h3{font-family:var(--f-title);letter-spacing:-.02em}
h2{font-size:22px}
input:focus,select:focus,textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}
input[type=checkbox],input[type=radio]{accent-color:var(--brand)}

/* Botões: principal em degradê, secundário claro com borda */
.btn{border-radius:12px;font-weight:600;transition:filter .15s,box-shadow .2s,transform .1s}
.btn,.btn.ok{background:var(--grad);color:#fff;box-shadow:0 8px 20px -10px var(--glow)}
.btn:hover:not(:disabled),.btn.ok:hover:not(:disabled){filter:brightness(1.05) saturate(1.05)}
.btn:active:not(:disabled){transform:scale(.98)}
.btn.sec{background:#fff;color:var(--ink);border:1.5px solid var(--line);box-shadow:none}
.btn.sec:hover:not(:disabled){border-color:#cfcbd8;filter:none}
.btn.danger{background:#FDECEE;color:#C81E3A;box-shadow:none}
.bulkbar{background:var(--ameixa)}
.bulkbar .btn{background:rgba(255,255,255,.12);box-shadow:none}

/* ===== Login ===== */
.auth{position:relative;overflow:hidden;
  background:
    radial-gradient(40% 45% at 8% 4%,rgba(99,102,241,.14),transparent 70%),
    radial-gradient(40% 45% at 94% 96%,rgba(251,146,60,.16),transparent 70%),
    #FAF9FC}
/* Triângulos finos no fundo (desenho do símbolo, bem clarinho) */
.auth::before,.auth::after{content:"";position:absolute;pointer-events:none;background-repeat:no-repeat;background-size:contain}
.auth::before{left:-4%;top:8%;width:36vw;height:36vw;max-width:520px;max-height:520px;opacity:.55;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 400' fill='none' stroke='%236366F1' stroke-opacity='.28' stroke-width='1.4' stroke-linejoin='round'%3E%3Cpath d='M20 360 200 60 380 360'/%3E%3Cpath d='M80 380 200 180 320 380'/%3E%3C/svg%3E")}
.auth::after{right:-6%;bottom:-6%;width:30vw;height:30vw;max-width:440px;max-height:440px;opacity:.55;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 400' fill='none' stroke='%23FB923C' stroke-opacity='.32' stroke-width='1.4' stroke-linejoin='round'%3E%3Cpath d='M20 380 200 80 380 380'/%3E%3Cpath d='M90 400 200 210 310 400'/%3E%3C/svg%3E")}
.auth-col{position:relative;z-index:1;max-width:420px;gap:26px}
.auth-brand{display:flex;align-items:center;gap:12px;font:700 34px/1 var(--f-title);letter-spacing:-.04em;text-transform:lowercase;color:var(--ink);min-height:40px}
.auth-brand:not(:empty)::before{content:"";width:58px;height:34px;flex:none;background:url(/assets/simbolo.svg) center/contain no-repeat}
.auth-card{position:relative;max-width:420px;border-radius:20px;padding:34px 30px 30px;gap:16px;border:1px solid var(--line);
  box-shadow:0 1px 2px rgba(41,35,53,.04),0 30px 60px -30px rgba(41,35,53,.25);overflow:hidden}
.auth-card::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:var(--grad)}
.auth-card h1{font:700 26px/1.15 var(--f-title);letter-spacing:-.03em}
.auth-card>p{font-size:15px}
.auth-card label.f{font-size:14.5px;color:var(--ink)}
.auth-card input{padding:13px 14px;border-radius:12px;background:#FCFCFE}
/* Ícones de e-mail e cadeado dentro do campo */
.auth-card input[type=email],.auth-card input[type=password]{padding-left:44px;background-repeat:no-repeat;background-position:14px center;background-size:19px}
.auth-card input[type=email]{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236E6980' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2.5'/%3E%3Cpath d='m4 7 8 6 8-6'/%3E%3C/svg%3E")}
.auth-card input[type=password]{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236E6980' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4.5' y='10.5' width='15' height='10' rx='2.5'/%3E%3Cpath d='M8 10.5V7.5a4 4 0 0 1 8 0v3'/%3E%3Cpath d='M12 14.5v2.5'/%3E%3C/svg%3E")}
/* Preenchimento automático do navegador sem o fundo azul */
.auth-card input:-webkit-autofill{-webkit-box-shadow:0 0 0 40px #FCFCFE inset;-webkit-text-fill-color:var(--ink)}
.auth-card .btn{padding:14px 16px;font-size:16px;margin-top:4px}
.auth-card .btn.sec{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:0}
.auth-card .btn.sec::before{content:"";width:18px;height:18px;flex:none;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236E6980' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3Cpath d='M19.4 15a1.7 1.7 0 0 0 .3 1.8l.1.1a2 2 0 1 1-2.8 2.8l-.1-.1a1.7 1.7 0 0 0-1.8-.3 1.7 1.7 0 0 0-1 1.5V21a2 2 0 1 1-4 0v-.1a1.7 1.7 0 0 0-1.1-1.5 1.7 1.7 0 0 0-1.8.3l-.1.1a2 2 0 1 1-2.8-2.8l.1-.1a1.7 1.7 0 0 0 .3-1.8 1.7 1.7 0 0 0-1.5-1H3a2 2 0 1 1 0-4h.1a1.7 1.7 0 0 0 1.5-1.1 1.7 1.7 0 0 0-.3-1.8l-.1-.1a2 2 0 1 1 2.8-2.8l.1.1a1.7 1.7 0 0 0 1.8.3H9a1.7 1.7 0 0 0 1-1.5V3a2 2 0 1 1 4 0v.1a1.7 1.7 0 0 0 1 1.5 1.7 1.7 0 0 0 1.8-.3l.1-.1a2 2 0 1 1 2.8 2.8l-.1.1a1.7 1.7 0 0 0-.3 1.8V9a1.7 1.7 0 0 0 1.5 1H21a2 2 0 1 1 0 4h-.1a1.7 1.7 0 0 0-1.5 1Z'/%3E%3C/svg%3E") center/contain no-repeat}
@media(max-width:480px){.auth-card .btn.sec{font-size:14.5px;padding:12px 10px}.auth-brand{font-size:28px}.auth-brand:not(:empty)::before{width:48px;height:28px}.auth-card{padding:28px 20px 22px}}

/* ===== Painel ===== */
.bar{background:var(--ameixa);box-shadow:0 1px 0 rgba(255,255,255,.06)}
.bar-row{padding:12px 16px}
.bar-row strong{font:700 17px/1.2 var(--f-title);letter-spacing:-.02em}
.bar button,.bar a.btn-ghost{background:rgba(255,255,255,.1);border-radius:10px;padding:8px 14px;font-weight:500}
.bar button:hover,.bar a.btn-ghost:hover{background:rgba(255,255,255,.18)}
.tabs{gap:6px}
.bar .tab{position:relative;background:transparent;color:rgba(255,255,255,.7);border-bottom:0;padding:11px 14px 13px;font-weight:500;border-radius:10px 10px 0 0}
.bar .tab:hover{color:#fff;background:rgba(255,255,255,.05)}
.bar .tab.active{color:#fff;font-weight:600;background:rgba(255,255,255,.08)}
.tab.active::after{content:"";position:absolute;left:12px;right:12px;bottom:0;height:3px;border-radius:3px 3px 0 0;background:var(--grad)}
.acting{background:#FFF3E6;color:#8A3B0C;border-bottom:1px solid #FCE0C4}
.acting button{border-color:#F6B27A;border-radius:8px}
.wrap>h2,.panel h2{color:var(--ink)}
.panel,.stat,.pitem,.bcard,.tcard{border:1px solid var(--line);box-shadow:0 1px 2px rgba(41,35,53,.04)}
.stat{border-radius:var(--radius);padding:16px 18px;transition:border-color .15s,box-shadow .15s}
.stat:hover{border-color:#D4D0E0;box-shadow:0 6px 18px -10px rgba(41,35,53,.25)}
.stat b{font:700 26px/1.1 var(--f-title);letter-spacing:-.03em;margin-bottom:4px}
.stat.warn b{color:#E8590C}
.pitem{border-radius:12px}
.pname{font-weight:600}
.badge.or{background:#FFF1E6;color:#C2410C}
.progress i{background:var(--grad)}
.drop{border-color:#CFCBE3;background:#FBFAFF}
.billing.a_vencer{background:var(--brand-soft);color:#3730A3}
.toast{background:var(--ameixa)}
.logo-ed-canvas{box-shadow:0 0 0 2px #fff,0 0 0 4px var(--brand)}
