/* MIXTOTENS_SIMULATOR_V003C_AMBILIGHT_COLOR_FIDELITY */
:root{
  --gold:#d6a84f;
  --gold2:#f2d28a;
  --black:#050505;
  --line:rgba(214,168,79,.26);
  --text:#fff8e8;
  --muted:rgba(255,255,255,.64);
}

*{box-sizing:border-box}

html,
body{
  width:100%;
  height:100%;
  margin:0;
  overflow:hidden;
  background:#050505;
  color:var(--text);
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}

.mxsim-app{
  width:100vw;
  height:100svh;
  position:relative;
  overflow:hidden;
  background:#050505;
}

.mxsim-bg-ambient{
  position:absolute;
  inset:-50px;
  background:
    radial-gradient(circle at 50% 44%,rgba(214,168,79,.16),transparent 35%),
    radial-gradient(circle at 18% 78%,rgba(40,120,95,.12),transparent 24%),
    radial-gradient(circle at 82% 80%,rgba(135,48,170,.10),transparent 25%),
    #050505;
  filter:blur(10px);
}

.mxsim-vignette{
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 50% 48%,rgba(255,255,255,.04),rgba(0,0,0,.38) 54%,rgba(0,0,0,.92) 100%),
    linear-gradient(180deg,rgba(0,0,0,.74),transparent 22%,rgba(0,0,0,.86));
}

.mxsim-brandbar{
  position:absolute;
  z-index:30;
  top:0;
  left:0;
  right:0;
  min-height:78px;
  display:grid;
  grid-template-columns:190px 1fr 86px;
  align-items:center;
  gap:18px;
  padding:14px 30px 10px;
  pointer-events:none;
}

.mxsim-logo,
.mxsim-exit,
.mxsim-top-metrics{
  pointer-events:auto;
}

.mxsim-logo img{
  width:150px;
  display:block;
}

.mxsim-exit{
  justify-self:end;
  color:rgba(255,255,255,.62);
  text-decoration:none;
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.16em;
  font-weight:900;
  border:1px solid rgba(214,168,79,.22);
  padding:10px 13px;
  background:rgba(0,0,0,.28);
  backdrop-filter:blur(10px);
}

.mxsim-top-metrics{
  justify-self:center;
  width:min(760px,100%);
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:8px;
}

.mxsim-top-metrics article{
  border:1px solid rgba(214,168,79,.22);
  background:rgba(0,0,0,.38);
  backdrop-filter:blur(14px);
  padding:10px 12px;
  min-height:54px;
}

.mxsim-top-metrics span{
  display:block;
  color:rgba(255,255,255,.44);
  font-size:9px;
  letter-spacing:.14em;
  text-transform:uppercase;
  font-weight:900;
  margin-bottom:4px;
}

.mxsim-top-metrics strong{
  display:block;
  color:#fff8e8;
  font-size:15px;
  line-height:1.12;
}

.mxsim-panel-stage{
  position:absolute;
  z-index:10;
  left:50%;
  top:51%;
  transform:translate(-50%,-50%);
  display:flex;
  flex-direction:column;
  align-items:stretch;
}

.mxsim-panel-frame{
  position:relative;
  width:1000px;
  height:500px;
  overflow:hidden;
  background:#000;
  border:2px solid rgba(242,210,138,.48);
  border-radius:0;
  box-shadow:
    0 0 0 1px rgba(0,0,0,.86),
    0 32px 100px rgba(0,0,0,.74),
    0 0 76px rgba(214,168,79,.16);
}

.mxsim-canvas{
  width:100%;
  height:100%;
  display:block;
  border-radius:0;
}

.mxsim-led-glass{
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(115deg,rgba(255,255,255,.13),transparent 19%,transparent 72%,rgba(255,255,255,.04)),
    radial-gradient(circle at 50% 12%,rgba(255,255,255,.10),transparent 28%);
  mix-blend-mode:screen;
  opacity:.42;
}

.mxsim-cabinet-grid{
  position:absolute;
  inset:0;
  pointer-events:none;
}

.mxsim-cell{
  position:absolute;
  border:1px solid rgba(242,210,138,.22);
  box-shadow:inset 0 0 12px rgba(0,0,0,.28);
}

.mxsim-panel-caption{
  display:flex;
  justify-content:space-between;
  gap:18px;
  margin-top:10px;
  color:rgba(255,255,255,.68);
  font-size:13px;
}

.mxsim-control-dock{
  position:absolute;
  z-index:24;
  left:50%;
  bottom:18px;
  transform:translateX(-50%);
  width:min(1180px,calc(100vw - 36px));
  display:grid;
  grid-template-columns:1.32fr 1fr 1fr 1fr 1.1fr auto;
  gap:10px;
  align-items:end;
  padding:12px;
  border:1px solid rgba(214,168,79,.28);
  background:rgba(0,0,0,.66);
  backdrop-filter:blur(18px);
  box-shadow:0 22px 80px rgba(0,0,0,.58);
}

.mxsim-field{
  display:grid;
  gap:7px;
}

.mxsim-field span{
  color:rgba(255,255,255,.50);
  font-size:10px;
  letter-spacing:.14em;
  text-transform:uppercase;
  font-weight:900;
}

.mxsim-field select,
.mxsim-stepper input{
  width:100%;
  height:42px;
  border:1px solid rgba(255,255,255,.13);
  background:rgba(4,4,4,.82);
  color:#fff;
  outline:none;
  padding:0 12px;
  font-weight:850;
}

.mxsim-stepper{
  display:grid;
  grid-template-columns:40px 1fr 32px 40px;
}

.mxsim-stepper.slim{
  grid-template-columns:38px 1fr 32px 38px;
}

.mxsim-stepper button{
  height:42px;
  border:1px solid rgba(214,168,79,.30);
  background:
    radial-gradient(circle at 50% 0%,rgba(242,210,138,.18),transparent 60%),
    rgba(0,0,0,.58);
  color:var(--gold2);
  font-size:21px;
  font-weight:900;
  cursor:pointer;
}

.mxsim-stepper button:hover{
  background:linear-gradient(135deg,#f8dc8f,#d6a84f);
  color:#090600;
}

.mxsim-stepper input{
  border-left:none;
  border-right:none;
  text-align:center;
}

.mxsim-stepper b{
  height:42px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-top:1px solid rgba(255,255,255,.13);
  border-bottom:1px solid rgba(255,255,255,.13);
  color:var(--gold2);
  background:rgba(214,168,79,.08);
}

.mxsim-primary,
.mxsim-secondary{
  height:42px;
  border:none;
  padding:0 18px;
  cursor:pointer;
  font-weight:950;
  text-decoration:none;
  display:flex;
  align-items:center;
  justify-content:center;
  white-space:nowrap;
}

.mxsim-primary{
  background:linear-gradient(135deg,#f8dc8f,#d6a84f);
  color:#0b0802;
  box-shadow:0 14px 36px rgba(214,168,79,.28);
}

.mxsim-secondary{
  border:1px solid rgba(214,168,79,.32);
  color:var(--gold2);
  background:rgba(0,0,0,.44);
}

.mxsim-mobile-control{
  display:none;
}

.mxsim-backdrop{
  position:absolute;
  inset:0;
  z-index:39;
  background:rgba(0,0,0,.60);
  opacity:0;
  pointer-events:none;
  transition:.25s ease;
}

.mxsim-proposal{
  position:absolute;
  z-index:40;
  top:0;
  right:0;
  width:min(440px,100vw);
  height:100%;
  padding:28px;
  background:
    radial-gradient(circle at 90% 0%,rgba(214,168,79,.12),transparent 34%),
    rgba(5,5,5,.96);
  border-left:1px solid rgba(214,168,79,.26);
  box-shadow:-28px 0 80px rgba(0,0,0,.68);
  transform:translateX(105%);
  transition:.32s cubic-bezier(.2,.8,.2,1);
  overflow:auto;
}

.mxsim-proposal.open{
  transform:translateX(0);
}

.mxsim-backdrop.open{
  opacity:1;
  pointer-events:auto;
}

.mxsim-close{
  position:absolute;
  top:16px;
  right:16px;
  width:38px;
  height:38px;
  border:1px solid rgba(214,168,79,.28);
  background:rgba(0,0,0,.36);
  color:#fff;
  font-size:28px;
  cursor:pointer;
}

.mxsim-proposal-head p{
  margin:0 0 10px;
  color:var(--gold2);
  font-size:11px;
  letter-spacing:.18em;
  text-transform:uppercase;
  font-weight:900;
}

.mxsim-proposal-head h2{
  margin:0 0 8px;
  font-size:34px;
  line-height:1.02;
  letter-spacing:-.045em;
}

.mxsim-proposal-head span{
  color:rgba(255,255,255,.56);
}

.mxsim-proposal-form{
  margin-top:24px;
  display:grid;
  gap:12px;
}

.mxsim-proposal-form input,
.mxsim-proposal-form textarea{
  width:100%;
  border:1px solid rgba(255,255,255,.13);
  background:rgba(0,0,0,.42);
  color:#fff;
  padding:13px;
  outline:none;
}

.mxsim-proposal-form input{
  height:48px;
}

.mxsim-proposal-form textarea{
  min-height:270px;
  resize:vertical;
  line-height:1.55;
}

@media (max-width:1120px){
  .mxsim-brandbar{
    grid-template-columns:160px 1fr 70px;
    padding-left:18px;
    padding-right:18px;
  }

  .mxsim-logo img{
    width:132px;
  }

  .mxsim-top-metrics{
    width:100%;
  }

  .mxsim-control-dock{
    grid-template-columns:1fr 1fr 1fr;
  }
}

@media (max-width:760px){
  .mxsim-brandbar{
    grid-template-columns:1fr 42px;
    min-height:64px;
    padding:10px 14px;
  }

  .mxsim-logo img{
    width:126px;
  }

  .mxsim-top-metrics{
    position:absolute;
    top:72px;
    left:12px;
    right:12px;
    width:auto;
    grid-template-columns:repeat(2,1fr);
  }

  .mxsim-top-metrics article{
    padding:9px 10px;
    min-height:48px;
  }

  .mxsim-top-metrics strong{
    font-size:13px;
  }

  .mxsim-exit{
    font-size:0;
    width:40px;
    height:40px;
    padding:0;
    border-radius:999px;
  }

  .mxsim-exit::after{
    content:"×";
    font-size:24px;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    height:100%;
  }

  .mxsim-panel-stage{
    top:50%;
  }

  .mxsim-control-dock{
    left:12px;
    right:12px;
    bottom:12px;
    width:auto;
    transform:translateY(calc(100% - 58px));
    grid-template-columns:1fr 1fr;
    max-height:48vh;
    overflow:auto;
    transition:.28s ease;
  }

  .mxsim-control-dock.open{
    transform:translateY(0);
  }

  .type-field,
  .pitch-field,
  .mxsim-primary{
    grid-column:1 / -1;
  }

  .mxsim-mobile-control{
    display:block;
    position:absolute;
    z-index:25;
    left:50%;
    bottom:18px;
    transform:translateX(-50%);
    height:44px;
    padding:0 18px;
    border:1px solid rgba(214,168,79,.34);
    background:rgba(0,0,0,.72);
    color:var(--gold2);
    font-weight:900;
    backdrop-filter:blur(14px);
  }
}

/* MIXTOTENS_SIMULATOR_V003C_AMBILIGHT_COLOR_FIDELITY */
.mxsim-panel-frame{
  box-shadow:
    0 0 0 1px rgba(0,0,0,.88),
    0 34px 110px rgba(0,0,0,.76),
    0 0 90px rgba(214,168,79,.22),
    0 0 130px rgba(242,210,138,.08);
}

.mxsim-led-glass{
  opacity:.56;
  background:
    linear-gradient(115deg,rgba(255,255,255,.18),transparent 18%,transparent 70%,rgba(255,255,255,.07)),
    radial-gradient(circle at 50% 8%,rgba(255,255,255,.16),transparent 30%),
    linear-gradient(180deg,rgba(255,255,255,.035),transparent 40%,rgba(0,0,0,.08));
}

.mxsim-cell{
  border-color:rgba(242,210,138,.17);
}

.mxsim-panel-caption{
  color:rgba(255,255,255,.78);
}

.mxsim-top-metrics article{
  background:
    radial-gradient(circle at 88% 0%,rgba(214,168,79,.10),transparent 42%),
    rgba(0,0,0,.42);
}

.mxsim-control-dock{
  background:
    radial-gradient(circle at 50% 0%,rgba(214,168,79,.08),transparent 52%),
    rgba(0,0,0,.70);
}

/* MIXTOTENS_SIMULATOR_V003C_AMBILIGHT_COLOR_FIDELITY */

/* Agora o vídeo roda nativo no browser. O efeito LED é CSS, sem canvas pesado. */
.mxsim-panel-frame{
  --led-gap: 6px;
  --led-dot: 1.55px;
  --led-opacity: .46;
  --panel-brightness: 1.18;
  --panel-saturation: 1.28;
  --panel-contrast: 1.08;
  background:#000;
  isolation:isolate;
}

.mxsim-canvas{
  display:none!important;
}

.mxsim-video{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  filter:
    brightness(var(--panel-brightness))
    saturate(var(--panel-saturation))
    contrast(var(--panel-contrast));
  transform:translateZ(0);
  will-change:transform;
}

.mxsim-led-matrix{
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:3;
  opacity:var(--led-opacity);
  background-image:
    radial-gradient(circle,
      rgba(255,255,255,.92) 0 var(--led-dot),
      rgba(255,255,255,.20) calc(var(--led-dot) + .3px),
      transparent calc(var(--led-dot) + 1.2px)
    );
  background-size:var(--led-gap) var(--led-gap);
  background-position:center;
  mix-blend-mode:screen;
}

.mxsim-led-shine{
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:4;
  background:
    linear-gradient(115deg,rgba(255,255,255,.17),transparent 18%,transparent 70%,rgba(255,255,255,.055)),
    radial-gradient(circle at 52% 8%,rgba(255,255,255,.18),transparent 30%),
    radial-gradient(circle at 48% 52%,rgba(242,210,138,.10),transparent 42%);
  mix-blend-mode:screen;
  opacity:.54;
}

.mxsim-led-glass{
  z-index:5;
}

.mxsim-cabinet-grid{
  z-index:6;
}

.mxsim-cell{
  border-color:rgba(242,210,138,.20);
  box-shadow:
    inset 0 0 12px rgba(0,0,0,.20),
    0 0 0 1px rgba(0,0,0,.10);
}

.mxsim-panel-frame::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:7;
  background:
    linear-gradient(180deg,rgba(255,255,255,.055),transparent 26%,rgba(0,0,0,.16)),
    repeating-linear-gradient(
      to bottom,
      rgba(255,255,255,.035) 0,
      rgba(255,255,255,.035) 1px,
      transparent 1px,
      transparent 5px
    );
  mix-blend-mode:screen;
  opacity:.50;
}

.mxsim-panel-frame::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:8;
  background:radial-gradient(circle at 50% 50%,transparent 0%,transparent 58%,rgba(0,0,0,.28) 100%);
}

