/* ComercialHost refinamento v2 (26/10/2026). ADDITIVO: não altera custom.css. */
:root{--ch2-navy:#17243b;--ch2-panel:#1b2a43;--ch2-border:#304361;--ch2-text:#edf4ff;--ch2-muted:#b4c4db;--ch2-blue:#2563eb;--ch2-green:#16a34a}

/* FORMULARIO — elimina conflito de floats Bootstrap com grid antigo */
#main-body form:has(#inputMessage) .row:has(#inputName),
#main-body form:has(#inputMessage) .row:has(#inputDepartment),
#main-body form:has(#inputMessage) .row:has(#inputSubject){
 display:flex!important;flex-wrap:nowrap!important;align-items:flex-start!important;
 gap:16px!important;width:100%!important;margin:0 0 17px!important;
}
#main-body form:has(#inputMessage) .row:has(#inputDepartment){gap:13px!important}
#main-body form:has(#inputMessage) :is(.row:has(#inputName),.row:has(#inputDepartment),.row:has(#inputSubject))>.form-group{
 width:0!important;min-width:0!important;max-width:none!important;
 float:none!important;flex:1 1 0!important;padding:0!important;margin:0!important;
}
#main-body form:has(#inputMessage) .row:has(#inputSubject)>.form-group{width:100%!important;flex:1 1 100%!important}
#main-body form:has(#inputMessage) :is(#inputName,#inputEmail,#inputSubject,#inputDepartment,#inputRelatedService,#inputPriority){
 width:100%!important;height:44px!important;border-radius:6px!important;
}
#main-body form:has(#inputMessage) .row.form-group:has(#inputAttachments){
 display:flex!important;flex-wrap:wrap!important;align-items:end!important;gap:10px!important;
 margin:0!important;width:100%!important
}
#main-body form:has(#inputMessage) .row.form-group:has(#inputAttachments)>.col-sm-12{
 width:100%!important;flex:0 0 100%!important;padding:0!important
}
#main-body form:has(#inputMessage) .row.form-group:has(#inputAttachments)>.col-sm-9{
 width:0!important;flex:1 1 0!important;min-width:0!important;padding:0!important
}
#main-body form:has(#inputMessage) .row.form-group:has(#inputAttachments)>.col-sm-3{
 width:auto!important;flex:0 0 auto!important;padding:0!important
}
#main-body form:has(#inputMessage) .row.form-group:has(#inputAttachments)>.col-xs-12{
 width:100%!important;flex:0 0 100%!important;padding:0!important
}
#main-body form:has(#inputMessage) .md-editor #inputMessage{min-height:190px!important}

/* BARRAS DE REGISTROS E BUSCA: alinhadas, azul marinho e campo sem cortes */
#main-body :is(#tableInvoicesList_wrapper,#tableTicketsList_wrapper,#tableDomainsList_wrapper,#tableServicesList_wrapper) .listtable{
 display:grid!important;grid-template-columns:minmax(0,1fr) minmax(200px,265px)!important;
 grid-template-rows:minmax(55px,auto) auto!important;
 gap:0!important;background:var(--ch2-navy)!important;border:0!important;
 padding:0!important;margin:0!important;align-items:center!important
}
#main-body :is(#tableInvoicesList_wrapper,#tableTicketsList_wrapper,#tableDomainsList_wrapper,#tableServicesList_wrapper) .listtable>.dataTables_info{
 grid-column:1!important;grid-row:1!important;float:none!important;
 width:100%!important;height:100%!important;min-width:0!important;
 background:var(--ch2-panel)!important;color:#d9e7fa!important;
 padding:13px 15px!important;margin:0!important;
 display:flex!important;align-items:center!important;line-height:1.4!important
}
#main-body :is(#tableInvoicesList_wrapper,#tableTicketsList_wrapper,#tableDomainsList_wrapper,#tableServicesList_wrapper) .listtable>.dataTables_filter{
 grid-column:2!important;grid-row:1!important;float:none!important;
 width:100%!important;height:100%!important;
 display:flex!important;align-items:center!important;
 background:var(--ch2-panel)!important;
 padding:8px 12px 8px 0!important;margin:0!important;position:static!important
}
#main-body :is(#tableInvoicesList_wrapper,#tableTicketsList_wrapper,#tableDomainsList_wrapper,#tableServicesList_wrapper) .dataTables_filter label{
 display:block!important;float:none!important;
 width:100%!important;max-width:none!important;padding:0!important;margin:0!important
}
#main-body :is(#tableInvoicesList_wrapper,#tableTicketsList_wrapper,#tableDomainsList_wrapper,#tableServicesList_wrapper) .dataTables_filter input[type=search]{
 width:100%!important;min-width:0!important;max-width:100%!important;
 height:38px!important;padding:8px 12px!important;margin:0!important;
 line-height:1.2!important;font-size:13px!important;
 border-radius:6px!important;background:#101a2e!important;
 text-overflow:ellipsis!important;
}
#main-body :is(#tableInvoicesList_wrapper,#tableTicketsList_wrapper,#tableDomainsList_wrapper,#tableServicesList_wrapper) .dataTables_filter input::placeholder{
 color:#acc3e3!important;font-size:12px!important;opacity:1!important
}
#main-body :is(#tableInvoicesList_wrapper,#tableTicketsList_wrapper,#tableDomainsList_wrapper,#tableServicesList_wrapper) .listtable>table{
 grid-column:1 / -1!important;grid-row:2!important;
 width:100%!important;margin:0!important;border-top:1px solid var(--ch2-border)!important
}
#main-body :is(#tableInvoicesList,#tableTicketsList,#tableDomainsList,#tableServicesList) :is(th,td,tr){
 border-color:var(--ch2-border)!important;box-shadow:none!important
}

