/*
 * Thickbox / popup iframe pages (body.insignia-popup).
 * Nested Spry TabbedPanels + prop_list forms: constrain width and allow local horizontal scroll.
 * Does not set overflow on .app-body (avoids breaking table/card layouts elsewhere).
 */

body.insignia-popup .app-body .main {
	min-width: 0;
}

body.insignia-popup .TabbedPanels {
	float: none;
	width: 100%;
	max-width: 100%;
	min-width: 0;
	box-sizing: border-box;
}

body.insignia-popup .TabbedPanelsContentGroup {
	max-width: 100%;
	min-width: 0;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	box-sizing: border-box;
}

body.insignia-popup .TabbedPanelsContent {
	max-width: 100%;
	min-width: 0;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	box-sizing: border-box;
}

body.insignia-popup .TabbedPanels .TabbedPanels {
	max-width: 100%;
	min-width: 0;
}

/*
 * Plain layout tables (e.g. modulo.php Page_Datos_General) sit directly under
 * .TabbedPanelsContent. Constrain width so size="50" inputs don’t force viewport overflow.
 * Skip Bootstrap/DataTables (.table) so grid tables keep natural layout + .table-responsive.
 */
body.insignia-popup .main .TabbedPanelsContent > table:not(.table):not(.dataTable) {
	width: 100%;
	max-width: 100%;
	table-layout: fixed;
	box-sizing: border-box;
}

body.insignia-popup .main .TabbedPanelsContent > table:not(.table):not(.dataTable) td {
	word-wrap: break-word;
	overflow-wrap: break-word;
	vertical-align: top;
}

/* Form controls inside tab panels (e.g. módulo “General”) */
body.insignia-popup .main .TabbedPanelsContent input[type="text"],
body.insignia-popup .main .TabbedPanelsContent input[type="search"],
body.insignia-popup .main .TabbedPanelsContent input[type="url"],
body.insignia-popup .main .TabbedPanelsContent input[type="email"],
body.insignia-popup .main .TabbedPanelsContent input[type="password"],
body.insignia-popup .main .TabbedPanelsContent input[type="number"],
body.insignia-popup .main .TabbedPanelsContent textarea,
body.insignia-popup .main .TabbedPanelsContent select {
	max-width: 100%;
	box-sizing: border-box;
}

body.insignia-popup .main .TabbedPanelsContent > table:not(.table):not(.dataTable) input[type="text"],
body.insignia-popup .main .TabbedPanelsContent > table:not(.table):not(.dataTable) input[type="search"],
body.insignia-popup .main .TabbedPanelsContent > table:not(.table):not(.dataTable) input[type="url"],
body.insignia-popup .main .TabbedPanelsContent > table:not(.table):not(.dataTable) input[type="email"],
body.insignia-popup .main .TabbedPanelsContent > table:not(.table):not(.dataTable) input[type="password"],
body.insignia-popup .main .TabbedPanelsContent > table:not(.table):not(.dataTable) input[type="number"],
body.insignia-popup .main .TabbedPanelsContent > table:not(.table):not(.dataTable) textarea,
body.insignia-popup .main .TabbedPanelsContent > table:not(.table):not(.dataTable) select {
	width: 100%;
	min-width: 0;
}

body.insignia-popup .main .TabbedPanelsContent table.prop_list {
	max-width: 100%;
}

body.insignia-popup .main .TabbedPanelsContent table.prop_list input[type="text"],
body.insignia-popup .main .TabbedPanelsContent table.prop_list input[type="search"],
body.insignia-popup .main .TabbedPanelsContent table.prop_list input[type="url"],
body.insignia-popup .main .TabbedPanelsContent table.prop_list input[type="email"],
body.insignia-popup .main .TabbedPanelsContent table.prop_list input[type="password"],
body.insignia-popup .main .TabbedPanelsContent table.prop_list input[type="number"],
body.insignia-popup .main .TabbedPanelsContent table.prop_list textarea,
body.insignia-popup .main .TabbedPanelsContent table.prop_list select {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}