.mxsim-top-metrics{
  transform:translateZ(0);
}

.mxsim-control-dock{
  transform:translateX(-50%) translateZ(0);
}

/* Controles mais limpos */
.mxsim-field select,
.mxsim-stepper input{
  background:rgba(4,4,4,.88);
}

.mxsim-stepper button{
  transition:background .18s ease,color .18s ease,box-shadow .18s ease;
}

.mxsim-stepper button:hover{
  box-shadow:0 0 24px rgba(214,168,79,.28);
}

@media (max-width:760px){
  .mxsim-control-dock{
    transform:translateY(calc(100% - 58px)) translateZ(0);
  }

  .mxsim-control-dock.open{
    transform:translateY(0) translateZ(0);
  }
}

/* MIXTOTENS_SIMULATOR_V003C_AMBILIGHT_COLOR_FIDELITY */

.mxsim-brandbar{
  grid-template-columns:190px 1fr 70px;
}

.mxsim-top-metrics{
  width:min(930px,100%);
  grid-template-columns:repeat(5,1fr);
}

.mxsim-panel-stage{
  top:52%;
}

.mxsim-intel-strip{
  margin-top:10px;
  max-width:100%;
  color:rgba(255,255,255,.64);
  font-size:12px;
  line-height:1.45;
  display:flex;
  justify-content:center;
  text-align:center;
}

.mxsim-intel-strip span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:9px 13px;
  border:1px solid rgba(214,168,79,.22);
  background:rgba(0,0,0,.34);
  backdrop-filter:blur(12px);
}

.mxsim-panel-frame[data-pitch-tier="ultra definição"]{
  --panel-brightness:1.18;
}

.mxsim-panel-frame[data-pitch-tier="alta definição"]{
  --panel-brightness:1.20;
}

.mxsim-panel-frame[data-pitch-tier="longa distância"] .mxsim-led-matrix{
  opacity:.62;
}

.mxsim-panel-frame[data-pitch-tier="grande formato"] .mxsim-led-matrix{
  opacity:.68;
}

.mxsim-top-metrics article:nth-child(4) strong{
  font-size:13px;
}

@media (max-width:1120px){
  .mxsim-top-metrics{
    grid-template-columns:repeat(5,1fr);
    gap:6px;
  }

  .mxsim-top-metrics article{
    padding:8px 9px;
  }

  .mxsim-top-metrics strong{
    font-size:12px;
  }
}

@media (max-width:760px){
  .mxsim-brandbar{
    grid-template-columns:1fr 42px;
  }

  .mxsim-top-metrics{
    grid-template-columns:repeat(2,1fr);
  }

  .mxsim-top-metrics article:nth-child(5){
    grid-column:1 / -1;
  }

  .mxsim-intel-strip{
    display:none;
  }
}


/* MIXTOTENS_SIMULATOR_V003C_AMBILIGHT_COLOR_FIDELITY */

/* Campos limpos: remove sujeira visual dos botões + e - */
.mxsim-clean-number{
  display:grid;
  grid-template-columns:1fr 34px;
  height:42px;
}

.mxsim-clean-number input{
  width:100%;
  height:42px;
  border:1px solid rgba(255,255,255,.13);
  border-right:none;
  background:
    radial-gradient(circle at 50% 0%,rgba(242,210,138,.055),transparent 58%),
    rgba(4,4,4,.88);
  color:#fff;
  outline:none;
  padding:0 14px;
  font-weight:900;
  text-align:center;
  letter-spacing:.02em;
}

.mxsim-clean-number b{
  height:42px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(214,168,79,.28);
  color:var(--gold2);
  background:rgba(214,168,79,.08);
}

/* Remove spinner nativo do number no Chrome/Edge/Safari */
.mxsim-clean-number input::-webkit-outer-spin-button,
.mxsim-clean-number input::-webkit-inner-spin-button{
  -webkit-appearance:none;
  margin:0;
}

/* Remove spinner nativo no Firefox */
.mxsim-clean-number input[type=number]{
  -moz-appearance:textfield;
  appearance:textfield;
}

/* Dock mais premium, menos técnico */
.mxsim-control-dock{
  padding:13px 14px;
  background:
    radial-gradient(circle at 50% 0%,rgba(242,210,138,.095),transparent 56%),
    linear-gradient(180deg,rgba(18,15,9,.80),rgba(0,0,0,.78));
}

.mxsim-field span{
  color:rgba(242,210,138,.56);
}

.mxsim-field select{
  background:
    radial-gradient(circle at 50% 0%,rgba(242,210,138,.045),transparent 58%),
    rgba(4,4,4,.90);
}

/* LED mais aceso e mais próximo de painel real */
.mxsim-panel-frame{
  box-shadow:
    0 0 0 1px rgba(0,0,0,.90),
    0 36px 112px rgba(0,0,0,.78),
    0 0 96px rgba(214,168,79,.26),
    0 0 145px rgba(242,210,138,.10);
}

.mxsim-led-shine{
  opacity:.68;
  background:
    linear-gradient(115deg,rgba(255,255,255,.20),transparent 17%,transparent 70%,rgba(255,255,255,.07)),
    radial-gradient(circle at 50% 8%,rgba(255,255,255,.20),transparent 30%),
    radial-gradient(circle at 48% 52%,rgba(242,210,138,.13),transparent 42%);
}

.mxsim-led-glass{
  opacity:.64;
}

/* Grade de placas mais sutil para não competir com o vídeo */
.mxsim-cell{
  border-color:rgba(242,210,138,.14);
  box-shadow:
    inset 0 0 10px rgba(0,0,0,.18),
    0 0 0 1px rgba(0,0,0,.06);
}

/* Matriz um pouco menos suja, mantendo percepção de pitch */
.mxsim-led-matrix{
  filter:brightness(1.16) saturate(1.12);
}


/* MIXTOTENS_SIMULATOR_V003C_AMBILIGHT_COLOR_FIDELITY */

.mxsim-clean-stepper{
  display:grid;
  grid-template-columns:40px 1fr 42px 40px;
  height:42px;
}

.mxsim-mini-btn{
  appearance:none;
  border:1px solid rgba(214,168,79,.24);
  background:
    radial-gradient(circle at 50% 30%, rgba(242,210,138,.12), transparent 58%),
    rgba(8,8,8,.92);
  color:#f2d28a;
  font-size:24px;
  font-weight:700;
  line-height:1;
  cursor:pointer;
  transition:.18s ease;
}

.mxsim-mini-btn:hover{
  background:
    radial-gradient(circle at 50% 30%, rgba(242,210,138,.20), transparent 58%),
    rgba(14,14,14,.96);
  box-shadow:0 0 18px rgba(242,210,138,.10);
}

.mxsim-mini-btn:active{
  transform:scale(.97);
}

.mxsim-clean-stepper input{
  width:100%;
  height:42px;
  border:1px solid rgba(255,255,255,.13);
  border-left:none;
  border-right:none;
  background:
    radial-gradient(circle at 50% 0%, rgba(242,210,138,.05), transparent 60%),
    rgba(4,4,4,.90);
  color:#fff;
  outline:none;
  padding:0 10px;
  font-weight:900;
  text-align:center;
  letter-spacing:.02em;
}

.mxsim-clean-stepper b{
  height:42px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(214,168,79,.24);
  background:rgba(214,168,79,.08);
  color:#f2d28a;
  font-weight:700;
}

.mxsim-clean-stepper input::-webkit-outer-spin-button,
.mxsim-clean-stepper input::-webkit-inner-spin-button{
  -webkit-appearance:none;
  margin:0;
}
.mxsim-clean-stepper input[type=number]{
  appearance:textfield;
  -moz-appearance:textfield;
}


/* MIXTOTENS_SIMULATOR_V003C_AMBILIGHT_COLOR_FIDELITY */

:root{
  --stage-zoom:1;
}

/* Topo mais refinado */
.mxsim-brandbar{
  grid-template-columns:190px minmax(520px,930px) 170px;
  align-items:start;
  padding-top:16px;
}

.mxsim-top-metrics{
  align-self:start;
  margin-top:0;
}

.mxsim-top-actions{
  justify-self:end;
  display:flex;
  gap:8px;
  pointer-events:auto;
}

.mxsim-fs-btn,
.mxsim-exit{
  height:34px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:rgba(255,255,255,.70);
  text-decoration:none;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.16em;
  font-weight:900;
  border:1px solid rgba(214,168,79,.22);
  padding:0 12px;
  background:rgba(0,0,0,.30);
  backdrop-filter:blur(10px);
  cursor:pointer;
}

.mxsim-fs-btn:hover,
.mxsim-exit:hover{
  border-color:rgba(242,210,138,.48);
  color:#f2d28a;
}

/* Zoom visual: simula distância sem alterar cálculo */
.mxsim-panel-stage{
  transform:translate(-50%,-50%) scale(var(--stage-zoom));
  transform-origin:center center;
  transition:transform .32s cubic-bezier(.2,.8,.2,1);
}

.mxsim-zoom-control{
  height:42px;
  display:grid;
  grid-template-columns:1fr 54px;
  align-items:center;
  border:1px solid rgba(255,255,255,.13);
  background:
    radial-gradient(circle at 50% 0%,rgba(242,210,138,.05),transparent 60%),
    rgba(4,4,4,.90);
}

.mxsim-zoom-control input{
  width:100%;
  accent-color:#d6a84f;
  margin:0;
  padding:0 12px;
}

.mxsim-zoom-control b{
  height:42px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-left:1px solid rgba(214,168,79,.24);
  color:#f2d28a;
  background:rgba(214,168,79,.08);
  font-size:12px;
}

/* Dock com novo campo */
.mxsim-control-dock{
  grid-template-columns:1.18fr .88fr .88fr .88fr 1fr 1fr auto;
}

/* Entrada fullscreen */
.mxsim-welcome{
  position:absolute;
  inset:0;
  z-index:80;
  display:flex;
  align-items:center;
  justify-content:center;
  background:
    radial-gradient(circle at 50% 40%,rgba(214,168,79,.16),transparent 34%),
    rgba(0,0,0,.78);
  backdrop-filter:blur(18px);
  transition:opacity .28s ease, visibility .28s ease;
}

.mxsim-welcome.is-hidden{
  opacity:0;
  visibility:hidden;
  pointer-events:none;
}

.mxsim-welcome-card{
  width:min(520px,calc(100vw - 34px));
  border:1px solid rgba(214,168,79,.28);
  background:
    radial-gradient(circle at 80% 0%,rgba(214,168,79,.13),transparent 42%),
    rgba(5,5,5,.86);
  box-shadow:0 34px 120px rgba(0,0,0,.78);
  padding:34px;
  text-align:center;
}

.mxsim-welcome-card img{
  width:160px;
  margin:0 auto 22px;
  display:block;
}

.mxsim-welcome-card p{
  margin:0 0 10px;
  color:#f2d28a;
  font-size:11px;
  letter-spacing:.18em;
  text-transform:uppercase;
  font-weight:900;
}

.mxsim-welcome-card h2{
  margin:0;
  font-size:34px;
  line-height:1.02;
  letter-spacing:-.045em;
}

.mxsim-welcome-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin-top:24px;
}

@media (max-width:1180px){
  .mxsim-brandbar{
    grid-template-columns:150px 1fr 150px;
  }

  .mxsim-control-dock{
    grid-template-columns:1fr 1fr 1fr;
  }

  .zoom-field,
  .type-field,
  .pitch-field,
  .mxsim-primary{
    grid-column:auto;
  }
}

@media (max-width:760px){
  .mxsim-brandbar{
    grid-template-columns:1fr auto;
  }

  .mxsim-top-actions{
    gap:6px;
  }

  .mxsim-fs-btn{
    display:none;
  }

  .mxsim-control-dock{
    grid-template-columns:1fr 1fr;
  }

  .zoom-field,
  .type-field,
  .pitch-field,
  .mxsim-primary{
    grid-column:1 / -1;
  }

  .mxsim-welcome-card{
    padding:26px 20px;
  }

  .mxsim-welcome-card h2{
    font-size:28px;
  }

  .mxsim-welcome-actions{
    grid-template-columns:1fr;
  }
}


/* MIXTOTENS_SIMULATOR_V003C_AMBILIGHT_COLOR_FIDELITY */

.mxsim-side-zoom{
  position:absolute;
  right:34px;
  top:220px;
  z-index:22;
  width:240px;
  pointer-events:none;
}

.mxsim-side-zoom-card{
  pointer-events:auto;
  border:1px solid rgba(214,168,79,.22);
  background:
    radial-gradient(circle at 75% 0%, rgba(214,168,79,.10), transparent 44%),
    rgba(5,5,5,.78);
  backdrop-filter:blur(14px);
  box-shadow:0 18px 60px rgba(0,0,0,.45);
  padding:14px 14px 12px;
}

.mxsim-side-zoom-label{
  display:block;
  margin-bottom:10px;
  color:#d6a84f;
  font-size:10px;
  line-height:1;
  letter-spacing:.18em;
  text-transform:uppercase;
  font-weight:900;
}

.mxsim-side-zoom-control{
  display:grid;
  grid-template-columns:1fr 58px;
  align-items:center;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(0,0,0,.65);
  min-height:44px;
}

.mxsim-side-zoom-control input{
  width:100%;
  margin:0;
  padding:0 12px;
  accent-color:#d6a84f;
}

.mxsim-side-zoom-control b{
  height:44px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-left:1px solid rgba(214,168,79,.24);
  background:rgba(214,168,79,.10);
  color:#f2d28a;
  font-size:12px;
  font-weight:800;
}

.mxsim-side-zoom-card small{
  display:block;
  margin-top:9px;
  color:rgba(255,255,255,.48);
  font-size:11px;
  line-height:1.35;
}

