
/* MUSICBOXFRANK LAB V3.4 — AUDIO SCANNER */

.frank-scanner-panel{
  width:min(1240px,calc(100% - 34px));
  margin:0 auto 28px;
  padding:22px 24px;
  display:grid;
  grid-template-columns:1fr auto;
  gap:22px;
  align-items:center;
  border:1px solid rgba(157,134,255,.16);
  border-radius:22px;
  background:
    radial-gradient(circle at 100% 0%,rgba(157,134,255,.09),transparent 38%),
    rgba(7,10,14,.92);
}

.frank-scanner-panel small{
  display:block;
  margin-bottom:7px;
  color:#68727e;
  font-size:7px;
  letter-spacing:.2em;
}

.frank-scanner-panel strong{
  font-family:Georgia,serif;
  font-size:24px;
  font-weight:500;
}

.frank-scanner-panel strong span{
  color:#9d86ff;
}

.frank-scanner-panel p{
  max-width:700px;
  color:#747f8a;
  font-size:9px;
  line-height:1.7;
}

#frankScanAll{
  padding:12px 17px;
  color:#b8aaff;
  border-color:rgba(157,134,255,.32);
  background:rgba(157,134,255,.06);
}

#frankScanAll.running{
  opacity:.5;
  pointer-events:none;
}

.frank-track-scan-button{
  width:auto !important;
  padding:0 9px !important;
  border-radius:999px !important;
  color:#ae9dff !important;
  font-size:7px !important;
}

.frank-track-scan-button.running{
  opacity:.45;
  pointer-events:none;
}

.frank-scan-result{
  grid-column:1/-1;
  display:grid;
  grid-template-columns:repeat(6,minmax(70px,1fr));
  gap:6px;
  padding-top:10px;
  border-top:1px solid rgba(255,255,255,.045);
}

.frank-scan-metric{
  padding:8px;
  border:1px solid rgba(255,255,255,.045);
  border-radius:10px;
  background:rgba(255,255,255,.018);
}

.frank-scan-metric span{
  display:block;
  color:#59636f;
  font-size:5px;
  letter-spacing:.12em;
}

.frank-scan-metric b{
  display:block;
  margin-top:4px;
  color:#b3bac2;
  font:500 9px monospace;
}

.frank-scan-zone b{
  color:#d5bb7c;
}

.frank-scan-pending{
  grid-column:1/-1;
  color:#626d78;
  font-size:7px;
  letter-spacing:.1em;
}

.frank-scanner-note{
  width:min(1240px,calc(100% - 34px));
  margin:0 auto 70px;
  padding:18px 20px;
  border-left:2px solid rgba(157,134,255,.34);
  background:rgba(157,134,255,.025);
  color:#707a85;
  font-size:8px;
  line-height:1.8;
}

@media(max-width:850px){
  .frank-scan-result{
    grid-template-columns:repeat(3,1fr);
  }
}

@media(max-width:620px){
  .frank-scanner-panel{
    grid-template-columns:1fr;
  }

  .frank-scan-result{
    grid-template-columns:repeat(2,1fr);
  }
}

/* ==========================================================
   MUSICBOXFRANK LAB v3.4
   SCANNER VISIBILITY FIX
   ========================================================== */

#frankScannerPanel {
  display: grid !important;
  visibility: visible !important;
  opacity: 1 !important;

  position: relative !important;
  z-index: 20 !important;

  width: min(1180px, calc(100% - 32px)) !important;
  min-height: 180px !important;

  margin: 42px auto 24px !important;
  padding: 28px !important;

  overflow: visible !important;

  grid-template-columns: 1fr auto !important;
  align-items: center !important;
  gap: 28px !important;

  border: 1px solid rgba(207, 181, 124, .30) !important;
  border-radius: 24px !important;

  background:
    radial-gradient(
      circle at 90% 20%,
      rgba(90, 225, 255, .10),
      transparent 35%
    ),
    linear-gradient(
      135deg,
      rgba(18, 20, 25, .98),
      rgba(8, 10, 14, .98)
    ) !important;

  box-shadow:
    0 24px 80px rgba(0, 0, 0, .45),
    inset 0 1px 0 rgba(255, 255, 255, .05) !important;
}

#frankScannerPanel small {
  display: block !important;
  margin-bottom: 10px !important;

  font-size: 11px !important;
  letter-spacing: .18em !important;

  color: rgba(214, 195, 150, .75) !important;
}

#frankScannerPanel strong {
  display: block !important;

  font-size: clamp(24px, 3vw, 42px) !important;
  letter-spacing: .04em !important;

  color: #f2eee5 !important;
}

#frankScannerPanel strong span {
  color: #8cecff !important;
}

#frankScannerPanel p {
  display: block !important;

  max-width: 720px !important;
  margin: 14px 0 0 !important;

  line-height: 1.7 !important;
  color: rgba(242, 238, 229, .68) !important;
}

#frankScanAll {
  display: inline-flex !important;
  visibility: visible !important;
  opacity: 1 !important;

  align-items: center !important;
  justify-content: center !important;

  min-width: 190px !important;
  min-height: 52px !important;

  padding: 0 22px !important;

  border: 1px solid rgba(140, 236, 255, .45) !important;
  border-radius: 14px !important;

  background: rgba(140, 236, 255, .08) !important;
  color: #bff5ff !important;

  font-weight: 700 !important;
  letter-spacing: .08em !important;

  cursor: pointer !important;
}

#frankScanAll:hover {
  transform: translateY(-2px) !important;

  background: rgba(140, 236, 255, .14) !important;

  box-shadow:
    0 0 30px rgba(140, 236, 255, .12) !important;
}

#frankScannerNote {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;

  width: min(1180px, calc(100% - 32px)) !important;

  margin: 0 auto 32px !important;
  padding: 14px 20px !important;

  border-left: 2px solid rgba(207, 181, 124, .55) !important;

  color: rgba(242, 238, 229, .55) !important;
  font-size: 11px !important;
  line-height: 1.6 !important;
}

.frank-track-scan-button {
  display: inline-flex !important;
  visibility: visible !important;
  opacity: 1 !important;

  align-items: center !important;
  justify-content: center !important;

  min-height: 38px !important;
  padding: 0 16px !important;

  border: 1px solid rgba(140, 236, 255, .35) !important;
  border-radius: 10px !important;

  background: rgba(140, 236, 255, .07) !important;
  color: #bff5ff !important;

  cursor: pointer !important;
}

.frank-scan-result {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

@media (max-width: 760px) {
  #frankScannerPanel {
    grid-template-columns: 1fr !important;
  }

  #frankScanAll {
    width: 100% !important;
  }
}

