:root{--auth-red:#ef2635;--auth-purple:#7c3aed;--auth-bg:#06060a;--auth-card:#111116}
body.vps-locked{overflow:auto!important;background:radial-gradient(circle at 18% 12%,rgba(239,38,47,.28),transparent 30%),radial-gradient(circle at 82% 3%,rgba(168,85,247,.28),transparent 34%),linear-gradient(135deg,#030306,#08080d 50%,#15050b)!important}
body.vps-locked .app{display:none!important}.vps-auth{position:fixed;inset:0;z-index:99999;display:none;overflow:auto;padding:30px 16px;color:#fff;background:radial-gradient(circle at 18% 12%,rgba(239,38,47,.24),transparent 30%),radial-gradient(circle at 82% 3%,rgba(168,85,247,.24),transparent 34%),linear-gradient(135deg,#030306,#08080d 50%,#15050b)}
body.vps-locked .vps-auth{display:block}.vps-auth:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.16;background-image:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:46px 46px;mask-image:radial-gradient(circle at 50% 12%,#000,transparent 68%)}
.vps-shell{width:min(1040px,100%);margin:0 auto;position:relative}.vps-logo{text-align:center;margin:12px 0 26px;font-size:clamp(42px,7vw,78px);font-weight:1000;letter-spacing:.04em;text-shadow:0 0 18px rgba(239,38,47,.55),0 0 34px rgba(168,85,247,.34)}
.vps-card{width:min(760px,100%);margin:0 auto;border:1px solid rgba(255,255,255,.11);border-radius:24px;background:linear-gradient(135deg,rgba(239,38,47,.10),rgba(168,85,247,.08) 45%,rgba(255,255,255,.025)),linear-gradient(180deg,rgba(21,21,26,.96),rgba(8,8,12,.98));box-shadow:0 28px 92px rgba(0,0,0,.58),inset 0 1px 0 rgba(255,255,255,.06);padding:32px clamp(18px,4vw,46px)}
.vps-card h1{margin:0;font-size:clamp(28px,4vw,44px)}.vps-sub{margin:10px 0 24px;color:#b7b7c2;font-weight:800}.vps-tabs{height:58px;border-radius:16px;background:#07070a;border:1px solid rgba(255,255,255,.08);display:grid;grid-template-columns:1fr 1fr;padding:6px;margin-bottom:24px}.vps-tabs button{border:0;border-radius:13px;background:transparent;color:#a9a9b4;font-weight:950}.vps-tabs button.active{background:linear-gradient(135deg,#ef2635,#8a123f 58%,#5b21b6);color:#fff;box-shadow:0 12px 28px rgba(239,38,47,.20)}
.vps-form{display:none;gap:15px}.vps-form.active{display:grid}.vps-grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.vps-field label{display:block;margin:0 0 8px;color:#c8c8d2;font-size:11px;font-weight:950;text-transform:uppercase;letter-spacing:.08em}.vps-field input,.vps-field select{width:100%;height:54px;border-radius:14px;border:1px solid rgba(255,255,255,.09);background:#060609;color:#fff;padding:0 16px;font-size:16px;outline:none}.vps-field input:focus{border-color:rgba(239,38,47,.65);box-shadow:0 0 0 3px rgba(239,38,47,.12),0 0 0 6px rgba(168,85,247,.06)}
.vps-primary{height:58px;border:0;border-radius:14px;background:linear-gradient(135deg,#ef2635,#95123b 58%,#6d28d9);color:#fff;font-size:16px;font-weight:1000;box-shadow:0 16px 34px rgba(239,38,47,.20)}.vps-secondary{min-height:42px;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:#0b0b0f;color:#fff;padding:0 13px;font-weight:900}.vps-msg{min-height:20px;color:#fda4af;font-weight:900}.vps-plans{display:none;border:1px solid rgba(239,38,47,.28);border-radius:18px;padding:14px;background:linear-gradient(135deg,rgba(239,38,47,.11),rgba(168,85,247,.10));gap:12px}.vps-plans.show{display:grid}.vps-plans h3{margin:0}.vps-plans p{margin:0;color:#b8b8c2;font-size:12px;font-weight:750}.vps-plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.vps-plan{border:1px solid rgba(255,255,255,.10);border-radius:14px;background:#08080b;color:#fff;padding:12px;text-align:left;display:grid;gap:4px}.vps-plan:hover{border-color:rgba(239,38,47,.55);transform:translateY(-1px)}.vps-plan strong{font-size:18px}.vps-plan small{color:#a8a8b2}
.vps-top-btn{border:1px solid rgba(255,255,255,.12);background:#101014;color:#fff;border-radius:999px;padding:10px 13px;font-size:12px;font-weight:900}.vps-admin-open{display:none}.vps-admin-open.show{display:inline-flex}.vps-admin{position:fixed;inset:0;z-index:99998;display:none;background:rgba(0,0,0,.78);padding:18px;overflow:auto}.vps-admin.show{display:block}.vps-admin-box{width:min(1180px,100%);margin:0 auto;border:1px solid rgba(255,255,255,.10);border-radius:22px;background:#111114;color:#fff;box-shadow:0 28px 80px rgba(0,0,0,.6);overflow:hidden}.vps-admin-head{display:flex;justify-content:space-between;gap:12px;padding:18px;border-bottom:1px solid rgba(255,255,255,.10);background:linear-gradient(90deg,rgba(239,38,47,.12),rgba(124,58,237,.08),transparent)}.vps-admin-body{display:grid;grid-template-columns:340px minmax(0,1fr);gap:16px;padding:16px}.vps-panel{border:1px solid rgba(255,255,255,.10);border-radius:16px;background:#0b0b0d;padding:14px;display:grid;gap:11px}.vps-panel h3{margin:0}.vps-user{border:1px solid rgba(255,255,255,.09);border-radius:14px;background:#151518;padding:12px;display:grid;gap:8px}.vps-user header{display:flex;justify-content:space-between;gap:8px}.vps-row{display:flex;gap:7px;flex-wrap:wrap}.vps-badge{border:1px solid rgba(255,255,255,.12);border-radius:999px;padding:5px 8px;font-size:10px;font-weight:900}.vps-badge.ok{color:#86efac;border-color:rgba(34,197,94,.4)}.vps-badge.warn{color:#fde68a;border-color:rgba(245,158,11,.4)}
@media(max-width:760px){.vps-grid2,.vps-plan-grid,.vps-admin-body{grid-template-columns:1fr}.vps-card h1,.vps-sub{text-align:center}}


/* Notificação de boas-vindas configurável pelo admin */
.vps-admin-left{display:grid;gap:16px;align-content:start}.vps-help{display:block;color:#aaaab6;font-weight:750;line-height:1.35}.vps-panel textarea{width:100%;min-height:94px;border-radius:14px;border:1px solid rgba(255,255,255,.09);background:#060609;color:#fff;padding:13px 16px;font-size:14px;outline:none;resize:vertical}.vps-panel textarea:focus,.vps-panel select:focus{border-color:rgba(239,38,47,.65);box-shadow:0 0 0 3px rgba(239,38,47,.12),0 0 0 6px rgba(168,85,247,.06)}
.vps-welcome{position:fixed;inset:0;z-index:100000;display:grid;place-items:center;padding:18px;background:rgba(0,0,0,.72);backdrop-filter:blur(6px)}.vps-welcome-card{position:relative;width:min(520px,100%);border:1px solid rgba(255,255,255,.13);border-radius:24px;background:linear-gradient(135deg,rgba(239,38,47,.12),rgba(124,58,237,.10) 45%,rgba(255,255,255,.03)),linear-gradient(180deg,#151519,#08080b);color:#fff;overflow:hidden;box-shadow:0 34px 100px rgba(0,0,0,.72),0 0 0 1px rgba(255,255,255,.04) inset;animation:vpsWelcomeIn .22s ease-out}.vps-welcome-x{position:absolute;right:12px;top:12px;z-index:2;width:30px;height:30px;border:1px solid rgba(255,255,255,.16);border-radius:999px;background:rgba(0,0,0,.52);color:#fff;font-size:20px;line-height:1;font-weight:900;display:grid;place-items:center}.vps-welcome-media{background:#050507;max-height:320px;overflow:hidden}.vps-welcome-media img,.vps-welcome-media video{display:block;width:100%;max-height:320px;object-fit:cover}.vps-welcome-content{padding:26px clamp(18px,4vw,34px) 30px;text-align:center}.vps-welcome-content h2{margin:0;font-size:clamp(25px,5vw,36px);letter-spacing:-.04em}.vps-welcome-content p{margin:12px 0 0;color:#d7d7df;font-size:15px;line-height:1.55;font-weight:750}.vps-welcome-btn{display:inline-flex;align-items:center;justify-content:center;margin-top:20px;min-height:48px;padding:0 22px;border-radius:14px;background:linear-gradient(135deg,#ef2635,#95123b 58%,#6d28d9);color:#fff;text-decoration:none;font-weight:1000;box-shadow:0 16px 34px rgba(239,38,47,.22)}.vps-welcome-btn:hover{filter:brightness(1.1);transform:translateY(-1px)}@keyframes vpsWelcomeIn{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}
@media(max-width:760px){.vps-admin-left{display:grid}.vps-welcome{padding:12px}.vps-welcome-content{text-align:left}.vps-welcome-btn{width:100%}}

/* Tema final TeddyNet: login profissional, roxo neon e responsivo */
:root{
  --tn-bg:#03040d;
  --tn-panel:rgba(10,12,28,.82);
  --tn-panel-2:rgba(18,14,42,.86);
  --tn-purple:#7c3cff;
  --tn-purple-2:#a855f7;
  --tn-blue:#38bdf8;
  --tn-text:#f8f7ff;
  --tn-muted:#a9a5c7;
  --tn-line:rgba(168,85,247,.28);
}
body.vps-locked{
  min-height:100vh!important;
  background:
    radial-gradient(circle at 15% 12%,rgba(124,60,255,.34),transparent 30%),
    radial-gradient(circle at 84% 7%,rgba(56,189,248,.18),transparent 28%),
    radial-gradient(circle at 80% 78%,rgba(168,85,247,.20),transparent 32%),
    linear-gradient(135deg,#02030a,#070816 54%,#02030a)!important;
}
.vps-auth{
  padding:clamp(18px,4vw,46px) 16px!important;
  background:
    linear-gradient(rgba(3,4,13,.78),rgba(3,4,13,.88)),
    radial-gradient(circle at 22% 18%,rgba(124,60,255,.30),transparent 32%),
    radial-gradient(circle at 80% 10%,rgba(56,189,248,.15),transparent 30%),
    linear-gradient(135deg,#03040d,#08091a 55%,#03040d)!important;
}
.vps-auth:before{
  opacity:.25!important;
  background-image:
    linear-gradient(rgba(168,85,247,.12) 1px,transparent 1px),
    linear-gradient(90deg,rgba(56,189,248,.07) 1px,transparent 1px)!important;
  background-size:42px 42px!important;
}
.vps-auth:after{
  content:"";
  position:fixed;
  inset:auto 8% 8% auto;
  width:min(420px,55vw);
  aspect-ratio:1;
  pointer-events:none;
  border-radius:999px;
  background:radial-gradient(circle,rgba(124,60,255,.22),transparent 66%);
  filter:blur(8px);
}
.vps-shell{
  width:min(1120px,100%)!important;
  display:grid!important;
  grid-template-columns:minmax(280px,.9fr) minmax(320px,520px)!important;
  gap:clamp(22px,5vw,70px)!important;
  align-items:center!important;
  min-height:calc(100vh - 92px)!important;
}
.vps-logo{
  margin:0!important;
  text-align:left!important;
  font-size:clamp(46px,8vw,92px)!important;
  line-height:.86!important;
  letter-spacing:.01em!important;
  color:var(--tn-text)!important;
  text-transform:uppercase!important;
  text-shadow:0 0 20px rgba(124,60,255,.70),0 0 46px rgba(56,189,248,.20)!important;
}
.vps-logo:before{
  content:"EQUIPE";
  display:block;
  margin-bottom:10px;
  color:#f5f3ff;
  font-size:.52em;
  letter-spacing:.04em;
  text-shadow:0 0 18px rgba(255,255,255,.24);
}
.vps-logo:after{
  content:"Foco, disciplina e execucao";
  display:block;
  margin-top:24px;
  width:max-content;
  max-width:100%;
  border:1px solid rgba(168,85,247,.32);
  border-radius:14px;
  padding:10px 14px;
  background:rgba(8,10,24,.58);
  color:#c4b5fd;
  font-size:13px;
  line-height:1.2;
  letter-spacing:.08em;
  text-shadow:none;
}
.vps-card{
  width:100%!important;
  margin:0!important;
  border:1px solid var(--tn-line)!important;
  border-radius:22px!important;
  padding:clamp(22px,4vw,38px)!important;
  background:
    radial-gradient(circle at 18% 0%,rgba(124,60,255,.26),transparent 38%),
    linear-gradient(180deg,var(--tn-panel-2),rgba(5,7,18,.96))!important;
  box-shadow:0 30px 90px rgba(0,0,0,.64),0 0 54px rgba(124,60,255,.17),inset 0 1px 0 rgba(255,255,255,.08)!important;
  backdrop-filter:blur(18px)!important;
}
.vps-card h1{
  font-size:clamp(27px,4vw,42px)!important;
  letter-spacing:-.03em!important;
  color:var(--tn-text)!important;
}
.vps-sub{color:var(--tn-muted)!important;font-weight:800!important}
.vps-tabs{
  height:54px!important;
  border-radius:15px!important;
  background:rgba(3,5,16,.78)!important;
  border-color:rgba(168,85,247,.20)!important;
}
.vps-tabs button.active,.vps-primary,.vps-welcome-btn{
  background:linear-gradient(135deg,#7c3cff,#a855f7 58%,#38bdf8)!important;
  box-shadow:0 16px 36px rgba(124,60,255,.32),0 0 24px rgba(168,85,247,.18)!important;
}
.vps-field label{color:#c4b5fd!important;letter-spacing:.08em!important}
.vps-field input,.vps-panel input,.vps-panel textarea,.vps-panel select{
  background:rgba(3,5,16,.82)!important;
  border-color:rgba(168,85,247,.22)!important;
  color:var(--tn-text)!important;
}
.vps-field input:focus,.vps-panel input:focus,.vps-panel textarea:focus,.vps-panel select:focus{
  border-color:rgba(196,181,253,.72)!important;
  box-shadow:0 0 0 3px rgba(124,60,255,.18),0 0 24px rgba(124,60,255,.14)!important;
}
.vps-secondary,.vps-top-btn{
  background:rgba(8,10,24,.82)!important;
  border-color:rgba(168,85,247,.24)!important;
  color:#f8f7ff!important;
}
.vps-admin-box,.vps-panel,.vps-user,.vps-welcome-card{
  background:
    radial-gradient(circle at 14% 0%,rgba(124,60,255,.18),transparent 34%),
    linear-gradient(180deg,rgba(14,16,36,.96),rgba(5,7,18,.98))!important;
  border-color:rgba(168,85,247,.24)!important;
}
.vps-admin-head{
  background:linear-gradient(90deg,rgba(124,60,255,.22),rgba(56,189,248,.08),transparent)!important;
}
.vps-plan{
  background:rgba(3,5,16,.78)!important;
  border-color:rgba(168,85,247,.22)!important;
}
.vps-plan:hover{border-color:rgba(196,181,253,.62)!important}
@media(max-width:820px){
  body.vps-locked{overflow:auto!important}
  .vps-auth{padding:18px 12px!important}
  .vps-shell{
    min-height:auto!important;
    grid-template-columns:1fr!important;
    gap:18px!important;
  }
  .vps-logo{
    text-align:center!important;
    font-size:clamp(40px,15vw,70px)!important;
  }
  .vps-logo:after{
    width:100%;
    text-align:center;
    font-size:11px;
    margin-top:16px;
  }
  .vps-card{border-radius:18px!important;padding:20px 16px!important}
  .vps-card h1,.vps-sub{text-align:left!important}
  .vps-grid2,.vps-plan-grid,.vps-admin-body{grid-template-columns:1fr!important}
  .vps-tabs{height:auto!important;min-height:52px!important}
  .vps-field input{height:50px!important;font-size:15px!important}
  .vps-primary{height:52px!important}
  .vps-admin{padding:10px!important}
  .vps-admin-head{align-items:flex-start;flex-direction:column}
}

/* Logo configuravel no Admin + tema mais escuro */
body.vps-locked,
.vps-auth{
  background:
    radial-gradient(circle at 14% 10%,rgba(98,39,255,.28),transparent 28%),
    radial-gradient(circle at 82% 4%,rgba(168,85,247,.15),transparent 24%),
    linear-gradient(135deg,#010208,#040512 58%,#010208)!important;
}
.vps-card,.vps-admin-box,.vps-panel,.vps-user,.vps-welcome-card{
  background:
    radial-gradient(circle at 16% 0%,rgba(98,39,255,.18),transparent 34%),
    linear-gradient(180deg,rgba(8,10,26,.96),rgba(2,3,12,.98))!important;
  border-color:rgba(168,85,247,.30)!important;
}
.vps-logo.has-logo{
  min-height:150px;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  text-shadow:none!important;
}
.vps-logo.has-logo:before,
.vps-logo.has-logo:after{display:none!important}
.vps-logo.has-logo img{
  display:block;
  max-width:min(420px,100%);
  max-height:190px;
  object-fit:contain;
  filter:drop-shadow(0 0 22px rgba(124,60,255,.58)) drop-shadow(0 0 42px rgba(168,85,247,.22));
}
.vps-brand-config{
  display:grid;
  gap:7px;
  padding:10px;
  border:1px solid rgba(168,85,247,.18);
  border-radius:14px;
  background:rgba(4,6,18,.42);
}
.vps-brand-config input{height:44px!important}
@media(max-width:820px){
  .vps-logo.has-logo{
    min-height:auto;
    justify-content:center;
  }
  .vps-logo.has-logo img{
    max-width:min(300px,92vw);
    max-height:140px;
  }
}

/* Upload direto de imagens no Admin */
.vps-panel input[type="file"],.vps-brand-config input[type="file"]{
  width:100%;
  min-height:46px;
  padding:10px 12px!important;
  border:1px dashed rgba(168,85,247,.42)!important;
  border-radius:13px;
  background:rgba(5,7,20,.86)!important;
  color:#d8d4ef!important;
  cursor:pointer;
}
.vps-panel input[type="file"]::file-selector-button,.vps-brand-config input[type="file"]::file-selector-button{
  border:0;
  border-radius:9px;
  margin-right:10px;
  padding:8px 11px;
  background:linear-gradient(135deg,#7c3cff,#a855f7);
  color:#fff;
  font-weight:900;
  cursor:pointer;
}
.vps-upload-preview{
  display:none;
  gap:10px;
  padding:10px;
  border:1px solid rgba(168,85,247,.24);
  border-radius:14px;
  background:rgba(3,5,16,.72);
}
.vps-upload-preview.show{display:grid}
.vps-upload-preview img{
  display:block;
  width:100%;
  max-height:230px;
  object-fit:contain;
  border-radius:10px;
  background:#02030a;
}
.vps-check-payment{width:100%;min-height:48px}
#vpsWebhookUrl,#vpsSecurityWebhookUrl{overflow-wrap:anywhere;color:#c4b5fd}


/* Fluxo autenticado de pagamento */
.vps-payment-step{display:none;gap:14px;text-align:center}
.vps-payment-step.show{display:grid}
.vps-payment-step h2{margin:0;font-size:28px}
.vps-payment-icon{width:54px;height:54px;margin:0 auto;border-radius:18px;display:grid;place-items:center;font-size:26px;font-weight:1000;background:linear-gradient(135deg,#22c55e,#16a34a);box-shadow:0 14px 30px rgba(34,197,94,.2)}
.vps-payment-user{margin:0;color:#c8c8d2;font-weight:800;overflow-wrap:anywhere}
.vps-payment-step .vps-plans{display:grid;text-align:left}
.vps-payment-status{min-height:44px;border-radius:12px;padding:12px 14px;background:rgba(255,255,255,.055);color:#ddd6fe;font-size:13px;font-weight:850;line-height:1.45}
.vps-link-button{border:0;background:transparent;color:#c4b5fd;font-weight:900;padding:8px;cursor:pointer}
.vps-link-button:hover{text-decoration:underline}

/* Admin premium: backup, restauracao e leitura rapida */
.vps-admin-box{
  width:min(1280px,96vw)!important;
  max-height:92vh!important;
  overflow:auto!important;
  border:1px solid rgba(168,85,247,.28)!important;
  background:linear-gradient(180deg,rgba(7,9,24,.98),rgba(3,4,12,.99))!important;
  box-shadow:0 34px 110px rgba(0,0,0,.72),0 0 54px rgba(124,60,255,.15)!important;
}
.vps-admin-head{
  position:sticky!important;
  top:0!important;
  z-index:2!important;
  background:linear-gradient(180deg,rgba(9,11,28,.98),rgba(6,7,18,.94))!important;
  border-bottom:1px solid rgba(168,85,247,.22)!important;
}
.vps-admin-head h2{letter-spacing:-.03em!important}
.vps-admin-head small{color:#c4b5fd!important;font-weight:800!important}
.vps-admin-body{
  grid-template-columns:minmax(360px,.95fr) minmax(420px,1.05fr)!important;
  align-items:start!important;
}
.vps-admin-left{grid-row:1 / span 2!important}
.vps-panel{
  border-color:rgba(168,85,247,.18)!important;
  background:linear-gradient(180deg,rgba(13,15,35,.96),rgba(5,7,18,.98))!important;
}
.vps-panel h3{
  display:flex!important;
  align-items:center!important;
  gap:9px!important;
  margin-bottom:14px!important;
}
.vps-panel h3:before{
  content:"";
  width:10px;
  height:10px;
  border-radius:999px;
  background:#a855f7;
  box-shadow:0 0 18px rgba(168,85,247,.8);
}
.vps-backup-panel{
  margin-bottom:14px!important;
  border-color:rgba(34,211,238,.24)!important;
}
.vps-backup-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin:14px 0;
}
.vps-backup-panel input[type="file"]{
  padding:11px!important;
  border:1px dashed rgba(168,85,247,.38)!important;
  border-radius:14px!important;
  background:rgba(3,5,16,.82)!important;
  color:#d8d4ef!important;
}
.vps-secondary.danger{
  border-color:rgba(248,113,113,.42)!important;
  color:#fecaca!important;
  background:rgba(127,29,29,.22)!important;
}
.vps-backup-status{
  margin-top:10px;
  border:1px solid rgba(168,85,247,.20);
  border-radius:13px;
  padding:11px;
  background:rgba(3,5,16,.72);
  color:#ddd6fe;
  font-size:12px;
  font-weight:850;
  overflow-wrap:anywhere;
}
.vps-admin-stats{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
  margin:2px 0 13px;
}
.vps-admin-stats div{
  border:1px solid rgba(168,85,247,.18);
  border-radius:13px;
  padding:10px;
  background:rgba(3,5,16,.72);
}
.vps-admin-stats span{
  display:block;
  color:#9f9abf;
  font-size:10px;
  font-weight:950;
  text-transform:uppercase;
}
.vps-admin-stats b{
  display:block;
  margin-top:4px;
  color:#fff;
  font-size:20px;
}
.vps-user{
  border-color:rgba(168,85,247,.16)!important;
  background:linear-gradient(180deg,rgba(10,12,30,.95),rgba(4,5,14,.98))!important;
}
.vps-row{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:7px!important;
}
@media(max-width:900px){
  .vps-admin-body,.vps-backup-actions,.vps-admin-stats,.vps-row{grid-template-columns:1fr!important}
}
.vps-admin-right{display:grid;gap:14px;align-content:start}
.vps-sales-list{display:grid;gap:10px;margin-top:12px;max-height:420px;overflow:auto}
.vps-sale-item{border:1px solid rgba(168,85,247,.20);border-radius:14px;background:rgba(6,7,18,.72);padding:11px;display:grid;gap:7px}
.vps-sale-item b{color:#fff;font-size:13px}
.vps-sale-item small{color:#b8b4d6;font-size:11px;font-weight:750;line-height:1.35}
.vps-sale-item select{width:100%;margin-top:3px}
.vps-sale-empty{border:1px dashed rgba(168,85,247,.25);border-radius:14px;padding:14px;color:#a9a2cc;text-align:center;font-size:12px;font-weight:800}

/* Admin estilo e-commerce escuro */
.vps-admin{
  padding:0!important;
  background:#020308!important;
}
.vps-admin-box{
  width:100%!important;
  min-height:100vh!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  background:#05060a!important;
  box-shadow:none!important;
  display:grid!important;
  grid-template-columns:220px minmax(0,1fr)!important;
  overflow:hidden!important;
}
.vps-admin-box:before{
  content:"E-commerce\\A TEDDYNET\\A\\A▣ Dashboard\\A▣ Produtos\\A▣ Vendas\\A▣ Clientes\\A▣ Pagamentos\\A\\AConfigurações\\A▣ Loja\\A▣ Equipe\\A▣ Domínios\\A▣ Integrações";
  white-space:pre-line;
  grid-row:1 / span 2;
  background:#090a0f;
  border-right:1px solid rgba(255,255,255,.08);
  color:#d7d8e2;
  padding:18px 14px;
  font-size:12px;
  line-height:2.1;
  font-weight:850;
}
.vps-admin-head{
  grid-column:2;
  padding:14px 18px!important;
  border-bottom:1px solid rgba(255,255,255,.08)!important;
  background:#06070b!important;
}
.vps-admin-head h2{font-size:16px!important;margin:0!important}
.vps-admin-head small{color:#8f94a8!important}
.vps-admin-body{
  grid-column:2;
  display:grid!important;
  grid-template-columns:360px minmax(360px,1fr) minmax(320px,.8fr)!important;
  gap:12px!important;
  padding:14px!important;
  background:radial-gradient(circle at 20% 4%,rgba(124,58,237,.10),transparent 24%),#05060a!important;
  align-items:start!important;
  overflow:auto!important;
}
.vps-admin-left{gap:12px!important}
.vps-panel{
  border-radius:9px!important;
  border-color:rgba(255,255,255,.08)!important;
  background:#0b0c11!important;
  box-shadow:none!important;
}
.vps-panel h3{
  margin:-14px -14px 8px!important;
  padding:12px 14px!important;
  border-bottom:1px solid rgba(255,255,255,.08)!important;
  background:#0e0f15!important;
  font-size:13px!important;
}
.vps-panel input,.vps-panel textarea,.vps-panel select{
  border-radius:8px!important;
  background:#08090d!important;
  border-color:rgba(255,255,255,.08)!important;
}
.vps-primary{
  border-radius:9px!important;
  background:#22c55e!important;
  color:#03120a!important;
  box-shadow:none!important;
}
.vps-secondary{
  border-radius:8px!important;
  background:#15161d!important;
  border-color:rgba(255,255,255,.09)!important;
}
#vpsSalesPanel{
  min-height:calc(100vh - 112px);
}
#vpsSalesPanel.drag{
  border-color:rgba(34,197,94,.55)!important;
  box-shadow:0 0 0 1px rgba(34,197,94,.24),0 0 38px rgba(34,197,94,.14)!important;
}
#vpsSalesPanel textarea{min-height:110px!important}
#vpsSaleDelivery{min-height:76px!important}
#vpsSaleStockLines{
  min-height:160px!important;
  border-color:rgba(245,158,11,.46)!important;
  font-family:Consolas,monospace!important;
  line-height:1.55!important;
}
#vpsSaleImageFile{
  border:1px dashed rgba(139,92,246,.45)!important;
  background:rgba(124,58,237,.08)!important;
  padding:12px!important;
  cursor:pointer!important;
}
.vps-date-change{
  min-width:180px!important;
  height:34px!important;
  padding:0 10px!important;
}
.vps-delivery-preview{
  margin:4px 0 6px!important;
  padding:9px!important;
  border:1px solid rgba(34,197,94,.18)!important;
  border-radius:8px!important;
  background:#070b09!important;
  color:#bbf7d0!important;
  white-space:pre-wrap!important;
  font-size:11px!important;
  max-height:110px!important;
  overflow:auto!important;
}
.vps-sale-item,.vps-user{
  border-radius:8px!important;
  background:#101118!important;
  border-color:rgba(255,255,255,.07)!important;
}
.vps-sales-list{max-height:360px!important}
@media(max-width:1050px){
  .vps-admin-box{grid-template-columns:1fr!important}
  .vps-admin-box:before{display:none}
  .vps-admin-head,.vps-admin-body{grid-column:1!important}
  .vps-admin-body{grid-template-columns:1fr!important}
}

/* Admin novo com abas reais */
.vps-admin-box{
  grid-template-columns:1fr!important;
  grid-template-rows:auto auto minmax(0,1fr)!important;
}
.vps-admin-box:before{display:none!important}
.vps-admin-head{
  grid-column:1!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  background:radial-gradient(circle at 12% 0,rgba(124,58,237,.18),transparent 34%),#07080d!important;
}
.vps-admin-tabs{
  grid-column:1!important;
  display:flex!important;
  gap:8px!important;
  padding:12px 16px!important;
  overflow:auto!important;
  border-bottom:1px solid rgba(255,255,255,.08)!important;
  background:#05060a!important;
}
.vps-admin-tabs button,.vps-admin-shortcuts button{
  border:1px solid rgba(255,255,255,.09)!important;
  border-radius:10px!important;
  background:#101119!important;
  color:#cfd2e8!important;
  min-height:38px!important;
  padding:0 13px!important;
  font-weight:950!important;
  cursor:pointer!important;
  white-space:nowrap!important;
}
.vps-admin-tabs button.active,.vps-admin-shortcuts button:hover{
  border-color:rgba(139,92,246,.62)!important;
  background:linear-gradient(135deg,rgba(139,92,246,.42),rgba(59,130,246,.18))!important;
  color:#fff!important;
  box-shadow:0 0 28px rgba(124,58,237,.16)!important;
}
.vps-admin-body{
  grid-column:1!important;
  display:block!important;
  padding:16px!important;
}
.vps-admin-body>[data-admin-page]{
  display:none!important;
  max-width:1180px!important;
  margin:0 auto!important;
}
.vps-admin-body>[data-admin-page].active{
  display:grid!important;
  gap:14px!important;
}
.vps-admin-home.active{
  display:grid!important;
}
.vps-admin-kpis{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:12px!important;
}
.vps-admin-kpis div{
  border:1px solid rgba(168,85,247,.22)!important;
  border-radius:14px!important;
  background:radial-gradient(circle at 20% 0,rgba(124,58,237,.25),transparent 34%),#0c0d14!important;
  padding:16px!important;
}
.vps-admin-kpis span,.vps-admin-kpis small{
  display:block!important;
  color:#a9a2cc!important;
  font-size:11px!important;
  font-weight:950!important;
  text-transform:uppercase!important;
}
.vps-admin-kpis b{
  display:block!important;
  color:#fff!important;
  font-size:30px!important;
  margin:7px 0 4px!important;
}
.vps-admin-welcome{
  padding:18px!important;
}
.vps-admin-welcome p{
  color:#b8b4d6!important;
  font-size:13px!important;
  font-weight:800!important;
  line-height:1.55!important;
  max-width:780px!important;
}
.vps-admin-shortcuts{
  display:flex!important;
  gap:10px!important;
  flex-wrap:wrap!important;
}
#vpsSalesPanel{
  min-height:auto!important;
}
#vpsSalesPanel.active{
  grid-template-columns:1fr!important;
  align-items:start!important;
}
#vpsSalesPanel .vps-sales-list{
  max-height:520px!important;
}
@media(max-width:900px){
  .vps-admin-kpis{grid-template-columns:1fr 1fr!important}
}
@media(max-width:560px){
  .vps-admin-kpis{grid-template-columns:1fr!important}
  .vps-admin-head{align-items:flex-start!important;flex-direction:column!important}
}

/* Correcoes finais de rolagem e menu do /admin */
body:has(.vps-admin.show){
  overflow:hidden!important;
}
.vps-admin.show{
  display:block!important;
  overflow:hidden!important;
  padding:0!important;
}
.vps-admin.show .vps-admin-box{
  height:100dvh!important;
  min-height:100dvh!important;
  max-height:100dvh!important;
  overflow:hidden!important;
}
.vps-admin.show .vps-admin-body{
  height:calc(100dvh - 128px)!important;
  overflow:auto!important;
  padding-bottom:48px!important;
  scrollbar-width:thin!important;
}
.vps-admin-head-actions{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
}
.vps-admin-menu-wrap{
  position:relative!important;
}
.vps-admin-dots{
  width:42px!important;
  height:42px!important;
  border:1px solid rgba(167,139,250,.24)!important;
  border-radius:13px!important;
  background:#101119!important;
  color:#fff!important;
  font-size:26px!important;
  line-height:1!important;
  font-weight:1000!important;
}
.vps-admin-menu{
  position:absolute!important;
  right:0!important;
  top:48px!important;
  z-index:10!important;
  width:230px!important;
  display:none!important;
  gap:7px!important;
  padding:9px!important;
  border:1px solid rgba(167,139,250,.24)!important;
  border-radius:14px!important;
  background:#080a14!important;
  box-shadow:0 22px 60px rgba(0,0,0,.55)!important;
}
.vps-admin-menu.show{
  display:grid!important;
}
.vps-admin-menu button{
  min-height:38px!important;
  border:1px solid rgba(255,255,255,.08)!important;
  border-radius:10px!important;
  background:#101119!important;
  color:#f7f5ff!important;
  text-align:left!important;
  padding:0 11px!important;
  font-weight:900!important;
}
#vpsBackupPage.active{
  display:grid!important;
  gap:14px!important;
}
#vpsBackupPage .vps-backup-panel{
  max-width:840px!important;
  width:100%!important;
}
@media(max-width:760px){
  .vps-admin.show .vps-admin-body{
    height:calc(100dvh - 174px)!important;
  }
  .vps-admin-menu{
    right:auto!important;
    left:0!important;
  }
}

.vps-pass-wrap{position:relative;display:flex;align-items:center;width:100%}
.vps-pass-wrap input{padding-right:52px!important}
.vps-pass-toggle{position:absolute;right:8px;width:38px;height:38px;border:1px solid rgba(168,85,247,.28);border-radius:12px;background:rgba(168,85,247,.12);color:#fff;display:grid;place-items:center;font-size:16px;font-weight:900;cursor:pointer}
.vps-pass-toggle.showing{background:linear-gradient(135deg,rgba(168,85,247,.32),rgba(34,211,238,.18));border-color:rgba(196,181,253,.55)}