.mxsim-control-dock{
  grid-template-columns:1.22fr .95fr .95fr .95fr 1.08fr auto;
}

.zoom-field{
  display:none !important;
}

@media (max-width: 1280px){
  .mxsim-side-zoom{
    right:22px;
    top:210px;
    width:220px;
  }
}

@media (max-width: 980px){
  .mxsim-side-zoom{
    position:static;
    width:100%;
    max-width:none;
    margin:12px auto 0;
    padding:0 24px;
  }

  .mxsim-side-zoom-card{
    max-width:420px;
    margin-left:auto;
    margin-right:auto;
  }
}

@media (max-width: 760px){
  .mxsim-side-zoom{
    padding:0 14px;
  }

  .mxsim-side-zoom-card{
    max-width:none;
  }

  .mxsim-control-dock{
    grid-template-columns:1fr 1fr;
  }

  .type-field,
  .pitch-field,
  .mxsim-primary{
    grid-column:1 / -1;
  }
}


/* MIXTOTENS_SIMULATOR_V003C_AMBILIGHT_COLOR_FIDELITY */

.mxsim-distance-rail{
  position:absolute;
  right:34px;
  top:210px;
  z-index:24;
  width:220px;
}

.mxsim-distance-rail-card{
  border:1px solid rgba(214,168,79,.20);
  background:
    radial-gradient(circle at 50% 0%, rgba(214,168,79,.10), transparent 48%),
    rgba(5,5,5,.76);
  backdrop-filter:blur(14px);
  box-shadow:0 18px 70px rgba(0,0,0,.42);
  padding:16px 14px 14px;
}

.mxsim-distance-rail-title{
  color:#f7f1e7;
  font-size:12px;
  letter-spacing:.18em;
  text-transform:uppercase;
  font-weight:800;
}

.mxsim-distance-rail-subtitle{
  margin-top:4px;
  color:rgba(255,255,255,.55);
  font-size:11px;
  line-height:1.35;
}

.mxsim-distance-rail-wrap{
  margin-top:16px;
  display:grid;
  grid-template-columns:48px 1fr;
  align-items:stretch;
  gap:10px;
  min-height:340px;
}

.mxsim-distance-scale{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  align-items:flex-end;
  color:rgba(255,255,255,.48);
  font-size:11px;
  padding:2px 0;
}

.mxsim-distance-track{
  position:relative;
  border:1px solid rgba(214,168,79,.18);
  background:
    linear-gradient(180deg, rgba(214,168,79,.06), transparent 18%, transparent 82%, rgba(214,168,79,.04)),
    rgba(0,0,0,.58);
  min-height:340px;
}

.mxsim-distance-track::before{
  content:"";
  position:absolute;
  left:50%;
  top:8px;
  bottom:8px;
  width:2px;
  transform:translateX(-50%);
  background:linear-gradient(180deg, rgba(242,210,138,.15), rgba(242,210,138,.55), rgba(242,210,138,.15));
}

.mxsim-distance-mark{
  position:absolute;
  left:16%;
  right:16%;
  height:2px;
  border-radius:999px;
  transform:translateY(50%);
}

.mxsim-distance-mark.min{ background:rgba(255,110,110,.85); }
.mxsim-distance-mark.ideal-start,
.mxsim-distance-mark.ideal-end{ background:rgba(242,210,138,.92); }
.mxsim-distance-mark.premium{ background:rgba(120,255,190,.9); }

.mxsim-distance-pointer{
  position:absolute;
  left:50%;
  transform:translate(-50%, 50%);
  width:100%;
  pointer-events:none;
}

.mxsim-distance-pointer i{
  position:absolute;
  left:50%;
  top:0;
  width:14px;
  height:14px;
  transform:translate(-50%, -50%);
  border-radius:999px;
  background:#f2d28a;
  box-shadow:0 0 0 4px rgba(214,168,79,.18), 0 0 28px rgba(214,168,79,.65);
}

.mxsim-distance-pointer b{
  position:absolute;
  left:calc(50% + 16px);
  top:-12px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:64px;
  min-height:26px;
  padding:0 8px;
  border:1px solid rgba(214,168,79,.26);
  background:rgba(0,0,0,.84);
  color:#f2d28a;
  font-size:11px;
  font-weight:800;
}

.mxsim-distance-summary{
  margin-top:14px;
  color:rgba(255,255,255,.74);
  font-size:11px;
  line-height:1.45;
  border-top:1px solid rgba(214,168,79,.12);
  padding-top:12px;
}

@media (max-width: 1320px){
  .mxsim-distance-rail{
    right:20px;
    width:204px;
  }
}

@media (max-width: 1100px){
  .mxsim-distance-rail{
    position:static;
    width:100%;
    max-width:460px;
    margin:14px auto 0;
  }
}


/* MIXTOTENS_SIMULATOR_V003C_AMBILIGHT_COLOR_FIDELITY */

/* Garante que o controlador antigo horizontal nunca apareça por trás */
.mxsim-side-zoom,
.zoom-field{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}

/* Trilho vertical ativo */
.mxsim-distance-rail{
  position:absolute;
  right:34px;
  top:210px;
  z-index:44;
  width:220px;
}

.mxsim-distance-rail-card{
  border:1px solid rgba(214,168,79,.24);
  background:
    radial-gradient(circle at 50% 0%, rgba(214,168,79,.12), transparent 48%),
    linear-gradient(180deg, rgba(16,13,7,.86), rgba(0,0,0,.80));
  backdrop-filter:blur(16px);
  box-shadow:0 22px 80px rgba(0,0,0,.54);
  padding:16px 14px 14px;
}

.mxsim-distance-rail-title{
  color:#f7f1e7;
  font-size:12px;
  letter-spacing:.18em;
  text-transform:uppercase;
  font-weight:900;
}

.mxsim-distance-rail-subtitle{
  margin-top:5px;
  color:rgba(255,255,255,.58);
  font-size:11px;
  line-height:1.35;
}

.mxsim-distance-rail-wrap{
  margin-top:16px;
  display:grid;
  grid-template-columns:48px 1fr;
  gap:10px;
  min-height:340px;
}

.mxsim-distance-scale{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  align-items:flex-end;
  color:rgba(255,255,255,.50);
  font-size:11px;
  padding:2px 0;
}

.mxsim-distance-track{
  position:relative;
  min-height:340px;
  border:1px solid rgba(214,168,79,.18);
  background:
    radial-gradient(circle at 50% 10%, rgba(242,210,138,.08), transparent 35%),
    rgba(0,0,0,.62);
  overflow:hidden;
}

.mxsim-distance-track::before{
  content:"";
  position:absolute;
  left:50%;
  top:12px;
  bottom:12px;
  width:2px;
  transform:translateX(-50%);
  background:linear-gradient(180deg, rgba(120,255,190,.18), rgba(242,210,138,.62), rgba(255,110,110,.35));
}

.mxsim-distance-range{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  opacity:0;
  cursor:pointer;
  z-index:10;
}

.mxsim-distance-mark{
  position:absolute;
  left:16%;
  right:16%;
  height:2px;
  border-radius:999px;
  transform:translateY(50%);
  z-index:3;
}

.mxsim-distance-mark.min{ background:rgba(255,110,110,.9); }
.mxsim-distance-mark.ideal-start,
.mxsim-distance-mark.ideal-end{ background:rgba(242,210,138,.95); }
.mxsim-distance-mark.premium{ background:rgba(120,255,190,.95); }

.mxsim-distance-pointer{
  position:absolute;
  left:50%;
  transform:translate(-50%, 50%);
  width:100%;
  pointer-events:none;
  z-index:5;
}

.mxsim-distance-pointer i{
  position:absolute;
  left:50%;
  top:0;
  width:14px;
  height:14px;
  transform:translate(-50%, -50%);
  border-radius:999px;
  background:#f2d28a;
  box-shadow:0 0 0 4px rgba(214,168,79,.20), 0 0 30px rgba(214,168,79,.72);
}

.mxsim-distance-pointer b{
  position:absolute;
  left:calc(50% + 16px);
  top:-12px;
  min-width:66px;
  min-height:26px;
  padding:0 8px;
  border:1px solid rgba(214,168,79,.30);
  background:rgba(0,0,0,.88);
  color:#f2d28a;
  font-size:11px;
  font-weight:900;
  display:flex;
  align-items:center;
  justify-content:center;
}

.mxsim-distance-summary{
  margin-top:14px;
  color:rgba(255,255,255,.76);
  font-size:11px;
  line-height:1.45;
  border-top:1px solid rgba(214,168,79,.14);
  padding-top:12px;
}

/* Quando a distância muda, o palco aproxima/afasta sem mexer no cálculo */
.mxsim-panel-stage{
  transition:transform .36s cubic-bezier(.2,.8,.2,1);
}

@media (max-width:1320px){
  .mxsim-distance-rail{
    right:20px;
    width:204px;
  }
}

@media (max-width:1100px){
  .mxsim-distance-rail{
    position:static;
    width:100%;
    max-width:460px;
    margin:14px auto 0;
  }
}


/* MIXTOTENS_SIMULATOR_V003C_AMBILIGHT_COLOR_FIDELITY */

/* Remove de vez resíduos dos controladores antigos */
.mxsim-side-zoom,
.zoom-field{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}

/* Régua lateral mais slim e mais comercial */
.mxsim-distance-rail{
  position:absolute;
  right:26px;
  top:148px;
  z-index:44;
  width:154px;
  pointer-events:none;
}

.mxsim-distance-rail-card{
  pointer-events:auto;
  border:1px solid rgba(214,168,79,.22);
  background:
    radial-gradient(circle at 50% 0%, rgba(214,168,79,.12), transparent 46%),
    linear-gradient(180deg, rgba(13,11,7,.86), rgba(0,0,0,.82));
  backdrop-filter:blur(16px);
  box-shadow:0 20px 70px rgba(0,0,0,.52);
  padding:12px 11px 11px;
}

.mxsim-distance-rail-title{
  color:#f7f1e7;
  font-size:10px;
  letter-spacing:.15em;
  text-transform:uppercase;
  font-weight:950;
  line-height:1.2;
}

.mxsim-distance-rail-subtitle{
  margin-top:5px;
  color:rgba(255,255,255,.58);
  font-size:9.5px;
  line-height:1.35;
}

.mxsim-distance-rail-wrap{
  margin-top:12px;
  display:grid;
  grid-template-columns:38px 1fr;
  gap:8px;
  min-height:248px;
}

.mxsim-distance-scale{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  align-items:flex-end;
  color:rgba(255,255,255,.48);
  font-size:9.5px;
  padding:2px 0;
}

.mxsim-distance-track{
  position:relative;
  min-height:248px;
  border:1px solid rgba(214,168,79,.18);
  background:
    radial-gradient(circle at 50% 10%, rgba(242,210,138,.08), transparent 34%),
    rgba(0,0,0,.62);
  overflow:hidden;
}

.mxsim-distance-track::before{
  content:"";
  position:absolute;
  left:50%;
  top:10px;
  bottom:10px;
  width:2px;
  transform:translateX(-50%);
  background:linear-gradient(180deg, rgba(120,255,190,.22), rgba(242,210,138,.62), rgba(255,110,110,.40));
}

.mxsim-distance-range{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  opacity:0;
  cursor:pointer;
  z-index:10;
}

.mxsim-distance-mark{
  position:absolute;
  left:18%;
  right:18%;
  height:2px;
  border-radius:999px;
  transform:translateY(50%);
  z-index:3;
}

.mxsim-distance-mark.min{ background:rgba(255,110,110,.88); }
.mxsim-distance-mark.ideal-start,
.mxsim-distance-mark.ideal-end{ background:rgba(242,210,138,.92); }
.mxsim-distance-mark.premium{ background:rgba(120,255,190,.90); }

.mxsim-distance-pointer{
  position:absolute;
  left:50%;
  transform:translate(-50%, 50%);
  width:100%;
  pointer-events:none;
  z-index:5;
}

.mxsim-distance-pointer i{
  position:absolute;
  left:50%;
  top:0;
  width:13px;
  height:13px;
  transform:translate(-50%, -50%);
  border-radius:999px;
  background:#f2d28a;
  box-shadow:0 0 0 4px rgba(214,168,79,.18), 0 0 24px rgba(214,168,79,.70);
}

.mxsim-distance-pointer b{
  position:absolute;
  right:calc(50% + 13px);
  top:-12px;
  min-width:52px;
  min-height:25px;
  padding:0 7px;
  border:1px solid rgba(214,168,79,.30);
  background:rgba(0,0,0,.88);
  color:#f2d28a;
  font-size:10px;
  font-weight:950;
  display:flex;
  align-items:center;
  justify-content:center;
  white-space:nowrap;
}

.mxsim-distance-summary{
  margin-top:10px;
  color:rgba(255,255,255,.74);
  font-size:9.8px;
  line-height:1.38;
  border-top:1px solid rgba(214,168,79,.14);
  padding-top:9px;
}

/* Leve ajuste no palco para a régua não competir com o painel */
.mxsim-panel-stage{
  left:49%;
}

@media (max-width:1320px){
  .mxsim-distance-rail{
    right:16px;
    width:146px;
  }

  .mxsim-panel-stage{
    left:48.5%;
  }
}

@media (max-width:1100px){
  .mxsim-distance-rail{
    position:absolute;
    right:12px;
    top:auto;
    bottom:96px;
    width:140px;
  }

  .mxsim-distance-rail-wrap{
    min-height:190px;
  }

  .mxsim-distance-track{
    min-height:190px;
  }

  .mxsim-distance-summary{
    display:none;
  }
}

@media (max-width:760px){
  .mxsim-distance-rail{
    display:none;
  }

  .mxsim-panel-stage{
    left:50%;
  }
}


/* MIXTOTENS_SIMULATOR_V003C_AMBILIGHT_COLOR_FIDELITY */

/* Oculta qualquer controlador antigo que tenha sobrado em CSS/HTML anterior */
.mxsim-distance-rail,
.mxsim-side-zoom,
.zoom-field{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}

/* Régua técnica fiel, slim e leiga */
.mxsim-pitch-gauge{
  position:absolute;
  z-index:46;
  right:24px;
  top:154px;
  width:148px;
  pointer-events:none;
}

