/* Servixo 4.13 product governance, responsive tables and unified controls */
:root{
  --sx-control-radius:12px;
  --sx-badge-radius:10px;
  --cp-control-radius:12px;
  --cp-badge-radius:10px;
}

/* One consistent button system */
.sx-btn,.cp-btn,.sx-icon-button,.cp-menu-btn,.sx-menu-btn,.sx-drawer-close,.cp-drawer-close,
.sx-integration-actions button,.sx-secret-actions button,.sx-qb-toolbar button,.sx-qb-exports a,
.operations-report-actions .cp-btn,.cp-inline-filter .cp-btn{
  border-radius:var(--sx-control-radius)!important;
}
.sx-btn,.cp-btn{min-height:44px;line-height:1.15}
.sx-btn-compact,.cp-btn-small{min-height:38px;padding:8px 12px!important;border-radius:10px!important}
.sx-pill,.cp-status,.cp-badge,.sx-integration-badge{border-radius:var(--sx-badge-radius)!important;padding:7px 11px!important;line-height:1.15!important;max-width:100%}
.sx-integration-actions,.sx-secret-actions,.sx-qb-toolbar,.sx-qb-exports,.operations-report-actions,.cp-card-actions,.cp-actions{
  gap:12px!important;
}
.sx-integration-actions,.sx-qb-toolbar,.sx-qb-exports,.operations-report-actions{
  display:flex!important;flex-wrap:wrap!important;align-items:center!important;
}
.sx-integration-state{display:grid!important;gap:10px!important;align-items:start!important}
.sx-integration-state .sx-pill{justify-self:start!important}

/* Home footer, premium centered controls */
.sx-home-footer{width:100%!important;text-align:center!important}
.sx-home-footer-inner{width:100%!important;display:grid!important;justify-items:center!important;gap:18px!important;padding:24px clamp(18px,4vw,42px)!important}
.sx-home-footer-links,.sx-home-footer-powered,.sx-home-footer-powered nav{
  width:100%!important;display:flex!important;justify-content:center!important;align-items:center!important;flex-wrap:wrap!important;gap:10px 14px!important;text-align:center!important;margin:0 auto!important;
}
.sx-home-footer-links button,.sx-home-footer-powered button{
  appearance:none!important;border:1px solid var(--sx-line)!important;background:var(--sx-card)!important;color:var(--sx-ink)!important;border-radius:11px!important;padding:10px 14px!important;font:inherit!important;font-weight:850!important;line-height:1.15!important;cursor:pointer!important;box-shadow:0 8px 20px rgba(12,36,31,.06)!important;text-decoration:none!important;
}
.sx-home-footer-links button:hover,.sx-home-footer-powered button:hover{border-color:var(--sx-primary)!important;color:var(--sx-primary)!important;transform:translateY(-1px)}
.sx-home-footer-divider{width:min(100%,760px)!important;height:1px!important;background:var(--sx-line)!important;margin:0 auto!important}
.sx-home-footer-powered>span{display:flex!important;justify-content:center!important;align-items:center!important;flex-wrap:wrap!important;gap:4px!important;text-align:center!important}

/* Platform company registry */
.sx-company-product-stack{display:grid;gap:5px}
.sx-company-product-stack strong{font-size:.95rem}
.sx-company-product-stack small{color:var(--sx-muted)}
.sx-company-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 16px}
.sx-company-tabs a{border:1px solid var(--sx-line);background:var(--sx-card);border-radius:11px;padding:9px 12px;text-decoration:none;font-weight:850;color:var(--sx-muted)}
.sx-company-tabs a.active{background:var(--sx-primary);border-color:var(--sx-primary);color:#fff}
.sx-product-settings-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:16px}
.sx-product-settings-links a{display:grid;gap:6px;text-decoration:none;border:1px solid var(--sx-line);border-radius:16px;padding:18px;background:var(--sx-card)}
.sx-product-settings-links span{color:var(--sx-muted);line-height:1.5}