/* LISTA DE TICKETS: departamento/data, assunto amplo, status na ultima coluna */
#main-body #tableTicketsList{display:block!important;width:100%!important}
#main-body #tableTicketsList thead,#main-body #tableTicketsList tbody{display:block!important}
#main-body #tableTicketsList tr{
 display:grid!important;width:100%!important;
 grid-template-columns:minmax(112px,21%) minmax(0,1fr) minmax(102px,16%)!important;
 grid-template-rows:auto auto!important;align-items:center!important;
 padding:0 11px!important
}
#main-body #tableTicketsList thead tr{min-height:50px!important;grid-template-rows:1fr!important}
#main-body #tableTicketsList thead th:first-child{grid-column:1!important}
#main-body #tableTicketsList thead th:nth-child(2){grid-column:2!important}
#main-body #tableTicketsList thead th:nth-child(3){grid-column:3!important}
#main-body #tableTicketsList thead th:nth-child(4){display:none!important}
#main-body #tableTicketsList tbody tr{min-height:76px!important;border-bottom:1px solid var(--ch2-border)!important}
#main-body #tableTicketsList tbody td:first-child{
 grid-column:1!important;grid-row:1!important;align-self:end!important;
 text-align:left!important;font-size:13px!important;font-weight:650!important;
 border:0!important;padding:11px 6px 0!important
}
#main-body #tableTicketsList tbody td:nth-child(4){
 grid-column:1!important;grid-row:2!important;align-self:start!important;
 text-align:left!important;font-size:11px!important;color:var(--ch2-muted)!important;
 border:0!important;padding:2px 6px 12px!important;white-space:normal!important
}
#main-body #tableTicketsList tbody td:nth-child(2){
 grid-column:2!important;grid-row:1/3!important;
 border:0!important;text-align:left!important;
 padding:11px 15px!important;line-height:1.47!important;
 overflow-wrap:anywhere!important
}
#main-body #tableTicketsList tbody td:nth-child(2) a{font-weight:650!important}
#main-body #tableTicketsList tbody td:nth-child(3){
 grid-column:3!important;grid-row:1/3!important;
 text-align:center!important;border:0!important;padding:10px 4px!important
}
#main-body #tableTicketsList .label.status{
 display:block!important;width:100%!important;min-width:0!important;
 padding:9px 4px!important;border-radius:5px!important
}
#main-body #tableTicketsList .label.status-open{background:#16a34a!important}
#main-body #tableTicketsList .label.status-answered{background:#2563eb!important}
#main-body #tableTicketsList .label.status-customer-reply{background:#f97316!important}
#main-body #tableTicketsList .label.status-closed{background:#59677f!important}

/* CORES DOS STATUS NA SIDEBAR: anula estilos inline do WHMCS legado */
#main-body .sidebar a[id^="Secondary_Sidebar-Recent_Tickets-Ticket_"] span[style]{
 display:inline-block!important;padding:2px 7px!important;
 border-radius:4px!important;font-size:11.5px!important;font-weight:700!important
}
#main-body .sidebar a[id^="Secondary_Sidebar-Recent_Tickets-Ticket_"] span[style*="#779500"]{
 color:#4ade80!important;background:rgba(22,163,74,.15)!important
}
#main-body .sidebar a[id^="Secondary_Sidebar-Recent_Tickets-Ticket_"] span[style*="#000000"]{
 color:#94bdff!important;background:rgba(37,99,235,.17)!important
}
#main-body .sidebar a[id^="Secondary_Sidebar-Recent_Tickets-Ticket_"] span[style*="#888888"]{
 color:#c7d2e5!important;background:rgba(148,163,184,.14)!important
}
#main-body .sidebar a[id^="Secondary_Sidebar-Recent_Tickets-Ticket_"]:has(span[style*="#779500"]){color:#dff9e8!important}