.mxsim-pitch-gauge-card{
  pointer-events:auto;
  border:1px solid rgba(214,168,79,.24);
  background:
    radial-gradient(circle at 50% 0%, rgba(214,168,79,.13), transparent 46%),
    linear-gradient(180deg, rgba(14,12,8,.88), rgba(0,0,0,.82));
  backdrop-filter:blur(16px);
  box-shadow:0 22px 80px rgba(0,0,0,.52);
  padding:12px 10px 11px;
}

.mxsim-pitch-gauge-head strong{
  display:block;
  color:#fff8e8;
  font-size:10px;
  line-height:1.2;
  letter-spacing:.15em;
  text-transform:uppercase;
  font-weight:950;
}

.mxsim-pitch-gauge-head span{
  display:block;
  margin-top:5px;
  color:rgba(255,255,255,.58);
  font-size:9.5px;
  line-height:1.34;
}

.mxsim-pitch-gauge-main{
  margin-top:12px;
  display:grid;
  grid-template-columns:34px 1fr;
  gap:8px;
  min-height:238px;
}

.mxsim-pitch-gauge-labels{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  align-items:flex-end;
  color:rgba(255,255,255,.48);
  font-size:9.5px;
  padding:1px 0;
}

.mxsim-pitch-gauge-labels span:nth-child(2){
  color:#f2d28a;
}

.mxsim-pitch-gauge-track{
  position:relative;
  min-height:238px;
  overflow:hidden;
  border:1px solid rgba(214,168,79,.18);
  background:rgba(0,0,0,.62);
}

.mxsim-pitch-gauge-track::after{
  content:"";
  position:absolute;
  left:50%;
  top:8px;
  bottom:8px;
  width:1px;
  transform:translateX(-50%);
  background:rgba(255,255,255,.24);
  z-index:2;
}

.mxsim-gauge-zone{
  position:absolute;
  left:0;
  right:0;
  opacity:.68;
}

.mxsim-gauge-zone.too-close{
  background:linear-gradient(180deg,rgba(255,80,80,.40),rgba(255,80,80,.18));
}

.mxsim-gauge-zone.acceptable{
  background:linear-gradient(180deg,rgba(242,210,138,.22),rgba(242,210,138,.14));
}

.mxsim-gauge-zone.ideal{
  background:linear-gradient(180deg,rgba(120,255,190,.34),rgba(120,255,190,.20));
}

.mxsim-gauge-zone.comfort{
  background:linear-gradient(180deg,rgba(80,180,255,.22),rgba(80,180,255,.10));
}

.mxsim-pitch-gauge-range{
  position:absolute;
  inset:0;
  z-index:8;
  opacity:0;
  cursor:pointer;
}

.mxsim-pitch-gauge-pointer{
  position:absolute;
  left:50%;
  width:100%;
  transform:translate(-50%, 50%);
  z-index:7;
  pointer-events:none;
}

.mxsim-pitch-gauge-pointer::before{
  content:"";
  position:absolute;
  left:18%;
  right:18%;
  top:0;
  height:2px;
  transform:translateY(-50%);
  background:#f2d28a;
  box-shadow:0 0 18px rgba(242,210,138,.50);
}

.mxsim-pitch-gauge-pointer i{
  position:absolute;
  left:50%;
  top:0;
  width:13px;
  height:13px;
  border-radius:999px;
  transform:translate(-50%,-50%);
  background:#f2d28a;
  box-shadow:0 0 0 4px rgba(214,168,79,.18),0 0 24px rgba(214,168,79,.70);
}

.mxsim-pitch-gauge-pointer b{
  position:absolute;
  right:calc(50% + 12px);
  top:-12px;
  min-width:50px;
  height:25px;
  padding:0 7px;
  border:1px solid rgba(214,168,79,.32);
  background:rgba(0,0,0,.88);
  color:#f2d28a;
  font-size:10px;
  font-weight:950;
  display:flex;
  align-items:center;
  justify-content:center;
  white-space:nowrap;
}

.mxsim-pitch-gauge-readout{
  margin-top:10px;
  padding-top:9px;
  border-top:1px solid rgba(214,168,79,.14);
}

.mxsim-pitch-gauge-readout b{
  display:block;
  color:#f2d28a;
  font-size:10px;
  line-height:1.25;
  margin-bottom:4px;
}

.mxsim-pitch-gauge-readout span{
  display:block;
  color:rgba(255,255,255,.70);
  font-size:9.5px;
  line-height:1.35;
}

/* Leve reposicionamento para equilibrar a régua */
.mxsim-panel-stage{
  left:48.8%;
}

@media (max-width:1320px){
  .mxsim-pitch-gauge{
    right:12px;
    width:140px;
  }

  .mxsim-panel-stage{
    left:48%;
  }
}

@media (max-width:1120px){
  .mxsim-pitch-gauge{
    display:none;
  }

  .mxsim-panel-stage{
    left:50%;
  }
}


/* MIXTOTENS_SIMULATOR_V003C_AMBILIGHT_COLOR_FIDELITY */

/* Régua mais precisa e sem corte de label */
.mxsim-pitch-gauge{
  right:18px;
  top:150px;
  width:156px;
}

.mxsim-pitch-gauge-card{
  overflow:visible;
  padding:12px 10px 11px;
}

.mxsim-pitch-gauge-main{
  grid-template-columns:32px 1fr;
  gap:8px;
  min-height:246px;
}

.mxsim-pitch-gauge-track{
  min-height:246px;
  overflow:visible;
}

.mxsim-pitch-gauge-labels{
  font-size:9px;
}

.mxsim-pitch-gauge-pointer b{
  right:calc(50% + 13px);
  left:auto;
  top:-12px;
  min-width:64px;
  height:25px;
  padding:0 7px;
  font-size:9.5px;
  letter-spacing:-.01em;
  white-space:nowrap;
  overflow:visible;
}

.mxsim-pitch-gauge-pointer::before{
  left:20%;
  right:20%;
}

.mxsim-pitch-gauge-head strong{
  font-size:10px;
  line-height:1.12;
}

.mxsim-pitch-gauge-head span{
  font-size:9.2px;
  line-height:1.30;
}

.mxsim-pitch-gauge-readout b{
  font-size:10px;
  margin-bottom:5px;
}

.mxsim-pitch-gauge-readout span{
  font-size:9.3px;
  line-height:1.34;
}

/* Deixa as zonas mais fidedignas e menos chapadas */
.mxsim-gauge-zone.too-close{
  background:linear-gradient(180deg,rgba(255,72,72,.34),rgba(255,72,72,.16));
}

.mxsim-gauge-zone.acceptable{
  background:linear-gradient(180deg,rgba(242,210,138,.24),rgba(242,210,138,.12));
}

.mxsim-gauge-zone.ideal{
  background:linear-gradient(180deg,rgba(120,255,190,.32),rgba(120,255,190,.18));
}

.mxsim-gauge-zone.comfort{
  background:linear-gradient(180deg,rgba(80,180,255,.18),rgba(80,180,255,.08));
}

/* Mais respiro entre painel e régua em desktop */
@media (min-width:1121px){
  .mxsim-panel-stage{
    left:47.6%;
  }
}

/* Evita que painel muito largo brigue com a régua */
@media (min-width:1121px) and (max-width:1440px){
  .mxsim-panel-frame{
    max-width:calc(100vw - 390px);
  }
}

@media (max-width:1320px){
  .mxsim-pitch-gauge{
    right:10px;
    width:150px;
  }

  .mxsim-panel-stage{
    left:47%;
  }
}

/* Segurança: nada dos controladores antigos deve reaparecer */
.mxsim-distance-rail,
.mxsim-side-zoom,
.zoom-field{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}


/* MIXTOTENS_SIMULATOR_V003C_AMBILIGHT_COLOR_FIDELITY */

.mxsim-control-dock{
  grid-template-columns:1.05fr 1.12fr .82fr .82fr .82fr 1.05fr auto;
}

.objective-field select{
  color:#f7f1e7;
}

.mxsim-intel-strip{
  margin-top:10px;
  display:flex;
  justify-content:center;
}

.mxsim-consultant-card{
  width:min(620px, calc(100vw - 420px));
  border:1px solid rgba(214,168,79,.22);
  background:
    radial-gradient(circle at 80% 0%, rgba(214,168,79,.13), transparent 42%),
    linear-gradient(180deg, rgba(14,12,8,.78), rgba(0,0,0,.72));
  backdrop-filter:blur(14px);
  box-shadow:0 18px 54px rgba(0,0,0,.35);
  padding:12px 16px;
  text-align:center;
}

.mxsim-consultant-card span{
  display:block;
  color:#d6a84f;
  font-size:10px;
  letter-spacing:.16em;
  text-transform:uppercase;
  font-weight:950;
  margin-bottom:5px;
}

.mxsim-consultant-card strong{
  display:block;
  color:#fff8e8;
  font-size:15px;
  line-height:1.2;
  margin-bottom:4px;
}

.mxsim-consultant-card p{
  margin:0;
  color:rgba(255,255,255,.76);
  font-size:12px;
  line-height:1.45;
}

.mxsim-consultant-card small{
  display:block;
  margin-top:5px;
  color:rgba(255,255,255,.46);
  font-size:10.5px;
}

@media (max-width:1320px){
  .mxsim-control-dock{
    grid-template-columns:1fr 1fr 1fr;
  }

  .objective-field,
  .type-field,
  .pitch-field,
  .mxsim-primary{
    grid-column:auto;
  }

  .mxsim-consultant-card{
    width:min(560px, calc(100vw - 340px));
  }
}

@media (max-width:1120px){
  .mxsim-consultant-card{
    width:min(620px, calc(100vw - 32px));
  }
}

@media (max-width:760px){
  .mxsim-control-dock{
    grid-template-columns:1fr 1fr;
  }

  .objective-field,
  .type-field,
  .pitch-field,
  .mxsim-primary{
    grid-column:1 / -1;
  }

  .mxsim-consultant-card{
    display:none;
  }
}


/* MIXTOTENS_SIMULATOR_V003C_AMBILIGHT_COLOR_FIDELITY */

/* Topo com mais equilíbrio */
.mxsim-brandbar{
  grid-template-columns:180px minmax(680px, 930px) 170px;
}

.mxsim-top-metrics{
  width:min(930px, calc(100vw - 410px));
}

.mxsim-top-metrics article{
  min-width:0;
}

/* Painel respira melhor em desktop com régua lateral ativa */
@media (min-width:1121px){
  .mxsim-panel-stage{
    left:47.4%;
    top:47.8%;
  }

  .mxsim-panel-frame{
    max-width:calc(100vw - 430px);
  }
}

/* Card do consultor: mais compacto, legível e sem brigar com o dock */
.mxsim-intel-strip{
  margin-top:8px;
  position:relative;
  z-index:20;
}

.mxsim-consultant-card{
  width:min(620px, calc(100vw - 500px));
  padding:9px 14px 10px;
  box-shadow:0 14px 42px rgba(0,0,0,.34);
}

.mxsim-consultant-card span{
  font-size:9px;
  margin-bottom:4px;
}

.mxsim-consultant-card strong{
  font-size:13px;
  line-height:1.18;
  margin-bottom:3px;
}

.mxsim-consultant-card p{
  font-size:11px;
  line-height:1.38;
}

.mxsim-consultant-card small{
  display:none;
}

/* Dock principal: versão premium com respiro */
.mxsim-control-dock{
  width:min(1180px, calc(100vw - 92px));
  left:50%;
  transform:translateX(-50%);
  bottom:16px;
  gap:10px;
  padding:12px 14px;
  align-items:end;
}

/* Em telas médias/1366px, vira dock em 2 linhas para não espremer */
@media (min-width:1121px) and (max-width:1480px){
  .mxsim-control-dock{
    display:grid;
    grid-template-columns:repeat(12, minmax(0, 1fr));
    grid-auto-rows:auto;
    gap:8px 10px;
    padding:10px 12px;
  }

  .type-field{
    grid-column:1 / 3;
  }

  .objective-field{
    grid-column:3 / 7;
  }

  .pitch-field{
    grid-column:7 / 11;
  }

  .mxsim-control-dock > .mxsim-primary{
    grid-column:11 / 13;
    height:42px;
  }

  .width-field{
    grid-column:1 / 5;
  }

  .height-field{
    grid-column:5 / 9;
  }

  .distance-field{
    grid-column:9 / 13;
  }

  .mxsim-field span{
    font-size:9.5px;
    margin-bottom:5px;
  }

  .mxsim-field select,
  .mxsim-clean-stepper,
  .mxsim-clean-stepper input,
  .mxsim-clean-stepper b,
  .mxsim-mini-btn{
    height:40px;
  }

  .mxsim-mini-btn{
    font-size:20px;
  }

  .mxsim-consultant-card{
    width:min(560px, calc(100vw - 500px));
    padding:8px 12px;
  }
}

/* Em altura menor, reduz o card consultivo para não sobrepor o dock */
@media (max-height:760px) and (min-width:1121px){
  .mxsim-consultant-card{
    padding:7px 12px;
  }

  .mxsim-consultant-card span{
    display:none;
  }

  .mxsim-consultant-card strong{
    font-size:12px;
  }

  .mxsim-consultant-card p{
    font-size:10.5px;
    line-height:1.28;
  }

  .mxsim-panel-stage{
    top:46.5%;
  }
}

/* Em telas muito largas, mantém a experiência cinematográfica */
@media (min-width:1481px){
  .mxsim-control-dock{
    grid-template-columns:1.05fr 1.25fr .86fr .86fr .86fr 1.12fr 132px;
  }

  .mxsim-consultant-card{
    width:min(680px, calc(100vw - 520px));
  }
}

/* Mobile/tablet: mantém simples */
@media (max-width:1120px){
  .mxsim-brandbar{
    grid-template-columns:1fr auto;
  }

  .mxsim-top-metrics{
    width:100%;
  }

  .mxsim-control-dock{
    width:calc(100vw - 28px);
    left:14px;
    right:14px;
    transform:none;
    grid-template-columns:1fr 1fr;
  }

  .type-field,
  .objective-field,
  .pitch-field,
  .mxsim-control-dock > .mxsim-primary{
    grid-column:1 / -1;
  }

  .width-field,
  .height-field,
  .distance-field{
    grid-column:auto;
  }

  .mxsim-consultant-card{
    display:none;
  }
}

/* Segurança visual */
.mxsim-control-dock select{
  min-width:0;
  text-overflow:ellipsis;
}

.objective-field select,
.pitch-field select{
  font-size:12px;
}


/* MIXTOTENS_SIMULATOR_V003C_AMBILIGHT_COLOR_FIDELITY */