/* Operations report table */
.operations-report-actions{margin-top:8px!important;padding-top:4px!important}
.completed-services-table{table-layout:fixed;min-width:1080px!important}
.completed-services-table th:nth-child(1),.completed-services-table td:nth-child(1){width:118px;white-space:nowrap}
.completed-services-table th:nth-child(2),.completed-services-table td:nth-child(2){width:250px}
.completed-services-table th:nth-child(3),.completed-services-table td:nth-child(3){width:160px}
.completed-services-table th:nth-child(4),.completed-services-table td:nth-child(4){width:260px}
.completed-services-table th:nth-child(n+5),.completed-services-table td:nth-child(n+5){width:125px}
.completed-services-table td{overflow-wrap:anywhere}
.completed-services-table td>strong,.completed-services-table td>small{display:block!important;margin:0!important}
.completed-services-table .sx413-service-cell{display:grid;gap:7px}
.completed-services-table .sx413-service-status{display:inline-flex;justify-self:start;padding:5px 8px;border-radius:8px;background:rgba(247,201,72,.18);color:#8a5b08;font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em}
.completed-services-table .completed-employee-list{display:grid;gap:8px;min-width:220px}
.completed-services-table .completed-employee-list>div{display:grid;gap:3px}
.completed-services-table .completed-employee-list span{color:var(--cp-muted)}

/* Financial reports */
.cp-inline-filter{display:grid!important;grid-template-columns:minmax(0,1fr) auto auto!important;align-items:end!important;gap:14px!important;margin:18px 0 22px!important}
.compact-balances .cp-table{table-layout:fixed;min-width:980px!important}
.compact-balances .cp-table th:nth-child(1),.compact-balances .cp-table td:nth-child(1){width:190px}
.compact-balances .cp-table th:nth-child(2),.compact-balances .cp-table td:nth-child(2){width:250px}
.compact-balances .cp-table th:nth-child(3),.compact-balances .cp-table td:nth-child(3){width:150px;text-align:center}
.compact-balances .cp-table th:nth-child(4),.compact-balances .cp-table td:nth-child(4){width:145px;white-space:nowrap}
.compact-balances .cp-table th:nth-child(5),.compact-balances .cp-table td:nth-child(5){width:120px}
.compact-balances .cp-table th:nth-child(6),.compact-balances .cp-table td:nth-child(6){width:145px;white-space:nowrap}
.compact-balances .cp-table td{overflow-wrap:anywhere}

/* Services directory */
.cp-service-date-year{display:block!important;margin-top:1px!important;font-size:9px!important;letter-spacing:.04em!important;color:inherit!important;font-weight:900!important}
.cp-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.cp-service-card.big{min-width:0}
.cp-service-card.big h3{overflow-wrap:anywhere}
.cp-pagination{display:flex!important;justify-content:space-between!important;align-items:center!important;gap:14px!important}
.cp-pagination>div{display:flex!important;align-items:center!important;gap:10px!important;flex-wrap:wrap!important}

/* Employee context and compact record tabs */
.cp-employee-context{display:grid;grid-template-columns:auto minmax(0,1fr);gap:16px;align-items:center;margin-bottom:18px;padding:16px;border:1px solid var(--cp-line);border-radius:18px;background:linear-gradient(135deg,var(--cp-card-soft),var(--cp-card))}
.cp-employee-context .cp-avatar{width:62px;height:62px;border-radius:18px}
.cp-employee-context-copy{display:grid;gap:4px;min-width:0}
.cp-employee-context-copy h3{margin:0;font-size:1.4rem}
.cp-employee-context-copy p{margin:0;color:var(--cp-muted)}
.cp-employee-context-metrics{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.cp-employee-context-metrics div{display:grid;gap:3px;padding:12px;border:1px solid var(--cp-line);border-radius:14px;background:var(--cp-card)}
.cp-employee-context-metrics span{font-size:.72rem;color:var(--cp-muted);font-weight:850;text-transform:uppercase;letter-spacing:.08em}
.cp-record-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 14px}
.cp-record-tabs button{border:1px solid var(--cp-line);background:var(--cp-card);color:var(--cp-muted);border-radius:11px;padding:10px 13px;font:inherit;font-weight:900;cursor:pointer}
.cp-record-tabs button.active{background:var(--cp-primary);border-color:var(--cp-primary);color:#fff}
.cp-employee-record-panel[hidden]{display:none!important}
.cp-employee-record-panel .cp-list{max-height:520px;overflow:auto;padding-right:4px}
.cp-record-more{margin-top:12px;display:flex;justify-content:center}
.cp-record-more button{min-width:150px}

/* Photos */
.cp-photo-center-gallery{min-height:0!important;height:auto!important;align-content:start!important}
.cp-photo-center-gallery>*{align-self:start!important}
.cp-photo-center-gallery .cp-photo-card,.cp-photo-center-gallery figure{height:auto!important;min-height:0!important;margin:0!important}
.cp-photo-center-gallery img{display:block;width:100%;height:auto;max-height:420px;object-fit:cover}
.cp-photo-meta{display:grid;gap:4px;padding:12px 14px}
.cp-photo-meta small{color:var(--cp-muted)}

/* Messaging */
.sx-message-bubble{position:relative;padding-top:18px!important}
.sx-message-actions{position:absolute;top:8px;right:9px;display:flex;gap:5px;z-index:2}
.sx-message-actions button{width:32px;height:32px;border:1px solid rgba(12,36,31,.14);border-radius:9px;background:rgba(255,255,255,.88);color:#173b34;display:grid;place-items:center;cursor:pointer;font-size:0}
.sx-message-actions button svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.sx-message-actions button[data-delete-message]{color:#a32929}
.sx-message-edited{font-size:.72rem;color:var(--sx-muted);font-style:italic;margin-left:6px}
.sx-message-bubble time{display:block;margin-top:8px}

/* QuickBooks */
.sx-qb-panel .cp-card-head{align-items:flex-start!important}
.sx-qb-panel [data-qb-status]{white-space:normal!important;text-align:center!important;min-width:110px!important}
.sx-qb-toolbar .cp-btn,.sx-qb-exports .cp-btn{border-radius:12px!important}
.sx-qb-kpis{grid-template-columns:repeat(4,minmax(0,1fr))!important}

@media(max-width:980px){
  .cp-service-grid{grid-template-columns:1fr!important}
  .sx-product-settings-links{grid-template-columns:1fr}
  .sx-qb-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

@media(max-width:760px){
  .sx-btn,.cp-btn{min-height:42px;padding:10px 13px!important}
  .sx-integration-actions,.sx-qb-toolbar,.sx-qb-exports,.operations-report-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;width:100%!important}
  .sx-integration-actions>*:first-child,.operations-report-actions>*:first-child{grid-column:1/-1}
  .cp-inline-filter{grid-template-columns:1fr!important}
  .cp-inline-filter .cp-btn{width:100%!important}
  .cp-employee-context-metrics{grid-template-columns:1fr}
  .cp-record-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
  .cp-record-tabs button{padding-inline:7px}
  .sx-home-footer-inner{padding-inline:14px!important}
  .sx-home-footer-links,.sx-home-footer-powered,.sx-home-footer-powered nav{gap:9px!important}
  .sx-home-footer-links button,.sx-home-footer-powered button{width:auto!important;min-width:0!important;padding:9px 11px!important}

  /* Card transformation for report tables */
  .completed-services-table,.compact-balances .cp-table{min-width:0!important;display:block!important}
  .completed-services-table thead,.compact-balances .cp-table thead{display:none!important}
  .completed-services-table tbody,.compact-balances .cp-table tbody{display:grid!important;gap:14px!important}
  .completed-services-table tr,.compact-balances .cp-table tr{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px 14px!important;padding:16px!important;border:1px solid var(--cp-line)!important;border-radius:18px!important;background:var(--cp-card-soft)!important}
  .completed-services-table td,.compact-balances .cp-table td{display:grid!important;gap:4px!important;width:auto!important;min-width:0!important;padding:0!important;border:0!important;white-space:normal!important;text-align:left!important;overflow-wrap:anywhere!important}
  .completed-services-table td::before,.compact-balances .cp-table td::before{content:attr(data-label);font-size:.68rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--cp-muted)}
  .completed-services-table td:nth-child(2),.completed-services-table td:nth-child(4),.compact-balances .cp-table td:nth-child(1),.compact-balances .cp-table td:nth-child(2){grid-column:1/-1}
}

@media(max-width:480px){
  .sx-integration-actions,.sx-qb-toolbar,.sx-qb-exports,.operations-report-actions{grid-template-columns:1fr!important}
  .sx-integration-actions>*:first-child,.operations-report-actions>*:first-child{grid-column:auto}
  .cp-record-tabs{grid-template-columns:1fr}
  .completed-services-table tr,.compact-balances .cp-table tr{grid-template-columns:1fr!important}
  .completed-services-table td,.compact-balances .cp-table td{grid-column:1!important}
  .sx-qb-kpis{grid-template-columns:1fr!important}
}

/* Employee portal button consistency */
.employee-primary-button,.employee-secondary-button,.employee-danger-button,.employee-warning-button,.employee-refresh-button,.employee-icon-button,.employee-menu-button,.employee-logout,.employee-website-link{border-radius:12px!important}
.employee-service-card,.employee-table-card,.employee-calendar-card,.detail-section,.timer-card{border-radius:18px!important}
