/* Correções globais de tema e responsividade — V2 */
html[data-theme="dark"]{color-scheme:dark}
html[data-theme="light"]{color-scheme:light}

/* Todos os controles, inclusive os criados dinamicamente por JS */
input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),
select,
textarea{
  background:var(--input)!important;
  color:var(--text)!important;
  border:1px solid var(--line)!important;
  border-radius:10px;
  outline:none;
}
input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):focus,
select:focus,
textarea:focus{
  border-color:color-mix(in srgb,var(--accent) 70%,var(--line))!important;
  box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 12%,transparent);
}
input::placeholder,textarea::placeholder{color:var(--muted)!important;opacity:.82}
select option{background:var(--panel);color:var(--text)}
input:disabled,select:disabled,textarea:disabled{
  background:var(--panel2)!important;
  color:var(--muted)!important;
  opacity:.72;
}
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus{
  -webkit-text-fill-color:var(--text)!important;
  -webkit-box-shadow:0 0 0 1000px var(--input) inset!important;
  caret-color:var(--text)!important;
  transition:background-color 9999s ease-out 0s;
}
input[type="date"]::-webkit-calendar-picker-indicator,
input[type="time"]::-webkit-calendar-picker-indicator{opacity:.8}

/* Campos que antes herdavam fundo branco do navegador */
.toolbar select,
.settings-card select,
.settings-card input:not([type="checkbox"]),
.login-card input:not([type="checkbox"]),
.detail-input,
.mini-field input,
.mini-field select,
.searchbox input,
.products-table input,
.products-toolbar input,
.products-toolbar select,
.products-bulk input{
  background:var(--input)!important;
  color:var(--text)!important;
}

/* Tabelas e linhas mantêm contraste nos dois temas */
table,thead,tbody,tr,th,td{color:var(--text)}
thead th{background:var(--panel)!important;color:var(--muted)!important}
tbody tr{background:var(--panel)}
tbody tr:hover{background:var(--panel2)}

/* Modais */
.modal-backdrop{overflow:auto;overscroll-behavior:contain}
.modal{max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}
.modal-head,.sticky-head{background:var(--panel)}
.detail-body{min-width:0}
.items-box{overflow-x:auto}

/* Evita estouro de conteúdo em cards e listas */
.page,.panel,.settings-card,.hero-card,.customer-row,.finance-row,.order-row,.home-product-row{min-width:0}
.product-title,.row-title,.meta,.row-sub,.lead{overflow-wrap:anywhere}
.quick-actions,.products-actions,.detail-actions{max-width:100%}

/* Área principal não ultrapassa viewport */
.main{width:calc(100% - 228px);max-width:none}

@media(max-width:980px){
  .main{margin-left:0;width:100%;padding:72px 18px 90px}
  .sidebar{display:none}
  .mobile-head{display:flex;position:fixed;top:0;left:0;right:0;z-index:30;background:var(--panel);border-bottom:1px solid var(--line);padding:10px 14px;align-items:center;justify-content:space-between}
  .bottom-nav{display:grid;position:fixed;left:0;right:0;bottom:0;z-index:35;grid-template-columns:repeat(5,1fr);background:var(--panel);border-top:1px solid var(--line);padding:6px max(6px,env(safe-area-inset-right)) max(6px,env(safe-area-inset-bottom)) max(6px,env(safe-area-inset-left))}
  .bottom-nav button{border:0;background:transparent;color:var(--muted);display:grid;place-items:center;gap:2px;padding:7px 2px;font-size:16px}
  .bottom-nav button span{font-size:9px;font-weight:800}
  .bottom-nav button.active{color:var(--text)}
  .hero-cards{grid-template-columns:1fr}
  .settings-grid{grid-template-columns:1fr}
  .page-head{align-items:stretch}
  .page-head,.toolbar{flex-wrap:wrap}
  .toolbar .searchbox{max-width:none;min-width:min(100%,260px)}
}

@media(max-width:760px){
  .main{padding-left:12px;padding-right:12px}
  .page-head{display:grid;grid-template-columns:1fr;gap:14px}
  .page-head h1{font-size:27px}
  .quick-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}
  .quick-actions .btn:only-child{grid-column:1/-1}
  .hero-card{padding:19px 17px;min-height:190px;border-radius:19px}
  .hero-copy h2{font-size:22px;margin-right:35px}
  .home-strip{grid-template-columns:1fr 1fr 1fr}
  .list-head{display:none}
  .order-row,.home-product-row,.customer-row,.finance-row{
    grid-template-columns:1fr auto!important;
    gap:8px 12px;
    padding:14px;
  }
  .order-row>.check,.order-row>span:first-child{grid-row:1/span 2}
  .order-row>div:nth-last-child(1),.home-product-row>div:last-child,.customer-row>div:last-child,.finance-row>div:last-child{grid-column:2;grid-row:1/span 2;align-self:center}
  .order-row .customer-col,.order-row .metric,.order-row .price-col{grid-column:1;margin-left:30px}
  .home-product-row>div:not(:first-child):not(:last-child){grid-column:1}
  .customer-row>div:not(:last-child),.finance-row>div:not(:last-child){grid-column:1}
  .form-grid,.modal-form-grid{grid-template-columns:1fr!important;padding:15px}
  .field.full,.modal-form-grid .span2{grid-column:1!important}
  .dual-select{grid-template-columns:1fr!important}
  .dual-select>span{display:none}
  .modal-actions{position:sticky;bottom:0;background:var(--panel);border-top:1px solid var(--line);padding:12px 15px;z-index:5}
  .modal-actions .btn{flex:1}
  .order-item-line{min-width:780px}
  .finance-overview{grid-template-columns:1fr 1fr}
  .finance-overview>div:first-child{grid-column:1/-1}
  .selection-bar{bottom:72px;width:calc(100% - 24px);flex-wrap:wrap}
  .selection-bar>div{width:100%}
  .selection-bar .btn{flex:1}
  .color-prefs{grid-template-columns:1fr}
}

@media(max-width:480px){
  .quick-actions{grid-template-columns:1fr}
  .home-strip{grid-template-columns:1fr}
  .finance-overview{grid-template-columns:1fr}
  .finance-overview>div:first-child{grid-column:auto}
  .hero-copy h2{font-size:20px}
  .progress-wrap{align-items:flex-start}
  .tabs{padding-bottom:3px}
  .btn{padding-left:11px;padding-right:11px}
}