/* Selects continuam existindo para o motor JS, mas a UI usa chips */
.mxsim-native-select{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  opacity:0!important;
  pointer-events:none!important;
  overflow:hidden!important;
}

/* Command Center: menos formulário, mais consultor */
.mxsim-control-dock{
  width:min(1180px, calc(100vw - 112px));
  left:50%;
  right:auto;
  transform:translateX(-50%);
  bottom:16px;
  display:grid;
  grid-template-columns:repeat(12, minmax(0, 1fr));
  grid-auto-rows:auto;
  gap:10px 12px;
  padding:14px 16px;
  align-items:end;
  background:
    radial-gradient(circle at 50% 0%,rgba(242,210,138,.08),transparent 55%),
    linear-gradient(180deg,rgba(15,12,7,.82),rgba(0,0,0,.82));
}

/* Ordem inteligente dos blocos */
.type-field{
  grid-column:1 / 4;
}

.objective-field{
  grid-column:4 / 13;
}

.width-field{
  grid-column:1 / 4;
}

.height-field{
  grid-column:4 / 7;
}

.distance-field{
  grid-column:7 / 10;
}

.pitch-field{
  grid-column:1 / 9;
}

.mxsim-control-dock > .mxsim-primary{
  grid-column:9 / 13;
  height:44px;
}

/* Chips premium */
.mxsim-chip-field{
  align-self:start;
}

.mxsim-chip-row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
}

.objective-chip-row{
  grid-template-columns:1fr 1fr 1fr;
}

.mxsim-choice-chip{
  height:42px;
  border:1px solid rgba(255,255,255,.14);
  background:
    radial-gradient(circle at 50% 0%,rgba(242,210,138,.045),transparent 58%),
    rgba(5,5,5,.78);
  color:rgba(255,255,255,.78);
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  cursor:pointer;
  font-weight:850;
  font-size:12px;
  transition:.18s ease;
  white-space:nowrap;
}

.mxsim-choice-chip i{
  color:#f2d28a;
  font-style:normal;
  font-size:15px;
  opacity:.82;
}

.mxsim-choice-chip b{
  font-weight:850;
}

.mxsim-choice-chip:hover{
  border-color:rgba(242,210,138,.38);
  color:#fff;
}

.mxsim-choice-chip.is-active{
  border-color:rgba(242,210,138,.72);
  color:#fff8e8;
  background:
    radial-gradient(circle at 50% 0%,rgba(242,210,138,.18),transparent 58%),
    rgba(14,11,5,.88);
  box-shadow:
    inset 0 0 0 1px rgba(214,168,79,.14),
    0 0 22px rgba(214,168,79,.12);
}

/* Recomendação sempre visível e fora da área de conflito */
.mxsim-intel-strip{
  position:absolute;
  left:50%;
  bottom:224px;
  transform:translateX(-50%);
  z-index:34;
  width:min(620px, calc(100vw - 520px));
  margin:0;
  display:block;
  pointer-events:none;
}

.mxsim-consultant-card{
  width:100%;
  pointer-events:auto;
  display:grid;
  grid-template-columns:46px 1fr;
  grid-template-areas:
    "icon label"
    "icon title"
    "icon text";
  column-gap:14px;
  align-items:center;
  padding:12px 16px;
  text-align:left;
  border:1px solid rgba(214,168,79,.32);
  background:
    radial-gradient(circle at 80% 0%,rgba(242,210,138,.13),transparent 45%),
    linear-gradient(180deg,rgba(16,13,7,.90),rgba(0,0,0,.84));
  box-shadow:0 18px 60px rgba(0,0,0,.50);
  backdrop-filter:blur(16px);
}

.mxsim-consultant-card::before{
  content:"♛";
  grid-area:icon;
  width:42px;
  height:42px;
  border:1px solid rgba(242,210,138,.42);
  border-radius:999px;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#f2d28a;
  font-size:20px;
  background:rgba(214,168,79,.07);
}

.mxsim-consultant-card span{
  grid-area:label;
  color:#d6a84f;
  font-size:9px;
  letter-spacing:.18em;
  text-transform:uppercase;
  font-weight:950;
  margin:0;
}

.mxsim-consultant-card strong{
  grid-area:title;
  color:#fff8e8;
  font-size:18px;
  line-height:1.08;
  margin:2px 0 3px;
}

.mxsim-consultant-card p{
  grid-area:text;
  margin:0;
  color:rgba(255,255,255,.76);
  font-size:11.5px;
  line-height:1.35;
}

.mxsim-consultant-card small{
  display:none!important;
}

/* Painel não deve brigar com a régua nem com a recomendação */
@media (min-width:1121px){
  .mxsim-panel-stage{
    left:47.2%;
    top:45.8%;
  }

  .mxsim-panel-frame{
    max-width:calc(100vw - 455px);
  }
}

/* Ajuste para telas 1366/1440 com altura padrão */
@media (min-width:1121px) and (max-width:1480px){
  .mxsim-control-dock{
    width:min(1180px, calc(100vw - 112px));
    padding:12px 14px;
    gap:8px 10px;
  }

  .mxsim-choice-chip{
    height:38px;
    font-size:11px;
    gap:6px;
  }

  .mxsim-clean-stepper,
  .mxsim-clean-stepper input,
  .mxsim-clean-stepper b,
  .mxsim-mini-btn,
  .mxsim-field select{
    height:40px;
  }

  .mxsim-mini-btn{
    font-size:20px;
  }

  .mxsim-intel-strip{
    bottom:218px;
    width:min(560px, calc(100vw - 520px));
  }

  .mxsim-consultant-card{
    padding:10px 14px;
    grid-template-columns:40px 1fr;
    column-gap:12px;
  }

  .mxsim-consultant-card::before{
    width:36px;
    height:36px;
    font-size:17px;
  }

  .mxsim-consultant-card strong{
    font-size:15px;
  }

  .mxsim-consultant-card p{
    font-size:10.5px;
  }
}

/* Altura menor: compacta sem esconder */
@media (max-height:760px) and (min-width:1121px){
  .mxsim-panel-stage{
    top:44.2%;
  }

  .mxsim-intel-strip{
    bottom:204px;
  }

  .mxsim-consultant-card{
    padding:8px 12px;
  }

  .mxsim-consultant-card span{
    display:none;
  }

  .mxsim-consultant-card strong{
    font-size:13px;
  }

  .mxsim-consultant-card p{
    font-size:10px;
    line-height:1.25;
  }
}

/* Mobile/tablet: não poluir */
@media (max-width:1120px){
  .mxsim-control-dock{
    width:calc(100vw - 28px);
    left:14px;
    right:14px;
    transform:none;
    grid-template-columns:1fr 1fr;
  }

  .type-field,
  .objective-field,
  .pitch-field,
  .mxsim-control-dock > .mxsim-primary{
    grid-column:1 / -1;
  }

  .width-field,
  .height-field,
  .distance-field{
    grid-column:auto;
  }

  .objective-chip-row{
    grid-template-columns:1fr;
  }

  .mxsim-intel-strip{
    display:none;
  }
}

/* Segurança: textos não quebram o layout */
.mxsim-control-dock select,
.mxsim-choice-chip b{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
}


/* MIXTOTENS_SIMULATOR_V003C_AMBILIGHT_COLOR_FIDELITY */

/* Ideia central:
   - O painel fica livre.
   - A inteligência consultiva fica na lateral.
   - O dock inferior vira command center limpo.
*/

/* Remove a recomendação central para não competir com o LED */
.mxsim-intel-strip{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}

/* Topo mais estável */
.mxsim-brandbar{
  grid-template-columns:178px minmax(660px,930px) 168px;
}

.mxsim-top-metrics{
  width:min(930px, calc(100vw - 430px));
}

.mxsim-top-metrics article{
  min-width:0;
}

/* Palco: ganha respiro e não encosta na régua lateral */
@media (min-width:1121px){
  .mxsim-panel-stage{
    left:46.8%;
    top:44.2%;
  }

  .mxsim-panel-frame{
    max-width:calc(100vw - 470px);
    max-height:calc(100vh - 315px);
  }
}

/* Régua lateral agora é o consultor visual */
.mxsim-pitch-gauge{
  right:18px;
  top:150px;
  width:156px;
}

.mxsim-pitch-gauge-card{
  padding:12px 10px 11px;
  background:
    radial-gradient(circle at 50% 0%, rgba(214,168,79,.14), transparent 46%),
    linear-gradient(180deg, rgba(14,12,8,.90), rgba(0,0,0,.84));
  box-shadow:0 22px 80px rgba(0,0,0,.54);
}

.mxsim-pitch-gauge-head strong{
  font-size:10px;
  line-height:1.12;
  color:#fff8e8;
}

.mxsim-pitch-gauge-head span{
  font-size:9.2px;
  line-height:1.30;
  color:rgba(255,255,255,.60);
}

.mxsim-pitch-gauge-main{
  grid-template-columns:30px 1fr;
  gap:8px;
  min-height:232px;
}

.mxsim-pitch-gauge-track{
  min-height:232px;
  overflow:visible;
}

.mxsim-pitch-gauge-labels{
  font-size:8.8px;
}

.mxsim-pitch-gauge-pointer b{
  min-width:62px;
  height:24px;
  font-size:9.5px;
  right:calc(50% + 12px);
  white-space:nowrap;
}

.mxsim-pitch-gauge-readout b{
  font-size:10px;
}

.mxsim-pitch-gauge-readout span{
  font-size:9.2px;
  line-height:1.34;
}

/* Command center inferior: duas linhas organizadas, sem esmagar */
.mxsim-control-dock{
  position:absolute;
  left:92px;
  right:232px;
  bottom:16px;
  width:auto;
  transform:none;
  display:grid;
  grid-template-columns:repeat(12, minmax(0, 1fr));
  grid-auto-rows:auto;
  gap:9px 10px;
  padding:13px 14px;
  align-items:end;
  background:
    radial-gradient(circle at 50% 0%,rgba(242,210,138,.08),transparent 56%),
    linear-gradient(180deg,rgba(15,12,7,.84),rgba(0,0,0,.84));
  box-shadow:0 22px 80px rgba(0,0,0,.56);
}

/* Linha 1: decisões estratégicas */
.type-field{
  grid-column:1 / 3;
  grid-row:1;
}

.objective-field{
  grid-column:3 / 8;
  grid-row:1;
}

.pitch-field{
  grid-column:8 / 11;
  grid-row:1;
}

.mxsim-control-dock > .mxsim-primary{
  grid-column:11 / 13;
  grid-row:1;
  height:38px;
}

/* Linha 2: medidas */
.width-field{
  grid-column:1 / 5;
  grid-row:2;
}

.height-field{
  grid-column:5 / 8;
  grid-row:2;
}

.distance-field{
  grid-column:8 / 13;
  grid-row:2;
}

/* Chips compactos e mais elegantes */
.mxsim-native-select{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  opacity:0!important;
  pointer-events:none!important;
}

.mxsim-chip-row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:7px;
}

.objective-chip-row{
  grid-template-columns:1fr 1fr 1fr;
}

.mxsim-choice-chip{
  height:34px;
  padding:0 9px;
  border:1px solid rgba(255,255,255,.13);
  background:
    radial-gradient(circle at 50% 0%,rgba(242,210,138,.04),transparent 58%),
    rgba(5,5,5,.82);
  color:rgba(255,255,255,.78);
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  cursor:pointer;
  font-size:10.5px;
  font-weight:850;
  white-space:nowrap;
  transition:.18s ease;
}

.mxsim-choice-chip i{
  color:#f2d28a;
  font-style:normal;
  font-size:12px;
  opacity:.82;
}

.mxsim-choice-chip b{
  font-weight:850;
  overflow:hidden;
  text-overflow:ellipsis;
}

.mxsim-choice-chip.is-active{
  border-color:rgba(242,210,138,.70);
  color:#fff8e8;
  background:
    radial-gradient(circle at 50% 0%,rgba(242,210,138,.16),transparent 58%),
    rgba(14,11,5,.90);
  box-shadow:0 0 20px rgba(214,168,79,.10);
}

/* Inputs compactos */
.mxsim-field span{
  font-size:9px;
  letter-spacing:.16em;
  margin-bottom:5px;
}

.mxsim-clean-stepper{
  height:38px;
  grid-template-columns:38px 1fr 40px 38px;
}

.mxsim-clean-stepper input,
.mxsim-clean-stepper b,
.mxsim-mini-btn{
  height:38px;
}

.mxsim-mini-btn{
  font-size:19px;
}

.mxsim-field select{
  height:38px;
  font-size:11.5px;
}

.mxsim-primary{
  font-size:12px;
}

/* A linha de pitch precisa ser limpa */
.pitch-field select{
  width:100%;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
}

/* Ajuste em 1366/1440 */
@media (min-width:1121px) and (max-width:1480px){
  .mxsim-control-dock{
    left:92px;
    right:218px;
    padding:12px 13px;
    gap:8px 9px;
  }

  .mxsim-choice-chip{
    height:32px;
    font-size:10px;
    gap:5px;
  }

  .mxsim-field select,
  .mxsim-clean-stepper,
  .mxsim-clean-stepper input,
  .mxsim-clean-stepper b,
  .mxsim-mini-btn,
  .mxsim-control-dock > .mxsim-primary{
    height:36px;
  }

  .mxsim-mini-btn{
    font-size:18px;
  }

  .mxsim-panel-stage{
    top:43.6%;
  }
}

/* Altura menor: painel sobe um pouco e dock não vira bloco gigante */
@media (max-height:760px) and (min-width:1121px){
  .mxsim-panel-stage{
    top:42.4%;
  }

  .mxsim-control-dock{
    bottom:12px;
    padding:10px 12px;
  }

  .mxsim-pitch-gauge{
    top:142px;
  }
}

/* Telas menores: volta para layout simples */
@media (max-width:1120px){
  .mxsim-control-dock{
    left:14px;
    right:14px;
    bottom:14px;
    grid-template-columns:1fr 1fr;
  }

  .type-field,
  .objective-field,
  .pitch-field,
  .mxsim-control-dock > .mxsim-primary{
    grid-column:1 / -1;
    grid-row:auto;
  }

  .width-field,
  .height-field,
  .distance-field{
    grid-column:auto;
    grid-row:auto;
  }

  .objective-chip-row{
    grid-template-columns:1fr;
  }

  .mxsim-pitch-gauge{
    display:none;
  }
}