/* DASHBOARD: quatro cartões azuis, fonte branca e ícones compactos */
#main-body:has(.client-home-panels) .tiles{margin:14px 0 18px!important}
#main-body:has(.client-home-panels) .tiles>.row{
 display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;
 gap:12px!important;margin:0!important
}
#main-body:has(.client-home-panels) .tiles>.row>.tile{
 float:none!important;width:auto!important;max-width:none!important;
 padding:0!important;margin:0!important
}
#main-body:has(.client-home-panels) .tiles .tile>a{
 display:block!important;position:relative!important;
 min-height:114px!important;padding:16px!important;
 background:#1e4e98!important;border:1px solid #3266ae!important;
 border-radius:6px!important;box-shadow:none!important;color:white!important;
 text-decoration:none!important;transition:background-color .15s ease!important
}
#main-body:has(.client-home-panels) .tiles .tile>a:hover{background:#285daa!important}
#main-body:has(.client-home-panels) .tiles .tile .stat{
 color:#fff!important;font-size:32px!important;font-weight:750!important;
 line-height:1.1!important;margin:0!important
}
#main-body:has(.client-home-panels) .tiles .tile .title{
 color:#fff!important;font-size:12px!important;font-weight:700!important;
 line-height:1.35!important;margin-top:10px!important;text-transform:none!important
}
#main-body:has(.client-home-panels) .tiles .tile .icon{
 color:#d1e5ff!important;font-size:27px!important;right:15px!important;top:13px!important
}
#main-body:has(.client-home-panels) .tiles .tile .highlight{display:none!important}

/* DASHBOARD: cartões ocupam toda a largura e tags nas cores corretas */
#main-body .client-home-panels .panel{
 border-color:#2b3c55!important;border-radius:6px!important;
 overflow:hidden!important;box-shadow:none!important
}
#main-body .client-home-panels .panel .panel-heading{border-bottom:1px solid #2b3c55!important}
#main-body .client-home-panels .panel .list-group{
 margin:0!important;padding:0!important;width:100%!important;max-width:none!important
}
#main-body .client-home-panels .panel .list-group-item{
 display:block!important;width:100%!important;margin:0!important;
 padding:10px 13px!important;border:0!important;
 border-bottom:1px solid #293950!important;
 background:#151f34!important;color:#e9f0fb!important;line-height:1.5!important
}
#main-body .client-home-panels .panel .list-group-item:last-child{border-bottom:0!important}
#main-body .client-home-panels .panel .list-group-item:hover{background:#253857!important;color:white!important}
#main-body .client-home-panels .panel .list-group-item small{display:block!important;margin-top:3px!important;color:#bac9dd!important}
#main-body .client-home-panels .panel[menuitemname="Recent Support Tickets"] label.label[style*="#779500"]{
 background:#16a34a!important;color:#fff!important;border-radius:4px!important;padding:3px 7px!important
}
#main-body .client-home-panels .panel[menuitemname="Recent Support Tickets"] label.label[style*="#000000"]{
 background:#2563eb!important;color:#fff!important;border-radius:4px!important;padding:3px 7px!important
}
#main-body .client-home-panels .panel[menuitemname="Recent Support Tickets"] label.label[style*="#888888"]{
 background:#59677f!important;color:#fff!important;border-radius:4px!important;padding:3px 7px!important
}
#main-body .client-home-panels .panel[menuitemname="Recent Support Tickets"] .list-group-item:has(label[style*="#779500"]) strong{color:#4ade80!important}

/* Registro de domínio: campo, registrar e transferir compactos */
#main-body .client-home-panels .panel[menuitemname="Register a New Domain"] .panel-body{
 padding:13px!important;min-height:0!important
}
#main-body .client-home-panels .panel[menuitemname="Register a New Domain"] form .input-group{
 display:flex!important;align-items:stretch!important;width:100%!important;
 gap:8px!important;margin:0!important
}
#main-body .client-home-panels .panel[menuitemname="Register a New Domain"] form .input-group>input[name=domain]{
 flex:1 1 auto!important;min-width:0!important;width:0!important;
 height:38px!important;border-radius:5px!important;
 background:#101a2e!important;color:#fff!important;border:1px solid #324862!important
}
#main-body .client-home-panels .panel[menuitemname="Register a New Domain"] form .input-group-btn{
 display:flex!important;gap:7px!important;width:auto!important;flex:0 0 auto!important
}
#main-body .client-home-panels .panel[menuitemname="Register a New Domain"] form input[type=submit]{
 width:auto!important;height:38px!important;padding:0 12px!important;
 line-height:36px!important;font-size:12.5px!important;font-weight:650!important;
 border-radius:5px!important;margin:0!important;box-shadow:none!important
}
#main-body .client-home-panels .panel[menuitemname="Register a New Domain"] form input[type=submit][name=transfer]{
 background:#253750!important;border:1px solid #40536f!important;color:#f4f7ff!important
}
#main-body .client-home-panels .panel[menuitemname="Register a New Domain"] form input[type=submit]:not([name=transfer]){
 background:#16a34a!important;border:1px solid #16a34a!important;color:#fff!important
}

