/* CARINIAGA v14.3.127 — post-redesign visual QA remediation. Loaded last. */
:root{--cn127-content-max:1600px;--cn127-mobile-gap:14px}
html{overflow-x:clip}body{min-width:0}main,.main,.content,.page-content,.workspace-main,.cn-content{min-width:0}
img,svg,video,canvas{max-width:100%;height:auto}iframe{max-width:100%}
/* Prevent legacy fixed widths from escaping redesigned shells. */
.card,.panel,.box,.widget,.modal,.dialog,.table-wrap,.form-card,.stat-card,.kpi-card{max-width:100%;min-width:0;box-sizing:border-box}
input,select,textarea,button{max-width:100%;box-sizing:border-box}
pre,code{overflow-wrap:anywhere}pre{max-width:100%;overflow:auto}
/* Dense actions stay usable without forcing page overflow. */
.actions,.page-actions,.toolbar,.filters,.filter-bar,.button-group,.btn-group,.bulk-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;min-width:0}
.actions>* ,.page-actions>* ,.toolbar>*{min-width:0}
/* Tables scroll inside their own surface rather than the viewport. */
.table-wrap,.table-responsive,[data-table-wrap]{width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain}
table{max-width:none}td,th{vertical-align:middle}
/* Dialogs remain visible on small/short screens. */
dialog,.modal,.dialog,[role="dialog"]{max-width:min(720px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto}
/* Long identifiers, emails, URLs and API/provider messages cannot break cards. */
.card,.panel,td,.notice,.alert,.feedback,.cn-feedback{overflow-wrap:anywhere}
/* Consistent page rhythm after legacy styles. */
.page-header,.content-header,.section-header{min-width:0}.page-header h1,.content-header h1{line-height:1.18;text-wrap:balance}
@media(max-width:900px){
  .actions,.page-actions,.toolbar,.filters,.filter-bar{gap:8px}
  .grid,.cards,.stats-grid,.kpi-grid{min-width:0}
}
@media(max-width:640px){
  body{font-size:15px}
  .page-content,.content,.workspace-main,.cn-content{min-width:0}
  .page-header,.content-header{gap:var(--cn127-mobile-gap)}
  .page-actions,.toolbar,.filters,.filter-bar{width:100%}
  .page-actions .btn,.page-actions button,.filters input,.filters select,.filter-bar input,.filter-bar select{max-width:100%}
  dialog,.modal,.dialog,[role="dialog"]{max-width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}
  .toast-container,.notification-stack{max-width:calc(100vw - 24px);inset-inline:12px!important}
}
@media(max-width:420px){
  .actions>.btn,.actions>button,.page-actions>.btn,.page-actions>button{flex:1 1 auto}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