/* Segurança contra sobras das versões antigas */
.mxsim-distance-rail,
.mxsim-side-zoom,
.zoom-field{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}


/* MIXTOTENS_SIMULATOR_V003C_AMBILIGHT_COLOR_FIDELITY */

/* ----------------------------------------------------
   V002V: Refinamento visual do command center.
   Não altera cálculo, pitch, placas, preço ou régua.
---------------------------------------------------- */

/* Palco com mais leitura cinematográfica */
@media (min-width:1121px){
  .mxsim-panel-stage{
    left:46.5%;
    top:43.8%;
  }

  .mxsim-panel-frame{
    max-width:calc(100vw - 485px);
    max-height:calc(100vh - 318px);
  }
}

/* Métricas do topo com presença, mas menos peso visual */
.mxsim-top-metrics article{
  background:
    radial-gradient(circle at 80% 0%,rgba(242,210,138,.08),transparent 46%),
    rgba(6,5,3,.72);
  box-shadow:0 12px 34px rgba(0,0,0,.24);
}

.mxsim-top-metrics article span{
  opacity:.72;
}

.mxsim-top-metrics article b{
  letter-spacing:.01em;
}

/* Command center como console premium */
.mxsim-control-dock{
  left:92px;
  right:232px;
  bottom:16px;
  width:auto;
  transform:none;
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  grid-template-areas:
    "type type objective objective objective objective pitch pitch pitch action action action"
    "width width width width height height height distance distance distance distance distance";
  gap:10px 10px;
  padding:15px 16px 14px;
  border-color:rgba(214,168,79,.26);
  background:
    linear-gradient(90deg,rgba(214,168,79,.08),transparent 18%,transparent 82%,rgba(214,168,79,.06)),
    radial-gradient(circle at 50% -10%,rgba(242,210,138,.10),transparent 50%),
    linear-gradient(180deg,rgba(13,10,5,.88),rgba(0,0,0,.86));
  box-shadow:
    0 24px 90px rgba(0,0,0,.58),
    inset 0 1px 0 rgba(255,255,255,.035);
}

.type-field{grid-area:type;}
.objective-field{grid-area:objective;}
.pitch-field{grid-area:pitch;}
.width-field{grid-area:width;}
.height-field{grid-area:height;}
.distance-field{grid-area:distance;}
.mxsim-control-dock > .mxsim-primary{grid-area:action;}

/* Labels mais discretos e premium */
.mxsim-field span{
  color:rgba(242,210,138,.78);
  font-size:8.8px;
  letter-spacing:.18em;
  margin-bottom:6px;
}

/* Chips mais elegantes, menos “botão grande” */
.mxsim-chip-row{
  gap:6px;
}

.objective-chip-row{
  grid-template-columns:1fr 1fr 1fr;
}

.mxsim-choice-chip{
  height:35px;
  padding:0 10px;
  border-color:rgba(255,255,255,.12);
  background:
    radial-gradient(circle at 50% 0%,rgba(242,210,138,.035),transparent 58%),
    linear-gradient(180deg,rgba(9,8,6,.86),rgba(0,0,0,.86));
  color:rgba(255,255,255,.72);
  font-size:10.5px;
  font-weight:850;
  gap:6px;
}

.mxsim-choice-chip i{
  font-size:11px;
  color:#f2d28a;
  opacity:.78;
}

.mxsim-choice-chip.is-active{
  border-color:rgba(242,210,138,.78);
  color:#fff7e5;
  background:
    radial-gradient(circle at 50% 0%,rgba(242,210,138,.18),transparent 60%),
    linear-gradient(180deg,rgba(18,13,5,.92),rgba(0,0,0,.88));
  box-shadow:
    inset 0 0 0 1px rgba(214,168,79,.12),
    0 0 20px rgba(214,168,79,.13);
}

/* Steppers com leitura mais limpa */
.mxsim-clean-stepper{
  height:40px;
  grid-template-columns:40px minmax(70px,1fr) 40px 40px;
  background:
    linear-gradient(180deg,rgba(8,8,8,.94),rgba(0,0,0,.94));
  border-color:rgba(255,255,255,.12);
}

.mxsim-clean-stepper input,
.mxsim-clean-stepper b,
.mxsim-mini-btn{
  height:40px;
}

.mxsim-clean-stepper input{
  font-size:13px;
  font-weight:850;
  color:#fff8e8;
}

.mxsim-clean-stepper b{
  color:#f2d28a;
  background:rgba(214,168,79,.08);
  border-left:1px solid rgba(214,168,79,.18);
}

.mxsim-mini-btn{
  font-size:18px;
  color:#f2d28a;
  background:
    radial-gradient(circle at 50% 0%,rgba(242,210,138,.10),transparent 58%),
    rgba(8,6,2,.92);
}

.mxsim-mini-btn:hover{
  background:rgba(214,168,79,.16);
}

/* Pitch vira escolha consultiva, sem parecer campo técnico grande */
.pitch-field select{
  height:40px;
  font-size:11.5px;
  font-weight:850;
  color:#fff8e8;
  background:
    linear-gradient(180deg,rgba(8,8,8,.94),rgba(0,0,0,.94));
  border-color:rgba(255,255,255,.12);
}