/* Nav: hover desktop, dropdown sem linhas claras. Toque continua por clique */
@media(hover:hover) and (min-width:768px){
 nav#nav.navbar-main .navbar-nav>li.dropdown:hover>ul.dropdown-menu,
 nav#nav.navbar-main .navbar-nav>li.dropdown:focus-within>ul.dropdown-menu{
  display:block!important;visibility:visible!important
 }
 nav#nav.navbar-main .navbar-nav>li.dropdown:hover>a.dropdown-toggle{
  background:#1b2942!important;color:#fff!important
 }
}
nav#nav.navbar-main .dropdown-menu .divider,
nav#nav.navbar-main .dropdown-menu li.divider{display:none!important}
nav#nav.navbar-main .dropdown-menu li>a{border-top:0!important}

/* TELAS MENORES */
@media(max-width:980px){
 #main-body:has(.client-home-panels) .tiles>.row{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:767px){
 #main-body form:has(#inputMessage) .row:has(#inputName),
 #main-body form:has(#inputMessage) .row:has(#inputDepartment){
  display:flex!important;flex-direction:column!important;
  gap:12px!important;width:100%!important
 }
 #main-body form:has(#inputMessage) :is(.row:has(#inputName),.row:has(#inputDepartment))>.form-group{
  flex:0 0 auto!important;width:100%!important
 }
 #main-body :is(#tableInvoicesList_wrapper,#tableTicketsList_wrapper,#tableDomainsList_wrapper,#tableServicesList_wrapper) .listtable{
  grid-template-columns:minmax(0,1fr)!important;grid-template-rows:auto auto auto!important
 }
 #main-body :is(#tableInvoicesList_wrapper,#tableTicketsList_wrapper,#tableDomainsList_wrapper,#tableServicesList_wrapper) .listtable>.dataTables_info{
  grid-column:1!important;grid-row:1!important;padding:11px 12px!important
 }
 #main-body :is(#tableInvoicesList_wrapper,#tableTicketsList_wrapper,#tableDomainsList_wrapper,#tableServicesList_wrapper) .listtable>.dataTables_filter{
  grid-column:1!important;grid-row:2!important;padding:0 12px 12px!important
 }
 #main-body :is(#tableInvoicesList_wrapper,#tableTicketsList_wrapper,#tableDomainsList_wrapper,#tableServicesList_wrapper) .listtable>table{
  grid-column:1!important;grid-row:3!important
 }
 #main-body #tableTicketsList tr{
  grid-template-columns:minmax(78px,26%) minmax(0,1fr) minmax(70px,23%)!important;
  padding:0 5px!important
 }
 #main-body #tableTicketsList tbody td:nth-child(2){padding:9px 6px!important}
 #main-body #tableTicketsList tbody td:first-child{font-size:11.5px!important;padding:10px 3px 0!important}
 #main-body #tableTicketsList tbody td:nth-child(4){font-size:10px!important;padding:2px 3px 9px!important}
 #main-body #tableTicketsList .label.status{font-size:10px!important;padding:7px 2px!important}
 #main-body .client-home-panels .panel[menuitemname="Register a New Domain"] form .input-group{flex-wrap:wrap!important}
 #main-body .client-home-panels .panel[menuitemname="Register a New Domain"] form .input-group>input[name=domain]{
  flex:1 1 100%!important;width:100%!important
 }
 #main-body .client-home-panels .panel[menuitemname="Register a New Domain"] form .input-group-btn{width:100%!important}
}

/* Ajustes finais validados pelo navegador: clearfix do Bootstrap nao pode ser item do grid */
#main-body:has(.client-home-panels) .tiles>.row::before,
#main-body:has(.client-home-panels) .tiles>.row::after{
 content:none!important;display:none!important
}
/* Cabeçalhos mantem a largura inteira de sua coluna visual */
#main-body #tableTicketsList thead th{
 display:flex!important;align-items:center!important;width:100%!important;
 justify-self:stretch!important;padding:14px 9px!important;
 white-space:normal!important;min-width:0!important
}
#main-body #tableTicketsList thead th:nth-child(4){display:none!important}
#main-body #tableTicketsList thead th:nth-child(3){justify-content:center!important}
