/* V12.5.27 — STUDIO REAL PILOT
   Visual-only pilot. Strong override loaded last. No API/business/database changes. */
:root{
  --studio-bg:#f6f7f9;
  --studio-surface:#ffffff;
  --studio-line:#e5e7eb;
  --studio-line-2:#eef0f3;
  --studio-text:#171a21;
  --studio-muted:#667085;
  --studio-red:#df2b24;
  --studio-red-soft:#fff1f0;
  --studio-shadow:0 1px 2px rgba(16,24,40,.04),0 4px 14px rgba(16,24,40,.035);
  --studio-radius:12px;
  --studio-sidebar:248px;
}
html,body{background:var(--studio-bg)!important;color:var(--studio-text)!important;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif!important}
body{letter-spacing:-.006em}

/* shell */
#appView.app{background:var(--studio-bg)!important;display:block!important;min-height:100vh!important}
#appView.app>.sidebar{
  width:var(--studio-sidebar)!important;min-width:var(--studio-sidebar)!important;max-width:var(--studio-sidebar)!important;
  background:#fff!important;border-right:1px solid var(--studio-line)!important;padding:0 14px 18px!important;
  box-shadow:none!important;
}
#appView.app>.main{margin-left:var(--studio-sidebar)!important;background:var(--studio-bg)!important;min-height:100vh!important}
#appView.app>.main>#content.content{max-width:1540px!important;width:calc(100% - 56px)!important;margin:0 auto!important;padding:28px 0 44px!important}
.sidebar-head{
  height:86px!important;min-height:86px!important;margin:0 -14px 14px!important;padding:0 22px!important;
  background:#fff!important;border-bottom:1px solid var(--studio-line)!important;border-radius:0!important;
  display:flex!important;justify-content:center!important;
}
.sidebar-head img{filter:none!important;max-width:178px!important;max-height:48px!important;object-fit:contain!important}
.nav{display:flex!important;flex-direction:column!important;gap:4px!important;padding-top:4px!important}
.nav button,.nav .nav-direct,.nav .nav-group-toggle,.nav .nav-subitem{
  min-height:42px!important;border-radius:9px!important;border:0!important;background:transparent!important;color:#344054!important;
  font-size:14px!important;font-weight:560!important;padding:0 11px!important;box-shadow:none!important;transition:background .12s ease,color .12s ease!important;
}
.nav button:hover,.nav .nav-direct:hover,.nav .nav-group-toggle:hover,.nav .nav-subitem:hover{background:#f7f7f8!important;color:#111827!important}
.nav .active,.nav button.active,.nav .nav-direct.active,.nav .nav-subitem.active{background:var(--studio-red-soft)!important;color:#c92720!important;font-weight:650!important}
.nav .nav-subitem{min-height:36px!important;margin-left:28px!important;width:calc(100% - 28px)!important;font-size:13px!important}
.sidebar .nav-icon,.nav-icon{background:#f4f5f7!important;color:#475467!important;border:0!important;border-radius:8px!important}
.nav .active .nav-icon,.nav button.active .nav-icon{background:#fff!important;color:var(--studio-red)!important;box-shadow:0 0 0 1px #f7c5c1 inset!important}
.sidebar-foot,.amica-sidebar-footer{display:block!important;border-top:1px solid var(--studio-line)!important;background:#fff!important}

/* page head */
.v4-page-head,.dashboard-head{margin:0 0 18px!important;padding:0!important;min-height:auto!important;align-items:flex-start!important}
.v4-page-head h1,.dashboard-head h1,#content h1{font-size:25px!important;line-height:1.2!important;font-weight:720!important;letter-spacing:-.025em!important;color:#111827!important;margin:0!important}
.v4-page-head p,.dashboard-head p{color:var(--studio-muted)!important;font-size:13.5px!important;margin:6px 0 0!important;line-height:1.45!important}
.v460-page-meta{gap:7px!important;margin-top:10px!important}
.v460-pill{background:#fff!important;border:1px solid var(--studio-line)!important;color:#475467!important;border-radius:999px!important;padding:5px 9px!important;font-size:12px!important;box-shadow:none!important}
.v460-pill.pending{background:#fff5f4!important;color:#b42318!important;border-color:#ffd5d1!important}

/* controls */
.btn,button.btn{border-radius:9px!important;min-height:38px!important;padding:0 14px!important;font-weight:620!important;font-size:13px!important;box-shadow:none!important}
.btn.primary{background:var(--studio-red)!important;border-color:var(--studio-red)!important}
.btn.secondary{background:#fff!important;border:1px solid #d9dde4!important;color:#344054!important}
input,select,textarea,.field input,.field select,.field textarea,.v4-field input,.v4-field select{
  border:1px solid #d8dde5!important;border-radius:9px!important;background:#fff!important;box-shadow:none!important;font-size:14px!important;
}
input:focus,select:focus,textarea:focus{border-color:#98a2b3!important;box-shadow:0 0 0 3px rgba(16,24,40,.045)!important;outline:none!important}
label,.field label,.v4-field label{color:#475467!important;font-size:12px!important;font-weight:650!important;letter-spacing:.01em!important}

/* surfaces */
.card,.panel,.client-panel,.dashboard-kpi,.v4-kpi,.model-section,.machine-summary,.settings-card,.admin-card,.table-wrap,.v4-table-wrap{
  background:#fff!important;border:1px solid var(--studio-line)!important;border-radius:var(--studio-radius)!important;box-shadow:var(--studio-shadow)!important;
}
.card,.panel,.model-section{overflow:hidden}

/* dashboard: markedly different */
.dashboard-kpis,.maintenance-summary{gap:14px!important;margin-bottom:18px!important}
.dashboard-kpi,.v4-kpi{min-height:112px!important;height:auto!important;padding:18px!important;position:relative!important;overflow:hidden!important}
.dashboard-kpi:before,.v4-kpi:before{display:none!important}
.dashboard-kpi-top{font-size:12px!important;text-transform:none!important;letter-spacing:0!important;color:#667085!important;font-weight:620!important}
.dashboard-kpi-value,.dashboard-kpi b,.v4-kpi b{font-size:29px!important;font-weight:720!important;color:#101828!important;margin-top:12px!important}
.dashboard-kpi-icon,.v4-kpi-icon{width:38px!important;height:38px!important;border-radius:10px!important;background:#fafafa!important;color:#d92d20!important;border:1px solid #eee!important}

/* installed park: deliberate Studio table */
.installed-filter-grid{background:#fff!important;padding:16px!important;gap:12px!important;border-bottom:1px solid var(--studio-line)!important}
.installed-filter-grid input,.installed-filter-grid select{height:40px!important;min-height:40px!important}
.v4-table-wrap{overflow:hidden!important}
.v4-table,.installed-equipment-table{border-collapse:separate!important;border-spacing:0!important;width:100%!important;background:#fff!important}
.v4-table th,.installed-equipment-table th{
  height:42px!important;padding:0 14px!important;background:#f9fafb!important;color:#667085!important;border-bottom:1px solid var(--studio-line)!important;
  text-transform:uppercase!important;letter-spacing:.045em!important;font-size:10.5px!important;font-weight:700!important;text-align:left!important;
}
.v4-table td,.installed-equipment-table td{padding:13px 14px!important;border-bottom:1px solid var(--studio-line-2)!important;font-size:13px!important;vertical-align:middle!important;color:#344054!important}
.v4-table tbody tr:last-child td,.installed-equipment-table tbody tr:last-child td{border-bottom:0!important}
.installed-equipment-table tbody tr.machine-pending-row td{background:#fff!important}
.installed-equipment-table tbody tr.machine-pending-row td:first-child{box-shadow:3px 0 0 #f04438 inset!important}
.installed-equipment-table tbody tr:hover td{background:#fcfcfd!important}
.machine-pending-badge,.machine-pending-reason,.machine-complete-badge,.status{border-radius:999px!important;box-shadow:none!important}

/* model list */
.model-config-table table,.v4-table{table-layout:auto!important}
#content .v4-table td b{font-weight:650!important;color:#1d2939!important}

/* mobile system */
@media(max-width:900px){
  :root{--studio-sidebar:0px}
  #appView.app>.sidebar{position:relative!important;width:100%!important;min-width:0!important;max-width:none!important;height:auto!important;display:none!important}
  #appView.app>.main{margin-left:0!important;width:100%!important}
  #appView.app>.main>#content.content{width:calc(100% - 28px)!important;padding:18px 0 32px!important}
  .v4-page-head,.dashboard-head{gap:10px!important}
  .v4-page-head.actions{display:flex!important;flex-direction:column!important;align-items:stretch!important}
  .v4-page-head.actions>.btn{width:100%!important}
  .v4-page-head h1,.dashboard-head h1,#content h1{font-size:24px!important}
  .dashboard-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  .dashboard-kpi,.v4-kpi{min-height:106px!important;padding:15px!important}
  .installed-filter-grid{grid-template-columns:1fr!important;padding:14px!important}
  .installed-filter-grid .filter-search,.installed-filter-grid .filter-client,.installed-filter-actions{grid-column:1!important}

  /* Parque Instalado becomes real mobile cards */
  .installed-equipment-table{display:block!important;min-width:0!important;width:100%!important}
  .installed-equipment-table thead{display:none!important}
  .installed-equipment-table tbody{display:block!important;padding:10px!important;background:#f7f8fa!important}
  .installed-equipment-table tbody tr{display:grid!important;grid-template-columns:1fr 1fr!important;gap:0!important;margin:0 0 10px!important;background:#fff!important;border:1px solid var(--studio-line)!important;border-radius:12px!important;overflow:hidden!important;box-shadow:0 1px 2px rgba(16,24,40,.03)!important}
  .installed-equipment-table tbody tr.machine-pending-row{border-left:3px solid #f04438!important}
  .installed-equipment-table tbody tr td{display:block!important;width:auto!important;min-width:0!important;border:0!important;padding:9px 12px!important;background:#fff!important;box-shadow:none!important;font-size:13px!important;overflow-wrap:anywhere!important}
  .installed-equipment-table tbody tr td:before{display:block!important;color:#98a2b3!important;font-size:9.5px!important;font-weight:700!important;text-transform:uppercase!important;letter-spacing:.06em!important;margin-bottom:3px!important}
  .installed-equipment-table tbody tr td:nth-child(1){grid-column:1/-1!important;padding-top:12px!important;border-bottom:1px solid #f0f1f3!important}.installed-equipment-table tbody tr td:nth-child(1):before{content:"Cliente"}
  .installed-equipment-table tbody tr td:nth-child(2):before{content:"Cidade"}
  .installed-equipment-table tbody tr td:nth-child(3):before{content:"UF"}
  .installed-equipment-table tbody tr td:nth-child(4){grid-column:1/-1!important;background:#fcfcfd!important;border-top:1px solid #f0f1f3!important;border-bottom:1px solid #f0f1f3!important}.installed-equipment-table tbody tr td:nth-child(4):before{content:"Equipamento"}
  .installed-equipment-table tbody tr td:nth-child(5):before{content:"Serial"}
  .installed-equipment-table tbody tr td:nth-child(6):before{content:"Origem / NF"}
  .installed-equipment-table tbody tr td:nth-child(7):before{content:"Garantia"}
  .installed-equipment-table tbody tr td:nth-child(8){grid-column:1/-1!important}.installed-equipment-table tbody tr td:nth-child(8):before{content:"Completude"}
  .installed-equipment-table tbody tr td:nth-child(9){grid-column:1/-1!important;padding:0 12px 12px!important}.installed-equipment-table tbody tr td:nth-child(9):before{display:none!important}
  .installed-equipment-table tbody tr td:nth-child(9) .btn{width:100%!important}
  .machine-pending-reasons{display:flex!important;gap:5px!important;flex-wrap:wrap!important}
  .v4-table-wrap:has(.installed-equipment-table){overflow:visible!important;border:0!important;box-shadow:none!important;background:transparent!important}

  /* generic wide tables remain contained, not page overflow */
  .v4-table-wrap:not(:has(.installed-equipment-table)),.table-wrap{max-width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important}
}
@media(max-width:560px){
  #appView.app>.main>#content.content{width:calc(100% - 20px)!important}
  .dashboard-kpis{grid-template-columns:1fr 1fr!important}
  .dashboard-kpi,.v4-kpi{min-height:96px!important;padding:13px!important}
  .dashboard-kpi-value,.dashboard-kpi b,.v4-kpi b{font-size:25px!important}
  .installed-equipment-table tbody tr{grid-template-columns:1fr 1fr!important}
}