/* CTA mais forte e melhor encaixado */
.mxsim-control-dock > .mxsim-primary{
  height:40px;
  align-self:end;
  background:
    linear-gradient(135deg,#ffe08c,#d5a642 72%,#b98524);
  color:#070604;
  font-size:12px;
  font-weight:950;
  letter-spacing:.01em;
  box-shadow:
    0 16px 36px rgba(214,168,79,.18),
    inset 0 1px 0 rgba(255,255,255,.42);
}

.mxsim-control-dock > .mxsim-primary:hover{
  filter:brightness(1.06);
}

/* Régua/consultor lateral mais alinhado ao painel */
.mxsim-pitch-gauge{
  right:18px;
  top:150px;
  width:156px;
}

.mxsim-pitch-gauge-card{
  border-color:rgba(214,168,79,.24);
  background:
    radial-gradient(circle at 50% 0%,rgba(214,168,79,.13),transparent 46%),
    linear-gradient(180deg,rgba(12,10,6,.90),rgba(0,0,0,.85));
}

.mxsim-pitch-gauge-head strong{
  font-size:10px;
  letter-spacing:.16em;
}

.mxsim-pitch-gauge-head span{
  font-size:9px;
}

.mxsim-pitch-gauge-readout b{
  color:#f2d28a;
}

.mxsim-pitch-gauge-readout span{
  color:rgba(255,255,255,.70);
}

/* Evita que o label de medida colida com o rodapé em painéis muito largos */
.mxsim-panel-caption{
  color:rgba(255,255,255,.56);
}

.mxsim-panel-caption b,
.mxsim-panel-caption span{
  text-shadow:0 2px 10px rgba(0,0,0,.80);
}

/* 1366/1440: compacta sem perder hierarquia */
@media (min-width:1121px) and (max-width:1480px){
  .mxsim-control-dock{
    left:92px;
    right:218px;
    bottom:14px;
    gap:8px 9px;
    padding:12px 13px;
  }

  .mxsim-choice-chip{
    height:32px;
    padding:0 8px;
    font-size:9.8px;
  }

  .mxsim-clean-stepper,
  .mxsim-clean-stepper input,
  .mxsim-clean-stepper b,
  .mxsim-mini-btn,
  .pitch-field select,
  .mxsim-control-dock > .mxsim-primary{
    height:36px;
  }

  .mxsim-clean-stepper{
    grid-template-columns:38px minmax(64px,1fr) 38px 38px;
  }

  .mxsim-field span{
    font-size:8.4px;
    margin-bottom:5px;
  }

  .mxsim-panel-stage{
    top:43.2%;
    left:46.1%;
  }
}

/* Altura menor: reduz sem quebrar */
@media (max-height:760px) and (min-width:1121px){
  .mxsim-panel-stage{
    top:42.2%;
  }

  .mxsim-control-dock{
    bottom:10px;
    padding:10px 12px;
  }

  .mxsim-choice-chip{
    height:30px;
  }

  .mxsim-clean-stepper,
  .mxsim-clean-stepper input,
  .mxsim-clean-stepper b,
  .mxsim-mini-btn,
  .pitch-field select,
  .mxsim-control-dock > .mxsim-primary{
    height:34px;
  }
}

/* Mobile/tablet preserva simplicidade */
@media (max-width:1120px){
  .mxsim-control-dock{
    left:14px;
    right:14px;
    bottom:14px;
    grid-template-columns:1fr 1fr;
    grid-template-areas:none;
  }

  .type-field,
  .objective-field,
  .pitch-field,
  .mxsim-control-dock > .mxsim-primary{
    grid-column:1 / -1;
    grid-row:auto;
  }

  .width-field,
  .height-field,
  .distance-field{
    grid-column:auto;
    grid-row:auto;
  }
}

/* Segurança contra versões anteriores */
.mxsim-intel-strip,
.mxsim-distance-rail,
.mxsim-side-zoom,
.zoom-field{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}


/* MIXTOTENS_SIMULATOR_V003C_AMBILIGHT_COLOR_FIDELITY */

/* 
  Layout agora reage ao formato do painel:
  portrait = painel em pé
  standard = proporção comum
  wide = horizontal
  ultrawide = muito largo
*/

/* Base mais estável */
.mxsim-simulator,
.mxsim-stage,
body{
  overflow-x:hidden;
}

/* Consultor visual não deve cortar na direita */
.mxsim-pitch-gauge{
  right:18px;
  width:156px;
  max-width:156px;
}

/* Palco padrão */
@media (min-width:1121px){
  html[data-mxsim-aspect="standard"] .mxsim-panel-stage{
    left:46.5%;
    top:43.8%;
  }

  html[data-mxsim-aspect="wide"] .mxsim-panel-stage{
    left:46.2%;
    top:43.6%;
  }

  html[data-mxsim-aspect="ultrawide"] .mxsim-panel-stage{
    left:45.8%;
    top:43.4%;
  }

  html[data-mxsim-aspect="portrait"] .mxsim-panel-stage{
    left:45.2%;
    top:43.4%;
  }
}

/* Painel vertical precisa ganhar presença, não ficar perdido */
@media (min-width:1121px){
  html[data-mxsim-aspect="portrait"] .mxsim-panel-stage{
    transform:translate(-50%,-50%) scale(calc(var(--stage-zoom, 1) * 1.14))!important;
  }

  html[data-mxsim-aspect="portrait"] .mxsim-panel-frame{
    max-height:calc(100vh - 300px);
    max-width:calc(100vw - 560px);
    box-shadow:
      0 0 0 1px rgba(214,168,79,.30),
      0 26px 92px rgba(214,168,79,.14),
      0 38px 120px rgba(0,0,0,.64);
  }

  html[data-mxsim-aspect="portrait"] .mxsim-panel-media,
  html[data-mxsim-aspect="portrait"] .mxsim-video,
  html[data-mxsim-aspect="portrait"] .mxsim-led-image{
    object-position:center center;
  }
}

/* Painel muito largo: reduz um pouco para não brigar com consultor */
@media (min-width:1121px){
  html[data-mxsim-aspect="ultrawide"] .mxsim-panel-stage{
    transform:translate(-50%,-50%) scale(calc(var(--stage-zoom, 1) * .94))!important;
  }

  html[data-mxsim-aspect="ultrawide"] .mxsim-panel-frame{
    max-width:calc(100vw - 520px);
  }
}

/* Grande formato: números altos sem poluir */
html[data-mxsim-size="large"] .mxsim-top-metrics article b{
  font-size:15px;
}

html[data-mxsim-size="mega"] .mxsim-top-metrics article b{
  font-size:14px;
  letter-spacing:-.01em;
}

/* Dock mais inteligente quando o painel é vertical */
@media (min-width:1121px){
  html[data-mxsim-aspect="portrait"] .mxsim-control-dock{
    left:92px;
    right:232px;
    bottom:16px;
    grid-template-areas:
      "type type objective objective objective objective pitch pitch pitch action action action"
      "width width width height height height distance distance distance distance distance distance";
  }

  html[data-mxsim-aspect="portrait"] .width-field{
    grid-area:width;
  }

  html[data-mxsim-aspect="portrait"] .height-field{
    grid-area:height;
  }

  html[data-mxsim-aspect="portrait"] .distance-field{
    grid-area:distance;
  }
}

/* Caption fica mais legível em formatos verticais */
html[data-mxsim-aspect="portrait"] .mxsim-panel-caption{
  font-size:12px;
  color:rgba(255,255,255,.66);
}

/* Consultor visual mais limpo */
.mxsim-pitch-gauge-head strong{
  letter-spacing:.16em;
}

.mxsim-pitch-gauge-readout b{
  font-size:10.5px;
}

.mxsim-pitch-gauge-readout span{
  font-size:9.2px;
  line-height:1.35;
}

/* Quando a tela é baixa, preservar o painel e compactar controles */
@media (max-height:760px) and (min-width:1121px){
  html[data-mxsim-aspect="portrait"] .mxsim-panel-stage{
    top:41.8%;
  }

  html[data-mxsim-aspect="portrait"] .mxsim-control-dock{
    bottom:10px;
  }

  html[data-mxsim-aspect="portrait"] .mxsim-panel-frame{
    max-height:calc(100vh - 270px);
  }
}

/* Em telas menores, não forçar inteligência desktop */
@media (max-width:1120px){
  html[data-mxsim-aspect="portrait"] .mxsim-panel-stage,
  html[data-mxsim-aspect="wide"] .mxsim-panel-stage,
  html[data-mxsim-aspect="ultrawide"] .mxsim-panel-stage{
    left:50%;
    top:auto;
    transform:none!important;
  }
}

/* Segurança contra versões antigas */
.mxsim-intel-strip,
.mxsim-distance-rail,
.mxsim-side-zoom,
.zoom-field{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}


/* MIXTOTENS_SIMULATOR_V003C_AMBILIGHT_COLOR_FIDELITY */

/*
  V002X:
  - O painel passa a respeitar área segura real.
  - Evita sobrepor métricas superiores.
  - Evita encostar no command center.
  - Melhora formatos verticais e ultrawide.
*/

@media (min-width:1121px){
  .mxsim-panel-stage{
    left:var(--mxsim-safe-stage-left, 46.5%)!important;
    top:var(--mxsim-safe-stage-top, 44%)!important;
    transform:translate(-50%,-50%) scale(calc(var(--stage-zoom, 1) * var(--mxsim-safe-stage-scale, 1)))!important;
    transition:
      top .28s cubic-bezier(.2,.8,.2,1),
      left .28s cubic-bezier(.2,.8,.2,1),
      transform .28s cubic-bezier(.2,.8,.2,1);
  }

  .mxsim-panel-frame{
    width:var(--mxsim-safe-frame-w, auto)!important;
    height:var(--mxsim-safe-frame-h, auto)!important;
    max-width:var(--mxsim-safe-frame-max-w, calc(100vw - 485px))!important;
    max-height:var(--mxsim-safe-frame-max-h, calc(100vh - 318px))!important;
  }

  html[data-mxsim-aspect="portrait"] .mxsim-panel-stage{
    transform:translate(-50%,-50%) scale(calc(var(--stage-zoom, 1) * var(--mxsim-safe-stage-scale, 1)))!important;
  }

  html[data-mxsim-aspect="ultrawide"] .mxsim-panel-stage{
    transform:translate(-50%,-50%) scale(calc(var(--stage-zoom, 1) * var(--mxsim-safe-stage-scale, 1)))!important;
  }
}

/* Formato vertical: mais elegante, sem invadir topo */
html[data-mxsim-aspect="portrait"] .mxsim-panel-frame{
  box-shadow:
    0 0 0 1px rgba(214,168,79,.34),
    0 22px 76px rgba(214,168,79,.13),
    0 34px 110px rgba(0,0,0,.66);
}

/* Formato muito largo: não deve avançar contra o consultor */
html[data-mxsim-aspect="ultrawide"] .mxsim-panel-frame{
  box-shadow:
    0 0 0 1px rgba(214,168,79,.30),
    0 20px 82px rgba(214,168,79,.12),
    0 34px 110px rgba(0,0,0,.64);
}

/* Captions mais seguras em formatos extremos */
html[data-mxsim-aspect="portrait"] .mxsim-panel-caption,
html[data-mxsim-aspect="ultrawide"] .mxsim-panel-caption{
  margin-top:8px;
  color:rgba(255,255,255,.62);
}

/* Top metrics: nunca devem virar concorrentes do painel */
.mxsim-top-metrics{
  position:relative;
  z-index:60;
}

/* Dock sempre acima do fundo, mas abaixo do painel visual */
.mxsim-control-dock{
  z-index:70;
}

/* Consultor lateral preservado */
.mxsim-pitch-gauge{
  z-index:68;
}

/* Segurança contra versões antigas */
.mxsim-intel-strip,
.mxsim-distance-rail,
.mxsim-side-zoom,
.zoom-field{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}


/* MIXTOTENS_SIMULATOR_V003C_AMBILIGHT_COLOR_FIDELITY */

/*
  Ambilight Base:
  - brilho dinâmico atrás do painel;
  - usa variáveis CSS alimentadas pelo JS;
  - não altera cálculos;
  - não interfere na UI;
  - efeito limitado para não virar neon fake.
*/

:root{
  --mxsim-ambient-left: rgba(214,168,79,.14);
  --mxsim-ambient-center: rgba(242,210,138,.16);
  --mxsim-ambient-right: rgba(80,180,255,.12);
  --mxsim-ambient-power: .18;
}

/* O frame do LED vira fonte luminosa */
.mxsim-panel-frame{
  position:relative;
  transition:
    box-shadow 620ms ease,
    filter 620ms ease;
  box-shadow:
    0 0 0 1px rgba(214,168,79,.34),
    -32px 0 84px var(--mxsim-ambient-left),
    32px 0 84px var(--mxsim-ambient-right),
    0 0 112px var(--mxsim-ambient-center),
    0 34px 120px rgba(0,0,0,.68)!important;
}

/* Camada de aura refinada usando pseudo-elemento, sem tocar no vídeo */
.mxsim-panel-frame::before{
  content:"";
  position:absolute;
  inset:-13% -10%;
  z-index:-1;
  pointer-events:none;
  opacity:calc(.72 + (var(--mxsim-ambient-power) * 1.2));
  background:
    radial-gradient(circle at 18% 50%, var(--mxsim-ambient-left), transparent 42%),
    radial-gradient(circle at 52% 48%, var(--mxsim-ambient-center), transparent 48%),
    radial-gradient(circle at 84% 50%, var(--mxsim-ambient-right), transparent 42%);
  filter:blur(42px) saturate(1.18);
  transform:translateZ(0);
  transition:
    background 620ms ease,
    opacity 620ms ease,
    filter 620ms ease;
}

/* Bloom sutil para dar profundidade no palco */
.mxsim-panel-stage::before{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:calc(var(--mxsim-safe-frame-w, 720px) * 1.35);
  height:calc(var(--mxsim-safe-frame-h, 360px) * 1.55);
  transform:translate(-50%,-50%);
  z-index:-2;
  pointer-events:none;
  opacity:.34;
  background:
    radial-gradient(ellipse at 28% 50%, var(--mxsim-ambient-left), transparent 48%),
    radial-gradient(ellipse at 72% 50%, var(--mxsim-ambient-right), transparent 48%),
    radial-gradient(ellipse at 50% 50%, var(--mxsim-ambient-center), transparent 56%);
  filter:blur(70px) saturate(1.08);
  transition:
    background 700ms ease,
    opacity 700ms ease;
}

/* Em painéis verticais, o glow acompanha a verticalidade */
html[data-mxsim-aspect="portrait"] .mxsim-panel-frame::before{
  inset:-9% -18%;
  filter:blur(46px) saturate(1.15);
}

html[data-mxsim-aspect="portrait"] .mxsim-panel-stage::before{
  width:calc(var(--mxsim-safe-frame-w, 320px) * 2.1);
  height:calc(var(--mxsim-safe-frame-h, 620px) * 1.18);
}

/* Em painéis panorâmicos, o glow espalha mais para os lados */
html[data-mxsim-aspect="ultrawide"] .mxsim-panel-frame::before{
  inset:-18% -7%;
  filter:blur(46px) saturate(1.20);
}

html[data-mxsim-aspect="ultrawide"] .mxsim-panel-stage::before{
  width:calc(var(--mxsim-safe-frame-w, 1020px) * 1.22);
  height:calc(var(--mxsim-safe-frame-h, 280px) * 1.95);
}

/* Se o usuário prefere menos movimento, reduz a presença */
@media (prefers-reduced-motion: reduce){
  .mxsim-panel-frame,
  .mxsim-panel-frame::before,
  .mxsim-panel-stage::before{
    transition:none!important;
  }

  .mxsim-panel-frame::before,
  .mxsim-panel-stage::before{
    opacity:.18!important;
  }
}

/* Em mobile, mantém mais discreto para performance */
@media (max-width:760px){
  .mxsim-panel-frame{
    box-shadow:
      0 0 0 1px rgba(214,168,79,.30),
      0 0 54px rgba(214,168,79,.12),
      0 24px 72px rgba(0,0,0,.62)!important;
  }

  .mxsim-panel-frame::before,
  .mxsim-panel-stage::before{
    opacity:.18;
    filter:blur(36px);
  }
}


/* MIXTOTENS_SIMULATOR_V003C_AMBILIGHT_COLOR_FIDELITY */

/*
  V003B:
  Ambilight mais cinematográfico.
  Continua controlado, mas agora precisa ser percebido.
*/

:root{
  --mxsim-ambient-left: rgba(214,168,79,.24);
  --mxsim-ambient-center: rgba(242,210,138,.28);
  --mxsim-ambient-right: rgba(80,180,255,.22);
  --mxsim-ambient-power: .30;
}

.mxsim-panel-stage{
  isolation:isolate;
}

/* Glow principal mais presente */
.mxsim-panel-frame{
  box-shadow:
    0 0 0 1px rgba(242,210,138,.42),
    -54px 0 150px var(--mxsim-ambient-left),
    54px 0 150px var(--mxsim-ambient-right),
    0 0 190px var(--mxsim-ambient-center),
    0 0 52px rgba(242,210,138,.12),
    0 38px 130px rgba(0,0,0,.70)!important;
}

/* Aura ampla atrás do painel */
.mxsim-panel-frame::before{
  inset:-22% -18%;
  opacity:calc(.86 + (var(--mxsim-ambient-power) * 1.35));
  background:
    radial-gradient(circle at 12% 48%, var(--mxsim-ambient-left), transparent 46%),
    radial-gradient(circle at 50% 48%, var(--mxsim-ambient-center), transparent 54%),
    radial-gradient(circle at 88% 48%, var(--mxsim-ambient-right), transparent 46%);
  filter:blur(58px) saturate(1.34);
}

/* Nova camada: vazamento próximo ao painel, mais realista */
.mxsim-panel-frame::after{
  content:"";
  position:absolute;
  inset:-7% -5%;
  z-index:-1;
  pointer-events:none;
  opacity:calc(.44 + (var(--mxsim-ambient-power) * .9));
  background:
    linear-gradient(90deg,
      var(--mxsim-ambient-left) 0%,
      var(--mxsim-ambient-center) 48%,
      var(--mxsim-ambient-right) 100%);
  filter:blur(26px) saturate(1.42);
  transform:translateZ(0);
  transition:
    background 540ms ease,
    opacity 540ms ease,
    filter 540ms ease;
}

/* Bloom do palco mais visível, mas ainda sofisticado */
.mxsim-panel-stage::before{
  opacity:.52;
  filter:blur(86px) saturate(1.22);
  background:
    radial-gradient(ellipse at 24% 50%, var(--mxsim-ambient-left), transparent 52%),
    radial-gradient(ellipse at 76% 50%, var(--mxsim-ambient-right), transparent 52%),
    radial-gradient(ellipse at 50% 50%, var(--mxsim-ambient-center), transparent 62%);
}

/* Um reflexo baixo muito suave, tipo luz vazando no ambiente */
.mxsim-panel-stage::after{
  content:"";
  position:absolute;
  left:50%;
  top:calc(50% + (var(--mxsim-safe-frame-h, 360px) * .58));
  width:calc(var(--mxsim-safe-frame-w, 720px) * 1.05);
  height:80px;
  transform:translateX(-50%);
  z-index:-2;
  pointer-events:none;
  opacity:.20;
  background:
    radial-gradient(ellipse at 50% 50%, var(--mxsim-ambient-center), transparent 68%);
  filter:blur(34px) saturate(1.25);
  transition:background 620ms ease, opacity 620ms ease;
}

/* Vertical: brilho mais alto e menos largo */
html[data-mxsim-aspect="portrait"] .mxsim-panel-frame::before{
  inset:-14% -26%;
  filter:blur(62px) saturate(1.28);
}

html[data-mxsim-aspect="portrait"] .mxsim-panel-frame::after{
  inset:-5% -13%;
  filter:blur(28px) saturate(1.34);
}

html[data-mxsim-aspect="portrait"] .mxsim-panel-stage::after{
  width:calc(var(--mxsim-safe-frame-w, 320px) * 1.7);
}

/* Panorâmico: brilho mais lateral */
html[data-mxsim-aspect="ultrawide"] .mxsim-panel-frame::before{
  inset:-24% -10%;
  filter:blur(62px) saturate(1.38);
}

html[data-mxsim-aspect="ultrawide"] .mxsim-panel-frame::after{
  inset:-8% -4%;
}

/* Em tela pequena, segura o efeito */
@media (max-width:760px){
  .mxsim-panel-frame::before{
    opacity:.32;
    filter:blur(42px);
  }

  .mxsim-panel-frame::after{
    opacity:.22;
    filter:blur(22px);
  }

  .mxsim-panel-stage::before,
  .mxsim-panel-stage::after{
    opacity:.18;
  }
}

@media (prefers-reduced-motion: reduce){
  .mxsim-panel-frame::before,
  .mxsim-panel-frame::after,
  .mxsim-panel-stage::before,
  .mxsim-panel-stage::after{
    opacity:.20!important;
    transition:none!important;
  }
}


/* MIXTOTENS_SIMULATOR_V003C_AMBILIGHT_COLOR_FIDELITY */

/*
  V003C:
  - Menos halo cinza.
  - Mais cor real do conteúdo.
  - Ambilight mais parecido com LED emitindo luz.
*/

.mxsim-panel-frame{
  box-shadow:
    0 0 0 1px rgba(242,210,138,.40),
    -62px 0 165px var(--mxsim-ambient-left),
    62px 0 165px var(--mxsim-ambient-right),
    0 0 160px var(--mxsim-ambient-center),
    0 0 46px rgba(242,210,138,.10),
    0 38px 130px rgba(0,0,0,.70)!important;
}

/* Aura mais colorida e menos leitosa */
.mxsim-panel-frame::before{
  inset:-20% -16%;
  opacity:calc(.78 + (var(--mxsim-ambient-power) * 1.18));
  filter:blur(54px) saturate(1.55) contrast(1.08);
  mix-blend-mode:screen;
}

/* Vazamento próximo ao painel com mais cor e menos cinza */
.mxsim-panel-frame::after{
  opacity:calc(.40 + (var(--mxsim-ambient-power) * .78));
  filter:blur(24px) saturate(1.68) contrast(1.08);
  mix-blend-mode:screen;
}

/* Bloom geral controlado para não virar nuvem cinza */
.mxsim-panel-stage::before{
  opacity:.44;
  filter:blur(82px) saturate(1.45) contrast(1.04);
  mix-blend-mode:screen;
}

/* Reflexo inferior um pouco mais discreto */
.mxsim-panel-stage::after{
  opacity:.15;
  filter:blur(32px) saturate(1.35);
}

/* Painel pequeno precisa ter presença, mas sem mancha exagerada */
html[data-mxsim-size="normal"] .mxsim-panel-frame::before{
  inset:-24% -20%;
  opacity:calc(.84 + (var(--mxsim-ambient-power) * 1.15));
}

html[data-mxsim-size="normal"] .mxsim-panel-stage::before{
  opacity:.50;
}

/* Grande formato: glow mais largo e menos intenso */
html[data-mxsim-size="large"] .mxsim-panel-stage::before,
html[data-mxsim-size="mega"] .mxsim-panel-stage::before{
  opacity:.36;
}

/* Mantém a UI limpa */
.mxsim-top-metrics,
.mxsim-control-dock,
.mxsim-pitch-gauge,
.mxsim-logo,
.mxsim-exit,
.mxsim-fullscreen{
  isolation:isolate;
}


/* MIXTOTENS_SIMULATOR_V004A3_HIDE_TOP_EQUIPMENT_CARD_ONLY */

/*
  Alteração cirúrgica:
  - Oculta apenas o card Equipamento do topo.
  - Não mexe no palco, vídeo, ambilight ou JS.
*/

.mxsim-top-metrics article[data-mxsim-hide-equipment-price="true"]{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}

.mxsim-top-metrics{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
}

@media (max-width:1120px){
  .mxsim-top-metrics{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}


/* MIXTOTENS_SIMULATOR_V004A4_EQUIPMENT_AS_GENERATE_PROPOSAL */

/*
  Correção cirúrgica:
  - Restaura o card Medida final.
  - Mantém o card Equipamento.
  - Troca somente o valor R$ por "Gerar proposta".
  - Não mexe no LED, ambilight, JS ou palco.
*/

.mxsim-top-metrics{
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
}

.mxsim-top-metrics article[data-mxsim-equipment-proposal="true"]{
  display:block!important;
  visibility:visible!important;
  pointer-events:auto!important;
}

/* Esconde visualmente o valor calculado, mas mantém o card */
.mxsim-top-metrics article[data-mxsim-equipment-proposal="true"] b{
  font-size:0!important;
  color:transparent!important;
  line-height:1!important;
}

.mxsim-top-metrics article[data-mxsim-equipment-proposal="true"] b::after{
  content:"Gerar proposta";
  display:inline-block;
  font-size:15px;
  line-height:1.15;
  font-weight:950;
  letter-spacing:-.01em;
  color:#fff8e8;
  white-space:nowrap;
}

/* Caso o valor esteja em strong em alguma variação */
.mxsim-top-metrics article[data-mxsim-equipment-proposal="true"] strong{
  font-size:0!important;
  color:transparent!important;
}

.mxsim-top-metrics article[data-mxsim-equipment-proposal="true"] strong::after{
  content:"Gerar proposta";
  display:inline-block;
  font-size:15px;
  line-height:1.15;
  font-weight:950;
  color:#fff8e8;
  white-space:nowrap;
}

@media (max-width:1120px){
  .mxsim-top-metrics{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}


/* MIXTOTENS_SIMULATOR_V004A5B_PITCH_DROPDOWN_DARK_ONLY */

/*
  Correção cirúrgica:
  - Apenas aparência do select/dropdown Pitch.
  - Não mexe no LED.
  - Não mexe no ambilight.
  - Não mexe no modal.
  - Não mexe no JS.
*/

.pitch-field select,
.pitch-field select:focus,
.pitch-field select:active,
#inputPitch,
#inputPitch:focus,
#inputPitch:active,
select[name*="pitch" i],
select[id*="pitch" i]{
  background:#050505!important;
  color:#fff8e8!important;
  border:1px solid rgba(214,168,79,.34)!important;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.025),
    0 0 0 0 rgba(214,168,79,0)!important;
  color-scheme:dark!important;
}

/* Estiliza as opções quando o navegador permite */
.pitch-field select option,
#inputPitch option,
select[name*="pitch" i] option,
select[id*="pitch" i] option{
  background:#050505!important;
  color:#fff8e8!important;
}

/* Hover/checked em browsers que respeitam */
.pitch-field select option:checked,
#inputPitch option:checked{
  background:#241a08!important;
  color:#f2d28a!important;
}

/* Remove branco nativo em alguns WebKit/Chromium */
.pitch-field select:-webkit-autofill,
#inputPitch:-webkit-autofill{
  -webkit-text-fill-color:#fff8e8!important;
  transition:background-color 9999s ease-in-out 0s!important;
}


/* MIXTOTENS_SIMULATOR_V004A5D_PROPOSAL_V2_MODAL */

/*
  Novo modal premium da proposta.
  Escopo isolado: mxsim-proposal-v2.
  Não interfere no LED, ambilight, controles ou dropdowns.
*/

.mxsim-proposal-v2-backdrop{
  position:fixed;
  inset:0;
  z-index:99998;
  display:grid;
  place-items:center;
  padding:28px;
  background:
    radial-gradient(circle at 38% 44%, rgba(214,168,79,.16), transparent 38%),
    rgba(0,0,0,.72);
  backdrop-filter:blur(10px);
}

.mxsim-proposal-v2-backdrop[hidden]{
  display:none!important;
}

.mxsim-proposal-v2{
  position:relative;
  width:min(760px, calc(100vw - 36px));
  max-height:min(88vh, 820px);
  overflow:auto;
  padding:34px;
  border:1px solid rgba(214,168,79,.34);
  background:
    radial-gradient(circle at 18% 0%, rgba(214,168,79,.15), transparent 36%),
    linear-gradient(180deg, rgba(19,15,9,.98), rgba(3,3,3,.98));
  box-shadow:
    0 42px 140px rgba(0,0,0,.82),
    inset 0 1px 0 rgba(255,255,255,.04);
}

.mxsim-proposal-v2-close{
  position:absolute;
  top:18px;
  right:18px;
  width:42px;
  height:42px;
  border:1px solid rgba(214,168,79,.42);
  background:rgba(0,0,0,.42);
  color:#fff8e8;
  font-size:30px;
  line-height:1;
  cursor:pointer;
}

.mxsim-proposal-v2-kicker{
  margin-bottom:12px;
  color:#f2d28a;
  font-size:12px;
  font-weight:900;
  letter-spacing:.22em;
}

.mxsim-proposal-v2 h2{
  max-width:560px;
  margin:0;
  color:#fff8e8;
  font-size:clamp(30px,4.4vw,52px);
  line-height:.96;
  letter-spacing:-.045em;
}

.mxsim-proposal-v2-lead{
  max-width:620px;
  margin:18px 0 18px;
  color:rgba(255,255,255,.72);
  font-size:15px;
  line-height:1.55;
}

.mxsim-proposal-v2-note{
  margin:18px 0 22px;
  padding:14px 16px;
  border:1px solid rgba(214,168,79,.28);
  background:rgba(214,168,79,.075);
  color:rgba(255,248,232,.86);
  font-size:13px;
  line-height:1.5;
}

.mxsim-proposal-v2-summary{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin:0 0 24px;
}

.mxsim-proposal-v2-summary div{
  padding:13px 14px;
  border:1px solid rgba(214,168,79,.22);
  background:rgba(0,0,0,.42);
}

.mxsim-proposal-v2-summary span{
  display:block;
  margin-bottom:6px;
  color:rgba(242,210,138,.76);
  font-size:10px;
  font-weight:900;
  letter-spacing:.16em;
  text-transform:uppercase;
}

.mxsim-proposal-v2-summary strong{
  display:block;
  color:#fff8e8;
  font-size:15px;
  font-weight:900;
  line-height:1.15;
}

.mxsim-proposal-v2-form{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}

.mxsim-proposal-v2-form label{
  display:block;
}

.mxsim-proposal-v2-form label span{
  display:block;
  margin:0 0 8px;
  color:rgba(242,210,138,.78);
  font-size:10px;
  font-weight:900;
  letter-spacing:.16em;
  text-transform:uppercase;
}

.mxsim-proposal-v2-form input,
.mxsim-proposal-v2-form textarea{
  width:100%;
  box-sizing:border-box;
  border:1px solid rgba(255,255,255,.13);
  background:rgba(0,0,0,.54);
  color:#fff8e8;
  outline:none;
  font:inherit;
  border-radius:0;
}

.mxsim-proposal-v2-form input{
  min-height:48px;
  padding:0 14px;
}

.mxsim-proposal-v2-form textarea{
  padding:13px 14px;
  resize:vertical;
  min-height:98px;
  line-height:1.45;
}

.mxsim-proposal-v2-form input::placeholder,
.mxsim-proposal-v2-form textarea::placeholder{
  color:rgba(255,255,255,.42);
}

.mxsim-proposal-v2-form input:focus,
.mxsim-proposal-v2-form textarea:focus{
  border-color:rgba(242,210,138,.54);
  box-shadow:0 0 0 3px rgba(214,168,79,.10);
}

.mxsim-proposal-v2-wide{
  grid-column:1 / -1;
}

.mxsim-proposal-v2-submit{
  grid-column:1 / -1;
  min-height:54px;
  border:0;
  background:linear-gradient(135deg,#f6d986,#c9982e);
  color:#090806;
  font-weight:950;
  cursor:pointer;
}

.mxsim-proposal-v2-foot{
  grid-column:1 / -1;
  margin:0;
  color:rgba(255,255,255,.58);
  font-size:12px;
  line-height:1.45;
}

.mxsim-proposal-v2-status{
  grid-column:1 / -1;
  padding:12px 14px;
  border:1px solid rgba(214,168,79,.30);
  background:rgba(214,168,79,.08);
  color:#fff8e8;
  font-size:13px;
  line-height:1.45;
}

@media (max-width:760px){
  .mxsim-proposal-v2-backdrop{
    padding:0;
    place-items:stretch;
  }

  .mxsim-proposal-v2{
    width:100vw;
    max-height:100vh;
    padding:28px 20px 34px;
    border-left:0;
    border-right:0;
  }

  .mxsim-proposal-v2-summary,
  .mxsim-proposal-v2-form{
    grid-template-columns:1fr;
  }
}


/* MIXTOTENS_SIMULATOR_V004A5E_PROPOSAL_V2_COMPACT_REFINEMENT */

/*
  Refinamento visual do novo pop-up.
  Apenas CSS.
  Não mexe em LED, ambilight, cálculo, pitch ou JS.
*/

.mxsim-proposal-v2-backdrop{
  padding:22px!important;
  align-items:center!important;
}

.mxsim-proposal-v2{
  width:min(820px, calc(100vw - 44px))!important;
  max-height:calc(100vh - 44px)!important;
  padding:30px 34px 28px!important;
  overflow:auto!important;
}

.mxsim-proposal-v2-close{
  top:18px!important;
  right:18px!important;
  width:40px!important;
  height:40px!important;
  font-size:28px!important;
}

.mxsim-proposal-v2-kicker{
  margin-bottom:10px!important;
  font-size:11px!important;
  letter-spacing:.22em!important;
}

.mxsim-proposal-v2 h2{
  max-width:620px!important;
  font-size:clamp(34px, 4vw, 48px)!important;
  line-height:.96!important;
  letter-spacing:-.045em!important;
}

.mxsim-proposal-v2-lead{
  max-width:680px!important;
  margin:16px 0 16px!important;
  font-size:14px!important;
  line-height:1.48!important;
}

.mxsim-proposal-v2-note{
  margin:14px 0 18px!important;
  padding:13px 16px!important;
  font-size:12.5px!important;
  line-height:1.45!important;
}

.mxsim-proposal-v2-summary{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:10px!important;
  margin-bottom:20px!important;
}

.mxsim-proposal-v2-summary div{
  padding:12px 14px!important;
}

.mxsim-proposal-v2-summary span{
  margin-bottom:6px!important;
  font-size:9.5px!important;
}

.mxsim-proposal-v2-summary strong{
  font-size:14.5px!important;
}

.mxsim-proposal-v2-form{
  gap:12px 14px!important;
}

.mxsim-proposal-v2-form label span{
  margin-bottom:7px!important;
  font-size:9.5px!important;
}

.mxsim-proposal-v2-form input{
  min-height:46px!important;
  padding:0 14px!important;
}

.mxsim-proposal-v2-form textarea{
  min-height:82px!important;
  max-height:130px!important;
  padding:12px 14px!important;
}

.mxsim-proposal-v2-submit{
  min-height:52px!important;
  margin-top:2px!important;
}

.mxsim-proposal-v2-foot{
  font-size:11.5px!important;
  line-height:1.42!important;
}

/* Scrollbar mais premium, menos chamativa */
.mxsim-proposal-v2{
  scrollbar-width:thin;
  scrollbar-color:rgba(242,210,138,.55) rgba(255,255,255,.06);
}

.mxsim-proposal-v2::-webkit-scrollbar{
  width:8px;
}

.mxsim-proposal-v2::-webkit-scrollbar-track{
  background:rgba(255,255,255,.05);
}

.mxsim-proposal-v2::-webkit-scrollbar-thumb{
  background:rgba(242,210,138,.48);
  border-radius:999px;
}

/* Mobile mantém formulário legível */
@media (max-width:760px){
  .mxsim-proposal-v2-backdrop{
    padding:0!important;
  }

  .mxsim-proposal-v2{
    width:100vw!important;
    max-height:100vh!important;
    padding:26px 20px 32px!important;
  }

  .mxsim-proposal-v2 h2{
    font-size:36px!important;
  }

  .mxsim-proposal-v2-summary,
  .mxsim-proposal-v2-form{
    grid-template-columns:1fr!important;
  }
}


/* MIXTOTENS_SIMULATOR_V004A5F_PROPOSAL_MODAL_NO_SCROLL_DESKTOP */

/*
  Refinamento final do modal:
  - Mais compacto no desktop.
  - Menos rolagem interna.
  - Mantém visual premium.
  - Apenas CSS.
*/

@media (min-width:761px){
  .mxsim-proposal-v2-backdrop{
    padding:18px!important;
  }

  .mxsim-proposal-v2{
    width:min(860px, calc(100vw - 48px))!important;
    max-height:calc(100vh - 36px)!important;
    padding:26px 34px 24px!important;
  }

  .mxsim-proposal-v2-kicker{
    margin-bottom:8px!important;
  }

  .mxsim-proposal-v2 h2{
    max-width:660px!important;
    font-size:clamp(34px, 3.4vw, 46px)!important;
    line-height:.95!important;
  }

  .mxsim-proposal-v2-lead{
    margin:14px 0 14px!important;
    font-size:13.5px!important;
    line-height:1.42!important;
  }

  .mxsim-proposal-v2-note{
    margin:12px 0 16px!important;
    padding:12px 15px!important;
    font-size:12px!important;
    line-height:1.4!important;
  }

  .mxsim-proposal-v2-summary{
    gap:10px!important;
    margin-bottom:16px!important;
  }

  .mxsim-proposal-v2-summary div{
    padding:11px 13px!important;
  }

  .mxsim-proposal-v2-form{
    gap:10px 14px!important;
  }

  .mxsim-proposal-v2-form input{
    min-height:42px!important;
  }

  .mxsim-proposal-v2-form textarea{
    min-height:72px!important;
    max-height:96px!important;
  }

  .mxsim-proposal-v2-submit{
    min-height:50px!important;
  }

  .mxsim-proposal-v2-foot{
    display:none!important;
  }
}
